@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url("./media/nunito-sans-cyrillic-ext-wght-normal-QB7YUZAO.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:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url("./media/nunito-sans-cyrillic-wght-normal-SWFYRE2L.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url("./media/nunito-sans-vietnamese-wght-normal-SBEWJRPI.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:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url("./media/nunito-sans-latin-ext-wght-normal-3XQWXF2S.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:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url("./media/nunito-sans-latin-wght-normal-RGUTNHJJ.woff2") format("woff2-variations");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{--brand-50: #f4f6fb;--brand-100: #e9ecf6;--brand-200: #d3d8ec;--brand-300: #aab2d6;--brand-400: #7d89c0;--brand-600: #34438f;--brand-700: #243178;--brand-800: #182360;--brand-900: #121a4b;--brand-950: #0c1236;--bg: #f5f6fa;--surface: #ffffff;--surface-2: #f4f6fb;--border: #dfe2ee;--border-strong: #b7bdd5;--text: #141a33;--text-2: #454c6b;--text-muted: #5d6384;--primary: #182360;--primary-hover: #243178;--primary-contrast: #ffffff;--primary-soft: #e9ecf6;--link: #34438f;--success: #1b7248;--success-soft: #e5f3eb;--warning: #8a5a00;--warning-soft: #fff3d6;--danger: #b8261f;--danger-soft: #fbe9e8;--info: #34438f;--info-soft: #eef0f8;--chart-1: #5261a8;--chart-2: #1baf7a;--chart-3: #eb6834;--chart-4: #eda100;--chart-5: #b7bdd5;--chart-grid: #e9ecf6;--funnel-1: #182360;--funnel-2: #2f6fe0;--funnel-3: #f5b324;--funnel-4: #1b7f50;--rail-bg: #182360;--rail-text: #d3d8ec;--rail-muted: #8f99c9;--rail-hover: rgba(255, 255, 255, .07);--rail-active: #34438f;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 48px;--radius: 8px;--radius-sm: 5px;--shadow: 0 1px 2px rgba(20, 26, 51, .05);--shadow-pop: 0 12px 32px rgba(12, 18, 54, .18);--sidebar-w: 248px;--ease-out: cubic-bezier(.16, 1, .3, 1);--font: "Nunito Sans Variable", "Nunito Sans", ui-sans-serif, system-ui, sans-serif;--mono: ui-monospace, "SFMono-Regular", Menlo, monospace;color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0a0f2c;--surface: #10173f;--surface-2: #161f52;--border: #232d66;--border-strong: #3a4585;--text: #eef0f8;--text-2: #c9cee6;--text-muted: #9ba3cc;--primary: #c9cfee;--primary-hover: #e1e5f7;--primary-contrast: #0c1236;--primary-soft: #1d2763;--link: #b3bcec;--success: #5fcf98;--success-soft: #11301f;--warning: #f2bb55;--warning-soft: #33280f;--danger: #f2827a;--danger-soft: #3a1a1e;--info: #b3bcec;--info-soft: #1d2763;--chart-1: #8c99e0;--chart-2: #33c58f;--chart-3: #f2834f;--chart-4: #f2b42a;--chart-5: #59639c;--chart-grid: #1d2763;--funnel-1: #8c99e0;--funnel-2: #5b94f0;--funnel-3: #f5b324;--funnel-4: #33b27a;--rail-bg: #070b24;--rail-active: #1d2763;--shadow: 0 1px 2px rgba(0, 0, 0, .35);--shadow-pop: 0 16px 40px rgba(0, 0, 0, .5);color-scheme:dark}}:root[data-theme=dark]{--bg: #0a0f2c;--surface: #10173f;--surface-2: #161f52;--border: #232d66;--border-strong: #3a4585;--text: #eef0f8;--text-2: #c9cee6;--text-muted: #9ba3cc;--primary: #c9cfee;--primary-hover: #e1e5f7;--primary-contrast: #0c1236;--primary-soft: #1d2763;--link: #b3bcec;--success: #5fcf98;--success-soft: #11301f;--warning: #f2bb55;--warning-soft: #33280f;--danger: #f2827a;--danger-soft: #3a1a1e;--info: #b3bcec;--info-soft: #1d2763;--chart-1: #8c99e0;--chart-2: #33c58f;--chart-3: #f2834f;--chart-4: #f2b42a;--chart-5: #59639c;--chart-grid: #1d2763;--funnel-1: #8c99e0;--funnel-2: #5b94f0;--funnel-3: #f5b324;--funnel-4: #33b27a;--rail-bg: #070b24;--rail-active: #1d2763;--shadow: 0 1px 2px rgba(0, 0, 0, .35);--shadow-pop: 0 16px 40px rgba(0, 0, 0, .5);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;caret-color:var(--brand-600)}::selection{background:var(--brand-200);color:var(--brand-950)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}a{color:var(--link);text-decoration:none;text-underline-offset:3px}a:hover{text-decoration:underline}h1,h2,h3,h4{margin:0 0 var(--space-2);line-height:1.2;color:var(--text);text-wrap:balance}h1{font-size:1.75rem;font-weight:800;letter-spacing:-.015em}h2{font-size:1.125rem;font-weight:800;letter-spacing:-.005em}h3{font-size:1rem;font-weight:700}p{text-wrap:pretty}code,.mono{font-family:var(--mono);font-size:.85em}svg{flex-shrink:0}:focus-visible{outline:2px solid var(--brand-400);outline-offset:2px}.page-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-3) var(--space-4);margin-bottom:var(--space-6)}.page-header h1{margin:0}.page-header p{margin:var(--space-1) 0 0;color:var(--text-2);max-width:68ch}.actions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-5);margin-bottom:var(--space-4)}.card>h2:first-child,.card>h3:first-child{margin-bottom:var(--space-3)}.card-title{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.card-title h2,.card-title h3{margin:0}.card-title p{margin:2px 0 0;color:var(--text-muted);font-size:.85rem}.grid{display:grid;gap:var(--space-4)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr));margin-bottom:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.kpi{position:relative;padding:var(--space-4) var(--space-5);border-left:1px solid var(--border);margin-left:-1px;color:var(--text);min-width:0}.kpi .label{color:var(--text-2);font-size:.85rem;font-weight:600;display:flex;align-items:center;gap:6px}.kpi .value{font-size:2rem;font-weight:800;letter-spacing:-.02em;line-height:1.15;margin-top:var(--space-1)}.kpi .hint{color:var(--text-muted);font-size:.8rem}a.kpi:hover{background:var(--surface-2);text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:6px 14px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:inherit;font-size:.9rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background-color .15s,border-color .15s,color .15s}.btn:hover:not(:disabled){background:var(--surface-2);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--primary-contrast)}.btn-primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.btn-danger{color:var(--danger);border-color:currentColor;background:transparent}.btn-danger:hover:not(:disabled){background:var(--danger-soft)}.btn-ghost{border-color:transparent;background:transparent;color:var(--text-2)}.btn-ghost:hover:not(:disabled){color:var(--text)}.btn-sm{min-height:30px;padding:2px 10px;font-size:.82rem}.btn-icon{padding:0;width:36px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:var(--space-3) var(--space-4)}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label{font-weight:700;font-size:.85rem;color:var(--text-2)}.field .help{color:var(--text-muted);font-size:.8rem}.field.full{grid-column:1 / -1}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],input[type=datetime-local],input[type=search],input[type=tel],input[type=url],select,textarea{width:100%;min-height:38px;padding:7px 11px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;font-size:.92rem;transition:border-color .15s,box-shadow .15s}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:hover,select:hover,textarea:hover{border-color:var(--brand-400)}textarea{min-height:90px;resize:vertical;font-family:var(--mono);font-size:.85rem}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand-600);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-400) 30%,transparent)}input[type=checkbox],input[type=radio]{accent-color:var(--brand-800)}.check{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer}.check input{width:16px;height:16px}.days{display:flex;flex-wrap:wrap;gap:6px}.days label{border:1px solid var(--border-strong);border-radius:999px;padding:3px 12px;cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:600;font-size:.85rem}.days label.on{background:var(--primary);border-color:var(--primary);color:var(--primary-contrast)}.days input{display:none}fieldset{border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4) var(--space-5);margin:0 0 var(--space-4)}legend{font-weight:800;padding:0 6px}details.advanced{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:var(--space-3)}details.advanced>summary{display:flex;align-items:center;gap:10px;cursor:pointer;padding:var(--space-3) var(--space-4);font-weight:700;list-style:none;border-radius:var(--radius)}details.advanced>summary:hover{background:var(--surface-2)}details.advanced>summary::-webkit-details-marker{display:none}details.advanced>summary:before{content:"";width:7px;height:7px;border-right:1.75px solid var(--text-muted);border-bottom:1.75px solid var(--text-muted);transform:rotate(-45deg);transition:transform .2s var(--ease-out);flex-shrink:0}details.advanced[open]>summary:before{transform:rotate(45deg) translate(-2px,-2px)}details.advanced[open]>summary{border-bottom:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0}details.advanced>:not(summary){margin-left:var(--space-4);margin-right:var(--space-4)}details.advanced>:last-child{margin-bottom:var(--space-4)}details.advanced>summary+*{margin-top:var(--space-4)}.filters{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;margin-bottom:var(--space-4)}.filters .field{min-width:150px;flex:1 1 150px;max-width:240px}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--border);vertical-align:top}th{font-weight:700;color:var(--text-muted);font-size:.8rem;white-space:nowrap;border-bottom-color:var(--border-strong);background:var(--surface)}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--surface-2)}tbody tr.clickable{cursor:pointer}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.empty{padding:var(--space-7) var(--space-4);text-align:center;color:var(--text-muted)}.empty:hover td,tr:has(>.empty):hover td{background:transparent}.badge{display:inline-flex;align-items:center;gap:4px;padding:1px 9px;border-radius:999px;font-size:.78rem;font-weight:700;background:var(--surface-2);color:var(--text-2);white-space:nowrap;border:1px solid var(--border)}.badge.success{background:var(--success-soft);color:var(--success);border-color:transparent}.badge.warning{background:var(--warning-soft);color:var(--warning);border-color:transparent}.badge.danger{background:var(--danger-soft);color:var(--danger);border-color:transparent}.badge.info{background:var(--info-soft);color:var(--info);border-color:transparent}.badge.primary{background:var(--primary-soft);color:var(--link);border-color:transparent}.alert{display:flex;gap:10px;align-items:flex-start;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-4);border:1px solid transparent;font-size:.92rem}.alert.error{background:var(--danger-soft);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 25%,transparent)}.alert.warning{background:var(--warning-soft);color:var(--warning);border-color:color-mix(in srgb,var(--warning) 25%,transparent)}.alert.info{background:var(--info-soft);color:var(--info);border-color:color-mix(in srgb,var(--info) 20%,transparent)}.alert.success{background:var(--success-soft);color:var(--success);border-color:color-mix(in srgb,var(--success) 25%,transparent)}.modal-backdrop{position:fixed;inset:0;background:#0c123673;display:flex;align-items:flex-start;justify-content:center;padding:6vh var(--space-4);z-index:50;overflow-y:auto}.modal{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);width:100%;max-width:760px;padding:var(--space-6);box-shadow:var(--shadow-pop)}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.modal-header h2{margin:0}.modal-footer{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5)}.bar-row{display:grid;grid-template-columns:minmax(110px,200px) 1fr 70px;gap:10px;align-items:center;margin:6px 0}.bar-track{background:var(--chart-grid);border-radius:3px;height:10px;overflow:hidden;display:flex}.bar-fill{height:100%}.legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.82rem;color:var(--text-2);margin-top:var(--space-3)}.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}app-icon.flip{transform:scaleX(-1)}a.back,.open{display:inline-flex;align-items:center;gap:4px}.muted{color:var(--text-muted)}.small{font-size:.82rem}.nowrap{white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pager{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-3);color:var(--text-muted);font-size:.85rem;gap:var(--space-2);flex-wrap:wrap}.secret-box{font-family:var(--mono);padding:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);word-break:break-all}pre.json{background:var(--surface-2);border:1px solid var(--border);padding:12px;border-radius:var(--radius-sm);overflow:auto;max-height:420px;font-size:.8rem}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
