

.jw-toolbox{
  --navy:#0b2a57;--navy2:#102f63;--gold:#d6a829;--cream:#f7f4ee;
  --text:#182235;--muted:#667085;--line:#dfe5ee;--card:#fff;
  --good:#176b4d;--warn:#996515;--bad:#9d2c2c;--sticky-offset:0px;
  color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
}
.jw-toolbox *{box-sizing:border-box}
.jw-toolbox-page{margin:0;background:#f4f7fb}
.jw-toolbox .hero{background:linear-gradient(135deg,var(--navy),#091a38);color:#fff;padding:44px 20px}
.jw-toolbox .hero-inner{max-width:1180px;margin:auto;display:flex;justify-content:space-between;gap:24px;align-items:center}
.jw-toolbox .eyebrow{color:#f3c850;font-weight:700;margin-bottom:10px}
.jw-toolbox h1{font-size:42px;margin:0 0 10px}
.jw-toolbox .hero p{font-size:18px;opacity:.92;margin:0}
.jw-toolbox .hero-note{font-size:14px;line-height:1.6;text-align:right;border:1px solid rgba(255,255,255,.25);padding:12px 16px;border-radius:12px;background:rgba(255,255,255,.06)}
.jw-toolbox .container{max-width:1180px;margin:0 auto;padding:28px 20px 48px}
.jw-toolbox .tool-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px;position:sticky;top:var(--sticky-offset);background:#f4f7fb;padding:10px 0;z-index:10}
.jw-toolbox .tool-tab{border:1px solid #cbd5e1;background:#fff;color:var(--navy);padding:10px 14px;border-radius:999px;cursor:pointer;font-weight:700}
.jw-toolbox .tool-tab.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.jw-toolbox .panel{display:none;background:#fff;border-radius:18px;padding:24px;box-shadow:0 8px 30px rgba(16,47,99,.08);margin-bottom:24px}
.jw-toolbox .panel.active{display:block}
.jw-toolbox .panel h2{margin:0 0 6px;color:var(--navy)}
.jw-toolbox .panel .sub{color:var(--muted);margin:0 0 20px}
.jw-toolbox .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.jw-toolbox .grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.jw-toolbox .compact-grid{margin-top:8px}
.jw-toolbox .field{min-width:0}
.jw-toolbox .field label{display:block;font-size:13px;color:#475467;margin-bottom:6px;font-weight:700}
.jw-toolbox .field input,.jw-toolbox .field select,.jw-toolbox textarea{width:100%;padding:11px 12px;border:1px solid #cfd8e3;border-radius:10px;font-size:15px;background:#fff;color:var(--text)}
.jw-toolbox .field-hint{font-size:12px;color:var(--muted);margin-top:5px;line-height:1.5}
.jw-toolbox .actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px;align-items:center}
.jw-toolbox button.primary,.jw-toolbox button.secondary,.jw-toolbox .file-btn{padding:11px 18px;border-radius:10px;border:0;font-weight:800;cursor:pointer;font-size:14px}
.jw-toolbox button.primary{background:var(--gold);color:#0b2a57}
.jw-toolbox button.secondary,.jw-toolbox .file-btn{background:#edf2f8;color:var(--navy)}
.jw-toolbox .file-btn{display:inline-flex;align-items:center;position:relative;overflow:hidden}
.jw-toolbox .file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}
.jw-toolbox .results{margin-top:22px;border-top:1px solid var(--line);padding-top:18px}
.jw-toolbox .metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:12px}
.jw-toolbox .metric{background:#f7f9fc;padding:14px;border-radius:12px;min-width:0}
.jw-toolbox .metric .k{font-size:12px;color:var(--muted)}
.jw-toolbox .metric .v{font-size:24px;font-weight:800;color:var(--navy);margin-top:6px;overflow-wrap:anywhere}
.jw-toolbox .note,.jw-toolbox .risk-legend{margin-top:14px;padding:12px 14px;background:#fff8e7;border-left:4px solid var(--gold);border-radius:8px;color:#5f4b18;line-height:1.65}
.jw-toolbox .risk-legend{background:#f7f9fc;border-left-color:#9fb2cc;color:#475467}
.jw-toolbox .error{margin-top:14px;padding:12px 14px;background:#fdecec;border-left:4px solid var(--bad);border-radius:8px;color:#7b2323}
.jw-toolbox .cashflow-row{display:grid;grid-template-columns:150px 1fr 42px;gap:10px;align-items:center;margin:8px 0}
.jw-toolbox .alloc-row{display:grid;grid-template-columns:140px 1fr 42px;gap:10px;align-items:center;margin:8px 0}
.jw-toolbox .cashflow-row input,.jw-toolbox .alloc-row input{padding:9px;border:1px solid #cfd8e3;border-radius:9px;width:100%;font-size:15px}
.jw-toolbox .year-input-wrap{display:flex;gap:5px;align-items:center;color:var(--navy);font-weight:700}
.jw-toolbox .year-input-wrap input{width:72px;text-align:center}
.jw-toolbox .remove{border:0;background:#f1f3f5;border-radius:8px;cursor:pointer;height:40px}
.jw-toolbox .bar-wrap{height:12px;background:#eef2f6;border-radius:999px;overflow:hidden;margin-top:6px}
.jw-toolbox .bar{height:100%;background:linear-gradient(90deg,var(--navy),var(--gold))}
.jw-toolbox .share-row{margin-top:10px}
.jw-toolbox .table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.jw-toolbox .table{width:100%;border-collapse:collapse;margin-top:14px;font-size:14px;min-width:680px}
.jw-toolbox .table th,.jw-toolbox .table td{border-bottom:1px solid var(--line);padding:9px;text-align:right;white-space:nowrap}
.jw-toolbox .table th:first-child,.jw-toolbox .table td:first-child{text-align:left}
.jw-toolbox .status{display:inline-block;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800}
.jw-toolbox .status.good{background:#eaf7f0;color:var(--good)}
.jw-toolbox .status.warn{background:#fff6df;color:var(--warn)}
.jw-toolbox .status.bad{background:#fdecec;color:var(--bad)}
.jw-toolbox .section-title{font-weight:800;color:var(--navy);margin-top:18px}
.jw-toolbox .mode-card{background:#f8fafc;border:1px solid var(--line);padding:16px;border-radius:14px;margin-bottom:18px}
.jw-toolbox .paste-box{margin-top:14px}.jw-toolbox .paste-box label{display:block;font-size:13px;font-weight:700;margin-bottom:6px;color:#475467}
.jw-toolbox .glossary{margin-top:22px;border-top:1px solid var(--line);padding-top:4px}
.jw-toolbox .glossary-item{display:grid;grid-template-columns:170px 1fr;gap:14px;padding:9px 0;border-bottom:1px dashed #e6eaf0;font-size:13px;line-height:1.6}
.jw-toolbox .glossary-item b{color:var(--navy)}
.jw-toolbox .glossary-item span{color:#596579}
.jw-toolbox .data-details{margin-top:14px;border:1px solid var(--line);border-radius:12px;padding:0 12px 12px;background:#fbfcfe}
.jw-toolbox .data-details summary{cursor:pointer;padding:12px 2px;font-weight:800;color:var(--navy)}
.jw-toolbox .chart-box{margin-top:16px;border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfcfe}
.jw-toolbox .chart-title{font-weight:800;color:var(--navy);font-size:13px}.jw-toolbox .mini-chart{width:100%;height:auto;display:block;margin-top:6px}.jw-toolbox .axis{stroke:#d1d8e3;stroke-width:2}.jw-toolbox .line-path{stroke:var(--navy);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.jw-toolbox .line-dot{fill:var(--gold);stroke:var(--navy);stroke-width:2}.jw-toolbox .chart-foot{font-size:12px;color:var(--muted);text-align:right}
.jw-toolbox .advice-list{line-height:1.7;color:#475467}
.jw-toolbox .range-field input[type=range]{padding:0;border:0}
.jw-toolbox .disclaimer{margin-top:28px;background:#eef3f8;border-radius:16px;padding:20px;color:#475467}
.jw-toolbox .disclaimer h2{color:var(--navy);font-size:18px}
.jw-toolbox .small{font-size:12px;color:var(--muted)}
@media(max-width:760px){
  .jw-toolbox .hero-inner{display:block}.jw-toolbox .hero-note{text-align:left;margin-top:18px}
  .jw-toolbox h1{font-size:32px}
  .jw-toolbox .grid,.jw-toolbox .grid-3{grid-template-columns:1fr}
  .jw-toolbox .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jw-toolbox .cashflow-row{grid-template-columns:125px 1fr 38px}
  .jw-toolbox .alloc-row{grid-template-columns:105px 1fr 38px}
  .jw-toolbox .panel{padding:18px}
  .jw-toolbox .tool-tabs{overflow-x:auto;flex-wrap:nowrap}
  .jw-toolbox .tool-tab{white-space:nowrap}
  .jw-toolbox .glossary-item{grid-template-columns:1fr;gap:3px}
  .jw-toolbox .year-input-wrap input{width:58px}
}
@media(max-width:430px){.jw-toolbox .metric-grid{grid-template-columns:1fr}.jw-toolbox .cashflow-row{grid-template-columns:108px 1fr 36px}.jw-toolbox .year-input-wrap{font-size:13px}}

.jw-toolbox .time-standard{margin:12px 0 16px;padding:11px 13px;border-left:4px solid #d6a829;background:#f8f6ef;border-radius:8px;color:#475467;font-size:13px;line-height:1.55}
.jw-toolbox .phase-box{border:1px solid #e2e8f0;border-radius:14px;padding:16px;margin:12px 0;background:#fbfcfe}
.jw-toolbox .phase-title{font-weight:800;color:#0b2a57;margin-bottom:12px}
.jw-toolbox .mode-select{max-width:360px;margin:12px 0 18px}
.jw-toolbox .irr-mode-panel[hidden]{display:none!important}
/* V2.0 Final QC */
.jw-toolbox .hero{padding:34px 20px}
.jw-toolbox .metric .v{white-space:nowrap;font-size:clamp(15px,1.7vw,24px);letter-spacing:-.02em;overflow:visible;overflow-wrap:normal}
.jw-toolbox .metric-details .metric-grid{margin-top:10px}
.jw-toolbox .parameter-details{margin:12px 0 4px;border:1px solid var(--line);border-radius:12px;background:#fbfcfe;padding:0 14px 14px}
.jw-toolbox .parameter-details summary{cursor:pointer;padding:12px 0;font-weight:800;color:var(--navy)}
.jw-toolbox .details-grid{padding-top:4px}
@media(max-width:760px){
  .jw-toolbox .hero{padding:28px 20px}
  .jw-toolbox .hero-note{margin-top:12px;padding:10px 12px}
  .jw-toolbox .metric .v{font-size:19px}
}
@media(max-width:430px){.jw-toolbox .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jw-toolbox .metric .v{font-size:17px}.jw-toolbox .metric .k{font-size:11px}}

/* V2.1 QC Patch */
.jw-toolbox .metric-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.jw-toolbox .metric{overflow:visible}
.jw-toolbox .metric .v{font-variant-numeric:tabular-nums}
@media(max-width:760px){
  .jw-toolbox .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jw-toolbox .metric .v{font-size:clamp(14px,4.2vw,18px)}
}
@media(max-width:430px){
  .jw-toolbox .metric .v{font-size:14px;letter-spacing:-.035em}
}

.danger-lite{border-color:#e3a0a0!important;color:#8c2b2b!important;background:#fff8f8!important}

/* V2.7 FINAL RC5.2 | Print Alignment & Typography Optimization V1.3 */
.jw-toolbox .hero{padding:30px 20px}
.jw-toolbox .tool-guide{max-width:1180px;margin:0 0 18px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:10px 14px;color:var(--navy)}
.jw-toolbox .tool-guide summary{font-weight:700;cursor:pointer}
.jw-toolbox .tool-guide div{padding-top:8px;line-height:1.8;color:#52627a}

.jw-toolbox .rc-badge{display:inline-block;vertical-align:middle;margin-left:8px;padding:3px 8px;border-radius:999px;background:#fff4cf;color:#8a5a00;font-size:12px;font-weight:800}
.jw-toolbox .summary-hint{font-size:13px;font-weight:600;color:#64748b}
.jw-toolbox .income-source{padding:12px;border:1px solid #e6ebf2;border-radius:10px;background:#f8fafc}
.jw-toolbox .income-source-name{font-weight:800;color:var(--navy);margin-bottom:8px}

.jw-toolbox .retire-settings-group{margin-top:12px;padding:14px;border:1px solid #e4e9f1;border-radius:12px;background:#fff}
.jw-toolbox .retire-settings-group:first-child{margin-top:4px}
.jw-toolbox .retire-group-title{font-weight:800;color:var(--navy);margin-bottom:10px}
.jw-toolbox .income-source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:10px}
.jw-toolbox .income-source{padding:12px;border:1px solid #e7ebf2;border-radius:10px;background:#fbfcfe}
.jw-toolbox .income-source-name{font-weight:800;color:var(--navy);margin-bottom:9px;font-size:13px}
.jw-toolbox .income-source .field + .field{margin-top:10px}
@media(max-width:900px){.jw-toolbox .income-source-grid{grid-template-columns:1fr}}

