.inner-tabs[data-v-bcca9a55]{display:flex;flex-shrink:0;gap:8px;align-items:flex-end;min-width:0;padding:0 16px;overflow:hidden;border-bottom:1px solid var(--border)}.inner-tabs-viewport[data-v-bcca9a55]{position:relative;flex:1;min-width:0}.inner-tabs-track[data-v-bcca9a55]{display:flex;gap:3px;align-items:flex-end;width:100%;min-width:0;padding-top:8px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none}.inner-tabs-track[data-v-bcca9a55]::-webkit-scrollbar{display:none}.inner-tabs-divider[data-v-bcca9a55]{flex-shrink:0;align-self:center;width:1px;height:18px;margin:0 4px 4px;background:var(--border)}.inner-tabs-fade[data-v-bcca9a55]{position:absolute;top:8px;bottom:0;z-index:2;width:32px;pointer-events:none;opacity:0;transition:opacity .2s ease}.inner-tabs-fade.is-visible[data-v-bcca9a55]{opacity:1}.inner-tabs-fade--left[data-v-bcca9a55]{left:0;background:linear-gradient(to right,var(--bg-body) 30%,transparent)}.inner-tabs-fade--right[data-v-bcca9a55]{right:0;background:linear-gradient(to left,var(--bg-body) 30%,transparent)}.inner-tabs-clear[data-v-bcca9a55]{display:inline-flex;flex-shrink:0;gap:5px;align-items:center;height:34px;margin-top:8px;padding:0 10px;color:var(--t-muted);font-size:11px;font-weight:500;white-space:nowrap;cursor:pointer;background:var(--bg-body);border:1px solid var(--border);border-bottom:none;border-radius:7px 7px 0 0;transition:color .15s,background .15s,border-color .15s}.inner-tabs-clear[data-v-bcca9a55]:hover{color:var(--danger);background:var(--danger-soft);border-color:color-mix(in oklab,var(--danger) 25%,transparent)}.inner-tab[data-v-bcca9a55]{position:relative;display:inline-flex;flex-shrink:0;gap:7px;align-items:center;max-width:240px;height:34px;padding:0 13px 0 11px;color:var(--t-muted);font-size:12.5px;font-weight:500;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--bg-body);border:1px solid var(--border);border-bottom:none;border-radius:7px 7px 0 0;transition:color .15s,background .15s,border-color .15s}.inner-tab[draggable=true][data-v-bcca9a55]{cursor:grab}.inner-tab[data-v-bcca9a55]:hover{color:var(--t-base);background:var(--bg-hover)}.inner-tab.is-active[data-v-bcca9a55]{z-index:1;color:var(--t-base);background:var(--bg-card)}.inner-tab.is-pinned[data-v-bcca9a55]{padding-left:9px;background:color-mix(in oklab,var(--primary-soft) 55%,var(--bg-body));border-color:color-mix(in oklab,var(--primary) 28%,var(--border));box-shadow:inset 2px 0 0 var(--primary)}.inner-tab.is-pinned[data-v-bcca9a55]:hover{background:color-mix(in oklab,var(--primary-soft) 75%,var(--bg-hover))}.inner-tab.is-pinned.is-active[data-v-bcca9a55]{background:color-mix(in oklab,var(--primary-soft) 40%,var(--bg-card));border-color:color-mix(in oklab,var(--primary) 35%,var(--border))}.inner-tab.is-dragging[data-v-bcca9a55]{cursor:grabbing;opacity:.4}.inner-tab.is-over[data-v-bcca9a55]{border-color:var(--primary)}.inner-tab-dot[data-v-bcca9a55]{flex-shrink:0;width:6px;height:6px;background:var(--border);border-radius:50%;transition:background .15s}.inner-tab.is-active .inner-tab-dot[data-v-bcca9a55]{background:var(--primary)}.inner-tab-label[data-v-bcca9a55]{min-width:0;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.inner-tab-actions[data-v-bcca9a55]{display:inline-flex;flex-shrink:0;gap:1px;align-items:center;margin-left:2px}.inner-tab-pin-badge[data-v-bcca9a55],.inner-tab-pin[data-v-bcca9a55],.inner-tab-close[data-v-bcca9a55]{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;padding:0;cursor:pointer;background:transparent;border:none;transition:opacity .15s,background .15s,color .15s,transform .15s}.inner-tab-pin-badge[data-v-bcca9a55]{width:20px;height:20px;color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in oklab,var(--primary) 22%,transparent);border-radius:6px}.inner-tab-pin-badge[data-v-bcca9a55]:hover{transform:scale(1.06)}.inner-tab-pin[data-v-bcca9a55]{width:20px;height:20px;color:var(--t-muted);border-radius:6px;opacity:0}.inner-tab-pin[data-v-bcca9a55]:hover{color:var(--primary);background:var(--primary-soft)}.inner-tab-close[data-v-bcca9a55]{width:17px;height:17px;color:var(--t-light);border-radius:4px;opacity:0}.inner-tab-close[data-v-bcca9a55]:hover{color:var(--danger);background:var(--danger-soft)}.inner-tab:hover .inner-tab-pin[data-v-bcca9a55],.inner-tab.is-active .inner-tab-pin[data-v-bcca9a55],.inner-tab:hover .inner-tab-close[data-v-bcca9a55],.inner-tab.is-active .inner-tab-close[data-v-bcca9a55],.inner-tab.is-pinned .inner-tab-close[data-v-bcca9a55]{opacity:1}@media(hover:none){.inner-tab-pin[data-v-bcca9a55],.inner-tab-close[data-v-bcca9a55]{opacity:1}}:root,:root[data-theme=light]{--bg-body: #f0f4f8;--bg-card: #fff;--bg-sidebar: #fff;--bg-hover: #f8fafc;--bg-muted: #f1f5f9;--t-base: #1e293b;--t-muted: #64748b;--t-light: #94a3b8;--border: #e4e8ef;--border-soft: #eef1f5;--primary: #2563eb;--primary-light: #3b82f6;--primary-dark: #1d4ed8;--primary-soft: #eff6ff;--primary-ring: rgba(37, 99, 235, .18);--success: #10b981;--success-soft: #ecfdf5;--warning: #f59e0b;--warning-soft: #fffbeb;--danger: #ef4444;--danger-soft: #fef2f2;--info: #0ea5e9;--info-soft: #f0f9ff;--purple: #8b5cf6;--purple-soft: #f5f3ff;--orange: #f97316;--orange-soft: #fff7ed;--sandbox: #ea580c;--sandbox-soft: #fff7ed;--shadow-sm: 0 1px 2px 0 rgba(15, 23, 42, .04);--shadow-card: 0 1px 3px 0 rgba(15, 23, 42, .06), 0 1px 2px -1px rgba(15, 23, 42, .04);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -4px rgba(15, 23, 42, .05);--overlay: rgba(240, 244, 248, .72);--backdrop: rgba(15, 23, 42, .45);--font-sans: Inter, system-ui, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif;--font-display: "Inter Tight", Inter, "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace}:root[data-theme=dark]{--bg-body: #0b1120;--bg-card: #141b2d;--bg-sidebar: #141b2d;--bg-hover: #1c2438;--bg-muted: #1a2237;--t-base: #f1f5f9;--t-muted: #94a3b8;--t-light: #64748b;--border: #222c42;--border-soft: #1a2237;--primary: #60a5fa;--primary-light: #93c5fd;--primary-dark: #3b82f6;--primary-soft: #0f2847;--primary-ring: rgba(96, 165, 250, .24);--success: #34d399;--success-soft: #0f2a20;--warning: #fbbf24;--warning-soft: #2b1f08;--danger: #f87171;--danger-soft: #2b1414;--info: #38bdf8;--info-soft: #0d2232;--purple: #a78bfa;--purple-soft: #1e1a2c;--orange: #fb923c;--orange-soft: #2a1810;--sandbox: #fb923c;--sandbox-soft: #2a1810;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .4);--shadow-card: 0 1px 3px 0 rgba(0, 0, 0, .3), 0 1px 2px -1px rgba(0, 0, 0, .25);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5), 0 4px 6px -4px rgba(0, 0, 0, .4);--overlay: rgba(11, 17, 32, .72);--backdrop: rgba(2, 6, 23, .6)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg-body);color:var(--t-base);font-family:var(--font-sans);font-feature-settings:"cv11","ss01","ss03";font-size:14px;letter-spacing:-.003em;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color .28s ease,color .28s ease}a{color:inherit;text-decoration:none}button{background:none;border:0;color:inherit;cursor:pointer;font:inherit;padding:0}button:disabled{cursor:not-allowed}input,select,textarea{color:inherit;font:inherit}svg{display:block;flex-shrink:0}h1,h2,h3,h4,p{margin:0}::selection{background:var(--primary);color:#fff}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.mono{font-family:var(--font-mono);letter-spacing:.01em}.num{font-variant-numeric:tabular-nums}.muted{color:var(--t-muted)}.light{color:var(--t-light)}.eyebrow{color:var(--t-light);font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.d-sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;gap:22px;height:100vh;overflow-y:auto;padding:22px 16px 18px;position:sticky;top:0}.d-sidebar::-webkit-scrollbar{width:4px}.d-sidebar::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.brand{align-items:center;border-bottom:1px solid var(--border-soft);display:flex;gap:10px;padding:4px 10px 20px}.brand-logo{display:grid;flex:none;height:40px;place-items:center;width:40px}.brand-logo img{height:100%;object-fit:contain;width:100%}.brand-text{line-height:1.1}.brand-name{font-family:var(--font-display);font-size:15.5px;font-weight:700;letter-spacing:-.02em}.brand-tag{color:var(--t-light);font-family:var(--font-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase}.nav-section{display:flex;flex-direction:column;gap:2px}.nav-label{color:var(--t-light);font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;padding:0 10px 6px;text-transform:uppercase}.nav-link{align-items:center;border-radius:8px;color:var(--t-muted);display:flex;font-size:13px;font-weight:500;gap:12px;line-height:1.2;padding:9px 12px;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease}.nav-link>span:first-of-type{flex:1;min-width:0}.nav-link:hover{background:var(--bg-hover);color:var(--t-base)}.nav-link.router-link-active{background:var(--primary-soft);box-shadow:inset 3px 0 0 var(--primary);color:var(--primary)}.nav-badge{background:var(--danger);border-radius:999px;color:#fff;font-size:9.5px;font-weight:700;line-height:1.4;padding:1px 6px}.sidebar-footer{border-top:1px solid var(--border-soft);margin-top:auto;padding-top:16px}.workspace{align-items:center;border-radius:8px;display:flex;gap:10px;padding:6px 10px;width:100%}.workspace-avatar{background:linear-gradient(135deg,var(--primary),var(--purple));border-radius:50%;color:#fff;display:grid;flex-shrink:0;font-size:12.5px;font-weight:600;height:32px;place-items:center;width:32px}.workspace-text{line-height:1.25;min-width:0;text-align:left}.workspace-name{font-size:13px;font-weight:600}.workspace-role{color:var(--t-light);font-size:11px}.drawer-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:var(--backdrop);top:0;right:0;bottom:0;left:0;opacity:0;position:fixed;transition:opacity .24s ease,visibility .24s;visibility:hidden;z-index:90}.main{display:flex;flex-direction:column;min-width:0}.d-topbar{align-items:center;-webkit-backdrop-filter:saturate(140%) blur(10px);backdrop-filter:saturate(140%) blur(10px);background:var(--overlay);border-bottom:1px solid var(--border);display:flex;gap:12px;height:60px;justify-content:space-between;padding:0 20px;position:sticky;top:0;z-index:20}.topbar-left{align-items:center;display:flex;gap:8px;min-width:0}.hamburger{border-radius:8px;color:var(--t-base);display:none;height:36px;place-items:center;width:36px}.hamburger:hover{background:var(--bg-hover)}.crumbs{align-items:center;color:var(--t-muted);display:flex;font-size:13px;font-weight:500;gap:8px;min-width:0}.crumbs .current{color:var(--t-base);font-weight:600}.topbar-actions{align-items:center;display:flex;gap:6px}.icon-btn{align-items:center;border-radius:8px;color:var(--t-muted);display:inline-flex;gap:6px;height:36px;justify-content:center;min-width:36px;padding:0 8px;transition:background .18s,color .18s}.icon-btn:hover{background:var(--bg-hover);color:var(--t-base)}.icon-btn .btn-label{font-size:12.5px;font-weight:600}.avatar{background:linear-gradient(135deg,var(--primary),var(--purple));border:2px solid var(--bg-card);border-radius:50%;box-shadow:var(--shadow-sm);color:#fff;display:grid;font-size:13px;font-weight:600;height:34px;margin-left:4px;place-items:center;width:34px}.env-switch{background:var(--bg-muted);border:1px solid var(--border);border-radius:999px;display:inline-flex;gap:2px;padding:3px}.env-switch button{align-items:center;border-radius:999px;color:var(--t-muted);display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:5px 12px;transition:background .16s,color .16s,box-shadow .16s}.env-switch button .dot{background:currentColor;border-radius:50%;height:6px;width:6px}.env-switch button.is-live.is-active{background:var(--bg-card);box-shadow:var(--shadow-sm);color:var(--success)}.env-switch button.is-sandbox.is-active{background:var(--sandbox);color:#fff}.env-banner{align-items:center;background:var(--sandbox-soft);border-bottom:1px solid color-mix(in oklab,var(--sandbox) 30%,transparent);color:var(--sandbox);display:flex;font-size:12.5px;font-weight:600;gap:8px;justify-content:center;padding:7px 16px;text-align:center}.content{animation:rise-in .45s cubic-bezier(.2,.7,.2,1) both;margin:0 auto;padding:28px 32px 40px;width:100%}.hero{align-items:flex-end;display:flex;gap:24px;justify-content:space-between;margin-bottom:24px}.hero-text .eyebrow{display:block;margin-bottom:8px}.hero-title{font-family:var(--font-display);font-size:clamp(24px,2.6vw,30px);font-weight:700;letter-spacing:-.028em;line-height:1.15;margin:0 0 6px}.hero-sub{color:var(--t-muted);font-size:13.5px;max-width:70ch}.hero-actions{display:flex;flex-shrink:0;flex-wrap:wrap;gap:8px}.grid{display:grid;gap:20px;grid-template-columns:repeat(12,minmax(0,1fr))}.grid>*{min-width:0}.col-4{grid-column:span 4}.col-6{grid-column:span 6}.col-8{grid-column:span 8}.col-12{grid-column:span 12}.dd-wrap{position:relative}.dd-menu{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);min-width:220px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:100}.dd-head{border-bottom:1px solid var(--border-soft);padding:12px 16px}.dd-title{font-size:13px;font-weight:600}.dd-sub{color:var(--t-muted);font-size:12px}.dd-item{align-items:center;color:var(--t-base);display:flex;font-size:13px;gap:10px;padding:10px 16px;text-align:left;transition:background .15s;width:100%}.dd-item:hover{background:var(--bg-hover)}.dd-item.is-active{color:var(--primary);font-weight:600}.dd-item.danger{color:var(--danger)}.dd-divider{border-top:1px solid var(--border-soft)}@media(max-width:1100px){.col-4,.col-6,.col-8{grid-column:span 12}}@media(max-width:960px){.shell{grid-template-columns:minmax(0,1fr)}.d-sidebar{left:0;position:fixed;transform:translate(-100%);transition:transform .24s cubic-bezier(.2,.7,.2,1);width:264px;z-index:100}.shell.drawer-open .d-sidebar{transform:translate(0)}.shell.drawer-open .drawer-backdrop{opacity:1;visibility:visible}.hamburger{display:grid}}@media(max-width:720px){.d-topbar{padding:0 12px}.crumbs{display:none}.env-switch button{padding:5px 9px}.content{padding:20px 16px 32px}.hero{align-items:flex-start;flex-direction:column;gap:16px}.grid{gap:16px}}.btn{align-items:center;border:1px solid transparent;border-radius:8px;display:inline-flex;font-size:13px;font-weight:600;gap:8px;justify-content:center;padding:9px 14px;transition:background .18s,border-color .18s,color .18s,box-shadow .18s;white-space:nowrap}.btn:disabled{opacity:.55}.btn--primary{background:var(--primary);box-shadow:0 1px 2px var(--primary-ring);color:#fff}.btn--primary:hover:not(:disabled){background:var(--primary-dark)}.btn--ghost{background:var(--bg-card);border-color:var(--border);color:var(--t-base)}.btn--ghost:hover:not(:disabled){background:var(--bg-hover);border-color:var(--t-light)}.btn--danger{background:var(--danger);color:#fff}.btn--danger:hover:not(:disabled){background:color-mix(in oklab,var(--danger) 88%,#000)}.btn--success{background:var(--success);color:#fff}.btn--soft-primary{background:var(--primary-soft);color:var(--primary)}.btn--soft-danger{background:var(--danger-soft);color:var(--danger)}.btn--soft-warning{background:var(--warning-soft);color:var(--warning)}.btn--sm{font-size:12px;padding:6px 10px}.btn--block{width:100%}.btn-icon{align-items:center;border-radius:6px;color:var(--t-muted);display:inline-flex;justify-content:center;padding:6px;transition:background .14s,color .14s}.btn-icon:hover{background:var(--bg-hover);color:var(--t-base)}.spin{animation:spin .7s linear infinite}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;min-width:0;padding:22px}.card-head{align-items:flex-end;border-bottom:1px solid var(--border-soft);display:flex;gap:16px;justify-content:space-between;margin-bottom:18px;padding-bottom:14px}.card-title-wrap .eyebrow{display:block;margin-bottom:4px}.card-title{font-family:var(--font-display);font-size:16px;font-weight:700;letter-spacing:-.02em}.card-sub{color:var(--t-muted);font-size:12.5px;margin-top:2px}.kpi-grid{display:grid;gap:20px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}.kpi-card{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:14px;overflow:hidden;padding:20px 22px;position:relative;transition:transform .22s cubic-bezier(.2,.7,.2,1),box-shadow .22s ease}.kpi-card:before{background:radial-gradient(circle at top right,currentColor,transparent 65%);content:"";height:160px;inset:0 0 auto auto;opacity:.08;pointer-events:none;position:absolute;width:160px}.kpi-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.kpi-card.c-primary{color:var(--primary)}.kpi-card.c-success{color:var(--success)}.kpi-card.c-warning{color:var(--warning)}.kpi-card.c-danger{color:var(--danger)}.kpi-card.c-purple{color:var(--purple)}.kpi-card.c-info{color:var(--info)}.kpi-top{align-items:center;display:flex;gap:10px}.kpi-icon{background:color-mix(in oklab,currentColor 12%,transparent);border-radius:9px;display:grid;height:32px;place-items:center;width:32px}.kpi-label{color:var(--t-muted);font-size:13px;font-weight:500}.kpi-value{color:var(--t-base);font-family:var(--font-display);font-size:36px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.03em;line-height:1}.kpi-foot{border-top:1px dashed var(--border-soft);color:var(--t-light);font-size:12px;padding-top:10px}.data-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:16px}.data-toolbar-left,.data-toolbar-right{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.data-toolbar-left{flex:1;min-width:240px}.data-toolbar .input-icon{flex:1;max-width:320px}.data-toolbar .select,.data-toolbar .cs-wrap,.data-toolbar .cdi-wrap{flex-shrink:0;width:180px}.table-wrap{margin:0 -22px;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-wrap::-webkit-scrollbar{height:4px}.table-wrap::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.data-table{border-collapse:separate;border-spacing:0;width:100%}.data-table thead th{background:var(--bg-card);border-bottom:1px solid var(--border-soft);color:var(--t-muted);font-size:11px;font-weight:600;letter-spacing:.05em;padding:10px 14px;text-align:left;text-transform:uppercase;white-space:nowrap}.data-table tbody td{border-bottom:1px solid var(--border-soft);font-size:13px;padding:12px 14px;vertical-align:middle;white-space:nowrap}.data-table thead th:first-child,.data-table tbody td:first-child{padding-left:22px}.data-table thead th:last-child,.data-table tbody td:last-child{padding-right:22px}.data-table tbody tr{transition:background .14s}.data-table tbody tr:hover td{background:var(--bg-hover)}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr.is-link{cursor:pointer}.data-table .state-cell{color:var(--t-muted);padding:48px 14px!important;text-align:center;white-space:normal}.cell-strong{font-weight:600}.cell-mono{color:var(--t-muted);font-family:var(--font-mono);font-size:12px;letter-spacing:.01em}.cell-actions{display:flex;gap:4px;justify-content:flex-end}.amount{font-family:var(--font-mono);font-size:13px;font-variant-numeric:tabular-nums;font-weight:600}.data-foot{align-items:center;border-top:1px solid var(--border-soft);color:var(--t-muted);display:flex;flex-wrap:wrap;font-size:12px;gap:12px;justify-content:space-between;margin-top:4px;padding-top:16px}.data-foot strong{color:var(--t-base)}.data-foot .select{font-size:12px;padding:5px 28px 5px 10px;width:auto}.pager{align-items:center;display:flex;gap:4px}.pager-btn{border-radius:7px;color:var(--t-muted);display:grid;font-size:12px;font-weight:600;height:30px;min-width:30px;padding:0 8px;place-items:center;transition:background .16s,color .16s}.pager-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--t-base)}.pager-btn.is-active{background:var(--primary);color:#fff}.pager-btn:disabled{cursor:not-allowed;opacity:.4}.pager-gap{cursor:default}.data-foot-info{align-items:center;display:flex;gap:14px}.pager-divider{background:var(--border);height:16px;width:1px}.pager-count{white-space:nowrap}.pager-count strong{margin:0 2px}.pager-size{align-items:center;display:inline-flex;gap:6px;white-space:nowrap}.data-foot .page-size-input{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield;border-radius:6px;color:var(--t-base);font-size:12px;font-variant-numeric:tabular-nums;font-weight:600;height:28px;padding:0 6px;text-align:center;width:48px}.data-foot .page-size-input::-webkit-inner-spin-button,.data-foot .page-size-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.cs-wrap{flex-shrink:0;position:relative}.cs-wrap.is-block,.field>.cs-wrap,.field>.cdi-wrap{width:100%}.cs-trigger{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--t-base);display:flex;font-size:13px;gap:8px;justify-content:space-between;padding:9px 12px;text-align:left;transition:border-color .18s,box-shadow .18s;width:100%}.cs-trigger:focus-visible,.cs-wrap.is-open .cs-trigger{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:0}.cs-trigger:disabled{background:var(--bg-muted);color:var(--t-light);cursor:not-allowed}.cs-value{align-items:center;display:flex;flex:1;gap:6px;min-width:0;overflow:hidden}.cs-k{color:var(--t-muted);flex-shrink:0;font-size:12px;font-weight:600}.cs-v{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cs-placeholder{color:var(--t-light)}.cs-chev{color:var(--t-light);flex-shrink:0;transition:transform .2s ease}.cs-wrap.is-open .cs-chev{transform:rotate(180deg)}.cs-menu{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px -4px #0f172a1f,0 2px 8px -2px #0f172a14;max-height:280px;overflow-y:auto;padding:4px;position:fixed;z-index:1000}.cs-item{align-items:center;border-radius:7px;color:var(--t-base);cursor:pointer;display:flex;font-size:13px;gap:8px;padding:9px 10px;transition:background .14s;white-space:nowrap}.cs-item:hover{background:var(--bg-hover)}.cs-item.is-selected{background:var(--primary-soft);color:var(--primary);font-weight:600}.cs-tick{flex-shrink:0;width:13px}.cs-drop-enter-active,.cs-drop-leave-active{transition:opacity .15s ease,transform .15s ease}.cs-drop-enter-from,.cs-drop-leave-to{opacity:0;transform:translateY(-6px)}.cdi-wrap{flex-shrink:0;position:relative}.cdi-trigger{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;cursor:pointer;display:flex;gap:8px;padding:9px 12px;transition:border-color .18s,box-shadow .18s;-webkit-user-select:none;user-select:none}.cdi-trigger:focus-visible,.cdi-trigger.is-focused{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:0}.cdi-icon,.cdi-clear{color:var(--t-light);flex-shrink:0}.cdi-clear{display:grid;place-items:center;transition:color .15s}.cdi-clear:hover{color:var(--danger)}.cdi-val,.cdi-placeholder{flex:1;font-size:13px}.cdi-val{color:var(--t-base);font-variant-numeric:tabular-nums}.cdi-placeholder{color:var(--t-light)}.cdi-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px -4px #0f172a24,0 2px 8px -2px #0f172a14;padding:12px;position:absolute;right:0;top:calc(100% + 6px);width:260px;z-index:1000}.cdi-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.cdi-title{color:var(--t-base);font-size:13px;font-weight:600}.cdi-nav{border-radius:6px;color:var(--t-muted);display:grid;height:28px;place-items:center;transition:background .15s,color .15s;width:28px}.cdi-nav:hover{background:var(--bg-hover);color:var(--t-base)}.cdi-grid{display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.cdi-weekdays{margin-bottom:4px}.cdi-weekdays span{color:var(--t-light);font-size:10.5px;font-weight:600;letter-spacing:.04em;padding:4px 0;text-align:center;text-transform:uppercase}.cdi-day{border-radius:6px;color:var(--t-base);display:grid;font-size:12.5px;height:32px;place-items:center;transition:background .14s,color .14s}.cdi-day:hover:not(:disabled):not(.is-selected){background:var(--bg-hover)}.cdi-day.is-other{color:var(--t-light);cursor:default}.cdi-day.is-today{color:var(--primary);font-weight:700}.cdi-day.is-selected{background:var(--primary);color:#fff;font-weight:600}.cdi-footer{border-top:1px solid var(--border);display:flex;justify-content:space-between;margin-top:10px;padding-top:10px}.cdi-foot-btn{border-radius:6px;color:var(--t-muted);font-size:12px;padding:4px 8px;transition:background .14s,color .14s}.cdi-foot-btn:hover{background:var(--bg-hover);color:var(--t-base)}.cdi-foot-today{color:var(--primary);font-weight:500}.cdi-foot-today:hover{background:var(--primary-soft)}.date-shortcut-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.date-pill{border:1px solid var(--border);border-radius:20px;color:var(--t-muted);font-size:12px;font-weight:500;padding:4px 12px;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.date-pill:hover{background:var(--bg-hover);color:var(--t-base)}.date-pill.is-active{background:var(--primary);border-color:var(--primary);color:#fff}.tag{align-items:center;justify-self:start;border-radius:999px;display:inline-flex;font-size:11px;font-weight:600;gap:5px;letter-spacing:.01em;line-height:1;padding:4px 9px;white-space:nowrap}.tag:before{background:currentColor;border-radius:50%;content:"";height:5px;width:5px}.tag.plain:before{display:none}.tag.t-neutral{background:var(--bg-muted);color:var(--t-muted)}.tag.t-primary{background:var(--primary-soft);color:var(--primary)}.tag.t-success{background:var(--success-soft);color:var(--success)}.tag.t-warning{background:var(--warning-soft);color:var(--warning)}.tag.t-danger{background:var(--danger-soft);color:var(--danger)}.tag.t-info{background:var(--info-soft);color:var(--info)}.tag.t-purple{background:var(--purple-soft);color:var(--purple)}.tag.t-sandbox{background:var(--sandbox-soft);color:var(--sandbox)}.form-grid{display:grid;gap:16px 20px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .span-2{grid-column:span 2}.form-stack{display:flex;flex-direction:column;gap:16px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field-label{font-size:12px;font-weight:600}.field-label .req{color:var(--danger);margin-left:2px}.field-help{color:var(--t-muted);font-size:11.5px;line-height:1.45}.field-error{color:var(--danger);font-size:11.5px}.input,.select,.textarea{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--t-base);font-size:13px;outline:0;padding:9px 12px;transition:border-color .18s,box-shadow .18s;width:100%}.input::placeholder,.textarea::placeholder{color:var(--t-light)}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.input:disabled,.select:disabled,.textarea:disabled{background:var(--bg-muted);color:var(--t-light)}.input.is-invalid,.select.is-invalid,.textarea.is-invalid{border-color:var(--danger)}.textarea{line-height:1.5;min-height:96px;resize:vertical}.textarea.mono{font-family:var(--font-mono);font-size:12px}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2'><path d='m6 9 6 6 6-6'/></svg>");background-position:right 10px center;background-repeat:no-repeat;padding-right:32px}.input-icon{position:relative}.input-icon .ico{color:var(--t-light);left:11px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.input-icon .input{padding-left:34px}.check{align-items:flex-start;cursor:pointer;display:inline-flex;font-size:13px;gap:8px;line-height:1.4;-webkit-user-select:none;user-select:none}.check input{accent-color:var(--primary);height:15px;margin:1px 0 0;width:15px}.switch{align-items:center;cursor:pointer;display:inline-flex;font-size:13px;gap:10px;-webkit-user-select:none;user-select:none}.switch input{opacity:0;pointer-events:none;position:absolute}.switch .track{background:var(--bg-muted);border:1px solid var(--border);border-radius:999px;height:20px;position:relative;transition:background .2s;width:34px}.switch .track:after{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;content:"";height:14px;left:2px;position:absolute;top:2px;transition:transform .2s cubic-bezier(.2,.7,.2,1);width:14px}.switch input:checked+.track{background:var(--primary);border-color:var(--primary)}.switch input:checked+.track:after{transform:translate(14px)}.switch input:focus-visible+.track{box-shadow:0 0 0 3px var(--primary-ring)}.radio-cards{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.radio-card{border:1px solid var(--border);border-radius:10px;cursor:pointer;display:flex;gap:10px;padding:14px;transition:border-color .16s,background .16s}.radio-card:has(input:checked){background:var(--primary-soft);border-color:var(--primary)}.radio-card input{accent-color:var(--primary);margin-top:2px}.radio-card-title{font-size:13px;font-weight:600}.radio-card-sub{color:var(--t-muted);font-size:12px;margin-top:2px}.form-actions{align-items:center;border-top:1px solid var(--border-soft);display:flex;gap:10px;justify-content:flex-end;margin-top:18px;padding-top:18px}.alert{align-items:flex-start;background:var(--bg-muted);border-left:3px solid var(--t-muted);border-radius:10px;display:flex;font-size:13px;gap:10px;line-height:1.5;padding:12px 14px}.alert>svg{margin-top:2px}.alert .title{font-weight:600;margin-bottom:2px}.alert.info{background:var(--info-soft);border-left-color:var(--info)}.alert.info>svg{color:var(--info)}.alert.success{background:var(--success-soft);border-left-color:var(--success)}.alert.success>svg{color:var(--success)}.alert.warning{background:var(--warning-soft);border-left-color:var(--warning)}.alert.warning>svg{color:var(--warning)}.alert.danger{background:var(--danger-soft);border-left-color:var(--danger)}.alert.danger>svg{color:var(--danger)}.alert+.alert{margin-top:14px}.stack-gap{display:flex;flex-direction:column;gap:20px}.modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:var(--backdrop);display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:16px;position:fixed;z-index:200}.modal-backdrop.is-stacked{z-index:250}.modal{animation:rise-in .22s cubic-bezier(.2,.7,.2,1) both;background:var(--bg-card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:calc(100vh - 32px);max-width:100%;width:520px}.modal.lg{width:760px}.modal-head{align-items:center;border-bottom:1px solid var(--border-soft);display:flex;gap:12px;justify-content:space-between;padding:16px 20px}.modal-title{font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:-.01em}.modal-body{overflow-y:auto;padding:20px}.modal-foot{align-items:center;border-top:1px solid var(--border-soft);display:flex;gap:8px;justify-content:flex-end;padding:14px 20px}.info-list{display:flex;flex-direction:column}.info-row{align-items:center;border-bottom:1px solid var(--border-soft);display:flex;gap:16px;justify-content:space-between;min-height:44px;padding:10px 0}.info-row:last-child{border-bottom:0}.info-label{color:var(--t-muted);flex-shrink:0;font-size:13px}.info-val{font-size:13px;font-weight:600;min-width:0;overflow-wrap:anywhere;text-align:right}.tab-row{border-bottom:1px solid var(--border-soft);display:flex;gap:4px;margin:-6px 0 18px;overflow-x:auto}.tab-btn{border-bottom:2px solid transparent;color:var(--t-muted);font-size:13px;font-weight:500;margin-bottom:-1px;padding:10px 14px;transition:color .15s,border-color .15s;white-space:nowrap}.tab-btn:hover{color:var(--t-base)}.tab-btn.is-active{border-bottom-color:var(--primary);color:var(--primary);font-weight:600}.copy-row{align-items:stretch;background:var(--bg-muted);border:1px solid var(--border);border-radius:8px;display:flex;overflow:hidden}.copy-row code{flex:1;font-family:var(--font-mono);font-size:12.5px;min-width:0;overflow-wrap:anywhere;padding:9px 12px}.copy-row button{align-items:center;border-left:1px solid var(--border);color:var(--t-muted);display:flex;gap:6px;font-size:12px;font-weight:600;padding:0 12px;transition:background .16s,color .16s}.copy-row button:hover{background:var(--primary-soft);color:var(--primary)}.code-block{background:var(--bg-muted);border:1px solid var(--border);border-radius:8px;font-family:var(--font-mono);font-size:12px;line-height:1.6;margin:0;max-height:360px;overflow:auto;padding:12px 14px;white-space:pre}.inline-copy{align-items:center;display:inline-flex;gap:4px;max-width:100%}.empty-state{align-items:center;color:var(--t-muted);display:flex;flex-direction:column;gap:8px;padding:40px 16px;text-align:center}.empty-state .ico{background:var(--bg-muted);border-radius:12px;color:var(--t-light);display:grid;height:44px;place-items:center;width:44px}.empty-state .title{color:var(--t-base);font-weight:600}.skeleton{animation:pulse 1.4s ease-in-out infinite;background:var(--bg-muted);border-radius:6px;height:12px}@keyframes pulse{50%{opacity:.5}}.toast-host{top:20px;display:flex;flex-direction:column;gap:10px;position:fixed;right:20px;z-index:300}.toast{align-items:flex-start;animation:rise-in .22s ease both;background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:10px;box-shadow:var(--shadow-lg);display:flex;font-size:13px;gap:10px;max-width:380px;padding:12px 14px}.toast.success{border-left-color:var(--success)}.toast.success>svg{color:var(--success)}.toast.error{border-left-color:var(--danger)}.toast.error>svg{color:var(--danger)}.toast .meta{color:var(--t-light);font-family:var(--font-mono);font-size:10.5px;margin-top:2px}.timeline{display:flex;flex-direction:column}.timeline-item{display:grid;gap:12px;grid-template-columns:14px 1fr;padding-bottom:16px;position:relative}.timeline-item:before{background:var(--border);bottom:0;content:"";left:6px;position:absolute;top:16px;width:1px}.timeline-item:last-child:before{display:none}.timeline-dot{background:var(--bg-card);border:2px solid var(--primary);border-radius:50%;height:13px;margin-top:4px;width:13px}.timeline-title{font-size:13px;font-weight:600}.timeline-meta{color:var(--t-muted);font-size:12px}.auth-shell{background:var(--bg-body);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh}.auth-aside{background:linear-gradient(135deg,var(--primary),var(--purple));color:#fff;display:flex;flex-direction:column;overflow:hidden;padding:40px 48px;position:relative}.auth-aside.is-admin{background:linear-gradient(135deg,#0f172a,#1e3a8a 55%,var(--primary))}.auth-aside:before,.auth-aside:after{aspect-ratio:1;content:"";pointer-events:none;position:absolute;width:80%}.auth-aside:before{background:radial-gradient(circle,hsla(0,0%,100%,.18),transparent 60%);inset:-40% -20% auto auto}.auth-aside:after{background:radial-gradient(circle,hsla(0,0%,100%,.1),transparent 60%);inset:auto auto -30% -20%}.auth-brand{align-items:center;display:flex;gap:10px;position:relative;z-index:1}.auth-brand .logo{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:9px;display:grid;height:36px;place-items:center;width:36px}.auth-brand .logo img{height:26px;object-fit:contain;width:26px}.auth-brand .name{font-family:var(--font-display);font-size:16px;font-weight:700}.auth-aside-body{margin-top:auto;max-width:460px;position:relative;z-index:1}.auth-aside-eyebrow{color:#ffffffb3;display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;margin-bottom:14px;text-transform:uppercase}.auth-aside h1{font-family:var(--font-display);font-size:clamp(28px,3vw,38px);font-weight:700;letter-spacing:-.025em;line-height:1.15;margin-bottom:14px}.auth-aside p{color:#ffffffd9;font-size:14.5px}.auth-points{display:flex;flex-direction:column;gap:10px;list-style:none;margin:28px 0 0;padding:0}.auth-points li{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff14;border:1px solid hsla(0,0%,100%,.18);border-radius:10px;display:flex;font-size:13px;gap:10px;padding:10px 14px}.auth-aside-footer{color:#ffffff8c;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;margin-top:auto;padding-top:24px;position:relative;z-index:1}.auth-main{display:flex;flex-direction:column;min-height:100vh;padding:28px 48px}.auth-main-top{display:flex;gap:6px;justify-content:flex-end}.auth-card{margin:auto;max-width:400px;padding:8px 0;width:100%}.auth-card h2{font-family:var(--font-display);font-size:26px;font-weight:700;letter-spacing:-.022em;margin-bottom:6px}.auth-card .sub{color:var(--t-muted);font-size:13.5px;margin-bottom:24px}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-main-bottom{color:var(--t-light);font-size:11.5px;text-align:center}@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:960px){.auth-shell{grid-template-columns:minmax(0,1fr)}.auth-aside{display:none}.auth-main{padding:20px}}@media(max-width:720px){.kpi-grid,.form-grid,.radio-cards{grid-template-columns:minmax(0,1fr)}.form-grid .span-2{grid-column:span 1}.card{padding:18px}.table-wrap{margin:0 -18px}.data-table thead th:first-child,.data-table tbody td:first-child{padding-left:18px}.data-toolbar{align-items:stretch;flex-direction:column}.data-toolbar .input-icon,.data-toolbar .select,.data-toolbar .cs-wrap,.data-toolbar .cdi-wrap{max-width:none;width:100%}.toast-host{left:16px;right:16px}}
