:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#192c42;background:#f5f7fa;font-synthesis:none;--line:#dce3ed;--muted:#53677c;--accent:#006e68;--navy:#12263e}*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.5;overflow-wrap:anywhere}button,input{font:inherit}button,.button{min-height:46px;border:1px solid #bfcbd8;border-radius:7px;padding:10px 16px;background:white;color:#17324f;cursor:pointer;font-weight:600;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}button:hover,.button:hover{background:#edf3f8}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,.button:focus-within,summary:focus-visible{outline:3px solid #009d91;outline-offset:4px}.primary{background:var(--navy);color:white;border-color:var(--navy)}.primary:hover{background:#224263}input[type=file]{position:absolute;width:1px;height:1px;opacity:0}.top{background:var(--navy);color:#fff}.top-inner{max-width:1180px;margin:auto;padding:18px 26px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font-size:20px;letter-spacing:-.5px;font-weight:750;color:white;text-decoration:none;display:flex;align-items:center;gap:12px}.mark{font-size:27px;line-height:1;color:#55e1ce}.prototype{font-size:14px;color:#c5d3e3;border:1px solid #425871;border-radius:5px;padding:4px 9px}main{max-width:1180px;margin:auto;padding:38px 26px 22px}.title-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.eyebrow{font-size:13px;font-weight:750;letter-spacing:1.1px;color:var(--accent);margin:0 0 8px}h1{font-size:clamp(28px,3.3vw,42px);letter-spacing:-1.2px;line-height:1.14;margin:0 0 12px}h2{font-size:21px;letter-spacing:-.3px;line-height:1.25;margin:0}h3{font-size:19px;line-height:1.35;margin:0 0 9px}.intro{color:var(--muted);margin:0}.input-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:27px 0}.input-row button{font-weight:500;font-size:14px;min-height:40px;padding:8px 12px}.local-note{font-size:14px;color:var(--muted);margin-left:auto}.empty{background:white;border:1px dashed #aab9cb;border-radius:12px;padding:55px 24px;text-align:center;margin:32px 0 70px}.empty p{max-width:550px;margin:14px auto}.empty-icon{font-size:28px;color:var(--accent);font-family:ui-monospace,monospace;margin-bottom:17px}a{color:#006d69}.muted{color:var(--muted)}.snapshot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px}.snapshot h2{font-size:25px;margin-top:8px;overflow-wrap:anywhere}.snapshot p{font-size:14px;margin:6px 0}.tag{font-size:13px;font-weight:700;padding:4px 8px;border-radius:4px;background:#e5ecf4;color:#38516e}.tag.example{background:#fff0d7;color:#8c5303}.export-buttons{display:flex;gap:9px;flex-wrap:wrap}.export-buttons button{font-size:14px;min-height:42px}.coverage{font-size:14px;color:#42566c;background:#eaf0f6;border-left:3px solid #8fa6bc;padding:12px 15px;margin:20px 0 25px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric{background:white;border:1px solid var(--line);border-radius:9px;padding:22px 20px;min-width:0}.metric>span{display:block;font-size:14px;color:var(--muted);font-weight:600}.metric strong{display:block;font-size:31px;line-height:1.25;letter-spacing:-1px;margin:14px 0 10px;overflow-wrap:anywhere}.metric strong small{font-size:16px;font-weight:500;letter-spacing:0}.metric p{font-size:14px;line-height:1.45;color:var(--muted);margin:0}.main-metric{border-top:3px solid var(--accent);padding-top:20px}.main-metric strong{color:var(--accent)}.metric .unknown{font-size:27px;color:#617286}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:34px 0 15px}.section-heading>span{font-size:14px;color:var(--muted)}.workflow-list{background:white;border:1px solid var(--line);border-radius:9px;overflow:hidden}.workflow{padding:20px 22px;border-bottom:1px solid var(--line)}.workflow:last-child{border-bottom:0}.workflow-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.workflow strong{font-size:16px;overflow-wrap:anywhere}.workflow .workflow-value{text-align:right;white-space:nowrap;font-weight:700;font-size:17px}.workflow-path{display:block;color:var(--muted);font-family:ui-monospace,monospace;font-size:13px;overflow-wrap:anywhere;margin:4px 0 12px}.workflow-meta{font-size:14px;color:var(--muted)}.bar{height:7px;background:#edf2f7;overflow:hidden;border-radius:3px;margin:10px 0}.bar-fill{height:100%;background:#15867c;border-radius:3px}.count{font-size:14px;padding:3px 8px;background:#e0e8f0;border-radius:5px;margin-left:5px;vertical-align:middle}.findings{display:grid;gap:14px}.finding{border:1px solid var(--line);background:#fff;border-radius:9px;padding:24px}.finding-label{font-size:13px;text-transform:uppercase;letter-spacing:.6px;font-weight:750;color:#956009;margin:0 0 10px}.finding p{margin:9px 0}.finding .context{font-size:14px;color:var(--muted);overflow-wrap:anywhere}.finding .recommendation{background:#f2f6fa;padding:13px 15px;border-radius:6px}.evidence{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.evidence a{font-size:14px;font-weight:600}.review-time{display:inline-block;background:#fff1d9;color:#77500f;font-size:14px;font-weight:650;padding:5px 9px;border-radius:4px}.no-findings{padding:28px;background:white;border:1px solid var(--line);border-radius:9px}.no-findings p{margin:8px 0 0;color:var(--muted)}details{background:#eaf0f6;border-radius:8px;margin-top:28px;padding:16px 19px}summary{cursor:pointer;font-weight:650}details ul{margin-bottom:0;padding-left:23px;font-size:14px}details li+li{margin-top:8px}.method{font-size:14px;color:var(--muted);max-width:850px}.error{background:#ffeded;color:#8b2020;border:1px solid #f0b1b1;padding:14px;border-radius:7px;overflow-wrap:anywhere}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:13px;margin-top:45px;padding-top:18px}[hidden]{display:none!important}@media(max-width:900px){.metrics{grid-template-columns:repeat(2,1fr)}.local-note{margin-left:0;width:100%}.section-heading{align-items:flex-start}.section-heading>span{text-align:right}}@media(max-width:560px){main{padding:27px 17px 20px}.top-inner{padding:16px 17px}.brand{font-size:18px}.prototype{font-size:12px}.title-row{display:block}.title-row .primary{width:100%;margin-top:22px}.input-row{margin:15px 0 25px}.input-row button{flex:1}.local-note{margin-top:4px}.snapshot{align-items:flex-start;flex-direction:column}.snapshot h2{font-size:23px}.export-buttons{width:100%}.export-buttons button{flex:1}.metric{padding:18px 14px}.main-metric{padding-top:16px}.metric strong{font-size:28px}.metric .unknown{font-size:25px}.section-heading{display:block}.section-heading>span{display:block;text-align:left;margin-top:6px}.workflow{padding:17px}.workflow-top{gap:12px}.workflow-value{font-size:16px!important}.finding{padding:19px}.empty{padding:35px 18px}.metrics{gap:10px}.metric>span{font-size:14px}footer{margin-top:32px}}@media(prefers-reduced-motion:no-preference){button,.button{transition:background .15s ease}}@media print{.top,.title-row,.input-row,.export-buttons,footer{display:none}.metrics{grid-template-columns:repeat(2,1fr)}main{padding:0}details{display:block}.finding{break-inside:avoid}}
.money-overview{margin-top:32px}.money-overview .section-heading{margin-top:0}.money-metrics .metric:nth-child(3){border:2px solid var(--accent);background:#e9f8f4}.money-metrics .metric:nth-child(3) strong{color:var(--accent)}.money-metrics .metric strong{font-size:clamp(24px,3vw,35px)}.money-metrics .metric .unknown{font-size:22px;letter-spacing:-.4px}.billing-section details{margin-top:20px}.billing-receipt{border:1px solid var(--line);background:white;border-radius:9px;padding:20px;margin-top:16px}.billing-receipt p{margin:8px 0}.billing-receipt strong{font-size:22px;color:var(--accent)}.field{display:flex;flex-direction:column;gap:6px;max-width:480px;margin:15px 0;font-weight:600}input:not([type=checkbox]):not([type=file]),select{min-height:46px;width:100%;min-width:0;max-width:100%;font:inherit;font-size:16px;padding:10px;border:1px solid #a9b9c9;border-radius:6px;background:white;color:var(--navy)}input:focus-visible,select:focus-visible{outline:3px solid #009d91;outline-offset:3px}fieldset{min-width:0;border:1px solid var(--line);border-radius:9px;background:#fff;padding:20px;margin:18px 0}legend{font-weight:700;padding:0 6px}.check{display:flex;align-items:flex-start;gap:12px;padding:10px 0;cursor:pointer}.check input{width:20px;height:20px;min-width:20px;margin-top:3px;accent-color:var(--accent)}.check small{display:block;overflow-wrap:anywhere;color:var(--muted)}.rate-group{border-top:1px solid var(--line);padding-top:12px;margin-top:18px}.rate-group:first-child{border:0;margin:0;padding:0}.rate-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rate-fields .field{margin:10px 0}.calculate{margin-top:22px}#clear-data{margin-top:25px;font-size:14px}.run-details>.metrics{margin-top:20px;grid-template-columns:repeat(3,1fr)}.run-details .metric strong{font-size:24px}.run-details .section-heading h2{font-size:19px}@media(max-width:560px){.money-metrics{grid-template-columns:1fr 1fr}.money-metrics .metric{padding:18px 12px}.money-metrics .metric strong{font-size:26px}.money-metrics .metric .unknown{font-size:20px}.rate-fields{grid-template-columns:1fr;gap:0}.run-details>.metrics{grid-template-columns:1fr}fieldset{padding:15px}.money-overview .section-heading{display:block}.money-overview .section-heading>span{display:block;text-align:left;margin-top:6px}.billing-receipt{padding:16px}.check{font-size:15px}.calculate{width:100%}.run-details{padding:15px 12px}}

.example-periods{margin-top:30px}.example-periods .section-heading{margin-top:0}.period-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.period-card{min-width:0;border:1px solid #b2dcd2;border-top:3px solid var(--accent);border-radius:10px;background:#edf9f5;padding:22px}.period-card h3{display:flex;justify-content:space-between;gap:10px;align-items:center}.period-card h3 small{font-size:13px;font-weight:500;color:var(--muted)}.period-card>span{font-size:14px;color:var(--muted)}.period-card>strong{display:block;color:var(--accent);font-size:38px;letter-spacing:-1px;line-height:1.2;margin-top:9px;overflow-wrap:anywhere}.period-percent{font-size:14px;color:var(--accent);margin:8px 0 18px}.period-card dl{border-top:1px solid #c6e3da;margin:0;padding-top:14px;font-size:14px}.period-card dl>div{display:flex;justify-content:space-between;gap:12px;margin-top:7px}.period-card dt{color:var(--muted)}.period-card dd{margin:0;text-align:right;font-weight:700;overflow-wrap:anywhere}@media(max-width:700px){.period-cards{grid-template-columns:1fr}.example-periods .section-heading{display:block}.example-periods .section-heading>span{display:block;text-align:left;margin-top:7px}.period-card{padding:20px}.period-card>strong{font-size:34px}}
.real-example{margin-top:30px}.real-example>.section-heading{margin-top:0}.case-lead{font-size:20px;max-width:780px;margin:18px 0 8px}.case-lead strong{color:var(--accent);white-space:nowrap}.real-example h3{margin-top:26px}.real-example .period-card h3{margin-top:0}.case-note{padding:14px 16px;border-left:3px solid #8fa6bc;background:#eaf0f6;border-radius:4px;font-size:15px}.table-scroll{overflow-x:auto;margin:16px 0}.case-evidence table{width:100%;border-collapse:collapse;font-size:14px}.case-evidence th,.case-evidence td{text-align:left;border-bottom:1px solid #cbd6e3;padding:12px}.case-evidence td{white-space:nowrap}.real-example .export-buttons{margin-top:22px}.real-example .billing-receipt strong{font-size:clamp(19px,3vw,26px)}.real-example .billing-receipt h3{margin-top:0}@media(max-width:560px){.case-lead{font-size:18px}.case-evidence{padding:16px 12px}.case-evidence th,.case-evidence td{padding:10px 8px}.real-example .export-buttons button{flex:1}}

.account-link{color:white;text-decoration:none;min-height:44px;display:inline-flex;align-items:center;gap:7px;padding:8px 0;font-size:14px}.account-link:hover{text-decoration:underline}.account-link-hint{color:#4ce0cb}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.comparison-settings{margin-top:24px}.comparison-dates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.comparison-dates input{min-width:0;width:100%}#comparison-result{margin:28px 0}#comparison-result h3{margin-top:0}.comparison-settings .check{margin:16px 0}@media(max-width:680px){.comparison-dates{grid-template-columns:1fr}}

.spending-higher{background:#fff1ec;border-color:#bd4a30}.spending-higher>strong{color:#a73c26}
.billing-filename{font-weight:600;overflow-wrap:anywhere}
.money-metrics .metric.spending-higher{background:#fff1ec;border-color:#bd4a30}.money-metrics .metric.spending-higher strong{color:#a73c26}

#report-dialog{width:min(1000px,calc(100vw - 24px));height:min(900px,calc(100dvh - 24px));max-width:100%;max-height:100dvh;padding:0;border:1px solid var(--line);border-radius:12px;color:var(--navy);background:white;box-shadow:0 24px 80px #12263e55}#report-dialog[open]{display:flex;flex-direction:column}#report-dialog::backdrop{background:#12263e99}.report-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px}.report-dialog-header h2{margin:0;font-size:21px}#report-dialog-help{margin:0;padding:0 20px 16px;font-size:14px;color:var(--muted)}#report-frame{width:100%;flex:1;min-height:0;border:0;border-top:1px solid var(--line);background:white}@media(max-width:560px){.report-dialog-header{padding:12px}.report-dialog-header h2{font-size:18px}#report-dialog-help{padding:0 12px 12px}.export-buttons{flex-wrap:wrap}}

#scenario-pin{margin-top:12px}.scenario-comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.scenario-card{min-width:0;border:1px solid #b2dcd2;border-top:3px solid var(--accent);border-radius:10px;background:white;padding:22px;overflow-wrap:anywhere}.scenario-card h3{margin:0}.scenario-percent{display:block;color:var(--accent);font-size:38px;line-height:1.2;margin-top:8px}.scenario-card dl{font-size:14px}.scenario-card dl>div{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:9px 0}.scenario-card dt{color:var(--muted)}.scenario-card dd{margin:0;text-align:right;font-weight:600}.scenario-card.spending-higher{background:#fff1ec;border-color:#bd4a30}.scenario-card.spending-higher .scenario-percent{color:#a73c26}#scenario-comparison-exports{margin-top:22px;flex-wrap:wrap}@media(max-width:640px){.scenario-comparison-grid{grid-template-columns:1fr}.scenario-card{padding:18px}#scenario-comparison .section-heading{display:block}#scenario-unpin{margin-top:12px}}

.report-view-buttons{display:flex;gap:8px;padding:0 20px 14px}.report-view-buttons button[aria-pressed=true]{color:white;background:var(--accent);border-color:var(--accent)}#report-json-panel{display:flex;flex-direction:column;flex:1;min-height:0;padding:16px 20px;border-top:1px solid var(--line)}#report-json-panel>label{font-weight:700}#report-json-panel .method{margin:8px 0 12px}#report-copy-status{font-size:14px;min-height:21px;margin:10px 0;color:var(--muted)}#report-json{flex:1;min-height:100px;width:100%;resize:none;overflow:auto;border:1px solid #a9b9c9;border-radius:6px;padding:12px;font:13px/1.5 ui-monospace,monospace;background:#f5f7fa;color:var(--navy)}#report-json:focus-visible{outline:3px solid #009d91;outline-offset:2px}@media(max-width:560px){.report-view-buttons{padding:0 12px 12px}#report-json-panel{padding:12px}#report-json-panel .export-buttons{flex-wrap:wrap}}

/* Imported identifiers must fit narrow layouts without hiding their content. */
.check>span,.workflow-top>div{min-width:0}
button,.button{overflow-wrap:normal}

.import-guide{margin:0 0 28px;padding:20px;background:#edf3f8;border:1px solid var(--line)}.import-guide>summary{font-size:18px}.import-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}.import-guide-grid>section{min-width:0;padding:22px;background:white;border:1px solid var(--line);border-radius:9px}.import-guide-grid h2{margin-top:16px;font-size:21px}.import-guide-grid p,.import-guide-grid ol{font-size:15px}.import-guide-grid ol{padding-left:20px}.import-guide-grid li+li{margin-top:10px}.import-guide-grid code{font-size:13px;overflow-wrap:anywhere}.import-guide-grid .method,.import-guide-grid .guide-reference{font-size:14px}.guide-reference{margin-bottom:0}.guide-note{border-left:3px solid var(--accent);padding-left:14px}@media(max-width:900px){.import-guide-grid{grid-template-columns:1fr}}@media(max-width:560px){.import-guide{padding:16px 12px}.import-guide-grid>section{padding:18px}.import-guide-grid button,.import-guide-grid .button{width:100%}}
