.ptn-guide { min-width: 0; }
.ptn-section { scroll-margin-top: 1rem; }
.ptn-guide .ptn-section + .ptn-section { margin-top: 1.5rem; }
.ptn-guide .hint { margin: .35rem 0 .8rem; overflow-wrap: anywhere; }
.ptn-table-scroll { max-width: 100%; overflow-x: auto; }
.ptn-table-scroll .calc-table { width: 100%; }
.ptn-table-scroll .ptn-compare-table { min-width: 640px; table-layout: fixed; }
.ptn-table-scroll .ptn-compare-table th:first-child { width: 12%; }
.ptn-table-scroll .ptn-compare-table th:nth-child(2) { width: 40%; }
.ptn-table-scroll .ptn-compare-table th:nth-child(3) { width: 18%; }
.ptn-table-scroll .ptn-compare-table th:nth-child(4) { width: 30%; }
.ptn-table-scroll th, .ptn-table-scroll td { vertical-align: top; overflow-wrap: anywhere; }
.ptn-guide .pick-buttons .btn { white-space: normal; }
.ptn-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; margin-bottom: 1rem; }
.ptn-fields label { display: block; }
.ptn-guide input[type=number], .ptn-guide select { display: block; width: 100%; min-width: 0; box-sizing: border-box; margin-top: .35rem; }
.ptn-check { display: block; margin: .8rem 0; }
.ptn-check input { width: auto; }
#ptn-fee-result, #ptn-annuity-result { overflow-wrap: anywhere; margin-top: 1rem; }
.ptn-error { color: #a12828; }
.ptn-amount { font-size: 1.4rem; font-weight: 700; }
.ptn-guide [hidden] { display: none !important; }
.ptn-guide [aria-pressed=true] { background: #234f45; color: #fff; border-color: #234f45; }
@media (max-width: 600px) { .ptn-fields { grid-template-columns: minmax(0,1fr); } }
