@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{--bg:#ffffff;--sidebar:#f7f6f4;--panel:#ffffff;--soft:#f4f3f1;--text:#1c1f3b;--muted:#676a7d;--line:#e5e3df;--primary:#1c1f3b;--primary-text:#ffffff;--accent:#4f46c8;--marker:#f2655c;--chart-1:#5048c8;--chart-2:#e8655a;--error-bg:#fdecea;--error:#a3261d;--ok-bg:#dff5ea;--ok:#12694a;--shadow:0 1px 2px rgba(28,31,59,.06);color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#14151f;--sidebar:#1b1c29;--panel:#1b1c29;--soft:#262738;--text:#eceef7;--muted:#a4a7bb;--line:#33354a;--primary:#e4e5f4;--primary-text:#17182a;--accent:#a9a4f5;--marker:#f58a82;--chart-1:#7d76ea;--chart-2:#e8655a;--error-bg:#3d1f1d;--error:#f6b6b1;--ok-bg:#16382b;--ok:#9fe3c5;--shadow:none}}:root[data-theme=dark]{color-scheme:dark;--bg:#14151f;--sidebar:#1b1c29;--panel:#1b1c29;--soft:#262738;--text:#eceef7;--muted:#a4a7bb;--line:#33354a;--primary:#e4e5f4;--primary-text:#17182a;--accent:#a9a4f5;--marker:#f58a82;--chart-1:#7d76ea;--chart-2:#e8655a;--error-bg:#3d1f1d;--error:#f6b6b1;--ok-bg:#16382b;--ok:#9fe3c5;--shadow:none}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 Inter Variable,system-ui,sans-serif}a{color:var(--accent)}h1{font-size:1.75rem;font-weight:500;letter-spacing:-.01em;margin:0}h2{font-size:1.1rem;font-weight:600;margin:0 0 .75rem}.shell{min-height:100vh}.nav,.shell{display:flex}.nav{width:256px;flex:none;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto;padding:1.25rem 1rem;background:var(--sidebar);border-right:1px solid var(--line);flex-direction:column;gap:2px}.brand{display:flex;align-items:center;gap:.55rem;font-weight:700;font-size:1.15rem;color:var(--accent);margin:0 .35rem 1rem}.brand span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--accent);color:var(--bg)}.nav-search{position:relative;margin-bottom:.75rem}.nav-search svg{position:absolute;left:.65rem;top:.6rem;color:var(--muted)}.nav-search input{margin:0;padding-left:2.1rem;padding-right:3.4rem;background:var(--soft);border-color:transparent}.nav-search kbd{position:absolute;right:.65rem;top:.62rem;font:11px Inter Variable,sans-serif;color:var(--muted)}.nav-item{display:flex;align-items:center;gap:.7rem;padding:.48rem .55rem;border-radius:8px;text-decoration:none;color:var(--text)}a.nav-item:hover{background:var(--soft)}.nav-item.active{font-weight:600}.nav-item.disabled{color:var(--muted);opacity:.6;cursor:default}.nav-item small{margin-left:auto;font-size:10px}.nav-sub{margin:2px 0 4px 1.05rem;border-left:2px solid var(--line);display:flex;flex-direction:column}.nav-sub a{padding:.35rem .8rem;margin-left:-2px;border-left:2px solid transparent;text-decoration:none;color:var(--text);font-size:.94rem}.nav-sub a.active{border-left-color:var(--marker);font-weight:600}.nav-label{font-size:11px;letter-spacing:.08em;color:var(--muted);margin:1rem .55rem .3rem}.theme-toggle{margin-top:auto!important}.nav-user{padding-top:.5rem;display:flex;align-items:center;gap:.6rem}.avatar{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--primary);color:var(--primary-text);font-weight:600;font-size:.85rem}.nav-user-text{min-width:0;flex:1 1;line-height:1.25}.nav-user-text a{color:var(--text);font-weight:600;text-decoration:none}.nav-user-text div{color:var(--muted);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}main{flex:1 1;min-width:0;padding:2.25rem 2.5rem}.content{max-width:1240px;margin:0 auto}.page-head{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;align-items:center}.page-head,main>.content>h1{margin-bottom:1.5rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:1.4rem;margin-bottom:1.25rem;overflow-x:auto}.panel.flush{padding:0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:.9rem;gap:.9rem}label{display:block;font-size:.88rem;color:var(--muted)}input,select,textarea{display:block;width:100%;margin-top:.25rem;padding:.5rem .65rem;font:inherit;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:8px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input[type=checkbox]{display:inline;width:auto;margin:0 .45rem 0 0}label.check{color:var(--text);margin-bottom:.25rem}fieldset{border:0;padding:0;margin:0;min-width:0}fieldset:disabled input,fieldset:disabled select{background:var(--soft);color:var(--muted)}.button,button{display:inline-block;font:inherit;font-weight:500;padding:.55rem 1rem;border:1px solid var(--primary);border-radius:8px;background:var(--primary);color:var(--primary-text);cursor:pointer;text-decoration:none}fieldset>button,form>button{margin-top:1rem}.button.secondary,button.secondary{background:var(--panel);color:var(--text);border-color:var(--line);box-shadow:var(--shadow)}button.quiet{background:transparent;border-color:transparent;color:var(--muted);padding:.3rem}.actions{display:flex;flex-wrap:wrap;gap:.5rem}.form-actions{margin-top:1rem}.tabs-bar{gap:.75rem;justify-content:space-between;align-items:center;padding:1rem 1.25rem}.tabs,.tabs-bar{display:flex;flex-wrap:wrap}.tabs{gap:.25rem}.tabs a{padding:.35rem .8rem;border-radius:8px;color:var(--text);text-decoration:none;font-size:.92rem}.tabs a.active{background:var(--soft);font-weight:500}.search{display:flex;gap:.5rem}.search input{margin:0;width:220px}.search button{margin:0}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.94rem}th{padding:.65rem 1.25rem;background:var(--soft);color:var(--text);font-weight:500;font-size:.86rem;white-space:nowrap}td,th{text-align:left}td{padding:.8rem 1.25rem;border-bottom:1px solid var(--line);vertical-align:middle}tr:last-child td{border-bottom:0}td a{color:var(--text);font-weight:500;text-decoration:none}td a:hover{text-decoration:underline}.right{text-align:right}.pill{display:inline-flex;align-items:center;gap:.35rem;padding:.12rem .6rem;border-radius:999px;background:var(--soft);font-size:.8rem;font-weight:500;white-space:nowrap}.pill.ok{background:var(--ok-bg);color:var(--ok)}.empty{padding:2.5rem 1rem;text-align:center;color:var(--muted)}.quick{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1.25rem}.quick a{display:block;padding:1rem 1.2rem;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);color:var(--text);font-weight:600;text-decoration:none}.quick a:hover{background:var(--soft)}.quick svg{display:block;margin-bottom:.7rem}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:1.25rem;gap:1.25rem}.stat{background:var(--soft);border-radius:8px;padding:.9rem 1.1rem}.stat div:first-child{color:var(--muted);font-size:.88rem}.stat div:last-child{font-size:1.5rem;font-weight:600;letter-spacing:-.01em}.row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem 0;border-bottom:1px solid var(--line)}.msg{padding:.65rem 1rem;border-radius:8px;margin-bottom:1rem}.msg.error{background:var(--error-bg);color:var(--error)}.msg.ok{background:var(--ok-bg);color:var(--ok)}.muted{color:var(--muted);font-size:.9rem}.login{max-width:380px;margin:12vh auto;padding:0 16px}.login h1{margin-bottom:1rem}@media (max-width:860px){.shell{flex-direction:column}.nav{position:static;width:auto;height:auto;border-right:0;border-bottom:1px solid var(--line)}.nav-item.disabled{display:none}.nav-user{margin-top:.75rem}main{padding:1.25rem 16px}.search,.search input{width:100%}}textarea{resize:vertical}.nowrap{white-space:nowrap}.pill.warn{background:var(--error-bg);color:var(--error)}.strike{text-decoration:line-through}.strike,.sub{color:var(--muted)}.sub{display:block;font-size:.86rem;font-weight:400}.line-row{display:grid;grid-template-columns:1fr 90px 90px 110px 100px 36px;grid-gap:.5rem;gap:.5rem;align-items:start;padding:.75rem 0;border-bottom:1px solid var(--line)}.line-row textarea{grid-column:1/2}.line-total{padding-top:1.7rem;text-align:right;font-weight:500}.line-remove{margin-top:1.5rem}.total-row{display:flex;justify-content:flex-end;gap:2rem;font-size:1.15rem;font-weight:600;padding:1rem 0 0}.detail{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:1rem;gap:1rem}.detail dt{color:var(--muted);font-size:.85rem}.detail dd{margin:0;white-space:pre-line}@media (max-width:860px){.line-row{grid-template-columns:1fr 1fr}.line-total{padding-top:.5rem}}.theme-toggle{display:flex;align-items:center;gap:.7rem;width:100%;padding:.48rem .55rem;margin:2px 0 0;background:transparent;border:0;border-radius:8px;color:var(--text);font-weight:400;text-align:left}.meter,.theme-toggle:hover{background:var(--soft)}.meter{height:14px;border-radius:4px;margin:.9rem 0 .5rem;overflow:hidden}.meter span{display:block;height:100%;background:var(--accent)}.chart{position:relative}.chart svg{display:block;width:100%;height:auto}.chart text{fill:var(--muted);font-size:12px}.chart .grid-line{stroke:var(--line);stroke-width:1}.chart .bar-1{fill:var(--chart-1)}.chart .bar-2{fill:var(--chart-2)}.chart .hit{fill:transparent}.chart .hit:focus,.chart .hit:hover{fill:var(--soft);opacity:.6;outline:none}.legend{display:flex;gap:1rem;font-size:.88rem;color:var(--muted);margin-bottom:.5rem}.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:.35rem}.tooltip{position:absolute;top:0;z-index:2;pointer-events:none;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.15);padding:.45rem .7rem;font-size:.85rem;white-space:nowrap}.tooltip b{display:block}details.chart-table{margin-top:.75rem;font-size:.9rem}details.chart-table summary{cursor:pointer;color:var(--muted)}.rank{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.15rem .75rem;gap:.15rem .75rem;padding:.5rem 0;border-bottom:1px solid var(--line)}.rank:last-child{border-bottom:0}.rank-bar{grid-column:1/-1;height:6px;border-radius:3px;background:var(--soft);overflow:hidden}.rank-bar span{display:block;height:100%;border-radius:3px;background:var(--chart-1)}.logo-preview{display:block;max-width:320px;max-height:110px;margin-bottom:.9rem;padding:.6rem;background:#fff;border:1px solid var(--line);border-radius:8px}input[type=color]{height:38px;padding:3px}