*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,"Segoe UI",Verdana,sans-serif;font-size:20px;line-height:1.6;color:#111;background:#fff}
header{display:flex;align-items:center;gap:12px;padding:12px 16px;padding-top:max(12px,env(safe-area-inset-top));background:#1B3A8C;color:#fff}
header h1{font-size:24px;margin:0}
main{max-width:820px;margin:0 auto;padding:16px}
label{display:block;font-weight:700;margin:12px 0 4px}
input[type=text],textarea{width:100%;font-size:20px;padding:12px;border:2px solid #333;border-radius:10px;font-family:inherit}
.row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:14px 0}
.btn{display:inline-block;min-height:52px;min-width:52px;padding:12px 20px;font-size:20px;font-weight:700;border:0;border-radius:12px;background:#1B3A8C;color:#fff;cursor:pointer;margin:0}
.btn.secondary{background:#e6ebf7;color:#1B3A8C;border:2px solid #1B3A8C}
.chk{display:flex;align-items:center;gap:8px;margin:0;font-weight:400}.chk input{width:28px;height:28px}
.tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:3px solid #1B3A8C}
.tab{min-height:52px;flex:1;font-size:18px;font-weight:700;border:2px solid #1B3A8C;border-bottom:0;border-radius:10px 10px 0 0;background:#fff;color:#1B3A8C;display:flex;align-items:center;justify-content:center;gap:6px}
.tab.active{background:#1B3A8C;color:#fff}
.tier{display:none;padding:8px 0}.tier.active{display:block}
.tier h2{display:flex;align-items:center;gap:12px;font-size:26px;margin:12px 0}
.goal{background:#f3f3f3;padding:8px 12px;border-radius:8px}
.sh{display:inline-block;flex:none}
.sh.c{width:28px;height:28px;border-radius:50%;background:#2E9E4F}
.sh.s{width:26px;height:26px;background:#2F6FD6}
.sh.t{width:0;height:0;border-left:15px solid transparent;border-right:15px solid transparent;border-bottom:26px solid #7B3FC4}
.tab .sh.c{width:18px;height:18px}.tab .sh.s{width:16px;height:16px}.tab .sh.t{border-left-width:10px;border-right-width:10px;border-bottom-width:17px}
#l1 h2{color:#1d7a3a}#l2 h2{color:#1f56b0}#l3 h2{color:#6430a8}
.chunk{border-left:6px solid #E8892B;background:#fff7ee;padding:8px 14px;margin:10px 0;border-radius:6px}
.steps li,.qs li{margin:10px 0}
.bank{border:3px solid #2E9E4F;border-radius:10px;padding:8px 14px;font-weight:700;font-size:22px;word-spacing:14px}
.line{display:block;border-bottom:2px solid #555;height:40px}
.key{margin-top:24px;border-top:2px dashed #999;padding-top:8px}
#msg{color:#a00;font-weight:700}
@media print{
 .noprint,header{display:none!important}
 body{font-size:16pt}main{max-width:none;padding:0}
 .tier.active,.printall .tier{display:block!important}
 .printall .tier{page-break-after:always;break-after:page}
 .printall .tier:last-child{page-break-after:auto}
 .key{page-break-before:always;break-before:page}
 *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
