@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.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(/assets/inter-cyrillic-wght-normal-DqGufNeO.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(/assets/inter-greek-ext-wght-normal-DlzME5K_.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(/assets/inter-greek-wght-normal-CkhJZR-_.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(/assets/inter-vietnamese-wght-normal-CBcvBZtf.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(/assets/inter-latin-ext-wght-normal-DO1Apj_S.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(/assets/inter-latin-wght-normal-Dx4kXJAl.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{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f5f7;--surface:#fff;--surface-2:#fbfbfd;--accent:#ec5a28;--accent-h:#cc4a1e;--ocean:#2e6f8e;--text:#1d1d1f;--text-2:#6e6e73;--border:#e5e5ea;--success:#34c759;--error:#ff3b30;--r-card:14px;--r-btn:10px;--r-input:8px;--shadow:0 1px 2px #0000000a, 0 4px 16px #0000000a;--shadow-hover:0 2px 4px #0000000d, 0 10px 28px #00000014;--sidebar-w:72px;--sidebar-w-open:232px;font-family:Inter Variable,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0}h1,h2{letter-spacing:-.02em;margin:0 0 8px}.muted,.sub{color:var(--text-2)}.sub{font-size:12px}.error{color:var(--error);font-size:14px}@keyframes slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.animate-slide-up{animation:.35s cubic-bezier(.2,.8,.2,1) both slide-up}.card,.card-flat,.card-sm,.glass{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow)}.card,.card-flat{padding:24px}.card-sm{padding:14px}.card{transition:transform .2s,box-shadow .2s}.card:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.narrow{text-align:center;max-width:420px}.center{place-items:center;min-height:100%;padding:24px;display:grid}.page-title{margin-bottom:20px;font-size:28px}.btn-primary,.btn{font:inherit;color:#fff;background:var(--accent);border-radius:var(--r-btn);cursor:pointer;border:1px solid #0000;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.btn-primary:hover,.btn:hover{background:var(--accent-h)}.btn-secondary,.btn.ghost{color:var(--text);border-color:var(--border);background:0 0}.btn-secondary:hover,.btn.ghost:hover{background:var(--surface-2);border-color:var(--text-2)}.btn.danger{background:var(--error)}.btn.danger:hover{background:#e0352b}.btn.small{padding:6px 12px;font-size:13px}.btn:disabled,.btn-primary:disabled{opacity:.55;cursor:default}.btn-icon,.icon-btn{border-radius:var(--r-btn);width:36px;height:36px;color:var(--text-2);cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid}.btn-icon:hover,.icon-btn:hover{background:var(--bg);color:var(--text)}.input{font:inherit;width:100%;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-input);padding:10px 14px;transition:border-color .15s,box-shadow .15s}.input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #ec5a2826}.label,.field label{color:var(--text-2);font-size:13px;font-weight:500}.field{text-align:left;gap:6px;margin-bottom:14px;display:grid}.checks{flex-wrap:wrap;gap:14px;display:flex}.check{color:var(--text);align-items:center;gap:6px;font-size:14px;display:flex}.check input{accent-color:var(--accent)}.badge{border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.badge-green,.badge.on{color:#1f8a3b;background:#34c75924}.badge-red,.badge.off{color:#d92d20;background:#ff3b301f}.badge-blue,.badge.ok{color:var(--ocean);background:#2e6f8e1f}.badge-purple{color:#7b3fa0;background:#8e44ad1f}.badge-yellow{color:#8a6d00;background:#fc03}.badge-gray,.badge.idle{color:var(--text-2);background:#6e6e731f}.badge-orange{color:var(--accent-h);background:#ec5a281f}.sidebar{width:var(--sidebar-w);z-index:20;flex-direction:column;gap:6px;padding:14px 10px;transition:width .28s cubic-bezier(.2,.8,.2,1);display:flex;position:fixed;top:16px;bottom:16px;left:16px;overflow:hidden}.sidebar:hover,.sidebar:focus-within{width:var(--sidebar-w-open)}.sidebar nav{flex-direction:column;flex:1;gap:6px;margin-top:10px;display:flex}.nav-item{border-radius:var(--r-btn);height:46px;color:var(--text-2);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:14px;padding:0 13px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.nav-item svg{flex:none}.nav-item span{opacity:0;transition:opacity .2s}.sidebar:hover .nav-item span,.sidebar:focus-within .nav-item span{opacity:1}.nav-item:hover{background:var(--bg);color:var(--text)}.nav-item.active{color:var(--accent-h);background:#ec5a281a}.nav-item.brand{color:var(--text);cursor:default;font-weight:600}.nav-item.brand:hover{background:0 0}.content{margin-left:calc(var(--sidebar-w) + 48px);padding:32px 32px 32px 0}.update-banner{z-index:100;width:max-content;max-width:calc(100vw - 32px);box-shadow:var(--shadow-hover);border-radius:999px;align-items:center;gap:16px;margin-inline:auto;padding:10px 12px 10px 20px;font-size:14px;display:flex;position:fixed;top:16px;left:0;right:0}.admin-wrap{max-width:1280px;margin:0 auto;padding:32px 20px 60px}.admin-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.admin-actions{gap:10px;display:flex}.admin-body{grid-template-columns:1fr;align-items:start;gap:20px;display:grid}.admin-body.with-detail{grid-template-columns:minmax(0,1fr) 380px}.table-card{padding:8px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;padding:12px 14px;font-size:12px;font-weight:600}td{border-top:1px solid var(--border);vertical-align:middle;padding:12px 14px}tbody tr{cursor:pointer}tbody tr:hover{background:var(--surface-2)}tbody tr.selected{background:#ec5a280f}.detail{max-height:calc(100vh - 40px);padding:22px;position:sticky;top:20px;overflow:auto}.detail-head{justify-content:space-between;gap:10px;display:flex}.detail h2{margin:0}.detail h3{color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;margin:20px 0 0;font-size:12px}.detail-actions{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.events{gap:8px;margin:12px 0 0;padding:0;font-size:14px;list-style:none;display:grid}.events li{justify-content:space-between;gap:10px;display:flex}.events small{color:var(--text-2);white-space:nowrap}.linkbox{gap:8px;margin:8px 0 12px;display:flex}.overlay{z-index:60;background:#0000004d;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{width:min(520px,100%);max-height:90vh;padding:26px;overflow:auto}.modal-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}@media (width<=900px){.admin-body.with-detail{grid-template-columns:1fr}.detail{max-height:none;position:static}}@media (width<=720px){.sidebar{flex-direction:row;align-items:center;width:auto;height:64px;padding:8px;inset:auto 12px 12px}.sidebar:hover,.sidebar:focus-within{width:auto}.sidebar nav{flex-direction:row;justify-content:center;margin-top:0}.nav-item span,.nav-item.brand{display:none}.content{margin-left:0;padding:20px 16px 96px}}.toolbar{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.toolbar .input{max-width:340px}.empty{text-align:center;color:var(--text-2);padding:28px}.done-row{opacity:.55}.row-actions{white-space:nowrap;text-align:right}.modal-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.modal-head h2{margin:0}textarea.input{resize:vertical}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:20px;display:grid}.stat-grid h3{color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px;font-size:12px}.alert-list{gap:8px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.alert-list li{justify-content:space-between;align-items:center;gap:10px;display:flex}.big-number{letter-spacing:-.02em;font-size:28px;font-weight:700}.amount-pos{color:var(--error);font-weight:600}.amount-neg{color:#1f8a3b;font-weight:600}.entry-list{gap:0;max-height:240px;margin:12px 0;padding:0;font-size:14px;list-style:none;display:grid;overflow:auto}.entry-list li{border-top:1px solid var(--border);grid-template-columns:96px 1fr auto auto;align-items:center;gap:10px;padding:6px 0;display:grid}.reminder-box{background:var(--bg);border-radius:var(--r-input);margin:10px 0;padding:12px 14px;font-size:14px}
