@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-cyrillic-ext-wght-normal.20g3-bbbhdq0_.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-cyrillic-wght-normal.2cxlyxah-fd35.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-greek-ext-wght-normal.0mkxydxl0e43d.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-greek-wght-normal.1rx9vjatjkdar.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-vietnamese-wght-normal.2kcj5i_8uff48.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-latin-ext-wght-normal.3gdi_th3seg1n.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/inter-latin-wght-normal.0gsaq8ukbf34m.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--ink:#0f172a;--muted:#475569;--bg:#f8fafc;--surface:#fff;--border:#e2e8f0;--brand:#4f46e5;--brand-ink:#fff;--brand-soft:#eef2ff;--teal:#0d9488;--amber:#f59e0b;--err:#b91c1c;--shadow:0 1px 2px #0f172a0f,0 8px 24px #0f172a0f;--r:14px}@media (prefers-color-scheme:dark){:root{--ink:#e5e9f5;--muted:#a3aed0;--bg:#0b1020;--surface:#121a30;--border:#25304f;--brand:#818cf8;--brand-ink:#0b1020;--brand-soft:#1b2347;--teal:#2dd4bf;--amber:#fbbf24;--err:#fca5a5;--shadow:0 1px 2px #0006}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);margin:0;font-family:Inter Variable,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:17px;line-height:1.65}a{color:var(--brand)}a:hover{text-decoration-thickness:2px}.wrap{max-width:1120px;margin:0 auto;padding:0 20px}.sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}:focus-visible{outline:3px solid var(--amber);outline-offset:2px;border-radius:4px}h1,h2,h3{letter-spacing:-.015em;margin:0 0 .6em;line-height:1.2}h1{font-size:clamp(1.9rem,4.5vw,2.8rem)}h2{margin-top:2.2em;font-size:1.55rem}h3{font-size:1.15rem}.site-header{z-index:20;background:color-mix(in srgb,var(--surface) 90%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0}.topbar{align-items:center;gap:20px;height:64px;display:flex}.brand{color:var(--ink);align-items:center;gap:10px;font-size:1.15rem;font-weight:800;text-decoration:none;display:flex}.nav{gap:18px;margin-left:8px;display:flex}.nav a{color:var(--muted);font-size:.95rem;font-weight:600;text-decoration:none}.nav a:hover{color:var(--brand)}.search{background:var(--bg);border:1px solid var(--border);color:var(--muted);border-radius:999px;align-items:center;gap:8px;margin-left:auto;padding:0 14px;display:flex;position:relative}.search input{color:var(--ink);font:inherit;background:0 0;border:0;outline:0;width:200px;padding:9px 0;font-size:.95rem}.hits{background:var(--surface);border:1px solid var(--border);min-width:260px;box-shadow:var(--shadow);border-radius:12px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);left:0;right:0}.hits li a,.hits .none{color:var(--ink);border-radius:8px;padding:9px 12px;font-size:.95rem;text-decoration:none;display:block}.hits li a:hover{background:var(--brand-soft)}.none{color:var(--muted)}@media (max-width:760px){.nav{display:none}.search input{width:120px}.topbar{gap:10px}}main{min-height:60vh;padding:28px 0 64px}.crumbs ol{color:var(--muted);flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:0;font-size:.88rem;list-style:none;display:flex}.crumbs li+li:before{content:"›";margin-right:6px}.crumbs a{color:var(--muted)}.hero{color:#fff;background:linear-gradient(135deg,#312e81,#4f46e5 55%,#0d9488);border-radius:24px;margin-bottom:36px;padding:48px 36px;position:relative;overflow:hidden}.hero h1{max-width:16ch;margin:0 0 12px}.hero p{opacity:.95;max-width:52ch;margin:0 0 22px;font-size:1.1rem}.hero svg{opacity:.28;width:min(52%,520px);position:absolute;bottom:-10px;right:-20px}.hero .btn{color:#312e81;background:#fff;border-color:#fff}.grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);color:var(--ink);box-shadow:var(--shadow);padding:20px;text-decoration:none;transition:transform .15s,border-color .15s;display:block}.card:hover{border-color:var(--brand);transform:translateY(-2px)}.card h3{margin:10px 0 4px;font-size:1.05rem}.card p{color:var(--muted);margin:0;font-size:.92rem}.ico{background:var(--brand-soft);width:46px;height:46px;color:var(--brand);border-radius:12px;place-items:center;display:grid}.soon{opacity:.6}.pill{background:var(--brand-soft);color:var(--brand);border-radius:999px;margin-left:6px;padding:2px 9px;font-size:.72rem;font-weight:700;display:inline-block}.btn{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:10px;padding:10px 18px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-block}.btn:hover{border-color:var(--brand)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.tool-head .lead{color:var(--muted);max-width:70ch;margin:0 0 22px;font-size:1.15rem}.calc{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:24px;margin-bottom:12px;display:grid}@media (max-width:900px){.calc{grid-template-columns:minmax(0,1fr)}}.calc-form,.calc-out{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow);padding:22px}.field{margin-bottom:16px}.field label{margin-bottom:6px;font-size:.95rem;font-weight:600;display:block}.field input,.field select,.field textarea{box-sizing:border-box;width:100%;max-width:100%;font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--ink);border-radius:10px;padding:11px 12px}.field textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95rem}.help{color:var(--muted);margin:6px 0 0;font-size:.82rem}.actions{flex-wrap:wrap;gap:8px;display:flex}.out-title{margin:0 0 14px;font-size:1.2rem}.results{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin:0 0 18px;display:grid}.res{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:12px 14px}.res dt{color:var(--muted);font-size:.8rem;font-weight:600}.res dd{word-break:break-word;margin:2px 0 0;font-size:1.15rem;font-weight:700}.res.primary{background:var(--brand-soft);border-color:#0000}.res.primary dd{color:var(--brand);font-size:1.4rem}.hint{color:var(--muted);font-size:.75rem}.error{color:var(--err);margin:0;font-weight:600}.chart{border:1px solid var(--border);background:var(--bg);border-radius:12px;margin:0 0 18px;padding:12px}.chart figcaption{color:var(--muted);margin-bottom:4px;font-size:.88rem;font-weight:600}.chart svg{width:100%;height:auto;display:block}.chart text{fill:var(--muted);font-family:inherit;font-size:11px}.chart .lbl{fill:var(--ink);font-weight:700}.chart .lbl.w{fill:#fff;font-size:15px}.chart .lbl.small{font-size:11px}.chart .axis line,.chart .axisline{stroke:var(--muted);stroke-width:1px}.chart .grid{stroke:var(--border);stroke-dasharray:3 3}.chart .bar{fill:var(--brand)}.chart .bar.hi{fill:var(--amber)}.chart .dot{fill:var(--brand);fill-opacity:.8}.chart .band{fill:var(--teal);fill-opacity:.14}.chart .meanline{stroke:var(--amber);stroke-width:2.5px;stroke-dasharray:5 4}.chart .curve{fill:none;stroke:var(--ink);stroke-width:2.2px}.chart .reject{fill:var(--amber);fill-opacity:.45}.chart .e1{fill:#4f46e5}.chart .e2{fill:#6366f1;fill-opacity:.7}.chart .e3{fill:#a5b4fc;fill-opacity:.6}.table-wrap{margin:0 0 16px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.95rem}caption{text-align:left;margin-bottom:8px;font-weight:700}th,td{border-bottom:1px solid var(--border);text-align:left;padding:9px 12px}th{background:var(--brand-soft);font-size:.85rem}.steps summary,.faq summary{cursor:pointer;font-weight:700}.steps{border:1px solid var(--border);background:var(--bg);border-radius:12px;padding:12px 16px}.steps ol{margin:12px 0 0;padding-left:20px}.steps li{margin-bottom:8px}.article{max-width:780px}.article p{margin:0 0 1.1em}.article ol,.article ul{padding-left:22px}.article li{margin-bottom:.5em}.formula{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin:6px 0 16px;padding:12px 16px;display:block;overflow-x:auto}.formula-name{color:var(--muted);margin:14px 0 0;font-size:.85rem;font-weight:700}.faq details{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:10px;padding:14px 18px}.faq p{color:var(--muted);margin:10px 0 0}.tips{background:var(--brand-soft);border-radius:var(--r);padding:18px 22px}.tips li{margin-bottom:.4em}.note{color:var(--muted);font-size:.85rem}.ad-slot{margin:24px 0}.site-footer{border-top:1px solid var(--border);background:var(--surface);padding:36px 0 18px;font-size:.92rem}.cols{grid-template-columns:2fr 1fr 1fr 1fr;gap:24px;display:grid}.cols h2{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 10px;font-size:.8rem}.cols nav a{color:var(--ink);padding:3px 0;text-decoration:none;display:block}.cols nav a:hover{color:var(--brand)}.cols p{color:var(--muted);margin:6px 0 0}.legal{color:var(--muted);margin-top:24px;font-size:.82rem}@media (max-width:760px){.cols{grid-template-columns:1fr 1fr}.hero{padding:32px 22px}}.chart .curve.c2{stroke:var(--amber)}.chart .curve.c3{stroke:var(--teal)}.chart .band2{fill:var(--brand);fill-opacity:.2;stroke:var(--brand)}.chart .outl{fill:none;stroke:var(--amber);stroke-width:2px}.chart .cell.good{fill:var(--teal)}.chart .cell.bad{fill:var(--amber)}.chart .lbl.w2{font-size:18px}.chart .ciline{stroke:var(--brand);stroke-width:2.5px}.toc{border:1px solid var(--border);background:var(--bg-soft,var(--bg));border-radius:12px;margin:0 0 22px;padding:14px 18px}.toc h2{margin:0 0 8px;font-size:.95rem}.toc ol{columns:2;column-gap:28px;margin:0;padding-left:20px}.toc a{text-decoration:none}.toc li{break-inside:avoid;margin:3px 0}.glance{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:0 0 22px;display:grid}.glance div{border:1px solid var(--border);border-radius:10px;padding:10px 12px}.glance b{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.72rem;display:block}.glance span{font-weight:700}@media (max-width:640px){.toc ol{columns:1}}.glossary dt{margin-top:10px;font-weight:700}.glossary dd{margin:2px 0 0}h2[id]{scroll-margin-top:80px}html{scroll-behavior:smooth}.verdict{background:linear-gradient(135deg,var(--brand-soft),var(--surface));border:1px solid var(--border);border-left:4px solid var(--brand);border-radius:12px;align-items:flex-start;gap:12px;margin:0 0 14px;padding:14px 16px;display:flex}.verdict svg{color:var(--brand);flex:none;margin-top:2px}.verdict b{text-transform:uppercase;letter-spacing:.06em;color:var(--brand);margin-bottom:3px;font-size:.78rem;display:block}.verdict p{margin:0;line-height:1.55}.checks{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin:0 0 16px;padding:12px 14px}.checks h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 8px;font-size:.78rem}.checks ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.chk{align-items:flex-start;gap:9px;font-size:.92rem;line-height:1.45;display:flex}.chk svg{flex:none;margin-top:2px}.chk.ok svg{color:#15803d}.chk.warn svg{color:#b45309}.chk.info svg{color:#2563eb}.chk-link{white-space:nowrap;font-weight:600}.out-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;margin:0 0 10px;display:flex}.out-head .out-title{margin:0}.toolbar{flex-wrap:wrap;gap:6px;display:flex}.chip{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;padding:5px 11px;font-size:.8rem;font-weight:600}.chip:hover{border-color:var(--brand);color:var(--brand)}.vstats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:18px 0;display:grid}.vstats div{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:12px 14px}.vstats b{color:var(--brand);font-size:1.6rem;display:block}.vstats span{color:var(--muted);font-size:.82rem}.vstats .good b{color:#15803d}.vstats .bad b{color:#b91c1c}.verif td.ok{color:#15803d;white-space:nowrap;font-weight:600}.verif td.bad{color:#b91c1c;white-space:nowrap;font-weight:700}.verif caption small{color:var(--muted);font-weight:400}.vtool h3{margin:28px 0 8px}.verif code{font-size:.85em}.faq summary h3{margin:0;font-size:1rem;font-weight:700;display:inline}.var-table td:first-child{font-family:var(--mono,ui-monospace,monospace);white-space:nowrap;font-weight:700}.usecases{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.usecases>div{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px 16px}.usecases h3{margin:0 0 6px;font-size:1rem}.usecases p{color:var(--muted);margin:0}@media (min-width:901px){.calc-form{max-height:calc(100vh - 100px);position:sticky;top:84px;overflow:auto}}
