.fbacalc{color-scheme:light;--bg:#faf8f4;--card:#fff;--ink:#2d2d2d;--muted:#6b6b6b;--line:#f0ebe1;--accent:#456946;--accent-soft:#f3f7f3;--green:#456946;--red:#c0392b;--amber:#c9881a;--warn-ink:#8a5a00;--warn-bg:#fdf6e6;--warn-line:#f0dfae;--warn-row:#fffaf0;--shadow:0 1px 2px rgba(20,30,50,.06),0 4px 16px rgba(20,30,50,.05);--figure:ui-monospace,"Cascadia Mono",Consolas,Menlo,monospace;color:var(--ink);font:14px/1.5 var(--font-inter),system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.fbacalc,.fbacalc *{box-sizing:border-box}.fbacalc .wrap{max-width:none;margin:0;padding:0}.fbacalc header.top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}.fbacalc header.top .sub{color:var(--muted);font-size:12.5px;margin-top:3px;max-width:620px}.fbacalc button.btn{border:1px solid var(--line);background:var(--card);color:var(--ink);padding:7px 12px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;font-family:inherit}.fbacalc button.btn:hover{border-color:#d9d0c0}.fbacalc button.btn:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.fbacalc .grid{display:grid;grid-template-columns:1fr 1.08fr;gap:16px;align-items:start}.fbacalc .grid>*{min-width:0}@media (max-width:900px){.fbacalc .grid{grid-template-columns:1fr}}.fbacalc .card{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:16px;margin-bottom:16px}.fbacalc .card h2{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 12px;font-weight:700}.fbacalc .section-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}@media (max-width:480px){.fbacalc .section-grid{grid-template-columns:1fr}}.fbacalc .field{display:flex;flex-direction:column;gap:3px}.fbacalc .field.full{grid-column:1/-1}.fbacalc .field label{font-size:12px;color:var(--muted);font-weight:600}.fbacalc .field .hint{font-weight:400;color:var(--muted);font-size:11px}.fbacalc .field input,.fbacalc .field select{padding:7px 9px;border:1px solid var(--line);border-radius:8px;font-size:13.5px;background:#fff;color:var(--ink);width:100%;font-family:inherit}.fbacalc .field input{font-family:var(--figure);font-variant-numeric:tabular-nums}.fbacalc .field input:focus,.fbacalc .field select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.fbacalc .inputwrap{position:relative}.fbacalc .inputwrap .adorn{position:absolute;top:50%;transform:translateY(-50%);color:var(--muted);font-size:12.5px;pointer-events:none}.fbacalc .inputwrap .adorn.left{left:9px}.fbacalc .inputwrap .adorn.right{right:9px}.fbacalc .inputwrap input.padl{padding-left:20px}.fbacalc .inputwrap input.padr{padding-right:26px}.fbacalc .estlink{font-size:11px;color:var(--accent);cursor:pointer;font-weight:600;margin-top:1px;display:inline-block;background:none;border:none;padding:0;text-align:left;font-family:inherit}.fbacalc .estlink:hover{text-decoration:underline}.fbacalc .estlink:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.fbacalc .banner{font-size:12.5px;background:var(--accent-soft);border:1px solid #c8dcc8;color:#395439;border-radius:8px;padding:10px 12px;margin-bottom:14px}.fbacalc .right{position:sticky;top:92px}.fbacalc .kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.fbacalc .kpi{border:1px solid var(--line);border-radius:10px;padding:11px 12px;background:#fff}.fbacalc .kpi .l{font-size:11.5px;color:var(--muted);font-weight:600}.fbacalc .kpi .l .lite{font-weight:400}.fbacalc .kpi .v{font-size:21px;font-weight:700;letter-spacing:-.01em;margin-top:2px;font-family:var(--figure);font-variant-numeric:tabular-nums slashed-zero}.fbacalc .kpi .s{font-size:11px;color:var(--muted)}.fbacalc .kpi.hero{grid-column:1/-1}.fbacalc .kpi.hero .v{font-size:27px}.fbacalc .kpi.good .v{color:var(--green)}.fbacalc .kpi.bad .v{color:var(--red)}.fbacalc .kpi.warn .v{color:var(--warn-ink)}.fbacalc .pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700}.fbacalc .pill.good{background:#e4ede4;color:var(--green)}.fbacalc .pill.bad{background:#fdecec;color:var(--red)}.fbacalc .pill.warn{background:#fbf2dd;color:var(--warn-ink)}.fbacalc .unv{font-size:11px;line-height:1;cursor:help;font-style:normal}.fbacalc .unvbox{background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:8px;padding:10px 12px;font-size:12.5px;line-height:1.5;margin-bottom:14px}.fbacalc .unvbox,.fbacalc .unvbox b{color:var(--warn-ink)}.fbacalc .headline{border:1px solid var(--line);border-left:3px solid var(--amber);background:#fff;border-radius:10px;padding:14px;margin-bottom:12px}.fbacalc .headline .big{font-size:21px;font-weight:700;letter-spacing:-.01em;line-height:1.3}.fbacalc .headline .big .amt{color:var(--red);font-family:var(--figure);font-variant-numeric:tabular-nums}.fbacalc .headline .say{font-size:13px;color:#4a4a4a;margin-top:6px;line-height:1.55}.fbacalc .headline .foot{margin-top:10px;padding-top:9px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);line-height:1.5}.fbacalc .headline.quiet .big{font-size:15px;font-weight:600;color:var(--ink)}.fbacalc .changes{border:1px solid var(--line);border-radius:10px;margin-bottom:14px;overflow:hidden}.fbacalc .changes h3{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#faf8f4;font-weight:700}.fbacalc .changes .row,.fbacalc .changes h3{padding:8px 12px;border-bottom:1px solid var(--line)}.fbacalc .changes .row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:13px}.fbacalc .changes .row:last-child{border-bottom:none}.fbacalc .changes .row b{font-family:var(--figure);font-variant-numeric:tabular-nums;color:var(--red);white-space:nowrap}.fbacalc .changes .row.none{color:var(--muted)}.fbacalc .changes .row.none b{color:var(--muted);font-weight:600}.fbacalc .changes .row.sum{background:#faf8f4;font-weight:700}.fbacalc .tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.fbacalc .stack{width:100%;min-width:430px;border-collapse:collapse;font-size:13px}.fbacalc .stack th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700;padding:0 4px 8px;text-align:left;border-bottom:1px solid var(--line);vertical-align:bottom}.fbacalc .stack th.r{text-align:right}.fbacalc .stack th .th2{display:block;font-size:10px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--muted)}.fbacalc .stack td{padding:8px 4px;border-bottom:1px solid var(--line)}.fbacalc .stack td.r{text-align:right;font-family:var(--figure);font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.fbacalc .stack td.d{color:var(--muted);font-weight:600}.fbacalc .stack td.d.moved{color:var(--red);font-weight:700}.fbacalc .stack tr.moved td{background:var(--warn-row)}.fbacalc .stack tr.grp td{background:#faf8f4;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700;padding:7px 4px}.fbacalc .stack tr.tot td{font-weight:700;border-top:2px solid var(--line);border-bottom:none}.fbacalc .stack .cost,.fbacalc .stack tr.tot td.d.moved{color:var(--red)}.fbacalc .stack td .sub{display:block;font-size:11px;color:var(--muted);font-weight:400;font-family:var(--font-inter),system-ui,sans-serif;white-space:normal}.fbacalc .tag{font-size:11px;color:var(--muted);background:#faf8f4;border:1px solid var(--line);border-radius:6px;padding:3px 8px;font-weight:600}.fbacalc .explain{font-size:12px;line-height:1.55;color:#4a4a4a;background:#faf8f4;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:8px;padding:10px 12px;margin-top:10px}.fbacalc .explain b{color:var(--ink)}.fbacalc details.method{margin-top:8px}.fbacalc details.method summary{cursor:pointer;font-weight:600;font-size:12.5px;color:var(--accent)}.fbacalc details.method div{font-size:12px;color:var(--muted);margin-top:8px;line-height:1.6}.fbacalc details.method p{margin:0 0 8px}.fbacalc .toggle{display:flex;align-items:flex-start;gap:9px;font-size:13px;font-weight:600;cursor:pointer;line-height:1.45;color:var(--ink)}.fbacalc .toggle input{width:auto;flex:none;margin-top:2px;accent-color:var(--accent)}.fbacalc .optnote{font-size:12px;line-height:1.6;color:#4a4a4a;background:#faf8f4;border:1px solid var(--line);border-left:3px solid var(--muted);border-radius:8px;padding:10px 12px;margin-top:12px}.fbacalc .optnote b{color:var(--ink)}.fbacalc .kpinote{font-size:12px;line-height:1.55;color:var(--muted);margin:-4px 0 14px;padding:0 2px}.fbacalc .kpinote b{color:var(--ink)}