@charset "UTF-8";
.energy-texture{display:none}
.deficit-note{border-color:#f29c9355;background:#f29c9308}.deficit-note>strong,.deficit-note li strong{color:var(--red)}.deficit-note p{margin:6px 0}.chart-deficit{cursor:pointer}
:root{color-scheme:dark;--bg:#101a1d;--panel:#18262b;--panel2:#1d2b31;--ink:#e8f0f2;--muted:#9badb4;--line:rgba(183,210,220,.17);--blue:#a6cee8;--green:#79be59;--mint:#70d6bb;--gold:#d9c395;--red:#f29c93;--font:"Segoe UI","Microsoft YaHei","PingFang SC",sans-serif;--radius:12px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:150px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.65;font-variant-numeric:tabular-nums;overflow-x:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--blue);outline-offset:4px}button{touch-action:manipulation}a{color:var(--blue)}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1{font-size:32px;font-weight:550;letter-spacing:-.6px;line-height:1.35}h2{font-size:22px;line-height:1.45;font-weight:550}h3{font-size:17px;font-weight:600}small{font-size:12px}svg{display:block;max-width:100%}::selection{background:#a6cee83d}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;padding:10px;background:var(--panel)}.skip-link:focus{top:10px}.ambient{position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 80% -10%,rgba(102,156,168,.15),transparent 55%),radial-gradient(ellipse at -10% 55%,rgba(84,139,106,.07),transparent 50%),linear-gradient(120deg,#111c20,#0f181c 70%)}
.masthead{height:88px;padding:0 max(28px,calc((100vw - 1360px)/2));border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px;background:rgba(16,26,29,.88);backdrop-filter:blur(18px);position:relative;z-index:15}.brand{display:flex;align-items:center;gap:15px;color:var(--ink);text-decoration:none;flex-shrink:0}.brand img{object-fit:contain;width:94px;height:38px}.brand-text{font-size:20px;font-weight:650;letter-spacing:3px;border-left:1px solid var(--line);padding-left:16px;line-height:1.3}.brand-text small{display:block;font-size:10px;font-weight:400;letter-spacing:2px;color:var(--muted);margin-top:5px}.product-switch{display:flex;background:#0a141780;border:1px solid var(--line);padding:4px;border-radius:9px;gap:4px}.product-switch button{border:0;background:transparent;color:var(--muted);padding:9px 24px;border-radius:6px;font-size:14px;white-space:nowrap;transition:background .25s,color .25s}.product-switch .selected{background:#32434c;color:#eaf3f7;box-shadow:inset 0 1px 0 #ffffff12}.header-actions,.title-actions{display:flex;align-items:center;gap:10px}.save-status{font-size:11px;color:var(--muted);margin-right:8px;white-space:nowrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:10px 18px;min-height:44px;border:1px solid var(--line);border-radius:7px;background:#23343a;color:var(--ink);font-size:13px;font-weight:550;text-decoration:none;transition:background .18s,border-color .18s}.button:hover{background:#31454d;border-color:#a6cee85c}.button.quiet{background:transparent}.button.quiet:hover{background:#a6cee810}.export-primary{background:linear-gradient(110deg,#c5e6d9,#8fd0b8);border-color:#a6dbc9;color:#0d2820;box-shadow:0 3px 18px #70d6bb0b}.export-primary:hover{background:#c0e9db;border-color:#d8f0e7}.button.danger{color:var(--red);border-color:#f29c9338}.workspace{width:min(1280px,calc(100% - 64px));margin:0 auto}.workbench-title{padding:40px 0 25px;display:flex;align-items:center;justify-content:space-between;gap:24px}.title-context{display:flex;gap:9px;align-items:center;color:var(--blue);font-size:12px;margin-bottom:12px}.live-dot{height:6px;width:6px;border-radius:50%;background:var(--green);box-shadow:0 0 14px #79be593b}.version-label{color:#6f8791;margin-left:10px;padding-left:16px;border-left:1px solid var(--line);font-size:10px}#projectSubtitle{color:var(--muted);font-size:13px;margin-top:8px}.demo-notice{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 15px;border:1px solid #d9c39526;background:#d9c39508;border-radius:6px;font-size:12px;color:#b9b5a9;margin:0 0 18px}.demo-notice b{font-weight:550;color:var(--gold)}.demo-notice button{background:none;border:0;white-space:nowrap;color:var(--gold);min-height:32px}.storage-notice{border:1px solid #f29c9350;background:#f29c9310;color:var(--red);padding:14px;margin-bottom:16px;border-radius:8px}.overview-strip{display:grid;grid-template-columns:1.45fr 1.45fr 1fr .8fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin-bottom:26px}.overview-strip>div{padding:0 30px;border-right:1px solid var(--line);min-width:0}.overview-strip>div:first-child{padding-left:0}.overview-strip>div:last-child{border-right:0;padding-right:0}.overview-strip span{display:block;color:var(--muted);font-size:12px}.overview-strip strong{display:block;font-size:32px;font-weight:500;letter-spacing:-.8px;line-height:1.4;margin:5px 0;color:var(--ink);white-space:nowrap}.overview-strip strong small{font-size:14px;font-weight:400;letter-spacing:0;margin-left:5px;color:var(--muted)}.overview-strip>div>small{display:block;color:#7f969f;font-size:11px}.overview-strip .overview-compact strong{font-size:26px;line-height:1.72}.overview-main:first-child strong{color:#c5dfb7}.overview-main:nth-child(2) strong{color:var(--blue)}.module-nav{display:flex;align-items:stretch;border-bottom:1px solid var(--line);gap:12px;position:sticky;top:0;background:#111c20ee;backdrop-filter:blur(18px);z-index:12;padding-top:3px}.module-nav button{flex:1;min-height:61px;background:transparent;border:0;border-bottom:2px solid transparent;color:#8098a3;font-size:14px;white-space:nowrap;transition:all .2s}.module-nav button span{font-size:10px;color:#647e89;margin-right:12px}.module-nav button.active{color:var(--ink);border-color:var(--mint);background:linear-gradient(0deg,#70d6bb0c,transparent)}.module-nav button.active span{color:var(--mint)}.module-nav button:hover{color:var(--ink)}.module-panel{min-height:570px;padding:30px 0 20px}.boot-message{padding:90px;text-align:center;color:var(--muted)}.section-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:23px}.section-intro p{margin-top:6px;font-size:12px;color:var(--muted)}.section-intro .section-kicker{font-size:10px;letter-spacing:1px;color:var(--mint);margin-bottom:6px}.configuration-layout{display:grid;grid-template-columns:minmax(0,1fr) 278px;gap:24px;align-items:start}.form-section{border:1px solid var(--line);border-radius:10px;background:linear-gradient(120deg,#c9e2ed08,#c9e2ed02);margin-bottom:18px;overflow:hidden}.form-section-header{padding:20px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.form-section-header h3{font-size:15px}.section-index{color:#7b9ca6;margin-right:10px;font-size:11px;font-weight:400}.form-section-header small{color:var(--muted);font-size:11px}.form-section-body{padding:21px 22px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 18px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field{display:flex;flex-direction:column;min-width:0;gap:7px}.field.span2{grid-column:span 2}.field.full{grid-column:1/-1}.field-label{font-size:12px;color:#c5d2d8;display:flex;align-items:center;gap:7px}.field-label .optional{color:#6f8891;font-size:10px}.field-control{display:flex;align-items:center;min-width:0;background:#0d191eb5;border:1px solid #a6cee82e;border-radius:6px;transition:border-color .2s,background .2s}.field-control:focus-within{border-color:#a6cee8a6;background:#13242b;box-shadow:0 0 0 3px #a6cee808}.field-control input,.field-control select{width:100%;min-width:0;min-height:46px;padding:10px 13px;color:#edf4f6;background:none;border:0;outline:none;font-size:16px;line-height:1.5}.field-control input::placeholder{color:#4e6974;font-size:13px}.field-control input:focus-visible,.field-control select:focus-visible{outline:none}.field-control select{font-size:14px;appearance:auto}.field-control select option{background:#19292f}.field-control .unit{padding-right:12px;flex-shrink:0;font-size:11px;color:#7e9aa6}.field input[type=number]{appearance:textfield;-moz-appearance:textfield}.field input::-webkit-inner-spin-button{appearance:none}.field textarea{min-height:80px;resize:vertical;background:#0d191eb5;border:1px solid #a6cee82e;border-radius:6px;color:var(--ink);padding:11px 13px;font-size:14px;max-width:100%}.field-help{font-size:10px;color:#718b96;line-height:1.6}.field-error{font-size:11px;color:var(--red);line-height:1.6;display:none}.field.invalid .field-control{border-color:#e19c8b99}.field.invalid .field-error{display:block}.toggle-row{display:flex;align-items:center;gap:10px;font-size:13px;color:#c5d2d8;cursor:pointer}.toggle-row input{accent-color:var(--mint);width:17px;height:17px}.subsection{border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.subsection-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;font-size:13px}.small-button{border:1px solid var(--line);padding:6px 12px;background:#c8e3ed06;border-radius:5px;font-size:11px;min-height:32px}.small-button:hover{background:#c8e3ed12}.rule-row{display:grid;grid-template-columns:1fr 1fr 1.5fr 34px;gap:12px;align-items:end;margin-bottom:12px}.remove-row{border:1px solid #f29c9325;background:transparent;border-radius:5px;color:#aa8581;height:46px;font-size:20px}.mode-switch{display:flex;gap:8px;background:#0c171b66;border:1px solid var(--line);padding:4px;border-radius:7px}.mode-switch button{flex:1;background:transparent;border:0;border-radius:4px;padding:11px;font-size:13px;color:var(--muted)}.mode-switch button.active{background:#a6cee820;color:var(--blue)}.model-notes{font-size:11px;color:var(--muted);line-height:1.8;border-top:1px solid var(--line);margin-top:18px;padding-top:15px}.form-tip{color:var(--muted);font-size:11px;margin:12px 0 0}.cycle-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;font-size:13px;color:var(--blue)}.cycle-block+.cycle-block{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}.replacement-row{display:grid;grid-template-columns:1fr 1.4fr 1fr 34px;gap:10px;align-items:end;margin-top:12px}
.input-aside{position:sticky;top:85px}.aside-card{border:1px solid var(--line);border-radius:10px;background:linear-gradient(150deg,#a6cee810,#a6cee802);padding:23px;margin-bottom:16px}.aside-card .aside-title{color:var(--blue);font-size:11px}.aside-card h3{font-size:18px;margin:6px 0 17px}.completion-line{height:3px;background:#aecbd318;border-radius:2px;overflow:hidden;margin-bottom:18px}.completion-line i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--mint));transition:width .4s}.aside-row{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--line);font-size:11px;color:var(--muted)}.aside-row strong{font-weight:500;color:var(--ink);text-align:right;overflow-wrap:anywhere}.aside-row:last-child{border:0}.aside-card .button{margin-top:20px;width:100%}.aside-note{font-size:11px;color:#77919b;line-height:1.8;padding:0 10px}.aside-note strong{display:block;color:#adc0c9;font-size:12px;margin-bottom:8px}.validation-summary{padding:15px 18px;margin-top:15px;border:1px solid #f29c9340;border-radius:6px;background:#f29c9306;color:#e4aea3;font-size:12px}.validation-summary ul{margin:8px 0 0;padding-left:20px}.validation-summary li{margin-bottom:3px}.form-end{display:flex;justify-content:flex-end;padding:4px 0 22px;gap:12px}.empty-state{padding:60px 24px;text-align:center;max-width:620px;margin:25px auto}.empty-state h2{margin-bottom:12px}.empty-state p{color:var(--muted);font-size:14px;margin:0 0 24px}.empty-state .empty-number{font-size:60px;line-height:1;color:#a6cee830;margin-bottom:25px;font-weight:300}
.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.result-panel{border:1px solid var(--line);background:linear-gradient(145deg,#bddeef08,#bddeef02);border-radius:10px;padding:24px;min-width:0}.result-panel.wide{grid-column:1/-1}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:20px}.panel-heading h3{font-size:15px;font-weight:550}.panel-heading p{font-size:11px;color:var(--muted);margin-top:5px}.panel-heading>span{color:#829ba6;font-size:11px}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-bottom:22px}.metric{background:#18252a;padding:22px;min-width:0}.metric span{display:block;font-size:11px;color:var(--muted)}.metric strong{font-size:25px;display:block;margin:5px 0;line-height:1.5;letter-spacing:-.6px;font-weight:500;overflow-wrap:anywhere}.metric strong small{font-size:12px;font-weight:400;color:var(--muted);letter-spacing:0;margin-left:4px}.metric p{font-size:10px;color:#78929d}.metric.green strong{color:#b5dba1}.metric.blue strong{color:var(--blue)}.metric.gold strong{color:var(--gold)}.negative{color:var(--red)!important}.chart-wrap{position:relative;min-height:240px}.chart-wrap svg{width:100%;height:auto;overflow:visible}.chart-grid{stroke:#bacdd51a;stroke-width:1}.chart-axis{fill:#7e97a1;font-family:var(--font);font-size:11px}.chart-label{fill:#c3d4db;font-family:var(--font);font-size:11px}.chart-series{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.chart-dot{cursor:pointer;transition:r .2s}.chart-dot:hover,.chart-dot.selected{r:5}.chart-hit{fill:transparent;cursor:pointer}.chart-legend{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:10px;font-size:11px;color:#a0b4bc}.chart-legend span{display:inline-flex;align-items:center;gap:7px}.chart-legend i{width:14px;height:3px;border-radius:2px;background:var(--c,var(--blue))}.chart-caption{margin-top:14px;font-size:11px;color:#718c96;line-height:1.7}.flow-line{fill:none;stroke:#91b9ba35;stroke-width:1.2}.flow-pulse{fill:none;stroke:var(--mint);stroke-width:2;stroke-dasharray:8 48;animation:flow-travel 4s linear infinite;opacity:.6}.flow-node{fill:#182a30;stroke:#abcbd238;stroke-width:1}.flow-number{fill:#e8f0f2;font-size:20px;font-weight:500}.flow-name{fill:#9db5bf;font-size:11px}.flow-unit{fill:#6e8b95;font-size:10px}.flow-source{fill:#abcbd20a;stroke:#b8d8c75a}.flow-source-value{fill:#bbdba9;font-size:24px;font-weight:500}@keyframes flow-travel{to{stroke-dashoffset:-112}}.year-selector{display:flex;align-items:center;gap:16px;margin-bottom:22px;padding:15px 20px;background:#a6cee808;border:1px solid var(--line);border-radius:8px}.year-selector label{font-size:12px;white-space:nowrap;color:var(--muted)}.year-selector input{accent-color:var(--blue);flex:1;min-width:0}.year-selector output{min-width:63px;color:var(--blue);font-size:16px;text-align:right}.selected-year-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:8px;margin-bottom:22px;background:#d9c39505;overflow:hidden}.selected-year-metrics>div{padding:17px 22px;border-right:1px solid var(--line);min-width:0}.selected-year-metrics>div:last-child{border:0}.selected-year-metrics span{display:block;color:var(--muted);font-size:11px}.selected-year-metrics strong{font-size:19px;font-weight:500;line-height:1.5;display:block;margin-top:6px;overflow-wrap:anywhere}.selected-year-metrics strong small{font-size:11px;color:var(--muted);margin-left:4px}.detail-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px;max-height:600px;scrollbar-width:thin;scrollbar-color:#536f7b #17252a}.detail-table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}.detail-table th{background:#24343b;color:#a9c2cd;font-size:10px;font-weight:500;text-align:right;padding:13px 15px;position:sticky;top:0;z-index:1}.detail-table th:first-child,.detail-table td:first-child{text-align:left}.detail-table td{text-align:right;padding:13px 15px;border-top:1px solid #adcbd312;color:#cbd9df}.detail-table tbody tr:nth-child(even){background:#b4d3dd03}.detail-table tbody tr.selected{background:#a6cee813}.detail-table tbody tr:hover{background:#a6cee80b}.detail-table tfoot td{background:#25353a;color:var(--ink);font-weight:550}.table-topline{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:30px 0 15px}.table-topline h3{font-size:16px}.table-topline span{font-size:11px;color:var(--muted)}.note-list{font-size:12px;line-height:1.9;color:var(--muted);margin:15px 0 0;padding-left:18px}.source-note{font-size:11px;line-height:1.9;color:#7b959f;margin-top:20px;border-top:1px solid var(--line);padding-top:15px;overflow-wrap:anywhere}.source-note a{color:#a6cee8b3}.business-equation{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:15px;align-items:center;padding:18px 0}.business-equation>div{text-align:center}.business-equation span{display:block;color:var(--muted);font-size:11px}.business-equation strong{font-size:23px;font-weight:500;display:block;margin-top:10px}.business-equation>i{font-style:normal;font-size:20px;color:#63808c}.proportion-track{height:10px;display:flex;overflow:hidden;border-radius:5px;background:#a6cee810;margin-top:20px}.proportion-track i{height:100%;background:var(--c)}.warning-note{font-size:12px;color:var(--gold);border:1px solid #d9c39530;padding:14px 18px;border-radius:7px;margin:18px 0;background:#d9c39505}.no-carbon{display:flex;align-items:center;gap:24px;padding:30px 10px}.no-carbon .em-dash{font-size:64px;font-weight:200;color:#69828d}.no-carbon p{font-size:12px;color:var(--muted);margin-top:9px;max-width:600px}.data-pair{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.data-pair strong{color:var(--ink);font-weight:500;text-align:right}.data-pair:last-child{border:0}.term-badge{display:inline-block;padding:3px 9px;border:1px solid #d9c39550;color:var(--gold);background:#d9c39508;border-radius:4px;font-size:10px}.workspace-footer{display:flex;justify-content:space-between;gap:20px;padding:26px 0 35px;margin-top:20px;border-top:1px solid var(--line);font-size:11px;color:#68828d}.workspace-footer>span{display:flex;align-items:center;gap:10px}.workspace-footer i{width:2px;height:2px;background:#68828d}.workspace-footer div{display:flex;gap:20px}.workspace-footer button{border:0;background:none;font-size:11px;color:#8ea6af;padding:5px 0}.workspace-footer button:hover{color:var(--ink)}.mobile-actions{display:none}
dialog{color:var(--ink);background:#16252bf5;border:1px solid #abcbd244;border-radius:14px;padding:0;width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 48px);box-shadow:0 25px 90px #0008;overflow:auto;backdrop-filter:blur(24px)}dialog::backdrop{background:#061015b5;backdrop-filter:blur(6px)}.dialog-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:25px 28px 22px;border-bottom:1px solid var(--line)}.dialog-header p{font-size:10px;color:var(--blue);margin-bottom:8px}.dialog-header h2{font-size:22px}.icon-button{background:transparent;border:1px solid var(--line);border-radius:5px;font-size:22px;width:36px;height:36px;line-height:1}.dialog-body{padding:25px 28px}.dialog-body>p{font-size:13px;color:var(--muted);margin-bottom:18px}.dialog-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;flex-wrap:wrap}.export-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px}.export-option{border:1px solid var(--line);border-radius:9px;padding:19px;display:block;cursor:pointer;background:#dbe7ee04;position:relative}.export-option:has(input:checked){border-color:#a6cee89c;background:#a6cee80c}.export-option input{position:absolute;right:14px;top:14px;accent-color:var(--mint)}.report-thumb{width:58px;height:75px;border:1px solid #c3d7de66;border-radius:3px;margin-bottom:16px;padding:9px 7px;background:#1b2a30}.report-thumb.light{background:#edf1ed;border-color:#edf1ed}.report-thumb i{display:block;height:2px;background:#a6cee877;margin-bottom:5px}.report-thumb.light i{background:#60757966}.report-thumb i:first-child{height:5px;background:var(--green);width:18px;margin-bottom:10px}.report-thumb i:nth-child(3){width:75%}.export-option strong{font-size:14px;display:block}.export-option small{font-size:11px;color:var(--muted);display:block;margin-top:6px}.export-modules{display:flex;flex-wrap:wrap;gap:6px 14px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px;color:#9eb5be}.export-summary{font-size:12px;color:var(--muted);margin:15px 0}.progress-track{height:5px;background:#a6cee815;border-radius:4px;overflow:hidden;margin-top:22px}.progress-track i{height:100%;background:linear-gradient(90deg,var(--blue),var(--mint));display:block;transition:width .2s}.progress-label{display:flex;justify-content:space-between;font-size:12px;color:var(--blue);margin-top:13px}.export-done{padding:25px 0;text-align:center}.export-done strong{display:block;font-size:24px;font-weight:500;color:#b3d8c2;margin-bottom:8px}.export-done p{font-size:12px;color:var(--muted)}.file-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:25px}.project-record{border-bottom:1px solid var(--line);padding:16px 0;display:flex;gap:16px;align-items:center;justify-content:space-between}.project-record strong{font-size:14px;font-weight:500;overflow-wrap:anywhere}.project-record small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.project-record .record-actions{display:flex;gap:8px;flex-shrink:0}.help-text h3{font-size:14px;margin:22px 0 8px;color:var(--blue)}.help-text h3:first-child{margin-top:0}.help-text p{font-size:12px;color:var(--muted);line-height:1.9}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);padding:13px 22px;background:#d5e7e5;color:#142d2e;border-radius:7px;box-shadow:0 10px 45px #0004;z-index:100;max-width:calc(100vw - 32px);font-size:13px}.toast button{margin-left:18px;background:none;border:0;border-bottom:1px solid #24413c;color:#24413c;font-weight:600}.paused .flow-pulse{animation-play-state:paused}
@media(min-width:1600px){.workbench-title{padding-top:48px}.module-panel{padding-top:34px}}
@media(max-width:1100px){.masthead{padding:0 24px;gap:16px}.brand-text{font-size:18px;letter-spacing:2px}.brand img{width:75px}.save-status{display:none}.product-switch button{padding:9px 17px}.configuration-layout{grid-template-columns:minmax(0,1fr) 240px;gap:18px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-strip>div{padding:0 22px}.overview-strip strong{font-size:27px}.overview-strip .overview-compact strong{font-size:22px}.result-panel{padding:21px}}
@media(max-width:820px){.masthead{height:auto;min-height:80px;flex-wrap:wrap;padding:18px 25px 0;gap:16px}.brand{flex:1}.product-switch{order:3;width:100%;border:0;border-top:1px solid var(--line);border-radius:0;margin-top:0;padding:9px 0;background:none}.product-switch button{flex:1}.header-actions .export-primary{display:none}.workspace{width:calc(100% - 48px)}.workbench-title{padding-top:28px}.configuration-layout{grid-template-columns:1fr}.input-aside{display:none}.overview-strip{grid-template-columns:1fr 1fr;gap:20px 0;padding:22px 0;margin-bottom:18px}.overview-strip>div{padding:0 22px}.overview-strip>div:nth-child(2){border:0;padding-right:0}.overview-strip>div:nth-child(3){padding-left:0}.overview-strip>div:nth-child(4){padding-left:22px}.overview-strip strong{font-size:29px}.overview-strip .overview-compact strong{font-size:22px;line-height:1.4}.module-nav{gap:0}.module-nav button{font-size:13px;min-height:58px}.module-nav button span{margin-right:6px;font-size:9px}.result-grid{grid-template-columns:1fr}.metric{padding:18px}.metric strong{font-size:22px}.workspace-footer{flex-direction:column;gap:14px}.workspace-footer div{gap:22px}.selected-year-metrics{grid-template-columns:1fr 1fr}.selected-year-metrics>div:nth-child(2){border-right:0}.selected-year-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:520px){body{font-size:14px}.masthead{padding:16px 18px 0}.brand{gap:11px}.brand img{width:72px;height:30px}.brand-text{font-size:17px;padding-left:12px;letter-spacing:2px}.brand-text small{font-size:9px;margin-top:4px}.header-actions .button{padding:8px 12px;font-size:12px;min-height:39px}.product-switch{padding-top:9px}.product-switch button{padding:9px;font-size:13px}.workspace{width:calc(100% - 32px)}h1{font-size:24px;letter-spacing:-.3px}h2{font-size:19px}.workbench-title{padding:25px 0 20px;display:block}.title-context{font-size:10px;margin-bottom:12px}.version-label{font-size:9px;padding-left:10px;margin-left:0}.title-actions{margin-top:16px;gap:8px}.title-actions .button{padding:7px 13px;min-height:36px;font-size:11px}#projectSubtitle{font-size:11px;line-height:1.8;margin-top:9px}.demo-notice{padding:11px 12px;font-size:10px;align-items:flex-start;gap:8px;margin-bottom:17px;line-height:1.8}.demo-notice span{flex:1}.demo-notice b{display:block}.demo-notice button{font-size:10px;padding:0 0 0 5px;min-height:32px}.overview-strip{padding:20px 0;gap:17px 0}.overview-strip>div{padding:0 16px}.overview-strip>div:nth-child(4){padding-left:16px}.overview-strip span{font-size:10px}.overview-strip strong{font-size:24px;letter-spacing:-.5px;white-space:normal}.overview-strip strong small{font-size:11px;margin-left:4px}.overview-strip>div>small{font-size:9px}.overview-strip .overview-compact strong{font-size:22px}.module-nav{margin:0 -16px;padding:0 9px;top:0;border-top:1px solid var(--line)}.module-nav button{min-height:67px;font-size:11px;line-height:1.4;padding:10px 2px}.module-nav button span{display:block;margin:0 0 6px;font-size:9px}.module-panel{padding-top:23px;min-height:430px}.section-intro{align-items:flex-start;gap:10px;margin-bottom:19px}.section-intro p{font-size:11px;line-height:1.8;max-width:240px}.section-intro h2{font-size:19px}.section-intro .button{font-size:10px;min-height:34px;padding:6px 10px;white-space:nowrap}.form-section{border-radius:8px;margin-bottom:15px}.form-section-header{padding:17px 16px;align-items:flex-start}.form-section-header h3{font-size:14px}.form-section-header small{font-size:9px;max-width:120px;text-align:right}.form-section-body{padding:19px 15px}.form-grid,.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 12px}.field-label{font-size:11px;gap:5px;line-height:1.6;min-height:18px}.field-label .optional{font-size:9px}.field-control input,.field-control select{min-height:47px;font-size:16px;padding:10px}.field-control select{font-size:13px}.field-control .unit{padding-right:8px;font-size:10px}.field-control input::placeholder{font-size:11px}.field-help{font-size:9px}.field.span2{grid-column:1/-1}.field textarea{font-size:16px}.rule-row{grid-template-columns:1fr 1fr 1.3fr 26px;gap:7px}.rule-row .field-control input{padding-left:8px;padding-right:4px}.rule-row .field-control .unit{padding-right:5px;font-size:9px}.rule-row .field-label{font-size:10px}.replacement-row{grid-template-columns:1fr 1.4fr 1fr 26px;gap:7px}.replacement-row .field-control input{padding:10px 7px}.replacement-row .field-control .unit{padding-right:4px;font-size:9px}.replacement-row .field-label{font-size:9px}.remove-row{font-size:18px}.section-index{font-size:10px;margin-right:7px}.subsection-title{font-size:12px}.model-notes{font-size:10px}.metric-grid{grid-template-columns:1fr;margin-bottom:17px}.metric{display:grid;grid-template-columns:1fr auto;align-items:center;padding:15px 17px;gap:0 12px}.metric span{font-size:11px}.metric strong{grid-row:span 2;text-align:right;font-size:24px;margin:0;line-height:1.5}.metric strong small{font-size:11px}.metric p{font-size:9px;margin-top:4px}.result-grid{gap:17px}.result-panel{padding:20px 16px;border-radius:8px}.panel-heading{margin-bottom:18px}.panel-heading h3{font-size:14px}.panel-heading p{font-size:10px}.panel-heading>span{font-size:10px;white-space:nowrap}.chart-wrap{min-height:160px}.chart-legend{font-size:10px;gap:10px 15px}.chart-caption{font-size:10px}.chart-axis{font-size:10px}.year-selector{padding:12px 14px;gap:10px;margin-bottom:17px}.year-selector label{font-size:10px}.year-selector output{font-size:13px;min-width:53px}.selected-year-metrics{margin-bottom:17px}.selected-year-metrics>div{padding:15px}.selected-year-metrics span{font-size:10px}.selected-year-metrics strong{font-size:19px}.selected-year-metrics strong small{font-size:10px}.business-equation{gap:7px;padding:5px 0}.business-equation span{font-size:9px}.business-equation strong{font-size:18px}.business-equation>i{font-size:15px}.table-topline{margin-top:25px;gap:10px}.table-topline h3{font-size:14px}.table-topline span{font-size:9px}.detail-table th{font-size:9px;padding:11px 12px}.detail-table td{font-size:11px;padding:12px}.no-carbon{padding:15px 0;gap:17px}.no-carbon .em-dash{font-size:45px}.no-carbon p{font-size:11px}.no-carbon h3{font-size:15px}.workspace-footer{margin-bottom:85px;padding-bottom:15px;font-size:10px}.workspace-footer div{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.workspace-footer button{font-size:10px;text-align:left;min-height:36px}.mobile-actions{position:fixed;display:flex;gap:12px;bottom:0;left:0;right:0;padding:13px 16px calc(13px + env(safe-area-inset-bottom));background:#142229f2;border-top:1px solid var(--line);backdrop-filter:blur(18px);z-index:15}.mobile-actions .button{flex:1;font-size:13px}.mobile-actions .export-primary{flex:1.6}.toast{bottom:90px;width:max-content;max-width:calc(100vw - 32px);font-size:12px}.dialog-header{padding:22px 20px 18px}.dialog-header h2{font-size:20px}.dialog-body{padding:22px 20px}.export-options{gap:10px}.export-option{padding:16px 13px}.export-option small{font-size:10px}.export-option strong{font-size:13px}.dialog-actions .button{flex:1}.project-record{align-items:flex-start;flex-direction:column;gap:12px}.project-record .record-actions{width:100%;justify-content:flex-end}.empty-state{padding:45px 15px}.empty-state p{font-size:12px}.form-end{padding-bottom:10px}.form-end .button{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.masthead,.workspace,.mobile-actions,dialog,.toast,.ambient{display:none!important}body{background:#fff}}

/* Field-work readability: compact metadata stays secondary; working copy is readable at arm's length. */
.product-switch button,.mode-switch button,.demo-notice button,.workspace-footer button,.toggle-row{min-height:44px}
.toast.dialog-toast{position:sticky;top:0;bottom:auto;left:auto;transform:none;width:auto;max-width:none;margin:14px 18px 0;z-index:2;font-size:14px}.dialog-toast button{min-height:44px}
.metric.negative strong{color:var(--red)}.warning-note ul{padding-left:20px;margin:7px 0 0}.warning-note li{margin:4px 0}
.workbench-title>div:first-child{min-width:0}h1{overflow-wrap:anywhere}.title-actions{flex-shrink:0}
.year-selector input{min-height:44px}
.notice-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.storage-notice p{font-size:14px;margin-top:7px;line-height:1.7}
@media(min-width:521px) and (max-width:820px){.header-actions .export-primary{display:inline-flex}}
.section-intro p{font-size:15px;line-height:1.75}.field-label{font-size:14px}.field-help,.form-tip,.model-notes{font-size:13px;line-height:1.8}.field-error{font-size:13px}.form-section-header h3,.panel-heading h3{font-size:17px}.panel-heading p{font-size:13px}.metric span,.data-pair{font-size:14px}.metric p{font-size:12px}.metric strong{font-size:29px}.chart-legend{font-size:13px}.chart-axis,.chart-label{font-size:13px}.flow-name{font-size:15px}.flow-unit{font-size:13px}.flow-number{font-size:23px}.flow-source-value{font-size:27px}.source-note{font-size:13px}.detail-table{font-size:14px}.detail-table th{font-size:12px}.note-list,.warning-note{font-size:14px}.dialog-body>p,.help-text p{font-size:15px}.help-text h3{font-size:17px}.small-button,.icon-button{min-height:44px;min-width:44px}.table-scroll-hint{font-size:12px;color:var(--muted);margin:0 0 9px}.offscreen .flow-pulse{animation-play-state:paused}.chart-wrap{overflow:hidden}
@media(max-width:820px){.section-intro p{font-size:15px}.metric strong{font-size:26px}}
@media(max-width:520px){
  body{font-size:16px}.header-actions .button,.title-actions .button,.demo-notice button,.section-intro .button,.workspace-footer button{min-height:44px}.product-switch button{min-height:44px;font-size:15px}.title-actions .button{font-size:13px}#projectSubtitle{font-size:13px}.demo-notice{font-size:12px}.demo-notice button{font-size:12px;white-space:normal;max-width:100px}.overview-strip span{font-size:12px}.overview-strip>div>small{font-size:11px}.module-nav button{font-size:13px}.module-nav button span{font-size:10px}.section-intro h2{font-size:22px}.section-intro p{font-size:15px;max-width:none}.section-intro .button{font-size:12px}.form-section-header h3{font-size:16px}.form-section-header small{font-size:11px}.field-label{font-size:14px;min-height:22px}.field-label .optional{font-size:11px}.field-control select{font-size:16px}.field-control .unit{font-size:11px}.field-control input::placeholder{font-size:13px}.field-help{font-size:12px}.field[data-path^="carbon."]{grid-column:1/-1}.form-tip,.model-notes{font-size:13px}.subsection-title{font-size:15px}.rule-row,.replacement-row{grid-template-columns:1fr 1fr 1.25fr 32px;gap:6px}.rule-row .field-label,.replacement-row .field-label{font-size:12px}.remove-row{min-height:47px}.metric{display:block;padding:18px}.metric span{font-size:14px}.metric strong{font-size:28px;text-align:left;margin:3px 0}.metric p{font-size:12px}.panel-heading h3{font-size:17px}.panel-heading p{font-size:13px}.chart-axis{font-size:13px}.chart-legend{font-size:13px}.year-selector label{font-size:13px}.year-selector output{font-size:15px}.year-selector input{min-height:44px}.selected-year-metrics span{font-size:13px}.selected-year-metrics strong{font-size:21px}.data-pair{font-size:14px;line-height:1.7}.data-pair strong{overflow-wrap:anywhere}.detail-table th{font-size:12px}.detail-table td{font-size:14px}.table-topline{align-items:flex-start;flex-direction:column;gap:4px}.table-topline h3{font-size:17px}.table-topline span{font-size:12px}.source-note{font-size:13px}.no-carbon p{font-size:15px}.workspace-footer button{font-size:12px}.mobile-actions .button{font-size:15px;min-height:48px}.export-option strong{font-size:15px}.export-option small{font-size:12px}.export-summary,.export-modules{font-size:13px}.dialog-body>p{font-size:15px}.export-done p{font-size:14px}.empty-state p{font-size:15px}.form-end .button{font-size:14px}
}

@media print{.energy-texture{display:none!important}}

.motion-reduced *,.motion-reduced *::before,.motion-reduced *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.paused .chart-wrap svg,.offscreen svg{animation-play-state:paused}
.chart-wrap .chart-motion-ghost{position:absolute;inset:0 auto auto 0;width:100%;height:auto;pointer-events:none!important;user-select:none}
.chart-motion-ghost *{pointer-events:none!important;animation:none!important;transition:none!important;cursor:default!important}
.chart-selection{pointer-events:none}
.report-exporting .flow-pulse{animation-play-state:paused}

/* Reference calculator shell — V103 smoked glass, five distinct module colours.
   Result-specific diagrams live in energy-visuals.css and value-visuals.css. */
:root{
  --bg:#101a1d;--panel:rgba(30,42,47,.48);--panel2:rgba(39,53,59,.58);
  --ink:#e9f2f1;--muted:#b1c3c6;--line:rgba(206,225,230,.24);
  --blue:#aacdde;--green:#8be78b;--mint:#5edfd7;--gold:#e5bf7c;
  --glass-surface:rgba(30,42,47,.48);--glass-deep:rgba(6,14,19,.56);
  --glass-edge:rgba(206,225,230,.28);
  --glass-reflection:linear-gradient(180deg,rgba(223,238,243,.065),rgba(223,238,243,.012) 76px,transparent 180px);
  --mode-accent:#b5bee9;--mode-rgb:151,158,213;--mode-panel:rgba(43,51,65,.43);
  --radius:5px;
}
body{isolation:isolate;background:#10191d}
body[data-mode="self"]{--mode-accent:#b9e4c9;--mode-rgb:155,214,180;--mode-panel:rgba(42,64,53,.43)}
.ambient{z-index:-2;background:linear-gradient(180deg,rgba(8,17,22,.61),rgba(8,17,21,.76) 62%,rgba(8,17,21,.83)),url("../images/industrial-energy-campus-v1.png") center center/cover no-repeat}
.masthead{height:76px;padding-left:max(28px,calc((100vw - 1360px)/2));padding-right:max(28px,calc((100vw - 1360px)/2));background:rgba(18,29,34,.68);border-bottom-color:rgba(211,229,232,.25);backdrop-filter:blur(18px) saturate(75%);-webkit-backdrop-filter:blur(18px) saturate(75%)}
.brand img{width:98px;height:38px}.brand-text{font-size:19px}.brand-text small{color:#b1c1c5}
.product-switch{border-radius:5px;background:rgba(7,16,20,.46);border-color:var(--glass-edge)}
.product-switch button{border-radius:3px;font-size:14px;min-height:44px}
.product-switch .selected{background:rgba(66,91,98,.6);box-shadow:inset 0 1px 0 rgba(224,242,241,.15);color:#eef9f5}
.button{border-radius:4px;border-color:rgba(197,220,226,.3)}
.button.quiet{background:rgba(22,35,40,.36)}
.button.quiet:hover{background:rgba(75,96,103,.36)}
.export-primary{background:linear-gradient(115deg,#c5e6d9,#99d6bc);border-color:#b8e3d2;color:#10291f}
.save-status{font-size:12px;color:#b0c1c6}
.workspace{width:min(1280px,calc(100% - 56px))}
.workbench-title{padding:23px 0 18px;gap:20px;align-items:flex-start}
.workbench-title h1{font-size:clamp(23px,2.1vw,30px);line-height:1.4;font-weight:600;letter-spacing:0}
.title-context{margin-bottom:6px;color:#b7d6d7;font-size:12px;gap:9px}
.title-context .live-dot{background:#8bc9b5;box-shadow:0 0 10px rgba(154,231,204,.35)}
.version-label{color:#a1b5bc;font-size:10px;margin-left:4px;padding-left:12px}
#projectSubtitle{font-size:13px;color:#b9c8cb;margin-top:5px}
.title-actions{padding-top:17px;gap:8px}
.title-actions .button{min-height:44px;padding:9px 15px}
.demo-notice{margin:0 0 13px;padding:10px 15px;border-radius:4px;background:rgba(49,49,37,.4);border-color:rgba(213,193,144,.32);font-size:13px}
.demo-notice button{font-size:13px;min-height:44px}
.calculator-shell{border:1px solid var(--glass-edge);border-radius:5px;background:rgba(13,22,25,.56);box-shadow:inset 0 1px rgba(233,244,246,.065),0 18px 50px rgba(0,0,0,.16);backdrop-filter:blur(4px) saturate(80%);-webkit-backdrop-filter:blur(4px) saturate(80%)}
.module-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;position:sticky;top:0;padding:10px;margin:0;border:0;border-bottom:1px solid var(--glass-edge);border-radius:4px 4px 0 0;background:rgba(18,29,34,.8);backdrop-filter:blur(18px) saturate(70%);-webkit-backdrop-filter:blur(18px) saturate(70%);z-index:12}
.module-nav button{--tab-accent:#5edfd7;--tab-rgb:94,223,215;position:relative;display:flex;align-items:center;justify-content:center;gap:9px;min-width:0;min-height:59px;padding:10px 12px;border:1px solid rgba(var(--tab-rgb),.43);border-radius:3px;background:linear-gradient(155deg,rgba(var(--tab-rgb),.085),rgba(223,238,243,.016) 65%),rgba(24,35,40,.66);color:#d8e5e5;font-size:15px;font-weight:600;white-space:nowrap;transition:background-color 180ms,border-color 180ms,color 180ms,box-shadow 180ms}
.module-nav button[data-tab="1"]{--tab-accent:#8be78b;--tab-rgb:139,231,139}
.module-nav button[data-tab="2"]{--tab-accent:#f0b75d;--tab-rgb:240,183,93}
.module-nav button[data-tab="3"]{--tab-accent:#9f92ff;--tab-rgb:159,146,255}
.module-nav button[data-tab="4"]{--tab-accent:#6f9eff;--tab-rgb:111,158,255}
.module-nav button span{font-size:11px;color:var(--tab-accent);margin:0;font-weight:500}
.module-nav button::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--tab-accent);box-shadow:0 0 9px rgba(var(--tab-rgb),.35);opacity:.8;flex-shrink:0}
.module-nav button::after{content:"";position:absolute;bottom:0;left:18%;right:18%;height:2px;background:linear-gradient(90deg,transparent,var(--tab-accent),transparent);opacity:0}
.module-nav button.active{border-color:rgba(var(--tab-rgb),.9);background:linear-gradient(155deg,rgba(var(--tab-rgb),.18),rgba(223,238,243,.025) 80%),rgba(39,53,59,.75);color:#f4fbf9;box-shadow:inset 0 1px rgba(236,248,250,.1),0 0 16px rgba(var(--tab-rgb),.065)}
.module-nav button.active::before,.module-nav button.active::after{opacity:1}.module-nav button.active::before{box-shadow:0 0 11px rgba(var(--tab-rgb),.9)}
.module-nav button.active span{color:var(--tab-accent)}
.module-nav button:hover{background-color:rgba(45,61,66,.78);border-color:var(--tab-accent)}
.module-nav button:focus-visible{outline:2px solid var(--tab-accent);outline-offset:2px}
.overview-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:0;margin:0;border:0;border-bottom:1px solid var(--glass-edge);background:linear-gradient(180deg,rgba(221,238,241,.07),rgba(221,238,241,.012) 65%,rgba(5,13,17,.1)),rgba(26,37,41,.54);backdrop-filter:blur(18px) saturate(65%);-webkit-backdrop-filter:blur(18px) saturate(65%)}
.overview-strip>div,.overview-strip>div:first-child,.overview-strip>div:last-child{padding:23px 26px 21px;border-right:1px solid rgba(206,225,230,.25);text-align:center;min-width:0}
.overview-strip>div:last-child{border-right:0}
.overview-strip span{font-size:14px;color:#d2e0e0;font-weight:550;line-height:1.5}
.overview-strip strong{font-size:clamp(27px,2.7vw,37px);font-weight:650;letter-spacing:-.5px;line-height:1.3;color:#9ae69d;margin:7px 0;white-space:normal;overflow-wrap:anywhere}
.overview-strip strong small{font-size:15px;font-weight:500;letter-spacing:0;color:#bbd5c8;margin-left:6px;white-space:nowrap}
.overview-strip>div>small{color:#acbfc2;font-size:12px;line-height:1.6}
.project-context-strip{display:flex;align-items:center;gap:16px;padding:10px 25px;border-bottom:1px solid rgba(206,225,230,.16);color:#b5c5c8;font-size:12px;min-height:43px;background:rgba(12,22,27,.29)}
.cooperation-period{display:inline-flex;align-items:center;gap:9px}.cooperation-period strong{font-size:14px;font-weight:600;color:#dce9e9}.cooperation-period strong small{font-size:12px;font-weight:400;margin-left:4px}
.cooperation-mode{padding:3px 10px;border:1px solid rgba(var(--mode-rgb),.4);color:var(--mode-accent);background:rgba(var(--mode-rgb),.07);border-radius:3px;font-size:12px;font-weight:550}
.context-tip{margin-left:auto;color:#9eb4b9}
.module-panel{min-height:500px;padding:24px 27px 25px;background:linear-gradient(180deg,rgba(28,40,44,.12),rgba(12,20,23,.14));border-radius:0 0 4px 4px}
.section-intro{gap:20px;margin-bottom:20px;align-items:center}
.section-intro h2{font-size:24px;font-weight:600;line-height:1.45}
.section-intro p{font-size:14px;color:#b4c5c9;margin-top:5px;line-height:1.75}
.section-intro .section-kicker{font-size:11px;letter-spacing:0;color:#a1cbc9}
.section-intro .button{flex-shrink:0;min-height:44px;font-size:13px}
.configuration-layout{grid-template-columns:minmax(0,1fr) 252px;gap:20px}
.form-section,.result-panel,.aside-card{border-color:var(--glass-edge);background-color:var(--glass-surface);background-image:var(--glass-reflection);border-radius:4px;box-shadow:0 8px 24px rgba(0,0,0,.09);backdrop-filter:blur(12px) saturate(70%);-webkit-backdrop-filter:blur(12px) saturate(70%)}
.form-section{margin-bottom:16px}.form-section-header{padding:16px 20px;background:rgba(209,230,235,.018)}.form-section-body{padding:20px}.form-section-header small{color:#afc1c5}
.field-control{background:rgba(6,14,19,.52);border-color:rgba(206,225,230,.29);border-radius:3px;box-shadow:inset 0 1px 3px rgba(0,0,0,.08)}
.field-control input,.field-control select,.field textarea{background:transparent;color:#eef7f4}
.field-control:focus-within{border-color:rgba(94,223,215,.7);background:rgba(11,25,31,.7);box-shadow:0 0 0 2px rgba(94,223,215,.08)}
.field-help,.form-tip,.model-notes{color:#adc0c5}.field-control .unit{color:#afc3c8}.field-label{color:#d8e5e6}
.mode-switch{border-radius:4px;background:rgba(15,25,32,.5);border-color:rgba(var(--mode-rgb),.3);gap:6px}
.mode-switch button{border:1px solid transparent;border-radius:3px;color:#c1cbd9;min-height:46px;font-size:14px}
.mode-switch button[data-mode="emc"]{color:#c4c8ed}.mode-switch button[data-mode="self"]{color:#c3e7d1}
.mode-switch button.active{background:rgba(var(--mode-rgb),.16);border-color:rgba(var(--mode-rgb),.55);color:var(--mode-accent);box-shadow:inset 0 1px rgba(240,247,251,.08)}
.result-panel{padding:23px}.result-grid{gap:18px}.panel-heading{margin-bottom:20px}.panel-heading h3{font-size:18px}.panel-heading p{color:#b3c5c8}.panel-heading>span{color:#aac0c7}
.metric-grid{gap:0;background:rgba(30,42,47,.45);border-color:var(--glass-edge);border-radius:4px;margin-bottom:20px;backdrop-filter:blur(12px) saturate(70%);-webkit-backdrop-filter:blur(12px) saturate(70%)}
.metric{background:var(--glass-reflection);border-right:1px solid rgba(206,225,230,.22);padding:20px}.metric:last-child{border-right:0}.metric span{color:#d2e0e1}.metric p{color:#abc0c5}.metric strong{font-size:30px;font-weight:600}
.year-selector,.selected-year-metrics{border-color:var(--glass-edge);border-radius:4px;background:rgba(var(--mode-rgb),.06)}
.year-selector{padding:12px 17px;margin-bottom:18px}.year-selector label{color:#c5d6d9}.year-selector output{color:var(--mode-accent)}
.selected-year-metrics{margin-bottom:20px}.selected-year-metrics>div{padding:17px 19px}.selected-year-metrics span{font-size:13px;color:#bfd0d4}.selected-year-metrics strong{font-size:23px}
.chart-grid{stroke:rgba(196,220,225,.18)}.chart-axis,.chart-label{fill:#b6cbd1;font-size:13px}.chart-legend{color:#c1d4d8;font-size:13px}.chart-caption{color:#b1c6cc;font-size:13px}
.detail-table-wrap{border-radius:4px;border-color:var(--glass-edge);background:rgba(19,31,36,.36)}.detail-table th{background:#2a3b42;color:#cadce0}.detail-table td{border-top-color:rgba(192,217,224,.14);color:#d4e1e3}.detail-table tbody tr.selected{background:rgba(var(--mode-rgb),.14)}.detail-table tfoot td{background:rgba(65,83,91,.62)}
.table-topline{margin-top:25px}.source-note{color:#a8bfc6;border-color:rgba(206,225,230,.2);padding-top:13px;margin-top:17px}.note-list{color:#b0c4ca}
.warning-note{border-radius:4px;background:rgba(107,88,48,.09)}.warning-note.deficit-note{background:rgba(157,76,69,.08);border-color:rgba(242,156,147,.34)}
.module-panel[data-module="5"]{background:linear-gradient(150deg,rgba(var(--mode-rgb),.065),transparent 50%),rgba(13,22,28,.18)}
.module-panel[data-module="5"] .result-panel,.module-panel[data-module="5"] .metric-grid,.module-panel[data-module="5"] .selected-year-metrics{background-color:var(--mode-panel);border-color:rgba(var(--mode-rgb),.36)}
.workspace-footer{margin-top:0;padding:18px 1px 25px;border-top:0;color:#a6b9be;font-size:12px}.workspace-footer button{color:#b1c5ca;font-size:12px;min-height:44px}.workspace-footer div{gap:19px}
.dialog-header p{font-size:12px;color:#b3cfd6}.dialog-header .icon-button{min-width:44px;min-height:44px}.dialog-body .field-control{background:rgba(7,17,23,.65)}
@media(min-width:1600px){.workbench-title{padding-top:28px}.module-panel{padding-top:25px}}
@media(max-width:1100px){.masthead{padding-left:24px;padding-right:24px}.workspace{width:calc(100% - 40px)}.configuration-layout{grid-template-columns:minmax(0,1fr) 220px;gap:18px}.module-panel{padding:22px}.overview-strip>div,.overview-strip>div:first-child,.overview-strip>div:last-child{padding:21px 18px}.overview-strip strong{font-size:31px}.module-nav button{padding:10px 7px;font-size:14px;gap:7px}}
@media(max-width:820px){.masthead{height:auto;min-height:76px;padding:16px 22px 0;gap:12px}.brand img{width:85px}.product-switch{border-radius:0;background:none}.product-switch button{padding:9px 14px}.workspace{width:calc(100% - 36px)}.workbench-title{padding:20px 0 16px}.workbench-title h1{font-size:25px}.title-actions{padding-top:14px}.configuration-layout{grid-template-columns:1fr}.input-aside{display:none}.module-nav{gap:6px;padding:8px}.module-nav button{font-size:13px;gap:6px;min-height:57px}.module-nav button span{font-size:10px}.module-nav button::before{width:4px;height:4px}.overview-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:0;margin:0}.overview-strip>div,.overview-strip>div:first-child,.overview-strip>div:nth-child(2),.overview-strip>div:nth-child(3),.overview-strip>div:last-child{padding:19px 12px;border-right:1px solid rgba(206,225,230,.25)}.overview-strip>div:last-child{border-right:0}.overview-strip strong{font-size:27px}.overview-strip span{font-size:13px}.overview-strip>div>small{font-size:11px}.project-context-strip{padding:10px 20px}.context-tip{display:none}.module-panel{padding:22px 20px}.section-intro h2{font-size:22px}.section-intro p{font-size:14px}.result-panel{padding:20px}.metric strong{font-size:27px}.workspace-footer{gap:10px}.workspace-footer div{gap:19px;flex-wrap:wrap}}
@media(max-width:620px){.module-nav{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;padding:9px}.module-nav button{grid-column:span 2;min-height:49px;font-size:14px;gap:7px;padding:9px 5px}.module-nav button:nth-child(n+4){grid-column:span 3}.module-nav button span{font-size:11px}.module-nav button::before{display:none}.overview-strip strong{font-size:25px}.overview-strip strong small{font-size:12px;margin-left:3px}.overview-strip span{font-size:12px}.overview-strip>div>small{font-size:11px;line-height:1.5}.overview-strip>div,.overview-strip>div:first-child,.overview-strip>div:nth-child(2),.overview-strip>div:nth-child(3),.overview-strip>div:last-child{padding:17px 8px}}
@media(max-width:520px){body{font-size:16px}.ambient{background-position:58% center;background-image:linear-gradient(180deg,rgba(8,17,22,.68),rgba(8,17,21,.8)),url("../images/industrial-energy-campus-v1.png")}.masthead{padding:14px 16px 0;gap:11px}.brand img{width:74px}.brand-text{font-size:17px}.brand-text small{font-size:10px}.header-actions .button{font-size:13px;min-height:44px;padding:8px 11px}.product-switch button{font-size:15px}.workspace{width:calc(100% - 24px)}.workbench-title{display:block;padding:18px 2px 13px}.workbench-title h1{font-size:23px;line-height:1.45}.title-context{font-size:11px;margin-bottom:6px;flex-wrap:wrap;row-gap:3px}.version-label{font-size:10px;margin-left:1px;padding-left:9px}.title-actions{padding-top:0;margin-top:11px;gap:8px}.title-actions .button{min-height:44px;padding:8px 13px;font-size:13px}#projectSubtitle{font-size:13px;margin-top:5px}.demo-notice{font-size:12px;line-height:1.65;padding:10px 11px;margin-bottom:12px;gap:10px}.demo-notice b{display:inline}.demo-notice button{font-size:12px;min-width:70px;max-width:90px;min-height:44px}.calculator-shell{border-radius:4px}.module-nav{margin:0;top:0}.module-nav button span{display:inline;margin:0}.overview-strip strong{font-size:23px;letter-spacing:-.5px;margin:6px 0}.overview-strip strong small{font-size:11px}.overview-strip>div>small{font-size:10px}.project-context-strip{padding:9px 13px;gap:12px;font-size:12px}.cooperation-mode{font-size:12px}.module-panel{padding:20px 14px;min-height:430px}.section-intro{gap:12px;align-items:flex-start;margin-bottom:18px}.section-intro h2{font-size:21px}.section-intro p{font-size:14px;line-height:1.8}.section-intro .button{font-size:12px;padding:7px 10px;min-height:44px}.form-section{margin-bottom:14px;border-radius:4px}.form-section-header{padding:15px 14px}.form-section-header h3{font-size:16px}.form-section-header small{font-size:11px}.form-section-body{padding:18px 13px}.form-grid,.form-grid.two{gap:18px 11px}.field-control input,.field-control select,.field textarea{font-size:16px;min-height:48px}.field-label{font-size:14px}.field-help{font-size:12px}.result-panel{padding:19px 14px;border-radius:4px}.metric-grid{grid-template-columns:1fr;margin-bottom:18px}.metric{display:block;padding:16px 17px;border-right:0;border-bottom:1px solid rgba(206,225,230,.22)}.metric:last-child{border-bottom:0}.metric strong{font-size:28px;margin:4px 0}.metric span{font-size:14px}.metric p{font-size:12px}.year-selector{padding:11px 13px;gap:10px}.year-selector label{font-size:13px}.year-selector output{font-size:15px}.year-selector input{min-height:44px}.selected-year-metrics{margin-bottom:18px}.selected-year-metrics>div{padding:14px}.selected-year-metrics span{font-size:13px}.selected-year-metrics strong{font-size:21px}.panel-heading h3{font-size:17px}.chart-legend,.chart-caption{font-size:13px}.chart-axis,.chart-label{font-size:13px}.workspace-footer{padding:15px 2px 18px;margin-bottom:88px;font-size:11px}.workspace-footer div{display:flex;flex-wrap:wrap;gap:4px 18px}.workspace-footer button{font-size:12px;min-height:44px}.mobile-actions{background:rgba(22,35,42,.91);border-color:var(--glass-edge);padding:12px 14px calc(12px + env(safe-area-inset-bottom));backdrop-filter:blur(18px) saturate(75%);-webkit-backdrop-filter:blur(18px) saturate(75%)}.mobile-actions .button{min-height:48px;font-size:15px}}
@media(max-width:370px){.module-panel{padding-left:11px;padding-right:11px}.module-nav button{font-size:13px;gap:5px}.overview-strip strong{font-size:21px}.overview-strip strong small{display:block;margin:2px 0 0}.overview-strip>div>small{font-size:10px}.project-context-strip{gap:8px}.cooperation-mode{padding:3px 7px}}
@media print{.ambient,.energy-texture{display:none!important}}

/* Returns hierarchy: mode identity, six read-only parameters, one annual account.
   The board itself stays open; only the actual parameter cells receive glass. */
.investment-mode-banner{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(0,1.5fr) auto;align-items:center;gap:20px;padding:15px 0 19px;margin-bottom:18px;border-bottom:1px solid rgba(var(--mode-rgb),.34);background:transparent}
.investment-mode-identity{display:block;min-width:0;padding-left:13px;border-left:3px solid var(--mode-accent);color:var(--mode-accent);font-size:20px;font-weight:650;line-height:1.45}
.investment-mode-identity strong,.investment-mode-identity b{display:block;color:inherit;font:inherit}.investment-mode-identity span{display:block;font-size:12px;font-weight:400;color:#b7c8ce;margin-bottom:4px}.investment-mode-identity small{color:#bbcad0;font-size:12px;font-weight:400}
.investment-mode-banner>p{font-size:14px;line-height:1.75;color:#b8cbd0;max-width:60ch}
.investment-mode-banner>.button,.investment-mode-banner>button{min-height:44px;white-space:nowrap;border-color:rgba(var(--mode-rgb),.4);color:var(--mode-accent);background:rgba(var(--mode-rgb),.045);font-size:13px}
.investment-parameters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 22px;padding:0;background:transparent;border:0;box-shadow:none}
.investment-parameters>div{min-width:0;padding:17px 20px 16px;border:1px solid rgba(var(--mode-rgb),.4);border-radius:4px;background:linear-gradient(180deg,rgba(231,240,246,.065),rgba(231,240,246,.012) 75%,transparent),rgba(62,72,91,.44);box-shadow:inset 0 1px rgba(236,244,249,.065),0 5px 16px rgba(0,0,0,.06);backdrop-filter:blur(10px) saturate(70%);-webkit-backdrop-filter:blur(10px) saturate(70%)}
body[data-mode="self"] .investment-parameters>div{background-color:rgba(58,79,68,.44)}
.investment-parameters>div>span{display:block;color:#cbdadd;font-size:14px;font-weight:500;line-height:1.55}
.investment-parameters>div>strong{display:block;margin:6px 0;color:#e8f3f3;font-size:29px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
.investment-parameters>div>strong small{font-size:13px;font-weight:400;color:#b9cdd1;margin-left:5px;white-space:nowrap}
.investment-parameters>div>small{display:block;color:#adbec7;font-size:12px;line-height:1.65}
.investment-parameters>div.negative>strong,.investment-parameters>div>strong.negative{color:var(--red)}
.investment-year-account{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0;margin:0 0 22px;border:1px solid rgba(var(--mode-rgb),.32);border-radius:4px;overflow:hidden;background:linear-gradient(180deg,rgba(226,238,243,.025),transparent 70%),rgba(var(--mode-rgb),.045)}
.investment-year-account>.year-account-heading{grid-column:1/-1;display:flex;align-items:baseline;justify-content:space-between;gap:18px;min-width:0;padding:13px 18px;border-bottom:1px solid rgba(var(--mode-rgb),.22);background:rgba(var(--mode-rgb),.035)}
.year-account-heading h3{font-size:16px;font-weight:600;color:var(--mode-accent);line-height:1.5}.year-account-heading p{font-size:12px;color:#b1c4cb;line-height:1.65}
.investment-year-account>div:not(.year-account-heading){min-width:0;padding:17px 18px 18px;border-right:1px solid rgba(var(--mode-rgb),.2);background:transparent}.investment-year-account>div:last-child{border-right:0}
.investment-year-account>div:not(.year-account-heading)>span{display:block;font-size:13px;line-height:1.6;color:#c4d4d9}
.investment-year-account>div:not(.year-account-heading)>strong{display:block;font-size:25px;line-height:1.45;font-weight:600;color:#e1edf0;margin:7px 0 4px;overflow-wrap:anywhere}
.investment-year-account>div:not(.year-account-heading)>strong small{font-size:12px;font-weight:400;color:#b6c9d0;margin-left:4px;white-space:nowrap}
.investment-year-account>div:not(.year-account-heading)>small{display:block;font-size:12px;line-height:1.7;color:#adbec7}
.investment-year-account>div.negative>strong,.investment-year-account>div>strong.negative{color:var(--red)}
@media(max-width:1100px){.investment-mode-banner{grid-template-columns:minmax(175px,.8fr) minmax(0,1.4fr) auto;gap:15px}.investment-parameters>div{padding:16px}.investment-parameters>div>strong{font-size:27px}.investment-year-account>div:not(.year-account-heading){padding:16px}.investment-year-account>div:not(.year-account-heading)>strong{font-size:23px}}
@media(max-width:820px){.investment-mode-banner{grid-template-columns:1fr auto;gap:10px 18px;padding:10px 0 17px}.investment-mode-banner>.investment-mode-identity{grid-column:1;grid-row:1}.investment-mode-banner>.button,.investment-mode-banner>button{grid-column:2;grid-row:1/3}.investment-mode-banner>p{grid-column:1;grid-row:2;font-size:13px}.investment-parameters{gap:10px}.investment-parameters>div{padding:16px 14px}.investment-parameters>div>strong{font-size:25px}.investment-parameters>div>span{font-size:13px}.investment-year-account{grid-template-columns:repeat(2,minmax(0,1fr))}.investment-year-account>div:not(.year-account-heading):nth-child(3){border-right:0}.investment-year-account>div:not(.year-account-heading):nth-child(-n+3){border-bottom:1px solid rgba(var(--mode-rgb),.2)}.investment-year-account>.year-account-heading{display:block}.year-account-heading p{margin-top:4px}}
@media(max-width:620px){.investment-parameters{grid-template-columns:repeat(2,minmax(0,1fr))}.investment-mode-identity{font-size:19px}.investment-mode-banner{gap:10px 14px}.investment-mode-banner>p{font-size:13px}.investment-mode-banner>.button,.investment-mode-banner>button{font-size:12px;padding:8px 11px}}
@media(max-width:520px){.investment-mode-banner{margin-bottom:17px;padding-top:5px;gap:10px 12px}.investment-mode-identity{font-size:18px;padding-left:11px}.investment-mode-banner>p{font-size:13px;line-height:1.75}.investment-mode-banner>.button,.investment-mode-banner>button{min-height:44px;font-size:12px;padding:8px 10px}.investment-parameters{gap:10px;margin-bottom:19px}.investment-parameters>div{padding:15px 13px}.investment-parameters>div>span{font-size:13px}.investment-parameters>div>strong{font-size:25px;margin:6px 0}.investment-parameters>div>strong small{font-size:12px;margin-left:3px}.investment-parameters>div>small{font-size:12px}.investment-year-account{margin-bottom:19px}.investment-year-account>.year-account-heading{padding:12px 14px}.year-account-heading h3{font-size:16px}.year-account-heading p{font-size:12px}.investment-year-account>div:not(.year-account-heading){padding:15px 13px}.investment-year-account>div:not(.year-account-heading)>span{font-size:13px}.investment-year-account>div:not(.year-account-heading)>strong{font-size:24px;margin:6px 0 4px}.investment-year-account>div:not(.year-account-heading)>small{font-size:12px}}
/* Keep stage/removal controls usable on narrow field grids. */
.rule-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.5fr) 44px}
.replacement-row{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,1fr) 44px}
.remove-row{min-width:44px;min-height:44px}
@media(max-width:600px){.rule-row,.replacement-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.25fr) 44px;gap:6px}}
