:root,:root[data-appearance=light]{--bg: #f5f6f8;--bg-subtle: #f0f1f4;--surface: #ffffff;--surface-2: #f6f7f9;--border: #eceef2;--border-strong: #dcdfe6;--text: #17171f;--text-2: #4b5263;--muted: #697086;--faint: #9aa0ac;--good: #12a150;--good-soft: rgba(34, 181, 115, .12);--good-solid: #22b573;--bad: #e0483d;--bad-soft: rgba(239, 68, 68, .12);--bad-solid: #ef4444;--warn: #d98416;--warn-soft: rgba(245, 158, 11, .14);--warn-solid: #f59e0b;--info: #2f7ae5;--info-soft: rgba(59, 130, 246, .12);--purple: #8b5cf6;--purple-soft: rgba(167, 139, 250, .16);--toast: #1c1d26;--shadow-sm: 0 1px 2px rgba(16, 17, 26, .05), 0 1px 3px rgba(16, 17, 26, .04);--shadow-md: 0 8px 20px rgba(16, 17, 26, .1);--shadow-lg: 0 24px 60px rgba(15, 16, 26, .28);--scrim: rgba(15, 16, 26, .5);--tint-15-bg: #ffe5e6;--tint-15-fg: #b44957;--tint-15-avatar-bg: #fed1d3;--tint-15-avatar-fg: #a33949;--tint-15-solid: #c55865;--tint-45-bg: #ffe7d9;--tint-45-fg: #b2511e;--tint-45-avatar-bg: #fcd4c3;--tint-45-avatar-fg: #a14206;--tint-45-solid: #c26030;--tint-150-bg: #daf8df;--tint-150-fg: #1c8742;--tint-150-avatar-bg: #c8e8cd;--tint-150-avatar-fg: #007834;--tint-150-solid: #319751;--tint-185-bg: #cef9f2;--tint-185-fg: #00867a;--tint-185-avatar-bg: #bae9e2;--tint-185-avatar-fg: #00756b;--tint-185-solid: #009689;--tint-210-bg: #cdf7ff;--tint-210-fg: #008294;--tint-210-avatar-bg: #b9e8f0;--tint-210-avatar-fg: #007282;--tint-210-solid: #0092a6;--tint-225-bg: #d0f6ff;--tint-225-fg: #007fa5;--tint-225-avatar-bg: #bce6f7;--tint-225-avatar-fg: #006f91;--tint-225-solid: #008fb9;--tint-275-bg: #e5edff;--tint-275-fg: #5b67c2;--tint-275-avatar-bg: #d4dcff;--tint-275-avatar-fg: #4e59b1;--tint-275-solid: #6977d3;--tint-300-bg: #f3e8ff;--tint-300-fg: #7f5bb6;--tint-300-avatar-bg: #e3d7fb;--tint-300-avatar-fg: #714ca6;--tint-300-solid: #8e6ac7;--tint-320-bg: #fde5ff;--tint-320-fg: #9553a4;--tint-320-avatar-bg: #edd4f3;--tint-320-avatar-fg: #854494;--tint-320-solid: #a462b4;--tint-340-bg: #ffe3f8;--tint-340-fg: #a54c8b;--tint-340-avatar-bg: #f6d2e9;--tint-340-avatar-fg: #953d7c;--tint-340-solid: #b55b9a;--nav: 264px;--r-sm: 9px;--ring: 0 0 0 3px var(--accent-soft)}:root[data-appearance=dark]{--bg: #0d0e12;--bg-subtle: #1f2029;--surface: #16171d;--surface-2: #1c1d25;--border: #25262f;--border-strong: #333541;--text: #f2f3f6;--text-2: #c3c7d2;--muted: #9297a5;--faint: #6b7180;--good-soft: rgba(34, 181, 115, .16);--bad-soft: rgba(239, 68, 68, .16);--warn-soft: rgba(245, 158, 11, .18);--info-soft: rgba(59, 130, 246, .16);--purple-soft: rgba(167, 139, 250, .2);--toast: #2a2b36;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3), 0 1px 3px rgba(0, 0, 0, .2);--shadow-md: 0 8px 20px rgba(0, 0, 0, .45);--shadow-lg: 0 24px 60px rgba(0, 0, 0, .6);--scrim: rgba(6, 7, 12, .62);--tint-15-bg: #4d2529;--tint-15-fg: #ffa6ad;--tint-15-avatar-bg: #56272c;--tint-15-avatar-fg: #ffa6ad;--tint-15-solid: #ea808a;--tint-45-bg: #4c2817;--tint-45-fg: #ffad88;--tint-45-avatar-bg: #552b17;--tint-45-avatar-fg: #ffad88;--tint-45-solid: #e7885d;--tint-150-bg: #193b22;--tint-150-fg: #8fd89e;--tint-150-avatar-bg: #194224;--tint-150-avatar-fg: #8fd89e;--tint-150-solid: #62bb78;--tint-185-bg: #003c37;--tint-185-fg: #63dbcd;--tint-185-avatar-bg: #00433d;--tint-185-avatar-fg: #63dbcd;--tint-185-solid: #00beaf;--tint-210-bg: #003b44;--tint-210-fg: #60d8eb;--tint-210-avatar-bg: #00414c;--tint-210-avatar-fg: #60d8eb;--tint-210-solid: #00bad1;--tint-225-bg: #01394a;--tint-225-fg: #6cd3fa;--tint-225-avatar-bg: #003f53;--tint-225-avatar-fg: #6cd3fa;--tint-225-solid: #22b5e1;--tint-275-bg: #2a3051;--tint-275-fg: #afbfff;--tint-275-avatar-bg: #2e345c;--tint-275-avatar-fg: #afbfff;--tint-275-solid: #8d9df5;--tint-300-bg: #382b4d;--tint-300-fg: #cfb4ff;--tint-300-avatar-bg: #3e2f57;--tint-300-avatar-fg: #cfb4ff;--tint-300-solid: #b191ea;--tint-320-bg: #402846;--tint-320-fg: #e4adf1;--tint-320-avatar-bg: #482b4e;--tint-320-avatar-fg: #e4adf1;--tint-320-solid: #c889d7;--tint-340-bg: #47263c;--tint-340-fg: #f4a8db;--tint-340-avatar-bg: #4f2843;--tint-340-avatar-fg: #f4a8db;--tint-340-solid: #da83be}:root{--accent: #635bff;--accent-2: #8b84ff;--accent-soft: #eef0ff;--accent-glow: rgba(99, 91, 255, .4);--accent-fg: #ffffff}:root[data-theme-color=indigo]{--accent: #635bff;--accent-2: #8b84ff;--accent-soft: #eef0ff;--accent-glow: rgba(99, 91, 255, .4)}:root[data-theme-color=blue]{--accent: #5b6ef5;--accent-2: #8493f7;--accent-soft: #eef1fe;--accent-glow: rgba(91, 110, 245, .4)}:root[data-theme-color=green]{--accent: #0a8f5b;--accent-2: #3bbd86;--accent-soft: #e6f6ee;--accent-glow: rgba(10, 143, 91, .38)}:root[data-theme-color=graphite]{--accent: #111827;--accent-2: #3b4a63;--accent-soft: #eef0f4;--accent-glow: rgba(17, 24, 39, .35)}:root[data-theme-color=coral]{--accent: #e0533d;--accent-2: #ef8474;--accent-soft: #fdeeeb;--accent-glow: rgba(224, 83, 61, .4)}:root[data-theme-color=violet]{--accent: #7c3aed;--accent-2: #a274f4;--accent-soft: #f3efff;--accent-glow: rgba(124, 58, 237, .4)}:root[data-theme-color=sky]{--accent: #0284c7;--accent-2: #38a5e0;--accent-soft: #e7f4fb;--accent-glow: rgba(2, 132, 199, .38)}:root[data-theme-color=teal]{--accent: #0d9488;--accent-2: #3fbcb0;--accent-soft: #e6f6f4;--accent-glow: rgba(13, 148, 136, .38)}:root[data-theme-color=emerald]{--accent: #059669;--accent-2: #37bd8f;--accent-soft: #e6f6ef;--accent-glow: rgba(5, 150, 105, .38)}:root[data-theme-color=amber]{--accent: #d97706;--accent-2: #eda03d;--accent-soft: #fdf3e6;--accent-glow: rgba(217, 119, 6, .38)}:root[data-theme-color=rose]{--accent: #e11d48;--accent-2: #f05f7f;--accent-soft: #fdeaee;--accent-glow: rgba(225, 29, 72, .4)}:root[data-theme-color=slate]{--accent: #475569;--accent-2: #6b7a90;--accent-soft: #eef1f4;--accent-glow: rgba(71, 85, 105, .35)}:root[data-appearance=dark]{--accent-soft: rgba(255, 255, 255, .08)}:root{--chart-mark: var(--accent);--chart-grid: var(--border)}:root[data-appearance=dark]{--chart-mark: var(--accent-2)}:root[data-appearance=dark][data-theme-color=graphite]{--chart-mark: #707f99}:root,:root[data-density=comfortable]{--fs: 14px;--pad: 16px;--gap: 14px;--radius: 14px;--cartw: 372px}:root[data-density=compact]{--fs: 13px;--pad: 11px;--gap: 10px;--radius: 12px;--cartw: 340px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg);font-size:var(--fs);line-height:1.5;letter-spacing:-.006em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--accent-soft)}h1,h2,h3,h4{margin:0;font-weight:650;letter-spacing:-.02em}a{color:var(--accent);text-decoration:none}a:hover{opacity:.82}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#78788c47;border-radius:8px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#78788c73;background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,14px)}to{opacity:1;transform:translate(-50%)}}@keyframes grow{0%{transform:scaleY(.02)}to{transform:scaleY(1)}}@keyframes spin{to{transform:rotate(360deg)}}.app{display:flex;height:100vh;width:100%;overflow:hidden;font-size:var(--fs)}.sidebar{width:var(--nav);flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column}.sidebar .brand{height:60px;flex-shrink:0;display:flex;align-items:center;gap:11px;padding:0 18px;border-bottom:1px solid var(--border)}.sidebar .brand .logo{width:32px;height:32px;border-radius:9px;flex-shrink:0;background:linear-gradient(140deg,var(--accent),var(--accent-2));display:grid;place-items:center;color:#fff;font-weight:700;font-size:16px;box-shadow:0 2px 8px var(--accent-glow)}.sidebar .brand .brand-text{display:flex;flex-direction:column;line-height:1.1}.sidebar .brand .brand-name{font-weight:650;font-size:15px;letter-spacing:-.02em;color:var(--text)}.sidebar .brand .brand-sub{font-size:10.5px;color:var(--muted);font-weight:500;letter-spacing:.02em}.sidebar nav{flex:1;overflow-y:auto;padding:8px 12px 12px}.sidebar .nav-group{margin-bottom:12px}.sidebar .nav-label{font-size:10.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--faint);padding:6px 10px 4px}.sidebar a{width:100%;display:flex;align-items:center;gap:11px;padding:8px 10px;border-radius:var(--r-sm);color:var(--muted);font-size:13.5px;font-weight:500;transition:background .13s ease,color .13s ease}.sidebar a svg{width:20px;height:20px;flex-shrink:0}.sidebar a:hover{background:var(--surface-2);color:var(--text);opacity:1}.sidebar a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.sidebar .nav-badge{margin-left:auto;font-size:11px;font-weight:600;border-radius:20px;min-width:19px;height:19px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-2);color:var(--muted)}.sidebar a.active .nav-badge{background:var(--accent);color:#fff}.sidebar .nav-parent{display:flex;align-items:center;gap:2px}.sidebar .nav-parent>a{flex:1;min-width:0}.sidebar .nav-caret{display:grid;place-items:center;flex-shrink:0;width:26px;height:26px;border-radius:7px;border:none;padding:0;background:transparent;color:var(--faint);cursor:pointer;transition:background .13s ease,color .13s ease,transform .15s ease}.sidebar .nav-caret:hover{background:var(--surface-2);color:var(--text)}.sidebar .nav-caret svg{width:15px;height:15px}.sidebar .nav-caret.open svg{transform:rotate(90deg)}.sidebar .nav-sub{margin:2px 0 4px 20px;padding-left:10px;border-left:1px solid var(--border)}.sidebar .nav-sub a{padding:7px 10px;font-size:13.5px;gap:8px;color:var(--muted)}.sidebar .nav-sub a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.sidebar .nav-sub .nav-sub-label{font-size:10.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--faint);padding:8px 10px 4px}.sidebar .foot{padding:10px 14px;border-top:1px solid var(--border);flex-shrink:0}.sidebar .foot .foot-row{width:100%;height:auto;justify-content:flex-start;display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:11px;border:none;background:var(--surface-2)}.sidebar .foot .foot-row:hover{background:var(--bg-subtle);border-color:transparent;color:var(--text)}.sidebar .foot .foot-row:disabled{opacity:1}.sidebar .foot .foot-row svg{flex-shrink:0}.sidebar .foot .foot-text{flex:1;min-width:0;line-height:1.2;text-align:left}.sidebar .foot .foot-title{display:block;font-size:12px;font-weight:600}.sidebar .foot .foot-sub{display:block;font-size:10.5px;color:var(--muted)}.sidebar .foot .dot{width:7px;height:7px;border-radius:50%;background:var(--good-solid);flex-shrink:0}.outlet-tag{width:100%;text-align:left;display:flex;align-items:center;gap:10px;padding:9px 11px;margin:12px 0 6px;background:var(--surface-2);border:1px solid var(--border);border-radius:11px;color:var(--text)}.outlet-tag .os-text{display:flex;flex-direction:column;line-height:1.25;flex:1;min-width:0}.outlet-tag .os-name{font-weight:600;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.outlet-tag .os-sub{font-size:10.5px;color:var(--muted);display:flex;align-items:center;gap:4px}.outlet-tag .os-sub .dot{width:6px;height:6px;border-radius:50%;background:var(--good-solid);flex-shrink:0}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:60px;flex-shrink:0;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:16px;padding:0 20px;z-index:5}.topbar .title{font-size:16px;font-weight:650;letter-spacing:-.02em;white-space:nowrap}.topbar .subtitle{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar .spacer{flex:1}.topbar .pill{font-size:12px;color:var(--text-2);background:var(--surface-2);padding:5px 11px;border-radius:999px;font-weight:500}.topbar .avatar-me{width:34px;height:34px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,#f0a44a,#e0533d);display:grid;place-items:center;color:#fff;font-weight:600;font-size:13px}.content{flex:1;min-height:0;overflow:hidden;position:relative}.screen{height:100%;overflow-y:auto;padding:22px 26px;animation:fade .2s ease}.screen.flush{padding:0;display:flex;flex-direction:column}.content-inner{max-width:1240px;margin:0 auto}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--pad);box-shadow:var(--shadow-sm)}.card.pad-lg{padding:calc(var(--pad) + 4px)}.card-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:650;margin-bottom:14px}.card-title svg{width:17px;height:17px;color:var(--muted)}.grid{display:grid;gap:var(--gap)}.row{display:flex;gap:12px;align-items:center}.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:6px}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-head h2{font-size:15px;font-weight:650}button{font:inherit;font-weight:550;font-size:13px;height:38px;padding:0 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;display:inline-flex;align-items:center;gap:7px;justify-content:center;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,filter .14s ease,transform .05s ease;white-space:nowrap}button svg{width:18px;height:18px;flex-shrink:0}button:hover{border-color:var(--accent);color:var(--accent)}button:hover svg{color:currentColor}button:active{transform:scale(.99)}button:focus-visible{outline:none;box-shadow:var(--ring)}button.primary{background:var(--accent);color:var(--accent-fg);border-color:transparent;font-weight:600;box-shadow:0 2px 8px var(--accent-glow)}button.primary:hover{filter:brightness(1.05);color:var(--accent-fg);box-shadow:0 6px 18px var(--accent-glow)}button.accent-soft{background:var(--accent-soft);color:var(--accent);border-color:var(--accent);font-weight:600}button.accent-soft:hover{filter:brightness(.98)}button.danger{background:var(--bad);color:#fff;border-color:transparent}button.danger:hover{filter:brightness(1.05);color:#fff}button.ghost{background:transparent;border-color:transparent;color:var(--text-2)}button.ghost:hover{background:var(--surface-2);color:var(--text);border-color:transparent}button.icon{width:38px;padding:0;background:var(--surface-2)}button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;filter:none}button:disabled:hover{border-color:var(--border);color:var(--text)}button.big{height:48px;padding:0 20px;font-size:14.5px;border-radius:12px;font-weight:650}button.block{width:100%}input,select,textarea{font:inherit;color:var(--text);font-size:13.5px;height:40px;padding:0 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);width:100%;transition:border-color .14s ease,box-shadow .14s ease}textarea{height:auto;padding:10px 12px}input::placeholder{color:var(--muted)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring)}label{display:block;font-size:12px;color:var(--muted);margin-bottom:6px;font-weight:600}.field{margin-bottom:14px}.input-icon{position:relative}.input-icon svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:var(--muted);pointer-events:none}.input-icon input{padding-left:38px}.searchbox{display:flex;align-items:center;gap:9px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:0 11px;height:38px}.searchbox:focus-within{border-color:var(--accent)}.searchbox svg{width:18px;height:18px;color:var(--muted);flex-shrink:0}.searchbox input{border:none;background:transparent;height:auto;padding:0;font-size:13px}.searchbox input:focus{box-shadow:none}.searchbox kbd{font-size:10px;font-weight:600;color:var(--muted);font-family:inherit;background:var(--surface);border:1px solid var(--border);border-radius:5px;padding:1px 5px}.switch{width:38px;height:22px;min-width:38px;padding:0;border-radius:20px;border:none;background:var(--border-strong);position:relative;cursor:pointer;transition:background .15s ease;flex-shrink:0}.switch:hover{background:var(--muted);border-color:transparent}.switch.on,.switch.on:hover{background:var(--accent)}.switch .knob{position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;box-shadow:0 1px 2px #00000040;transition:transform .15s cubic-bezier(.16,1,.3,1)}.switch.on .knob{transform:translate(16px)}.combobox{position:relative;width:100%}.combobox-field{width:100%;height:40px;display:flex;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;cursor:text;transition:border-color .12s ease,box-shadow .12s ease}.combobox-field:hover{border-color:var(--border-strong)}.combobox-field.open,.combobox-field:focus-within{border-color:var(--accent);box-shadow:var(--ring)}.combobox-field.disabled{opacity:.5;cursor:not-allowed}.combobox-field.disabled:hover{border-color:var(--border)}.combobox-field-icon{color:var(--muted);margin:0 8px 0 12px;flex-shrink:0}.combobox-field input{flex:1;min-width:0;height:100%;border:none;background:transparent;padding:0;font:inherit;font-size:13.5px;font-weight:500;color:var(--text)}.combobox-field input:focus{outline:none;box-shadow:none;border:none}.combobox-field input::placeholder{color:var(--muted);font-weight:450}.combobox-field input:disabled{cursor:not-allowed}.combobox-field-toggle{height:100%;width:36px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:none;border-left:1px solid var(--border);border-radius:0;background:transparent;color:var(--muted);cursor:pointer;padding:0}.combobox-field-toggle:hover{color:var(--text);background:var(--surface-2)}.combobox-field-toggle:disabled{cursor:not-allowed}.combobox-field-toggle svg{transition:transform .15s ease}.combobox-field.open .combobox-field-toggle svg{transform:rotate(180deg)}.combobox.sm .combobox-field{height:34px;border-radius:9px}.combobox.sm .combobox-field input{font-size:13px}.combobox-trigger{width:100%;height:40px;padding:0 10px 0 12px;display:flex;align-items:center;gap:8px;justify-content:space-between;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text);font:inherit;font-size:13.5px;font-weight:500;cursor:pointer;text-align:left}.combobox-trigger:hover{border-color:var(--border-strong);color:var(--text)}.combobox-trigger.open,.combobox-trigger:focus-visible{outline:none;border-color:var(--accent);box-shadow:var(--ring);color:var(--text)}.combobox-trigger:disabled{opacity:.5;cursor:not-allowed}.combobox-trigger:disabled:hover{border-color:var(--border)}.combobox.sm .combobox-trigger{height:34px;font-size:13px;border-radius:9px}.combobox-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.combobox-value.placeholder{color:var(--muted)}.combobox-chevron{color:var(--muted);flex-shrink:0;transition:transform .15s ease}.combobox-trigger.open .combobox-chevron{transform:rotate(180deg)}.combobox-menu{background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;transform-origin:top;animation:combobox-in .14s cubic-bezier(.2,.8,.3,1)}.combobox-menu.up{transform-origin:bottom}@keyframes combobox-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.combobox-list{overflow-y:auto;padding:5px}.combobox-option{width:100%;height:auto;display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;border:none;background:transparent;color:var(--text);font:inherit;font-size:13.5px;font-weight:500;cursor:pointer;text-align:left}.combobox-option:hover{background:transparent;border-color:transparent;color:var(--text)}.combobox-option.active{background:var(--surface-2);color:var(--text)}.combobox-option.selected{color:var(--accent);font-weight:600}.combobox-option.disabled,.combobox-option:disabled{opacity:.45;cursor:not-allowed}.combobox-opt-icon{display:inline-flex;flex-shrink:0}.combobox-opt-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.combobox-opt-title{display:flex;align-items:center;gap:8px;min-width:0}.combobox-opt-title .badge{flex-shrink:0;font-size:11px;padding:2px 8px}.combobox-opt-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.combobox-opt-hint{font-size:12px;color:var(--muted);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.combobox-check{color:var(--accent);flex-shrink:0}.combobox-empty{padding:20px 12px;text-align:center;color:var(--muted);font-size:13px}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px 18px;border-bottom:1px solid var(--border)}thead th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--faint);font-weight:600;background:var(--surface-2);position:sticky;top:0}tbody tr{transition:background .12s ease}tbody tr:hover{background:var(--surface-2)}tbody tr:last-child td{border-bottom:none}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:color .12s ease}th.sortable:hover{color:var(--muted)}th.sortable.active{color:var(--accent)}th.sortable .sort-ico{display:inline-flex;vertical-align:-2px;margin-left:4px;opacity:.35}th.sortable.active .sort-ico{opacity:1}th.num.sortable .sort-ico{margin-left:3px}.card table th,.card table td{padding:8px 6px}.card table thead th{background:transparent}.pager{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px}.pager-info{font-size:13px;white-space:nowrap}.pager-controls{display:flex;align-items:center;gap:6px}.pager-size{height:30px;min-height:0;padding:0 8px;width:auto}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--gap)}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--pad);box-shadow:var(--shadow-sm)}.stat .stat-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.stat .k{font-size:12px;color:var(--muted);font-weight:500;display:flex;align-items:center;gap:6px;margin-top:3px}.stat .k svg{width:14px;height:14px}.stat .v{font-size:22px;font-weight:750;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1}.stat .delta{display:flex;align-items:center;gap:3px;font-size:11.5px;font-weight:600;margin-top:6px}.stat .delta svg{width:14px;height:14px}.stat .delta.up{color:var(--good)}.stat .delta.down{color:var(--bad)}.stat .delta.flat{color:var(--muted)}.stat .delta.tone-good{color:var(--good)}.stat .delta.tone-bad{color:var(--bad)}.stat .delta.tone-neutral{color:var(--muted)}.good{color:var(--good)}.bad{color:var(--bad)}.muted{color:var(--muted)}.faint{color:var(--faint)}.nums{font-variant-numeric:tabular-nums}h1,h2,h3{color:var(--text)}.badge{font-size:11.5px;font-weight:600;padding:3px 10px;border-radius:20px;background:var(--surface-2);color:var(--muted);display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.badge svg{width:13px;height:13px}.badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.badge.ok{background:var(--good-soft);color:var(--good)}.badge.warn{background:var(--bad-soft);color:var(--bad)}.badge.amber{background:var(--warn-soft);color:var(--warn)}.badge.info{background:var(--accent-soft);color:var(--accent)}.badge.blue{background:var(--info-soft);color:var(--info)}.badge.purple{background:var(--purple-soft);color:var(--purple)}.icon-chip{display:grid;place-items:center;flex-shrink:0;background:var(--chip-bg, var(--accent-soft));color:var(--chip-fg, var(--accent))}.avatar{display:grid;place-items:center;flex-shrink:0;font-weight:650;background:var(--chip-bg, var(--accent-soft));color:var(--chip-fg, var(--accent))}.meter{height:6px;border-radius:4px;background:var(--bg-subtle);overflow:hidden}.meter>span{display:block;height:100%;border-radius:4px;background:var(--accent)}.chart{position:relative;width:100%}.chart svg{display:block;width:100%;overflow:visible}.chart .grid-line{stroke:var(--chart-grid);stroke-width:1;shape-rendering:crispEdges}.chart .axis-label{fill:var(--faint);font-size:10.5px;font-variant-numeric:tabular-nums}.chart .series-line{fill:none;stroke:var(--chart-mark);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart .series-area{fill:var(--chart-mark);opacity:.12}.chart .series-dot{fill:var(--chart-mark);stroke:var(--surface);stroke-width:2}.chart .crosshair{stroke:var(--border-strong);stroke-width:1;shape-rendering:crispEdges}.chart .hit{fill:transparent;cursor:crosshair}.chart:focus-visible{outline:none}.chart:focus-visible svg{box-shadow:var(--ring);border-radius:8px}.chart-tip{position:absolute;z-index:20;pointer-events:none;transform:translate(-50%,-100%);background:var(--toast);color:#fff;border-radius:9px;padding:7px 10px;box-shadow:var(--shadow-md);white-space:nowrap;font-size:12px;line-height:1.35}.chart-tip .tip-v{font-weight:650;font-variant-numeric:tabular-nums}.chart-tip .tip-k{color:#ffffffb8;font-size:11px}.bar-list{display:flex;flex-direction:column;gap:2px}.bar-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px 12px;padding:7px 8px;border-radius:8px;position:relative}.bar-row:hover,.bar-row:focus-visible{background:var(--surface-2);outline:none}.bar-row .bar-k{font-size:13px;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-row .bar-v{font-size:13px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.bar-row .bar-sub{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.bar-row .bar-track{grid-column:1 / -1;height:8px;border-radius:4px;background:var(--bg-subtle);overflow:hidden}.bar-row .bar-fill{display:block;height:100%;background:var(--chart-mark);border-radius:0 4px 4px 0;min-width:2px}.chart-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none;-moz-appearance:none;appearance:none}.card-wall{columns:3 340px;column-gap:var(--gap)}.card-wall>*{break-inside:avoid;-webkit-column-break-inside:avoid;margin:0 0 var(--gap);display:block;width:100%}.empty{text-align:center;padding:48px 24px;color:var(--muted)}.empty .empty-ico{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;margin:0 auto 14px;background:var(--surface-2);color:var(--faint)}.empty .empty-ico svg{width:32px;height:32px}.empty h3{color:var(--text);margin-bottom:6px}.empty p{margin:0 auto;max-width:420px;line-height:1.6}.tabs{display:inline-flex;gap:2px;background:var(--surface);border:1px solid var(--border);padding:3px;border-radius:10px;margin-bottom:14px}.tabs button{background:transparent;border:none;color:var(--muted);height:30px;padding:0 12px;border-radius:7px;box-shadow:none;font-weight:550;font-size:12.5px}.tabs button:hover{background:transparent;color:var(--text);border-color:transparent}.tabs button.active{background:var(--surface-2);color:var(--text);font-weight:600;box-shadow:0 1px 2px #10111a14}.tabs .tab-count{margin-left:6px;font-size:11px;font-weight:600;padding:1px 6px;border-radius:20px;background:var(--surface-2);color:var(--muted)}.tabs button.active .tab-count{background:var(--accent-soft);color:var(--accent)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:100;animation:fade .15s ease}.modal{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:24px;width:520px;max-width:94vw;max-height:92vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:pop .22s cubic-bezier(.2,.8,.3,1)}.modal h3{margin-bottom:14px;font-size:18px;font-weight:700}.modal .modal-head{display:flex;align-items:center;gap:10px;margin-bottom:16px}.modal .modal-head .m-ico{width:40px;height:40px;border-radius:11px;display:grid;place-items:center}.modal .modal-head .m-ico.ok{background:var(--good-soft);color:var(--good)}.modal .modal-head .m-ico.accent{background:var(--accent-soft);color:var(--accent)}.line{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px dashed var(--border)}.line:last-child{border-bottom:none}.toast-host{position:fixed;bottom:24px;left:50%;z-index:200;display:flex;flex-direction:column-reverse;gap:8px;align-items:center;transform:translate(-50%)}.toast{display:flex;align-items:center;gap:11px;padding:13px 18px;border-radius:13px;border:none;background:var(--toast);color:#fff;box-shadow:0 12px 32px #0f101a52;font-size:13.5px;font-weight:550;height:auto;white-space:nowrap;animation:pop .28s cubic-bezier(.2,.8,.3,1)}.toast:hover{background:var(--toast);border-color:transparent;color:#fff}.toast svg{width:20px;height:20px;flex-shrink:0}.toast.success svg{color:#4ade80}.toast.error svg{color:#f87171}.toast.info svg{color:#7dd3fc}.wizard{max-width:760px;margin:0 auto}.wizard-steps{display:flex;align-items:center;gap:10px;margin-bottom:22px}.wizard-steps .ws{display:flex;align-items:center;gap:10px;min-width:0}.wizard-steps .ws-badge{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;font-size:13px;font-weight:700;background:var(--bg-subtle);color:var(--muted);transition:background .18s ease,color .18s ease,box-shadow .18s ease}.wizard-steps .ws-badge svg{width:16px;height:16px}.wizard-steps .ws.active .ws-badge{background:var(--accent);color:var(--accent-fg);box-shadow:0 0 0 4px var(--accent-soft)}.wizard-steps .ws.done .ws-badge{background:var(--good);color:#fff}.wizard-steps .ws-text{min-width:0}.wizard-steps .ws-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.wizard-steps .ws-label{font-size:13.5px;font-weight:600;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wizard-steps .ws.active .ws-label{color:var(--text)}.wizard-steps .ws.done .ws-label{color:var(--good)}.wizard-steps .ws-line{flex:1;height:2px;border-radius:2px;background:var(--border);min-width:20px}.wizard-steps .ws-line.done{background:var(--good);opacity:.5}.wizard-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}.wizard-actions .spacer{flex:1}.field.grow{flex:1;min-width:0}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}.review-grid .rk{font-size:12px;color:var(--muted);font-weight:600}.review-grid .rv{font-size:14px;color:var(--text);font-weight:550}.review-grid .rv.mono{font-family:ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.02em}.review-sep{grid-column:1 / -1;height:1px;background:var(--border);margin:4px 0}@media(max-width:560px){.review-grid{grid-template-columns:1fr}}.stepper{display:inline-flex;align-items:center;gap:2px;flex-shrink:0;background:var(--surface-2);border:1px solid var(--border);border-radius:9px;padding:2px}.stepper button{width:24px;height:24px;padding:0;border:none;border-radius:7px;background:transparent;color:var(--text)}.stepper button:hover{background:var(--surface);color:var(--text);border-color:transparent}.stepper button svg{width:16px;height:16px}.stepper .q{min-width:26px;text-align:center;font-weight:600;font-size:13px;font-variant-numeric:tabular-nums}
