@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-cyrillic-ext-wght-normal.460bdf14.woff2) format("woff2-variations");unicode-range:u+0460-052f,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(/_next/static/media/inter-cyrillic-wght-normal.491cbc05.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-greek-ext-wght-normal.23aae568.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(/_next/static/media/inter-greek-wght-normal.4449bf7a.woff2) format("woff2-variations");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-vietnamese-wght-normal.113a630f.woff2) format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-latin-ext-wght-normal.3835a68e.woff2) format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/inter-latin-wght-normal.6c596dfc.woff2) format("woff2-variations");unicode-range:u+00??,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,[data-theme=dark]{--bg:#0e0e11;--side:#111115;--surface:#16161b;--surface-2:#1e1e25;--border:#2a2a33;--text:#ededf0;--text-2:#a1a1aa;--accent:#7c3aed;--accent-hover:#6d28d9;--accent-text:#b79cfb;--accent-soft:rgba(124,58,237,0.22);--ok-soft:rgba(34,197,94,0.15);--ok:#86efac;--warn-soft:rgba(245,158,11,0.15);--warn:#fcd34d;--danger:#fca5a5;--danger-soft:rgba(239,68,68,0.14);--shadow:0 20px 50px rgba(0,0,0,0.45);color-scheme:dark}[data-theme=light]{--bg:#ffffff;--side:#fafafa;--surface:#ffffff;--surface-2:#f6f6f7;--border:#e8e8eb;--text:#18181b;--text-2:#63636b;--accent:#7c3aed;--accent-hover:#6d28d9;--accent-text:#6d28d9;--accent-soft:#f1eafe;--ok-soft:#e7f7ec;--ok:#15803d;--warn-soft:#fef3c7;--warn:#92400e;--danger:#b91c1c;--danger-soft:#fdecec;--shadow:0 20px 50px rgba(16,24,40,0.12);color-scheme:light}*{box-sizing:border-box}body,html{margin:0}body{background:var(--bg);color:var(--text);font-family:Inter Variable,Inter,system-ui,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--accent-text);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0;letter-spacing:-.02em;line-height:1.25}h1{font-size:28px;font-weight:650}h2{font-size:16px;letter-spacing:-.01em}h2,h3{font-weight:600}h3{font-size:14px}p{margin:0}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.muted{color:var(--text-2)}.small{font-size:13px}.tiny{font-size:12px}.strong{font-weight:600}.row{display:flex;gap:10px;align-items:center}.wrap{flex-wrap:wrap}.between{justify-content:space-between}.stack{gap:16px}.stack,.stack-sm{display:flex;flex-direction:column}.stack-sm{gap:8px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px}.grid-2,.grid-3{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.shell{display:flex;flex-wrap:wrap;min-height:100vh}.sidebar{flex:1 1 240px;max-width:100%;padding:20px 14px;border-right:1px solid var(--border);background:var(--side);display:flex;flex-direction:column;gap:2px}.brand{display:flex;align-items:center;gap:10px;padding:6px 10px 18px;font-weight:650;font-size:15px;color:var(--text)}.brand:hover{text-decoration:none}.brand-logo{font-size:22px;line-height:1}.badge-admin{font-size:11px;font-weight:600;padding:2px 7px;border-radius:6px;background:var(--accent-soft);color:var(--accent-text)}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;color:var(--text-2);font-size:14px;font-weight:500}.nav-item:hover{background:var(--surface-2);text-decoration:none;color:var(--text)}.nav-item[aria-current=page]{background:var(--accent-soft);color:var(--accent-text);font-weight:600}.nav-item .meta{margin-left:auto;font-size:12px;color:var(--text-2)}.sidebar-foot{margin-top:auto;padding:14px 10px 4px;border-top:1px solid var(--border);display:flex;align-items:center;gap:10px}.avatar{width:32px;height:32px;flex:none;border-radius:50%;background:var(--accent-soft);color:var(--accent-text);display:grid;place-items:center;font-size:12px;font-weight:600}.main{flex:999 1 560px;min-width:0;padding:40px 48px 64px}.page{max-width:1040px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.page-narrow{max-width:640px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.page-head p{margin-top:6px}.card{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:20px 22px}.card-tight{padding:14px 16px}.tile{background:var(--surface-2);padding:12px 14px}.btn,.tile{border-radius:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border:1px solid var(--border);background:transparent;color:var(--text);font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap}.btn:hover{background:var(--surface-2);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn-primary:hover{background:var(--accent-hover)}.btn-danger{color:var(--danger)}.btn-danger:hover{background:var(--danger-soft)}.btn-sm{min-height:36px;padding:0 12px;font-size:13px;border-radius:8px}.icon-btn{width:44px;height:44px;padding:0}.link-btn{background:none;border:0;padding:0;color:var(--accent-text);cursor:pointer;font-size:inherit}.field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-2)}.field input,.field select,.field textarea,.input{width:100%;min-height:44px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:15px}.field textarea,textarea.input{resize:vertical;line-height:1.5}.form{display:flex;flex-direction:column;gap:14px}.error{color:var(--danger);font-size:14px}.notice{border-radius:10px;padding:12px 14px;font-size:14px;background:var(--surface-2);color:var(--text-2)}.notice-ok{background:var(--ok-soft);color:var(--ok)}.notice-warn{background:var(--warn-soft);color:var(--warn)}.pill{display:inline-block;font-size:12px;font-weight:600;padding:3px 10px;border-radius:99px;white-space:nowrap}.pill-ok{background:var(--ok-soft);color:var(--ok)}.pill-warn{background:var(--warn-soft);color:var(--warn)}.pill-gray{background:var(--surface-2);color:var(--text-2)}.pill-accent{background:var(--accent-soft);color:var(--accent-text)}.pill-danger{background:var(--danger-soft);color:var(--danger)}.progress{height:6px;border-radius:99px;background:var(--surface-2);overflow:hidden}.progress>div{height:100%;background:var(--accent);border-radius:99px;transition:width .3s}.table-wrap{border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-size:12px;font-weight:500;color:var(--text-2);padding:12px 18px}.table td,.table th{border-bottom:1px solid var(--border)}.table td{padding:14px 18px;vertical-align:middle}.table tr:last-child td{border-bottom:0}.auth{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:100%;max-width:400px;display:flex;flex-direction:column;gap:22px}.auth-card .brand{padding:0}.prose{font-size:15px;line-height:1.7}.prose h1{font-size:26px;margin:0 0 14px}.prose h2{font-size:19px;margin:28px 0 10px}.prose h3{font-size:16px;margin:20px 0 8px}.prose blockquote,.prose ol,.prose p,.prose table,.prose ul{margin:0 0 14px}.prose ol,.prose ul{padding-left:22px}.prose li{margin:4px 0}.prose hr{border:0;border-top:1px solid var(--border);margin:24px 0}.prose blockquote{border-left:3px solid var(--accent);padding:4px 0 4px 14px;color:var(--text-2)}.prose code{background:var(--surface-2);padding:1px 6px;border-radius:6px;font-size:13px}.prose table{border-collapse:collapse;width:100%;font-size:14px}.prose td,.prose th{padding:8px 10px;text-align:left;vertical-align:top}.codebox,.prose td,.prose th{border:1px solid var(--border)}.codebox{position:relative;background:var(--surface-2);border-radius:12px;padding:16px;font-family:ui-monospace,Menlo,monospace;font-size:12.5px;line-height:1.6;white-space:pre-wrap;max-height:420px;overflow:auto}@media (max-width:900px){.main{padding:24px 18px 48px}.sidebar{border-right:0;border-bottom:1px solid var(--border)}.grid-2,.grid-3{grid-template-columns:1fr}}