@font-face{font-family:Geologica;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geologica-cyrillic-ext-500-normal-BNRhq6NH.woff2) format("woff2"),url(/assets/geologica-cyrillic-ext-500-normal-DFN9OleI.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geologica;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geologica-cyrillic-500-normal-BZELCISH.woff2) format("woff2"),url(/assets/geologica-cyrillic-500-normal-Cc_E8UQX.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geologica;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geologica-greek-500-normal-BA-_MNEG.woff2) format("woff2"),url(/assets/geologica-greek-500-normal-CP_4gih_.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Geologica;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geologica-vietnamese-500-normal-C1cx_iFL.woff2) format("woff2"),url(/assets/geologica-vietnamese-500-normal-CUK3QztO.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geologica;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geologica-latin-ext-500-normal-1D0DJuar.woff2) format("woff2"),url(/assets/geologica-latin-ext-500-normal-Cmymkpbu.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Geologica;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geologica-latin-500-normal-D8VVd604.woff2) format("woff2"),url(/assets/geologica-latin-500-normal-0-efr3Ds.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geologica;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/geologica-cyrillic-ext-600-normal-Cw18KpRz.woff2) format("woff2"),url(/assets/geologica-cyrillic-ext-600-normal-BsUDNWed.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geologica;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/geologica-cyrillic-600-normal-e7NJphzh.woff2) format("woff2"),url(/assets/geologica-cyrillic-600-normal-c6WAVoKC.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geologica;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/geologica-greek-600-normal-Cg4F0t32.woff2) format("woff2"),url(/assets/geologica-greek-600-normal-Bc9KP4Y9.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Geologica;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/geologica-vietnamese-600-normal-6Fs_CHlS.woff2) format("woff2"),url(/assets/geologica-vietnamese-600-normal-tVsswiH9.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geologica;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/geologica-latin-ext-600-normal-BKA3-JFv.woff2) format("woff2"),url(/assets/geologica-latin-ext-600-normal-BzFy6opQ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Geologica;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/geologica-latin-600-normal-Cy--pFh9.woff2) format("woff2"),url(/assets/geologica-latin-600-normal-DGRraGLk.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Golos Text;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/golos-text-cyrillic-ext-400-normal-Bo67NYBq.woff2) format("woff2"),url(/assets/golos-text-cyrillic-ext-400-normal-D592xEk3.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Golos Text;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/golos-text-cyrillic-400-normal-C7us6pn1.woff2) format("woff2"),url(/assets/golos-text-cyrillic-400-normal-BwL4n7Pb.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Golos Text;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/golos-text-latin-ext-400-normal-BjKcJWKY.woff2) format("woff2"),url(/assets/golos-text-latin-ext-400-normal-BXgyX_iE.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Golos Text;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/golos-text-latin-400-normal-Coi1FYaD.woff2) format("woff2"),url(/assets/golos-text-latin-400-normal-DOuJOmdK.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Golos Text;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/golos-text-cyrillic-ext-500-normal-CLsu_eDI.woff2) format("woff2"),url(/assets/golos-text-cyrillic-ext-500-normal-InHNvB7v.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Golos Text;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/golos-text-cyrillic-500-normal-BSLQUuP1.woff2) format("woff2"),url(/assets/golos-text-cyrillic-500-normal-hXinzVVQ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Golos Text;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/golos-text-latin-ext-500-normal-9vZPKadr.woff2) format("woff2"),url(/assets/golos-text-latin-ext-500-normal-BmtMVntR.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Golos Text;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/golos-text-latin-500-normal-BznAvurO.woff2) format("woff2"),url(/assets/golos-text-latin-500-normal-BQo4s7Kn.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Golos Text;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/golos-text-cyrillic-ext-600-normal-uuhKjiyO.woff2) format("woff2"),url(/assets/golos-text-cyrillic-ext-600-normal-rSWq63aw.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Golos Text;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/golos-text-cyrillic-600-normal-lpQ9rVRR.woff2) format("woff2"),url(/assets/golos-text-cyrillic-600-normal-BgvEFMNR.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Golos Text;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/golos-text-latin-ext-600-normal-DLLCs_GQ.woff2) format("woff2"),url(/assets/golos-text-latin-ext-600-normal-C6iohuVX.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Golos Text;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/golos-text-latin-600-normal-Bhk8uV1U.woff2) format("woff2"),url(/assets/golos-text-latin-600-normal-B_o32mE8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Golos Text;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/golos-text-cyrillic-ext-700-normal-D3ZaBy6G.woff2) format("woff2"),url(/assets/golos-text-cyrillic-ext-700-normal-DPkDx3rk.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Golos Text;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/golos-text-cyrillic-700-normal-BKmY45Ip.woff2) format("woff2"),url(/assets/golos-text-cyrillic-700-normal-ClsrbE7_.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Golos Text;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/golos-text-latin-ext-700-normal-0O3DoeVP.woff2) format("woff2"),url(/assets/golos-text-latin-ext-700-normal-CezX9NlQ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Golos Text;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/golos-text-latin-700-normal-CxmN_Nfd.woff2) format("woff2"),url(/assets/golos-text-latin-700-normal-DAuVRgMH.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink: #15171c;--ink-2: #2a2d35;--accent: #ffd400;--accent-hover: #ffe033;--accent-soft: #fff6c4;--accent-line: #e0b900;--paper: #f5f5f2;--surface: #ffffff;--surface-2: #fafaf8;--line: #e6e5df;--line-strong: #cfcdc4;--text: #15171c;--text-2: #5f6168;--muted: #8d8f96;--ok: #0f9f62;--ok-text: #08774a;--ok-soft: #ddf7ea;--warn: #f2690d;--warn-text: #b44c05;--warn-soft: #ffead9;--bad: #e5372c;--bad-text: #b8241b;--bad-soft: #fde3e1;--info: #2f6fed;--info-text: #1f4fb8;--info-soft: #e2ebfe;--muted-soft: #eeede8;--radius: 10px;--heading: Geologica, "Segoe UI", Arial, sans-serif;--body: "Golos Text", -apple-system, "Segoe UI", Arial, sans-serif;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--text);font:400 14px/1.55 var(--body);-webkit-font-smoothing:antialiased}a{color:var(--text);text-decoration:none}a:hover{text-decoration:underline;text-decoration-color:var(--accent-line);text-decoration-thickness:2px;text-underline-offset:3px}h1,h2,h3{font-family:var(--heading);font-weight:600;letter-spacing:-.015em}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:24px;height:62px;padding:0 28px;background:var(--surface);border-bottom:1px solid var(--line)}.topnav{display:flex;gap:4px}.topnav a{display:flex;align-items:center;height:38px;padding:0 14px;border-radius:8px;color:var(--text-2);font:500 14px/1 var(--heading)}.topnav a:hover{background:var(--paper);color:var(--text);text-decoration:none}.topnav a.active{background:var(--accent);color:var(--ink)}.topbar-actions{margin-left:auto;display:flex;gap:4px;align-items:center}.ghost{background:none;border:none;color:var(--text-2);padding:9px 12px;font-weight:600}.ghost:hover{background:var(--paper);color:var(--text)}.content{max-width:1440px;margin:0 auto;padding:32px 28px 72px;min-width:0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}.page-head h1{margin:0;font-size:30px;line-height:1.15}.page-head p{margin:8px 0 0;color:var(--text-2);max-width:780px;font-size:15px}.crumbs{display:flex;gap:8px;font-size:13px;color:var(--muted);margin-bottom:10px}.crumbs a{color:var(--text-2);font-weight:600}.crumbs span:before{content:"/";margin-right:8px;color:var(--line-strong)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:18px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}.card-head h2{margin:0;font-size:16px}.card-body{padding:20px}.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.grow{flex:1}.muted{color:var(--text-2)}.small{font-size:12px}.nowrap{white-space:nowrap}.right{text-align:right}.mono{font-variant-numeric:tabular-nums}button,.button{font:600 13px/1.2 var(--body);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);border-radius:8px;padding:10px 15px;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;transition:background .12s,border-color .12s,color .12s}button:hover,.button:hover{border-color:var(--ink);text-decoration:none}button:disabled{opacity:.45;cursor:default}button.primary,.button.primary{background:var(--accent);border-color:var(--accent-line);color:var(--ink);font-weight:700}button.primary:hover,.button.primary:hover{background:var(--accent-hover);border-color:var(--accent-line)}button.dark,.button.dark{background:var(--ink);border-color:var(--ink);color:#fff}button.dark:hover{background:var(--ink-2)}button.ok{background:var(--ok);border-color:var(--ok);color:#fff}button.ok:hover{background:#0b8a54;border-color:#0b8a54}button.danger{color:var(--bad-text)}button.danger:hover{border-color:var(--bad);color:var(--bad)}button.small,.button.small{padding:6px 10px;font-size:12px}button.link{border:none;background:none;color:var(--text);padding:0;font-weight:600;text-decoration:underline;text-decoration-color:var(--accent-line);text-underline-offset:3px}input,select,textarea{font:400 14px/1.4 var(--body);color:var(--text);background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;padding:9px 12px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px var(--accent-soft)}button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}input[type=checkbox],input[type=radio]{accent-color:var(--ink);width:16px;height:16px;padding:0}label.field,div.field{display:grid;gap:6px;font-size:12px;font-weight:600;color:var(--text-2)}label.field>input,label.field>select{color:var(--text)}div.field.period .tabs{min-height:40px;align-items:center}label.check{display:inline-flex;align-items:center;gap:8px}input[type=file]{padding:6px}input[type=file]::file-selector-button{font:600 12px/1.2 var(--body);border:1px solid var(--line-strong);background:var(--surface-2);color:var(--text);border-radius:6px;padding:7px 12px;margin-right:10px;cursor:pointer}table{width:100%;border-collapse:collapse}th,td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{font-size:12px;font-weight:600;color:var(--muted);background:var(--surface-2);position:sticky;top:0;z-index:1}tbody tr:hover{background:#fcfcfa}tbody tr:last-child td{border-bottom:none}tr.group td{background:var(--surface-2);font-family:var(--heading);font-weight:600}tr.subgroup td{background:#fdfdfb;color:var(--text-2);font-size:12px;font-weight:600}tr.selected{background:var(--accent-soft)!important}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}th.keep-case{font-size:12px}table.raw-table td{font-size:13px;padding:8px 12px}table.raw-table tr:first-child td{font-weight:600;background:var(--surface-2)}.table-wrap{overflow-x:auto}.original{overflow:hidden}.original iframe{display:block;width:100%;height:calc(100vh - 250px);min-height:560px;border:0;background:var(--surface-2)}.badge{display:inline-block;padding:3px 8px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap}.tone-ok{background:var(--ok-soft);color:var(--ok-text)}.tone-warn{background:var(--warn-soft);color:var(--warn-text)}.tone-bad{background:var(--bad-soft);color:var(--bad-text)}.tone-muted{background:var(--muted-soft);color:var(--text-2)}.tone-info{background:var(--info-soft);color:var(--info-text)}.progress .tone-ok{color:var(--ok)}.progress .tone-warn{color:var(--warn)}.progress .tone-bad{color:var(--bad)}.progress .tone-muted{color:var(--line-strong)}.tabs{display:flex;gap:4px;flex-wrap:wrap}.tabs button{border:none;border-radius:8px;background:none;padding:7px 12px;color:var(--text-2)}.tabs button:hover{background:var(--paper);color:var(--text)}.tabs button.active{background:var(--ink);color:#fff}.section-tabs{display:flex;gap:28px;border-bottom:1px solid var(--line);margin-bottom:22px;flex-wrap:wrap}.section-tabs button{border:none;border-bottom:3px solid transparent;border-radius:0;background:none;padding:10px 0 12px;margin-bottom:-1px;font:500 15px/1 var(--heading);color:var(--text-2)}.section-tabs button:hover{color:var(--text);border-color:var(--line-strong)}.section-tabs button.active{color:var(--text);border-bottom-color:var(--accent)}.section-tabs .count{font:700 11px/1 var(--body);background:var(--ink);color:#fff;border-radius:999px;padding:3px 7px;margin-left:8px}.progress{height:8px;background:var(--muted-soft);border-radius:4px;overflow:hidden;display:flex}.progress>span{display:block;height:100%}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px}.stat .label{font-size:12px;font-weight:600;color:var(--text-2)}.stat .value{font:600 26px/1.2 var(--heading);margin-top:6px;font-variant-numeric:tabular-nums}.suggestion{display:grid;gap:2px}.suggestion .name{font-weight:600}.price{font-variant-numeric:tabular-nums;white-space:nowrap}.stale{color:var(--warn-text)}.issue{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.issue:last-child{border-bottom:none}.issue .badge{align-self:flex-start}.empty{padding:36px;text-align:center;color:var(--text-2)}.dropzone{display:block;border:1.5px dashed var(--line-strong);border-radius:var(--radius);padding:28px 24px;text-align:center;color:var(--text-2);font-weight:500;cursor:pointer;background:var(--surface-2)}.dropzone:before{content:"+";display:grid;place-items:center;width:40px;height:40px;margin:0 auto 12px;border-radius:50%;background:var(--accent);color:var(--ink);font:600 24px/1 var(--heading)}.dropzone:hover,.dropzone.over{border-color:var(--ink);background:var(--accent-soft);color:var(--text)}ol.numbered{list-style:none;counter-reset:n;margin:0;padding:0;display:grid;gap:20px}ol.numbered>li{counter-increment:n;display:grid;grid-template-columns:40px 1fr}ol.numbered>li:before{content:counter(n);display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--accent);font:600 13px/1 var(--heading)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#15171c7f;display:grid;place-items:center;z-index:50;padding:20px}.modal{background:var(--surface);border-radius:12px;width:min(780px,100%);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 60px #15171c4d}.modal-head{padding:18px 22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.modal-head h3{margin:0;font-size:18px}.modal-body{padding:18px 22px;overflow:auto}.modal-foot{padding:14px 22px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.toasts{position:fixed;left:50%;transform:translate(-50%);bottom:24px;display:grid;gap:8px;z-index:60;justify-items:center}.toast{background:var(--ink);color:#fff;padding:12px 16px;border-radius:10px;max-width:440px;font-weight:500;box-shadow:0 10px 30px #15171c40;border-left:4px solid var(--accent)}.toast.error{background:var(--bad-text);border-left-color:#fff}.explain{margin:0;padding-left:18px;color:var(--text-2);font-size:13px}.explain li{margin-bottom:3px}.sticky-bar{position:sticky;bottom:0;background:var(--ink);color:#fff;padding:12px 20px;display:flex;gap:10px;align-items:center;border-radius:0 0 var(--radius) var(--radius)}.sticky-bar button:not(.primary):not(.ok){background:transparent;color:#fff;border-color:#ffffff40}.sticky-bar button.link{color:#fff}.kb-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.ask{display:flex;gap:10px}.ask textarea{flex:1;resize:vertical;min-height:48px;font-size:15px}.chat{display:grid;gap:14px}.msg-q{justify-self:end;max-width:80%;background:var(--ink);color:#fff;border-radius:14px 14px 4px;padding:10px 14px;white-space:pre-wrap}.msg-a{background:var(--surface);border:1px solid var(--line);border-radius:14px 14px 14px 4px;padding:14px 16px}.msg-a p{margin:0 0 8px}.msg-a p:last-child{margin-bottom:0}.msg-a ul{margin:0 0 8px;padding-left:20px}.msg-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);font-size:12px;color:var(--muted)}.cite{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--accent);color:var(--ink);font:700 11px/1 var(--body);vertical-align:2px;margin:0 1px}.source{display:inline-flex;gap:6px;align-items:center;padding:3px 8px;border:1px solid var(--line);border-radius:6px;background:var(--surface-2);color:var(--text-2);font-size:12px}.article{padding:14px 0;border-bottom:1px solid var(--line)}.article:last-child{border-bottom:none}.article h3{margin:0 0 4px;font-size:15px}.article-body{white-space:pre-wrap;color:var(--text);margin-top:8px}.thinking{color:var(--text-2);font-style:italic}.assistant-fab{position:fixed;right:24px;bottom:24px;z-index:40;background:var(--ink);border-color:var(--ink);color:#fff;border-radius:999px;padding:12px 18px 12px 14px;font:600 14px/1 var(--heading);box-shadow:0 10px 28px #15171c40}.assistant-fab:hover{background:var(--ink-2);border-color:var(--ink-2);color:#fff}.assistant-fab .dot{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #ffd40040}.assistant-panel{position:fixed;right:24px;bottom:24px;z-index:40;width:min(420px,calc(100vw - 32px));height:min(640px,calc(100vh - 100px));display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 60px #15171c47;overflow:hidden}.assistant-panel header{display:flex;align-items:center;gap:4px;padding:12px 12px 12px 18px;background:var(--surface);border-bottom:1px solid var(--line)}.assistant-panel header>div{flex:1;display:grid}.assistant-panel header b{font:600 16px/1.2 var(--heading)}.assistant-panel header span{font-size:12px;color:var(--muted)}.assistant-body{flex:1;overflow-y:auto;padding:16px}.assistant-body .msg-q{max-width:88%}.assistant-body .msg-a{padding:12px 14px;font-size:14px}.assistant-intro p{margin:0 0 12px;color:var(--text-2)}.assistant-examples{display:grid;gap:6px;justify-items:start}.assistant-examples button{white-space:normal;text-align:left}.assistant-ask{display:flex;gap:8px;padding:12px;background:var(--surface);border-top:1px solid var(--line)}.assistant-ask textarea{flex:1;resize:none}.tour{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100}.tour-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:#15171c8c}.tour-spot{position:fixed;border:3px solid var(--accent);border-radius:12px;box-shadow:0 0 0 9999px #15171c8c;pointer-events:none;transition:all .2s ease}.tour-card{position:fixed;background:var(--surface);color:var(--text);border-radius:14px;padding:20px 22px 18px;box-shadow:0 24px 60px #0000004d;overflow:hidden}.tour-step{font-size:12px;font-weight:600;color:var(--muted);margin-bottom:6px}.tour-card h3{margin:0 0 8px;font-size:20px;line-height:1.25}.tour-text{color:var(--text-2);font-size:14px;line-height:1.6}.tour-text p{margin:14px 0 0}.tour-text b{color:var(--text)}.tour-note{color:var(--warn-text);font-size:13px;margin:12px 0 0}.tour-progress{position:absolute;top:0;left:0;right:0;height:4px;background:var(--muted-soft)}.tour-progress span{display:block;height:100%;background:var(--accent);transition:width .2s}.tour-foot{display:flex;align-items:center;gap:8px;margin-top:18px}.tour-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:6px 0 4px}.tour-flow>div{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:12px;display:grid;gap:6px;align-content:start}.tour-flow .n{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--accent);font:600 12px/1 var(--heading)}.tour-flow b{font:600 14px/1.2 var(--heading)}.tour-flow span{font-size:13px;line-height:1.45;color:var(--text-2)}.login{min-height:100vh;background:var(--ink);color:#fff;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,400px);gap:72px;align-items:center;padding:64px max(32px,8vw)}.login h1{font-size:clamp(32px,4vw,52px);line-height:1.1;margin:0}.login h1 mark{background:var(--accent);color:var(--ink);padding:0 8px;border-radius:6px}.login p{color:#a7a9b0;max-width:520px;margin:20px 0 0;font-size:16px}.login-form{display:grid;gap:18px;background:#1d2026;border:1px solid #2c2f37;border-radius:16px;padding:28px}.login-form label{display:grid;gap:6px;font-size:12px;font-weight:600;color:#a7a9b0}.login-form input{background:#15171c;border-color:#343841;color:#fff;padding:12px 14px;font-size:15px}.login-form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #ffd40033}.login-form button.primary{justify-content:center;padding:14px 18px;font-size:15px}.login-error{background:#e5372c2e;color:#ffb3ad;border-radius:8px;padding:10px 12px;font-weight:500}.login-note{font-size:12px;color:#7d8089;margin:0}@media (max-width: 1100px){.kb-layout{grid-template-columns:1fr}}@media (max-width: 900px){.login{grid-template-columns:1fr;gap:40px}.topbar{gap:12px;padding:0 16px;overflow-x:auto}.content{padding:24px 16px 56px}.page-head{flex-direction:column;align-items:flex-start}}
