:root{color-scheme:light;--ground:#eef2f2;--surface:#ffffff;--surface-2:#f6f9f9;--sunken:#e7edee;--ink:#0f191d;--ink-2:#516468;--ink-3:#84959a;--line:#dce4e5;--line-2:#c6d2d4;--accent:#12475b;--accent-ink:#ffffff;--accent-soft:#e0ecf0;--s1:#2a78d6;--s2:#eb6834;--s3:#1baf7a;--good:#0ca30c;--crit:#d03b3b;--div-pos:#2a78d6;--div-neg:#d03b3b;--div-mid:#eceff0;--grid:#e6ebec;--axis:#c6d2d4;--ring:rgba(15,25,29,.1);--shadow:0 1px 2px rgba(15,25,29,.05), 0 10px 30px -18px rgba(15,25,29,.35);--display:"Bricolage Grotesque", "Helvetica Neue", Arial, sans-serif;--sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--ground:#0c1113;--surface:#141c1f;--surface-2:#192225;--sunken:#101719;--ink:#e9f1f2;--ink-2:#9aacb1;--ink-3:#718388;--line:#232e32;--line-2:#314247;--accent:#74c3dc;--accent-ink:#08181e;--accent-soft:#15303a;--s1:#3987e5;--s2:#d95926;--s3:#199e70;--good:#0ca30c;--crit:#d03b3b;--div-pos:#3987e5;--div-neg:#d03b3b;--div-mid:#263236;--grid:#1f2a2d;--axis:#314247;--ring:rgba(233,241,242,.12);--shadow:0 1px 2px rgba(0,0,0,.4), 0 10px 30px -18px rgba(0,0,0,.9)}}:root[data-theme=dark]{color-scheme:dark;--ground:#0c1113;--surface:#141c1f;--surface-2:#192225;--sunken:#101719;--ink:#e9f1f2;--ink-2:#9aacb1;--ink-3:#718388;--line:#232e32;--line-2:#314247;--accent:#74c3dc;--accent-ink:#08181e;--accent-soft:#15303a;--s1:#3987e5;--s2:#d95926;--s3:#199e70;--good:#0ca30c;--crit:#d03b3b;--div-pos:#3987e5;--div-neg:#d03b3b;--div-mid:#263236;--grid:#1f2a2d;--axis:#314247;--ring:rgba(233,241,242,.12);--shadow:0 1px 2px rgba(0,0,0,.4), 0 10px 30px -18px rgba(0,0,0,.9)}*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--display);font-weight:700;text-wrap:balance;margin:0;letter-spacing:-.018em}p{margin:0}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.wrap{max-width:1360px;margin:0 auto;padding:0 24px 80px}.langbar{display:flex;justify-content:flex-end;padding-top:16px}.langsw{display:flex;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden}.langsw button{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;padding:6px 12px;border:0;background:var(--surface);color:var(--ink-3);cursor:pointer}.langsw button:hover{color:var(--ink)}.langsw button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.mast{padding:56px 0 34px;border-bottom:1px solid var(--line)}.eyebrow{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.mast h1{font-size:clamp(34px,5.2vw,60px);line-height:1.02;margin:14px 0 0;max-width:15ch;font-weight:800}.mast .lede{margin-top:20px;max-width:64ch;color:var(--ink-2);font-size:17px}.mast .lede strong{color:var(--ink);font-weight:600}.layout{display:grid;grid-template-columns:312px minmax(0,1fr);gap:36px;margin-top:32px;align-items:start}@media (max-width:1080px){.layout{grid-template-columns:minmax(0,1fr)}}.rail{position:sticky;top:16px;display:flex;flex-direction:column;gap:14px;max-height:calc(100vh - 32px);overflow-y:auto;padding-right:4px}@media (max-width:1080px){.rail{position:static;max-height:none;overflow:visible}}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.panel>summary{list-style:none;cursor:pointer;padding:13px 16px;display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-2)}.panel>summary::-webkit-details-marker{display:none}.panel>summary:after{content:"+";margin-left:auto;font-size:15px;color:var(--ink-3);font-family:var(--sans)}.panel[open]>summary:after{content:"–"}.panel[open]>summary{border-bottom:1px solid var(--line)}.panel .body{padding:16px;display:flex;flex-direction:column;gap:15px}.field{display:flex;flex-direction:column;gap:6px}.field .top{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.field label{font-size:13px;color:var(--ink-2);font-weight:500}.field .val{font-family:var(--mono);font-size:13px;font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums}.field .hint{font-size:11.5px;color:var(--ink-3);line-height:1.4}input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:18px;background:transparent;margin:0;display:block}input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:99px;background:var(--line-2)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:15px;height:15px;margin-top:-5.5px;border-radius:50%;background:var(--accent);border:2px solid var(--surface);box-shadow:0 0 0 1px var(--accent);cursor:grab}input[type=range]::-moz-range-track{height:4px;border-radius:99px;background:var(--line-2)}input[type=range]::-moz-range-thumb{width:13px;height:13px;border-radius:50%;background:var(--accent);border:2px solid var(--surface);box-shadow:0 0 0 1px var(--accent);cursor:grab}input[type=number],select{width:100%;font-family:var(--mono);font-size:13px;font-variant-numeric:tabular-nums;padding:7px 9px;border:1px solid var(--line-2);border-radius:7px;background:var(--surface-2);color:var(--ink)}select{font-family:var(--sans);font-variant-numeric:normal}.switch{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer}.switch input{position:absolute;opacity:0;width:1px;height:1px}.track{width:38px;height:21px;border-radius:99px;background:var(--sunken);border:1px solid var(--line-2);position:relative;flex:none;transition:background .16s}.track:after{content:"";position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:var(--ink-3);transition:transform .16s,background .16s}.switch input:checked+.track{background:var(--accent);border-color:var(--accent)}.switch input:checked+.track:after{transform:translate(17px);background:var(--accent-ink)}.switch input:focus-visible+.track{outline:2px solid var(--accent);outline-offset:2px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.03em;padding:6px 10px;border-radius:99px;border:1px solid var(--line-2);background:var(--surface-2);color:var(--ink-2);cursor:pointer}.chip:hover{border-color:var(--accent);color:var(--ink)}.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.reset{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;background:none;border:0;color:var(--ink-3);cursor:pointer;padding:4px 0;text-align:left}.reset:hover{color:var(--accent)}.verdict{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.verdict .grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:1px;background:var(--line)}@media (max-width:1180px){.verdict .grid{grid-template-columns:1fr 1fr}}@media (max-width:520px){.verdict .grid{grid-template-columns:1fr}}.tile{background:var(--surface);padding:20px 22px;display:flex;flex-direction:column;gap:5px;min-width:0}.tile .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3)}.tile .v{font-size:34px;line-height:1.05;font-weight:600;letter-spacing:-.02em}.tile.hero .v{font-size:52px;font-weight:700}.tile .sub{font-size:12.5px;color:var(--ink-2);line-height:1.4}.tile .v.pos{color:var(--good)}.tile .v.neg{color:var(--crit)}.verdict .verdictline{padding:14px 22px;background:var(--surface-2);border-top:1px solid var(--line);font-size:14.5px;color:var(--ink-2);display:flex;gap:10px;align-items:flex-start}.verdict .verdictline b{color:var(--ink);font-weight:600}.badge{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:5px;flex:none;margin-top:1px}.badge.ok{background:color-mix(in srgb,var(--good) 16%,transparent);color:var(--good)}.badge.no{background:color-mix(in srgb,var(--crit) 16%,transparent);color:var(--crit)}.section{margin-top:52px}.section>.head{max-width:66ch;margin-bottom:18px}.section h2{font-size:clamp(21px,2.6vw,27px);margin-top:9px;line-height:1.15}.section .head p{margin-top:9px;color:var(--ink-2);font-size:15px}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.card .caption{padding:16px 20px 0;display:flex;flex-wrap:wrap;gap:12px;align-items:baseline;justify-content:space-between}.card .caption h3{font-size:16px;font-family:var(--sans);font-weight:600;letter-spacing:-.005em}.card .caption .note{font-size:12.5px;color:var(--ink-3)}.plot{position:relative;padding:6px 12px 12px}.plot svg{display:block;width:100%;height:auto;overflow:visible}.legend{display:flex;flex-wrap:wrap;gap:6px 18px;padding:0 20px 14px;font-size:12.5px;color:var(--ink-2)}.legend .item{display:flex;align-items:center;gap:7px}.legend .swatch{width:14px;height:3px;border-radius:99px;flex:none}.legend .dot{width:9px;height:9px;border-radius:50%;flex:none}.legend .sym{font-family:var(--mono);font-size:11px;font-weight:600}.tblwrap{border-top:1px solid var(--line)}.tblwrap>summary{list-style:none;cursor:pointer;padding:11px 20px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.tblwrap>summary::-webkit-details-marker{display:none}.tblwrap>summary:hover{color:var(--accent)}.tblscroll{max-height:340px;overflow:auto;border-top:1px solid var(--line)}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:7px 20px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap}th:first-child,td:first-child{text-align:left}thead th{position:sticky;top:0;background:var(--surface-2);color:var(--ink-3);font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:500}tbody td{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink-2)}tbody td:first-child{font-family:var(--sans);color:var(--ink)}.tip{position:absolute;pointer-events:none;opacity:0;transform:translate(-50%,-100%);background:var(--surface);border:1px solid var(--line-2);border-radius:9px;box-shadow:var(--shadow);padding:9px 11px;font-size:12.5px;min-width:130px;z-index:5;transition:opacity .1s}.tip .t{font-weight:600;margin-bottom:5px;font-size:12.5px}.tip .r{display:flex;justify-content:space-between;gap:14px;font-family:var(--mono);font-size:12px;font-variant-numeric:tabular-nums;color:var(--ink-2)}.tip .r b{color:var(--ink);font-weight:500}.tip .r .k{display:flex;align-items:center;gap:6px}.panel textarea{width:100%;font-family:var(--mono);font-size:12.5px;line-height:1.45;padding:8px 9px;border:1px solid var(--line-2);border-radius:7px;background:var(--surface-2);color:var(--ink);resize:vertical;display:block}.panel textarea::placeholder{color:var(--ink-3)}.finnres{font-size:12.5px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);padding:10px 11px;display:grid;gap:4px}.finnres .r{display:flex;justify-content:space-between;gap:10px;font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink-2)}.finnres .r b{color:var(--ink);font-weight:500}.finnres .msg{color:var(--ink-2);line-height:1.45}.finnres .msg.warn{color:var(--crit)}.finnres .msg.ok{color:var(--good)}.chip[aria-busy=true]{opacity:.6;cursor:progress}.horisont{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line);border-top:1px solid var(--line)}.horisont .h{background:var(--surface);padding:13px 18px;display:flex;flex-direction:column;gap:3px}.horisont .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}.horisont .v{font-size:19px;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.horisont .s{font-size:11.5px;color:var(--ink-2)}.horisont .v.pos{color:var(--good)}.horisont .v.neg{color:var(--crit)}.formula{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px 26px;box-shadow:var(--shadow)}.formula .eq{font-family:var(--mono);font-size:clamp(15px,2.1vw,20px);font-weight:500;padding:18px 20px;background:var(--surface-2);border-radius:10px;overflow-x:auto;border:1px solid var(--line);letter-spacing:-.01em;white-space:nowrap}.formula .eq em{font-style:normal;color:var(--accent);font-weight:600}.eqstack{display:grid;gap:8px}.eqstack .eq{font-size:clamp(14px,1.8vw,18px);white-space:normal;line-height:1.7}.deflist{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin-top:18px;font-size:13.5px;align-items:baseline}.deflist dt{font-family:var(--mono);color:var(--accent);font-weight:600}.deflist dd{margin:0;color:var(--ink-2)}.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden}.cols .col{background:var(--surface);padding:20px 22px}.cols h3{font-family:var(--sans);font-size:14.5px;font-weight:600;margin-bottom:7px}.cols p{font-size:13.5px;color:var(--ink-2)}.cols .num{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase;display:block;margin-bottom:9px}.thumb{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-top:20px}.thumb .t{background:var(--surface);padding:17px 20px;display:flex;flex-direction:column;gap:4px}.thumb .t .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}.thumb .t .n{font-size:27px;font-weight:600;line-height:1.1;letter-spacing:-.02em}.thumb .t .s{font-size:12.5px;color:var(--ink-2)}.bidbar{display:flex;align-items:center;gap:14px;padding:14px 20px;border-top:1px solid var(--line);background:var(--surface-2);flex-wrap:wrap}.bidbar label{font-size:13px;color:var(--ink-2);font-weight:500;white-space:nowrap}.bidbar input[type=range]{flex:1 1 180px;min-width:150px}.bidbar .val{font-family:var(--mono);font-size:13px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.bidbar .hint{font-size:11.5px;color:var(--ink-3);flex:1 1 100%}table.bid td,table.bid th{padding:9px 11px}table.bid th{white-space:normal;line-height:1.3}table.bid input{width:62px;padding:5px 6px;font-size:12.5px;text-align:right;border-radius:6px}table.bid td.out{color:var(--ink);font-weight:500}table.bid tbody tr:hover{background:var(--surface-2)}table.bid .sov{font-family:var(--sans);font-weight:600;color:var(--ink)}table.bid .dash{color:var(--ink-3)}.caveats{list-style:none;padding:0;margin:0;display:grid;gap:11px}.caveats li{display:grid;grid-template-columns:auto 1fr;gap:12px;font-size:14px;color:var(--ink-2);align-items:start}.caveats li b{color:var(--ink);font-weight:600}.caveats .m{font-family:var(--mono);font-size:11px;color:var(--ink-3);padding-top:3px}.railhead,.scrim,.fab{display:none}@media (max-width:1080px){.layout{gap:0}.rail{position:fixed;top:0;left:0;bottom:0;z-index:60;width:min(348px,86vw);max-height:100dvh;overflow-y:auto;background:var(--ground);border-right:1px solid var(--line);padding:0 14px 32px;gap:12px;transform:translate(-103%);transition:transform .26s cubic-bezier(.4,0,.2,1);box-shadow:none}.rail.open{transform:none;box-shadow:0 0 60px #00000059}.railhead{display:flex;align-items:center;justify-content:space-between;gap:10px;position:sticky;top:0;z-index:2;padding:16px 2px 12px;background:var(--ground);border-bottom:1px solid var(--line);margin-bottom:2px}.railhead span{font-family:var(--display);font-weight:700;font-size:17px}.railhead button{width:32px;height:32px;border-radius:8px;border:1px solid var(--line-2);background:var(--surface);color:var(--ink-2);font-size:15px;cursor:pointer;line-height:1}.scrim{display:block;position:fixed;inset:0;z-index:55;background:#040a0c8c;opacity:0;pointer-events:none;transition:opacity .26s}.scrim.on{opacity:1;pointer-events:auto}.fab{display:inline-flex;align-items:center;gap:9px;position:fixed;z-index:50;left:50%;transform:translate(-50%);bottom:max(14px,env(safe-area-inset-bottom));padding:11px 18px;border-radius:99px;border:1px solid var(--line-2);background:var(--surface);color:var(--ink);cursor:pointer;white-space:nowrap;max-width:calc(100vw - 28px);overflow:hidden;box-shadow:0 4px 24px -6px #0006;font-family:var(--sans);font-size:13.5px;font-weight:600}.fab .fnum{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--ink-2);font-variant-numeric:tabular-nums}.fab .glyph{font-size:15px;line-height:1}body.locked{overflow:hidden}}@media (max-width:760px){.mast{padding:34px 0 26px}.wrap{padding:0 16px 60px}.plot{overflow-x:auto;overscroll-behavior-x:contain}.plot svg{min-width:640px}.tile.hero .v{font-size:42px}.section{margin-top:40px}main{padding-bottom:56px}}footer{margin-top:56px;padding-top:22px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-3);max-width:70ch}html body.calc{font-family:var(--sans);font-size:15px;line-height:1.55;background:var(--ground);color:var(--ink);text-align:left}body.calc main{width:auto;max-width:none;margin:0;padding:0}body.calc .wrap h1,body.calc .wrap h2,body.calc .wrap h3{color:inherit;margin-bottom:0}body.calc .wrap p{margin-bottom:0}body.calc .wrap a{color:var(--accent);background:none}body.calc .wrap a:hover{color:var(--accent);background:none;text-decoration:underline}body.calc .wrap input{font-size:inherit}body.calc .wrap b,body.calc .wrap strong{font-weight:600}body.calc>header{max-width:1360px;margin:0 auto;padding:0 24px}body.calc>header nav{height:66px}body.calc>header h2{font-family:var(--display);font-size:19px;font-weight:700;margin:0}body.calc>header h2 a{color:var(--ink)}body.calc>header a{color:var(--ink-2);text-decoration:none;background:none;font-size:14px;border-bottom:3px solid transparent}body.calc>header a:hover{color:var(--accent);background:none}body.calc>header a.active{color:var(--ink);border-bottom-color:var(--accent)}body.calc>header svg{vertical-align:middle;color:var(--ink-3)}body.calc>header a:hover svg{color:var(--accent)}body.calc>footer{max-width:1360px;margin:0 auto;padding:22px 24px 40px;font-size:13px;line-height:1.6;color:var(--ink-3);text-align:center}body.calc>footer p{margin:0 0 8px}body.calc>footer a{color:var(--ink-2)}body.calc>footer a:hover{color:var(--accent)}body.calc>footer svg{vertical-align:middle;color:var(--ink-3)}
