#plan-app{max-width:820px;margin:0 auto}
#plan-app .pf{display:grid;gap:16px;margin:18px 0}
#plan-app .pf label.f{display:grid;gap:6px;font-weight:700;font-size:14px;color:#33475b}
#plan-app select,#plan-app input[type=text],#plan-app input[type=number]{font:inherit;font-weight:400;font-size:17px;padding:13px 14px;border:1px solid #c9dbe8;border-radius:12px;background:#fff;color:#142433;width:100%;box-sizing:border-box}
.pgroup{border:1px solid #dbe8f1;border-radius:16px;padding:14px 18px 8px;margin:0 0 14px;background:#fff}
.pgroup legend{font-weight:800;padding:0 8px;color:#0b4a73}
.pck{display:flex;gap:12px;align-items:flex-start;padding:9px 0;font-size:17px;cursor:pointer}
.pck input{width:22px;height:22px;margin-top:2px;flex:none}
.psev{border:1px solid #dbe8f1;border-radius:16px;padding:12px 16px;margin:0 0 12px;background:#fff}
.psev legend{font-weight:700;padding:0 6px}
.sevrow{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:6px}
.sevrow label{display:block;cursor:pointer}
.sevrow input{position:absolute;opacity:0}
.sevrow span{display:block;text-align:center;padding:10px 4px;border:1px solid #c9dbe8;border-radius:10px;font-size:15px;font-weight:700;color:#33475b;background:#f6fafd}
.sevrow input:checked+span{background:#0ea5ec;border-color:#0ea5ec;color:#fff}
.sevrow input:focus-visible+span{outline:3px solid #0b4a73}
.pnav{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}
.prio{padding-left:22px}.prio li{margin:0 0 12px;font-size:18px}
.lvl{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:2px 9px;border-radius:999px;margin-left:8px;background:#e8f1fb;color:#0b4a73}
.lvl-high,.lvl-starthere{background:#fde8e1;color:#9a3412}.lvl-medium,.lvl-soon{background:#fff3d6;color:#8a5a00}
.pn{margin:34px 0;padding-top:6px;border-top:1px solid #dbe8f1}
.plist{display:grid;gap:14px}.plist .listing .lhead{display:flex;flex-wrap:wrap;gap:6px 12px;justify-content:space-between}
.pdisc{font-size:14px;color:#52667a;margin:28px 0 8px}
.pact{margin:18px 0 40px}
.btn.alt2{background:#fff;color:#0b4a73!important;border:2px solid #0ea5ec;box-shadow:none}
@media print{header,footer,.pact,.savebtn,.pnav{display:none!important}.dhero{background:#fff!important;color:#000!important;padding:0!important}.dhero *{color:#000!important}.pn{break-inside:avoid}}
header nav a{white-space:nowrap}
header nav{gap:4px 16px}
@media(max-width:1180px){header nav a.acct-link{display:none}}

.lockline{background:#f1f7fc;border:1px dashed #b9d4ea;border-radius:10px;padding:10px 14px;color:#34506a;margin:8px 0}
.paywall{background:#fff;border:2px solid #0aa5f5;border-radius:18px;padding:22px 24px;margin:26px 0;box-shadow:0 8px 24px rgba(10,165,245,.12)}.paywall .price{font-size:18px;margin:10px 0}

.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin:12px 0 20px}
.tile{display:flex;flex-direction:column;border:1px solid #dbe8f1;border-radius:16px;overflow:hidden;background:#fff;text-decoration:none;color:#142433;box-shadow:0 2px 8px rgba(11,74,115,.07);transition:transform .15s,box-shadow .15s}
.tile:hover,.tile:focus-visible{transform:translateY(-3px);box-shadow:0 8px 20px rgba(11,74,115,.16)}
.tband{display:flex;justify-content:space-between;align-items:flex-end;min-height:96px;padding:14px;color:#fff}.tchip{background:rgba(255,255,255,.2);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.tsrc{font-weight:800;font-size:13px;letter-spacing:.04em;text-transform:uppercase}.tico{font-size:34px;opacity:.9}
.tbody{display:flex;flex-direction:column;gap:10px;padding:14px;flex:1;justify-content:space-between}
.ttl{font-weight:700;font-size:16px;line-height:1.3}.tmore{color:#0a7bc4;font-weight:700;font-size:14px}
.pgo{background:#f1f7fc;border-left:4px solid #0ea5ec;border-radius:10px;padding:10px 16px;margin:10px 0}.pgo p{margin:6px 0 0}
@media(max-width:520px){.tgrid{grid-template-columns:1fr 1fr;gap:10px}.tband{min-height:64px}.ttl{font-size:14px}}
@media print{.tgrid{display:block}.tile{break-inside:avoid;margin:0 0 6px}.tband{display:none}}

.tband{min-height:78px!important;align-items:flex-start!important;justify-content:space-between}.tsrc{font-size:16px!important;line-height:1.15;letter-spacing:.02em;text-transform:none!important;font-weight:800;max-width:75%}
.tile[hidden]{display:none}.tshow{text-align:center;margin:0 0 22px}.tbtn{font:inherit;font-weight:700;color:#0b4a73;background:#fff;border:2px solid #0ea5ec;border-radius:999px;padding:10px 20px;cursor:pointer}
@media(max-width:520px){.tsrc{font-size:14px!important}.tband{min-height:64px!important;padding:10px 12px}}

.tband{align-items:center!important;gap:10px;justify-content:flex-start!important}.tband svg{margin-left:auto;flex:none;opacity:.85}
.tlogo{flex:none;width:48px;height:48px;background:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.25)}.tlogo img{width:40px;height:40px;object-fit:contain}
.tsrc{max-width:none!important;flex:1;min-width:0}
@media(max-width:520px){.tlogo{width:40px;height:40px;border-radius:10px}.tlogo img{width:32px;height:32px}.tband{gap:8px}.tband svg{width:20px;height:20px}.tsrc{font-size:13px!important}}
@media(max-width:520px){.tband svg{display:none}}
