:root{color-scheme:dark;--bg:#050d16;--panel:#10232d;--border:#355e65;--text:#ecf9f5;--mute:#b0c8c9;--mint:#86f2c4;--sun:#ebc88b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 45% -7%,#174e4a 0,#09222f 32%,#050e19 74%);color:var(--text);font:14px/1.55 system-ui,-apple-system,'Segoe UI',sans-serif}button,input,select{font:inherit}button{cursor:pointer}a{color:var(--mint)}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b4fedd;outline-offset:3px}.skip-link{position:absolute;top:-90px;left:12px;background:white;color:black;padding:8px;z-index:20}.skip-link:focus{top:12px}.header{padding:18px clamp(15px,4vw,58px);border-bottom:1px solid var(--border);background:#07151ee6;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px;color:var(--text);text-decoration:none}.brand img{filter:drop-shadow(0 0 7px #86f2c466)}.brand span{display:grid}.brand strong{font-size:20px;letter-spacing:-.04em}.brand small{font-size:10px;color:var(--mint);letter-spacing:.12em}.header nav{display:flex;gap:22px;flex-wrap:wrap;font-weight:650;font-size:12px}main{max-width:1550px;margin:auto;padding:22px clamp(14px,3vw,50px) 90px}.hero{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:20px 0 37px}.eyebrow{color:var(--mint);font-size:11px;letter-spacing:.13em;font-weight:750}.hero h1{font-size:clamp(33px,4.4vw,65px);line-height:1.06;letter-spacing:-.055em;max-width:840px;margin:11px 0}.hero h1 em{color:var(--mint);font-style:normal}.hero p:not(.eyebrow){max-width:770px;color:var(--mute)}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;flex:0 0 min(430px,39%)}.hero-stats div{padding:14px;background:#12323a99;border:1px solid var(--border);border-radius:14px}.hero-stats b{font-size:29px;display:block;color:var(--mint)}.hero-stats small{color:var(--mute);font-size:10px}.app-grid{display:grid;grid-template-columns:minmax(245px,320px) minmax(0,1fr);align-items:start;gap:15px}.library{background:#0b2330;border:1px solid var(--border);border-radius:15px;padding:14px;position:sticky;top:12px;max-height:calc(100dvh - 30px);display:flex;flex-direction:column;gap:12px}.panelhead{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}.panelhead h2,.panelhead h3,h2,h3{margin:0}.panelhead h2{font-size:18px}.panelhead small{color:var(--mute)}.counter{font-size:11px;color:var(--mint);font-weight:750}.search-label{display:grid;gap:7px;color:var(--mute);font-size:10px;letter-spacing:.1em;font-weight:750}input,select{padding:10px 12px;border-radius:9px;background:#071923;color:var(--text);border:1px solid #446c75;min-width:0;width:100%;min-height:41px}input::placeholder{color:#809e9d}.category-buttons,.quick-buttons,.buttons{display:flex;gap:7px;flex-wrap:wrap}.category-buttons button,.quick-buttons button,.buttons button,.work-actions button,.chart-controls button{border-radius:9px;border:1px solid #486e70;padding:9px 12px;background:#17343c;color:#dffbef;font-weight:650;font-size:12px}.category-buttons button[aria-pressed=true],.quick-buttons button[aria-pressed=true]{background:#276049;color:#d9fff1;border-color:#a1ffcb}.buttons button.primary{background:#87edbd;border-color:#a2ffcf;color:#073529}.buttons button:hover,.category-buttons button:hover,.tool-entry:hover{border-color:var(--mint)}.tool-list{overflow-y:auto;min-height:160px;display:grid;align-content:start;gap:7px;padding-right:5px}.tool-entry{display:flex;align-items:center;gap:9px;min-height:43px;padding:9px 11px;background:#0b2730;border:1px solid #304f59;border-radius:9px;text-align:left;color:var(--text);font-size:12px}.tool-entry span{flex:1}.tool-entry.active{border-color:var(--mint);background:#1b493f}.tool-entry small{font-size:11px;color:#b3d6cb}.workbench{min-width:0}.work-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:9px 0 16px}.work-head h2{font-size:clamp(23px,3vw,34px);line-height:1.22;letter-spacing:-.035em;margin:7px 0}.work-head p{color:var(--mute);margin:2px 0}.work-actions{display:flex;gap:7px;flex-wrap:wrap}.panel{background:linear-gradient(120deg,#102d37,#0b1d29);border:1px solid var(--border);border-radius:14px;padding:17px;margin-bottom:14px;min-width:0}.panel h3{font-size:17px;margin:0 0 13px}.panel h2{font-size:20px}.input-output{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.92fr);gap:14px}.calc-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:11px}.calc-fields label{display:grid;gap:6px;color:#b6d8cf;font-size:11px;font-weight:750;letter-spacing:.035em}.calc-fields label small{font-size:10px;color:#98bab8;font-weight:400;letter-spacing:0}.calc-fields input{font-variant-numeric:tabular-nums}.buttons{margin:15px 0 7px}.note{color:var(--mute);font-size:11px;line-height:1.7}.big-result{color:#b4ffe2;font-size:clamp(29px,4.3vw,56px);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.055em;line-height:1.2;margin:18px 0 1px;overflow-wrap:anywhere}.result-unit{font-size:13px;color:var(--mint);font-weight:750;letter-spacing:.05em}.explanation{color:#bdd6d0;line-height:1.7;min-height:60px}.results{display:flex;flex-direction:column}.results .buttons{margin-top:auto}.reference{color:#d3e7e0}.reference #tool-formula{padding:11px;border-left:3px solid var(--mint);background:#15343b;border-radius:5px;font-size:15px;font-family:ui-monospace,monospace;overflow-wrap:anywhere}.reference p{font-size:12px}.sensitivity-chart svg{width:100%;height:auto;display:block}.sensitivity-chart text{fill:#b9d1ce;font-family:system-ui;font-size:11px}.sensitivity-chart .grid{stroke:#305961;stroke-width:1}.sensitivity-chart .line{fill:none;stroke:#8ff1c4;stroke-width:3}.chart-controls{display:flex;gap:9px;flex-wrap:wrap;align-items:end;margin-top:10px}.chart-controls label{display:grid;gap:3px;font-size:10px;color:#b6ceca;flex:1;min-width:85px}.chart-controls input{padding:8px;min-height:39px}.chart-controls button{min-height:39px}.extra-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.journal-list,.comparison-list{display:grid;gap:8px;max-height:350px;overflow:auto}.record{display:flex;justify-content:space-between;gap:8px;align-items:center;background:#102b34;border:1px solid #32565d;border-radius:9px;padding:11px}.record strong{display:block;font-size:12px}.record small{display:block;color:var(--mute);font-size:10px}.record button{padding:5px 8px;border:1px solid #46696e;background:#1d3d45;color:var(--text);border-radius:7px;font-size:11px}.constants{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:17px 0}.constants div{padding:11px;border:1px solid #335862;border-radius:9px;background:#0b2831}.constants b{font-size:12px;display:block}.constants span{font-size:12px;color:var(--mute)}footer{display:flex;flex-wrap:wrap;gap:20px;padding:29px clamp(15px,4vw,56px);font-size:12px;border-top:1px solid var(--border)}footer span{margin-left:auto;color:var(--mute)}@media(max-width:1120px){.hero{display:block}.hero-stats{margin-top:20px;max-width:440px}.app-grid{grid-template-columns:minmax(220px,280px) minmax(0,1fr)}.input-output{grid-template-columns:1fr}}@media(max-width:780px){.header{padding:13px;flex-wrap:wrap}.header nav{width:100%;gap:13px}.app-grid{grid-template-columns:1fr}.library{position:static;max-height:none}.tool-list{max-height:260px;grid-template-columns:repeat(2,minmax(0,1fr))}.extra-grid{grid-template-columns:1fr}.constants{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding-bottom:23px}.work-head{flex-wrap:wrap}}@media(max-width:470px){.category-buttons button{padding:7px}.hero-stats{gap:5px}.hero-stats div{padding:8px}.hero-stats b{font-size:23px}.hero-stats small{font-size:9px}.tool-list{grid-template-columns:1fr}.constants{grid-template-columns:1fr}footer span{margin-left:0}}@media print{body{background:#fff;color:#111}.header,.library,.work-actions,.buttons,.chart-controls,.extra-grid,footer{display:none!important}.app-grid{display:block}.panel{background:#fff;color:#111;border:1px solid #bbb}.big-result{color:#111}.note,.explanation{color:#222}}