:root{--fate-ink-950: #0a0a0f;--fate-ink-925: #15151f;--fate-ink-900: #12121a;--fate-ink-850: #1a1a25;--fate-ink-800: #232330;--fate-gray-100: #f5f5f7;--fate-gray-400: #b0b0b5;--fate-gray-500: #8e8e93;--fate-pink-300: #ff87ae;--fate-pink-400: #ff6b9d;--fate-pink-500: #e84393;--fate-pink-600: #d63384;--fate-pink-800: #7a2950;--fate-purple-300: #c084fc;--fate-purple-400: #a855f7;--fate-indigo-500: #6366f1;--fate-teal-400: #00cec9;--fate-teal-600: #0aa6a0;--fate-green-400: #2ed573;--fate-green-600: #1fae5e;--fate-gold-400: #ffd700;--fate-amber-600: #b3901f;--fate-red-400: #ff4757;--fate-alpha-2: rgba(255, 255, 255, .02);--fate-alpha-3: rgba(255, 255, 255, .03);--fate-alpha-4: rgba(255, 255, 255, .04);--fate-alpha-5: rgba(255, 255, 255, .05);--fate-alpha-7: rgba(255, 255, 255, .07);--fate-alpha-8: rgba(255, 255, 255, .08);--fate-alpha-10: rgba(255, 255, 255, .1);--fate-alpha-12: rgba(255, 255, 255, .12);--fate-alpha-15: rgba(255, 255, 255, .15);--fate-alpha-20: rgba(255, 255, 255, .2);--fate-alpha-35: rgba(255, 255, 255, .35);--fate-font-sans: "Outfit", "Manrope", system-ui, -apple-system, sans-serif;--fate-font-mono: "JetBrains Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;--fate-text-xs: 11px;--fate-text-sm: 12px;--fate-text-md: 13px;--fate-text-base: 14px;--fate-text-lg: 16px;--fate-text-xl: 18px;--fate-text-2xl: 20px;--fate-text-3xl: 24px;--fate-text-4xl: 28px;--fate-text-5xl: 32px;--fate-weight-light: 300;--fate-weight-regular: 400;--fate-weight-medium: 500;--fate-weight-semibold: 600;--fate-weight-bold: 700;--fate-weight-heavy: 800;--fate-leading-tight: 1.2;--fate-leading-snug: 1.35;--fate-leading-body: 1.5;--fate-tracking-display: -1px;--fate-tracking-heading: -.3px;--fate-tracking-brand: -.5px;--fate-tracking-badge: .5px;--fate-tracking-label: 1px;--fate-tracking-overline: 1.5px;--fate-space-1: 4px;--fate-space-2: 8px;--fate-space-3: 12px;--fate-space-4: 16px;--fate-space-5: 20px;--fate-space-6: 24px;--fate-space-7: 28px;--fate-space-8: 32px;--fate-space-9: 40px;--fate-space-10: 48px;--fate-space-12: 64px;--fate-radius-xs: 8px;--fate-radius-sm: 10px;--fate-radius-md: 16px;--fate-radius-lg: 24px;--fate-radius-pill: 999px;--fate-shadow-sm: 0 2px 8px rgba(0, 0, 0, .25);--fate-shadow-md: 0 4px 24px rgba(0, 0, 0, .3);--fate-shadow-lg: 0 24px 48px rgba(0, 0, 0, .4);--fate-glow-accent: 0 0 20px rgba(255, 107, 157, .15);--fate-glow-strong: 0 0 60px rgba(255, 107, 157, .3);--fate-blur-sm: 4px;--fate-blur-md: 8px;--fate-blur-lg: 20px;--fate-dur-fast: .12s;--fate-dur-base: .2s;--fate-dur-slow: .3s;--fate-ease-standard: cubic-bezier(.4, 0, .2, 1);--fate-ease-decelerate: cubic-bezier(0, 0, .2, 1);--fate-ease-accelerate: cubic-bezier(.4, 0, 1, 1);--fate-z-sticky: 100;--fate-z-sidebar: 150;--fate-z-topbar: 200;--fate-z-dropdown: 600;--fate-z-drawer: 800;--fate-z-modal: 1000;--fate-z-popover: 1100;--fate-z-toast: 1200;--fate-z-tooltip: 1300;--bg: var(--fate-ink-950);--bg-gradient: linear-gradient(180deg, var(--fate-ink-950) 0%, var(--fate-ink-925) 100%);--bg-card: var(--fate-ink-900);--bg-card-hover: var(--fate-ink-850);--bg-active: var(--fate-ink-800);--bg-input: var(--fate-alpha-5);--bg-scrim: rgba(0, 0, 0, .6);--bg-scrim-light: rgba(0, 0, 0, .5);--text-main: var(--fate-gray-100);--text-secondary: var(--fate-gray-400);--text-muted: var(--fate-gray-500);--text-disabled: rgba(245, 245, 247, .5);--text-on-accent: var(--fate-ink-950);--text-link: var(--fate-pink-400);--text-link-hover: var(--fate-pink-300);--accent: var(--fate-pink-400);--accent-deep: var(--fate-pink-500);--accent-soft: rgba(255, 107, 157, .12);--accent-faint: rgba(255, 107, 157, .06);--purple: var(--fate-purple-400);--purple-light: var(--fate-purple-300);--grad-brand: linear-gradient(135deg, var(--fate-pink-400) 0%, var(--fate-purple-400) 100%);--grad-cta: linear-gradient(135deg, var(--fate-pink-400) 0%, var(--fate-pink-500) 100%);--grad-brand-v: linear-gradient(180deg, var(--fate-pink-400), var(--fate-purple-400));--success: var(--fate-green-400);--success-soft: rgba(46, 213, 115, .12);--success-faint: rgba(46, 213, 115, .08);--success-border: rgba(46, 213, 115, .2);--warning: var(--fate-gold-400);--warning-soft: rgba(255, 215, 0, .12);--warning-faint: rgba(255, 215, 0, .08);--warning-border: rgba(255, 215, 0, .2);--danger: var(--fate-red-400);--danger-soft: rgba(255, 71, 87, .12);--danger-faint: rgba(255, 71, 87, .08);--danger-border: rgba(255, 71, 87, .2);--info: var(--fate-purple-300);--info-soft: rgba(168, 85, 247, .12);--info-faint: rgba(168, 85, 247, .08);--info-border: rgba(168, 85, 247, .2);--teal: var(--fate-teal-400);--teal-soft: rgba(0, 206, 201, .12);--teal-border: rgba(0, 206, 201, .2);--gold: var(--fate-gold-400);--green: var(--fate-green-400);--red: var(--fate-red-400);--border: var(--fate-alpha-8);--border-strong: var(--fate-alpha-15);--border-focus: rgba(255, 107, 157, .4);--focus-ring: var(--fate-pink-400);--focus-ring-shadow: 0 0 0 3px rgba(255, 107, 157, .08);--shadow: var(--fate-shadow-md);--shadow-glow: var(--fate-glow-accent);--radius: var(--fate-radius-md);--radius-sm: var(--fate-radius-sm);--radius-xs: var(--fate-radius-xs);--radius-lg: var(--fate-radius-lg);--radius-pill: var(--fate-radius-pill);--chart-1: var(--fate-pink-500);--chart-2: var(--fate-amber-600);--chart-3: var(--fate-teal-600);--chart-4: var(--fate-purple-400);--chart-5: var(--fate-green-600);--chart-6: var(--fate-indigo-500);--chart-seq-1: var(--fate-pink-800);--chart-seq-2: #a83267;--chart-seq-3: var(--fate-pink-600);--chart-seq-4: var(--fate-pink-300);--chart-div-neg: var(--fate-teal-600);--chart-div-mid: var(--fate-gray-500);--chart-div-pos: var(--fate-pink-500);--chart-grid: rgba(255, 255, 255, .06);--chart-axis-text: var(--text-muted);--control-h-sm: 32px;--control-h-md: 40px;--control-h-lg: 48px;--control-px: 14px;--control-radius: var(--fate-radius-xs);--table-row-h: 44px;--table-cell-px: 16px;--sidebar-w: 240px;--topbar-h: 56px;--icon-sm: 16px;--icon-md: 20px;--icon-lg: 24px}[data-density=compact]{--table-row-h: 36px;--table-cell-px: 12px;--control-h-md: 32px;--control-h-sm: 28px}@media(prefers-contrast:more){:root{--border: var(--fate-alpha-15);--border-strong: var(--fate-alpha-35);--border-focus: var(--fate-pink-400)}}@media(prefers-reduced-motion:reduce){:root{--fate-dur-fast: 0ms;--fate-dur-base: 0ms;--fate-dur-slow: 0ms}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--fate-font-sans);background:var(--bg);color:var(--text-main);line-height:var(--fate-leading-body);font-size:var(--fate-text-base);overflow-x:hidden}a{color:var(--text-link);text-decoration:none}a:hover{color:var(--text-link-hover)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:4px}:focus:not(:focus-visible){outline:none}::selection{background:#ff6b9d4d}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--fate-alpha-10);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--fate-alpha-20)}html{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}.grad-text{background:var(--grad-brand);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.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}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-h-md);padding:0 20px;border:none;border-radius:var(--control-radius);font-family:var(--fate-font-sans);font-size:var(--fate-text-base);font-weight:var(--fate-weight-semibold);line-height:1;white-space:nowrap;cursor:pointer;transition:background var(--fate-dur-base) var(--fate-ease-standard),border-color var(--fate-dur-base) var(--fate-ease-standard),color var(--fate-dur-base) var(--fate-ease-standard),box-shadow var(--fate-dur-base) var(--fate-ease-standard),transform var(--fate-dur-base) var(--fate-ease-standard)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--grad-cta);color:var(--text-on-accent);font-weight:var(--fate-weight-bold);border:1px solid transparent}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-glow)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text-secondary)}.btn-outline:hover:not(:disabled){border-color:var(--fate-alpha-15);color:var(--text-main);background:var(--fate-alpha-4)}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid transparent}.btn-ghost:hover:not(:disabled){color:var(--text-main);background:var(--fate-alpha-4)}.btn-danger{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger-border)}.btn-danger:hover:not(:disabled){background:#ff475733}.btn-purple{background:var(--info-soft);color:var(--info);border:1px solid var(--info-border)}.btn-purple:hover:not(:disabled){background:#a855f733}.btn-sm{height:var(--control-h-sm);padding:0 12px;font-size:var(--fate-text-md)}.btn-lg{height:var(--control-h-lg);padding:0 24px;font-size:var(--fate-text-lg)}.btn-block{width:100%}.btn-icon{width:var(--control-h-md);padding:0}.btn-icon.btn-sm{width:var(--control-h-sm)}.btn.is-loading{pointer-events:none;opacity:.7}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0}.btn-group .btn:first-child{border-radius:var(--control-radius) 0 0 var(--control-radius)}.btn-group .btn:last-child{border-radius:0 var(--control-radius) var(--control-radius) 0}.btn-group .btn-outline+.btn-outline{border-left:none}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--fate-space-4)}.form-group label,.field-label{font-weight:var(--fate-weight-medium);font-size:var(--fate-text-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--fate-tracking-label)}.req-mark{color:var(--accent)}.form-group input,.form-group select,.form-group textarea,.input,.select,.textarea{height:var(--control-h-md);padding:0 var(--control-px);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--control-radius);color:var(--text-main);font-family:var(--fate-font-sans);font-size:var(--fate-text-base);transition:border-color var(--fate-dur-fast) var(--fate-ease-standard),background var(--fate-dur-fast) var(--fate-ease-standard),box-shadow var(--fate-dur-fast) var(--fate-ease-standard);outline:none;width:100%}.form-group textarea,.textarea{height:auto;min-height:96px;padding:10px var(--control-px);resize:vertical}.form-group input::placeholder,.input::placeholder,.textarea::placeholder{color:var(--text-muted)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.input:focus,.select:focus,.textarea:focus{border-color:var(--border-focus);background:var(--fate-alpha-7);box-shadow:var(--focus-ring-shadow)}.form-group select,.select{appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:36px}.form-group select option,.select option{background:var(--bg-card);color:var(--text-main)}.hint{font-size:var(--fate-text-sm);color:var(--text-muted);text-transform:none;letter-spacing:0}.error-text{font-size:var(--fate-text-sm);color:var(--danger);font-weight:var(--fate-weight-medium)}.has-error input,.has-error select,.has-error textarea,.input.is-invalid{border-color:var(--danger-border);background:var(--danger-faint)}.has-error input:focus,.input.is-invalid:focus{border-color:var(--danger);box-shadow:0 0 0 3px #ff475714}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled,.input:disabled,.select:disabled,.textarea:disabled{opacity:.5;cursor:not-allowed;background:var(--fate-alpha-3)}.form-group input[readonly],.form-group textarea[readonly],.input[readonly],.textarea[readonly]{background:var(--fate-alpha-3);color:var(--text-secondary)}.form-group input[readonly]:focus,.form-group textarea[readonly]:focus,.input[readonly]:focus,.textarea[readonly]:focus{border-color:var(--border-strong);background:var(--fate-alpha-3);box-shadow:none}.input-no-spin::-webkit-outer-spin-button,.input-no-spin::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.input-no-spin{-moz-appearance:textfield;appearance:textfield;text-align:right;font-variant-numeric:tabular-nums}.input-wrap{position:relative;display:flex;align-items:center}.input-wrap>.affix{position:absolute;display:inline-flex;color:var(--text-muted);pointer-events:none}.input-wrap>.affix--lead{left:12px}.input-wrap>.affix--trail{right:12px}.input-wrap>.affix--lead~input{padding-left:38px}.input-wrap:has(.affix--trail) input{padding-right:38px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--fate-space-4)}.fieldset{border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--fate-space-5);margin-bottom:var(--fate-space-5)}.fieldset>legend{padding:0 8px;font-size:var(--fate-text-sm);font-weight:var(--fate-weight-semibold);text-transform:uppercase;letter-spacing:var(--fate-tracking-label);color:var(--text-secondary)}.checkbox,.radio{display:inline-flex;align-items:center;gap:10px;font-size:var(--fate-text-base);color:var(--text-secondary);cursor:pointer}.checkbox input[type=checkbox],.radio input[type=radio]{width:18px;height:18px;accent-color:var(--accent);cursor:pointer;flex:none}.checkbox:hover,.radio:hover{color:var(--text-main)}.checkbox input:disabled+span,.radio input:disabled+span{color:var(--text-disabled);cursor:not-allowed}.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:var(--fate-text-base);color:var(--text-secondary)}.switch input{position:absolute;opacity:0;width:40px;height:22px}.switch .track{width:40px;height:22px;border-radius:var(--radius-pill);background:var(--fate-alpha-10);border:1px solid var(--border);position:relative;transition:background var(--fate-dur-base) var(--fate-ease-standard);flex:none}.switch .track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--text-secondary);transition:transform var(--fate-dur-base) var(--fate-ease-standard),background var(--fate-dur-base) var(--fate-ease-standard)}.switch input:checked+.track{background:var(--grad-cta);border-color:transparent}.switch input:checked+.track:after{transform:translate(18px);background:var(--text-on-accent)}.switch input:focus-visible+.track{outline:2px solid var(--focus-ring);outline-offset:2px}.switch input:disabled+.track{opacity:.5;cursor:not-allowed}.toolbar{display:flex;align-items:center;gap:var(--fate-space-3);flex-wrap:wrap;margin-bottom:var(--fate-space-4)}.toolbar .spacer{flex:1}.search-input{min-width:220px;max-width:320px}.filter-chip{display:inline-flex;align-items:center;gap:6px;height:var(--control-h-sm);padding:0 12px;border-radius:var(--radius-pill);border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:var(--fate-text-md);font-weight:var(--fate-weight-medium);cursor:pointer;transition:all var(--fate-dur-fast) var(--fate-ease-standard)}.filter-chip:hover{color:var(--text-main);border-color:var(--fate-alpha-15)}.filter-chip.active{background:var(--accent-soft);border-color:#ff6b9d4d;color:var(--accent)}.filter-chip .chip-x{font-size:var(--fate-text-sm);opacity:.7}.filter-chip .chip-x:hover{opacity:1}.badge{display:inline-block;padding:3px 10px;border-radius:var(--radius-pill);font-size:var(--fate-text-sm);font-weight:var(--fate-weight-semibold);letter-spacing:var(--fate-tracking-badge);white-space:nowrap}.badge-success{background:var(--success-soft);color:var(--success);border:1px solid var(--success-border)}.badge-warning{background:var(--warning-soft);color:var(--warning);border:1px solid var(--warning-border)}.badge-danger,.badge-error{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger-border)}.badge-info{background:var(--info-soft);color:var(--info);border:1px solid var(--info-border)}.badge-pink{background:var(--accent-soft);color:var(--accent);border:1px solid rgba(255,107,157,.2)}.badge-teal{background:var(--teal-soft);color:var(--teal);border:1px solid var(--teal-border)}.badge-neutral{background:var(--fate-alpha-5);color:var(--text-secondary);border:1px solid var(--border)}.badge .dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:5px;vertical-align:1px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--fate-space-3);padding:var(--fate-space-4) var(--fate-space-5);border-bottom:1px solid var(--border)}.card-header h2,.card-title{font-size:var(--fate-text-lg);font-weight:var(--fate-weight-semibold);line-height:var(--fate-leading-snug)}.card-body{padding:var(--fate-space-5)}.card-footer{display:flex;justify-content:flex-end;gap:var(--fate-space-2);padding:var(--fate-space-4) var(--fate-space-5);border-top:1px solid var(--border)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--fate-space-4);margin-bottom:var(--fate-space-7)}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:var(--fate-space-6);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:-40px;right:-40px;width:100px;height:100px;border-radius:50%;pointer-events:none}.stat-card--pink:before{background:radial-gradient(circle,rgba(255,107,157,.1) 0%,transparent 70%)}.stat-card--purple:before{background:radial-gradient(circle,rgba(168,85,247,.1) 0%,transparent 70%)}.stat-card--teal:before{background:radial-gradient(circle,rgba(0,206,201,.1) 0%,transparent 70%)}.stat-card--gold:before{background:radial-gradient(circle,rgba(255,215,0,.1) 0%,transparent 70%)}.stat-value{font-size:var(--fate-text-5xl);font-weight:var(--fate-weight-heavy);letter-spacing:var(--fate-tracking-display);line-height:var(--fate-leading-tight);font-variant-numeric:tabular-nums}.stat-card--pink .stat-value{color:var(--accent)}.stat-card--purple .stat-value{color:var(--info)}.stat-card--teal .stat-value{color:var(--teal)}.stat-card--gold .stat-value{color:var(--warning)}.stat-label{font-size:var(--fate-text-sm);color:var(--text-muted);margin-top:6px;text-transform:uppercase;letter-spacing:var(--fate-tracking-label);font-weight:var(--fate-weight-medium)}.stat-delta{font-size:var(--fate-text-md);font-weight:var(--fate-weight-semibold);margin-top:4px;display:inline-flex;gap:4px}.stat-delta.up{color:var(--success)}.stat-delta.down{color:var(--danger)}a.stat-card,.stat-card.is-clickable{display:block;color:inherit;cursor:pointer;transition:background var(--fate-dur-base) var(--fate-ease-standard),border-color var(--fate-dur-base) var(--fate-ease-standard)}a.stat-card:hover,.stat-card.is-clickable:hover{background:var(--bg-card-hover);border-color:var(--fate-alpha-15)}.table-wrapper{overflow-x:auto}table.table,.card table{width:100%;border-collapse:collapse}.table th,.card th,.table td,.card td{text-align:left;padding:0 var(--table-cell-px);height:var(--table-row-h);border-bottom:1px solid var(--border)}.table th,.card th{font-weight:var(--fate-weight-semibold);font-size:var(--fate-text-xs);text-transform:uppercase;letter-spacing:var(--fate-tracking-overline);color:var(--text-muted);background:var(--fate-alpha-2);white-space:nowrap}.table td,.card td{font-size:var(--fate-text-base);color:var(--text-secondary)}.table tbody tr:hover td,.card tbody tr:hover td{background:var(--fate-alpha-2)}.table tbody tr:last-child td{border-bottom:none}.table-sticky thead th{position:sticky;top:0;z-index:1;background:var(--bg-card)}th.th-sort{cursor:pointer;-webkit-user-select:none;user-select:none}th.th-sort:hover{color:var(--text-secondary)}th.th-sort .sort-arrow{display:inline-block;margin-left:4px;opacity:.4}th.th-sort[aria-sort=ascending] .sort-arrow,th.th-sort[aria-sort=descending] .sort-arrow{opacity:1;color:var(--accent)}.th-sort-btn{background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.cell-num{text-align:right;font-variant-numeric:tabular-nums}th.cell-num{text-align:right}.cell-id{font-family:var(--fate-font-mono);font-size:var(--fate-text-md);color:var(--text-muted)}.cell-main{color:var(--text-main);font-weight:var(--fate-weight-medium)}.cell-truncate{max-width:240px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}td.cell-actions{text-align:right}td.cell-actions .actions{justify-content:flex-end}.table tbody tr.row-selected td{background:var(--accent-faint)}.table .col-check{width:44px}.bulk-bar{display:flex;align-items:center;gap:var(--fate-space-3);padding:10px var(--fate-space-4);background:var(--accent-faint);border:1px solid rgba(255,107,157,.2);border-radius:var(--radius-sm);margin-bottom:var(--fate-space-3);font-size:var(--fate-text-md);color:var(--text-main)}.actions{display:flex;gap:6px}.pagination{display:flex;align-items:center;gap:var(--fate-space-2);padding:var(--fate-space-3) var(--fate-space-5);border-top:1px solid var(--border);font-size:var(--fate-text-md);color:var(--text-muted)}.pagination .pages{display:flex;gap:4px;margin-left:auto}.page-btn{min-width:var(--control-h-sm);height:var(--control-h-sm);padding:0 8px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--control-radius);border:1px solid transparent;background:transparent;color:var(--text-secondary);font-size:var(--fate-text-md);font-weight:var(--fate-weight-medium);cursor:pointer;transition:all var(--fate-dur-fast) var(--fate-ease-standard)}.page-btn:hover:not(:disabled){background:var(--fate-alpha-4);color:var(--text-main)}.page-btn.current{background:var(--accent-soft);color:var(--accent);border-color:#ff6b9d4d}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-size{display:inline-flex;align-items:center;gap:8px}.page-size select{height:var(--control-h-sm);width:auto}.tabs{display:flex;gap:var(--fate-space-1);border-bottom:1px solid var(--border);margin-bottom:var(--fate-space-5)}.tab{position:relative;padding:10px 16px;background:none;border:none;color:var(--text-muted);font-family:var(--fate-font-sans);font-size:var(--fate-text-base);font-weight:var(--fate-weight-medium);cursor:pointer;transition:color var(--fate-dur-fast) var(--fate-ease-standard)}.tab:hover{color:var(--text-secondary)}.tab.active,.tab[aria-selected=true]{color:var(--text-main)}.tab.active:after,.tab[aria-selected=true]:after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2px;border-radius:2px 2px 0 0;background:var(--grad-brand)}.tab .tab-count{margin-left:6px;padding:1px 7px;border-radius:var(--radius-pill);background:var(--fate-alpha-5);font-size:var(--fate-text-xs);color:var(--text-muted)}.breadcrumbs{display:flex;align-items:center;gap:8px;font-size:var(--fate-text-md);color:var(--text-muted);margin-bottom:var(--fate-space-2)}.breadcrumbs a{color:var(--text-muted)}.breadcrumbs a:hover{color:var(--text-main)}.breadcrumbs .crumb-sep{opacity:.5}.breadcrumbs .current{color:var(--text-secondary)}.stepper{display:flex;gap:var(--fate-space-4)}.step{display:flex;align-items:center;gap:8px;font-size:var(--fate-text-md);color:var(--text-muted)}.step .step-dot{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:var(--fate-text-sm);font-weight:var(--fate-weight-semibold);border:1px solid var(--border);background:var(--fate-alpha-4)}.step.done .step-dot,.step.active .step-dot{background:var(--grad-cta);color:var(--text-on-accent);border:none}.step.active{color:var(--text-main);font-weight:var(--fate-weight-medium)}.modal-overlay{position:fixed;inset:0;background:var(--bg-scrim);backdrop-filter:blur(var(--fate-blur-md));-webkit-backdrop-filter:blur(var(--fate-blur-md));display:flex;align-items:center;justify-content:center;z-index:var(--fate-z-modal);animation:fade-in var(--fate-dur-base) var(--fate-ease-decelerate)}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--fate-shadow-lg);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;animation:modal-in var(--fate-dur-base) var(--fate-ease-decelerate)}.modal-sm{max-width:400px}.modal-lg{max-width:720px}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--fate-space-3);padding:var(--fate-space-5) var(--fate-space-6);border-bottom:1px solid var(--border)}.modal-header h3{font-size:var(--fate-text-lg);font-weight:var(--fate-weight-semibold);line-height:var(--fate-leading-snug)}.modal-body{padding:var(--fate-space-6)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--fate-space-2);padding:var(--fate-space-4) var(--fate-space-6);border-top:1px solid var(--border)}.drawer-overlay{position:fixed;inset:0;background:var(--bg-scrim-light);backdrop-filter:blur(var(--fate-blur-sm));-webkit-backdrop-filter:blur(var(--fate-blur-sm));z-index:var(--fate-z-drawer);animation:fade-in var(--fate-dur-base) var(--fate-ease-decelerate)}.drawer{position:fixed;top:0;right:0;bottom:0;width:480px;max-width:92vw;background:var(--bg-card);border-left:1px solid var(--border);box-shadow:var(--fate-shadow-lg);z-index:calc(var(--fate-z-drawer) + 1);display:flex;flex-direction:column;animation:drawer-in var(--fate-dur-slow) var(--fate-ease-decelerate)}.drawer-header{display:flex;align-items:center;justify-content:space-between;gap:var(--fate-space-3);padding:var(--fate-space-5) var(--fate-space-6);border-bottom:1px solid var(--border)}.drawer-header h3{font-size:var(--fate-text-lg);font-weight:var(--fate-weight-semibold);line-height:var(--fate-leading-snug)}.drawer-body{flex:1;overflow-y:auto;padding:var(--fate-space-6)}.drawer-footer{display:flex;justify-content:flex-end;gap:var(--fate-space-2);padding:var(--fate-space-4) var(--fate-space-6);border-top:1px solid var(--border)}.menu{min-width:190px;background:var(--bg-card-hover);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--fate-shadow-md);padding:6px;z-index:var(--fate-z-dropdown)}.menu-label{padding:6px 10px;font-size:var(--fate-text-xs);text-transform:uppercase;letter-spacing:var(--fate-tracking-label);color:var(--text-muted)}.menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:6px;background:none;color:var(--text-secondary);font-family:var(--fate-font-sans);font-size:var(--fate-text-md);text-align:left;cursor:pointer;transition:all var(--fate-dur-fast) var(--fate-ease-standard)}.menu-item:hover{background:var(--fate-alpha-5);color:var(--text-main)}.menu-item.danger{color:var(--danger)}.menu-item.danger:hover{background:var(--danger-faint)}.menu-sep{height:1px;background:var(--border);margin:6px 4px}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(2px);padding:5px 10px;border-radius:6px;background:var(--fate-ink-800);border:1px solid var(--border-strong);color:var(--text-main);font-size:var(--fate-text-sm);font-weight:var(--fate-weight-medium);letter-spacing:0;text-transform:none;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--fate-dur-fast) var(--fate-ease-standard),transform var(--fate-dur-fast) var(--fate-ease-standard);z-index:var(--fate-z-tooltip)}[data-tooltip]:hover:after,[data-tooltip]:focus-visible:after{opacity:1;transform:translate(-50%) translateY(0)}.alert{display:flex;gap:10px;padding:12px var(--fate-space-4);border-radius:var(--radius-xs);margin-bottom:var(--fate-space-4);font-size:var(--fate-text-md);font-weight:var(--fate-weight-medium)}.alert-error,.alert-danger{background:var(--danger-faint);color:var(--danger);border:1px solid var(--danger-border)}.alert-success{background:var(--success-faint);color:var(--success);border:1px solid var(--success-border)}.alert-warning{background:var(--warning-faint);color:var(--warning);border:1px solid var(--warning-border)}.alert-info{background:var(--info-faint);color:var(--info);border:1px solid var(--info-border)}.toast-stack{position:fixed;top:var(--fate-space-5);right:var(--fate-space-5);display:flex;flex-direction:column;gap:var(--fate-space-2);z-index:var(--fate-z-toast);width:360px;max-width:calc(100vw - 32px)}.toast{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:var(--bg-card-hover);border:1px solid var(--border-strong);border-left:3px solid var(--text-muted);border-radius:var(--radius-sm);box-shadow:var(--fate-shadow-md);font-size:var(--fate-text-md);color:var(--text-main);animation:toast-in var(--fate-dur-slow) var(--fate-ease-decelerate)}.toast-success{border-left-color:var(--success)}.toast-error{border-left-color:var(--danger)}.toast-warning{border-left-color:var(--warning)}.toast-info{border-left-color:var(--info)}.toast .toast-title{font-weight:var(--fate-weight-semibold)}.toast .toast-text{color:var(--text-secondary);font-weight:var(--fate-weight-regular)}.toast .toast-close{margin-left:auto;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--fate-text-base);line-height:1;padding:2px}.toast .toast-close:hover{color:var(--text-main)}.spinner{width:18px;height:18px;border:2px solid var(--fate-alpha-15);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;flex:none}.spinner-lg{width:32px;height:32px;border-width:3px}.is-refetching{opacity:.6;pointer-events:none;transition:opacity var(--fate-dur-base) var(--fate-ease-standard)}.progress{height:6px;border-radius:var(--radius-pill);background:var(--fate-alpha-5);overflow:hidden}.progress .bar{height:100%;border-radius:var(--radius-pill);background:var(--grad-cta);transition:width var(--fate-dur-slow) var(--fate-ease-standard)}.skeleton{position:relative;overflow:hidden;background:var(--fate-alpha-5);border-radius:6px;min-height:12px}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--fate-alpha-5),transparent);animation:shimmer 1.4s var(--fate-ease-standard) infinite}.skeleton-text{height:12px}.skeleton-title{height:20px;width:40%}.skeleton-row{height:var(--table-row-h);border-radius:0}.empty-state{text-align:center;padding:var(--fate-space-10) var(--fate-space-5);color:var(--text-muted);font-size:var(--fate-text-base)}.empty-state .empty-icon{width:56px;height:56px;margin:0 auto var(--fate-space-4);border-radius:50%;background:var(--accent-faint);border:1px solid rgba(255,107,157,.15);display:flex;align-items:center;justify-content:center;font-size:22px}.empty-state .empty-title{font-size:var(--fate-text-lg);font-weight:var(--fate-weight-semibold);color:var(--text-main);margin-bottom:4px}.empty-state .empty-text{max-width:360px;margin:0 auto var(--fate-space-4)}.layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-w);background:var(--bg-card);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:var(--fate-z-sidebar)}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:var(--fate-space-5);border-bottom:1px solid var(--border)}.brand-icon{width:36px;height:36px;background:var(--grad-brand);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-weight:var(--fate-weight-heavy);font-size:var(--fate-text-md);color:var(--text-on-accent)}.brand-text{font-size:1.3rem;font-weight:var(--fate-weight-heavy);letter-spacing:var(--fate-tracking-brand)}.sidebar-nav{flex:1;padding:var(--fate-space-4) 0;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.sidebar-nav a{color:var(--text-muted);padding:11px var(--fate-space-5);font-size:var(--fate-text-base);font-weight:var(--fate-weight-medium);transition:all var(--fate-dur-base) var(--fate-ease-standard);display:flex;align-items:center;gap:10px;position:relative}.nav-dot{width:6px;height:6px;border-radius:50%;background:transparent;transition:all var(--fate-dur-base) var(--fate-ease-standard);flex:none}.sidebar-nav a:hover{color:var(--text-main);background:var(--fate-alpha-3)}.sidebar-nav a.active{color:var(--text-main);background:var(--accent-faint)}.sidebar-nav a.active:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;border-radius:0 3px 3px 0;background:var(--grad-brand-v)}.sidebar-nav a.active .nav-dot{background:var(--accent);box-shadow:0 0 8px #ff6b9d66}.nav-section{padding:var(--fate-space-4) var(--fate-space-5) 6px;font-size:var(--fate-text-xs);text-transform:uppercase;letter-spacing:var(--fate-tracking-label);color:var(--text-muted);opacity:.7}.nav-badge{margin-left:auto;padding:1px 7px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--fate-text-xs);font-weight:var(--fate-weight-semibold)}.sidebar-footer{padding:var(--fate-space-4) var(--fate-space-5);border-top:1px solid var(--border)}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;z-index:var(--fate-z-topbar);height:var(--topbar-h);background:#0a0a0fd9;backdrop-filter:blur(var(--fate-blur-lg));-webkit-backdrop-filter:blur(var(--fate-blur-lg));border-bottom:1px solid var(--border);padding:0 var(--fate-space-4);align-items:center;gap:var(--fate-space-3)}.mobile-brand{display:flex;align-items:center;gap:var(--fate-space-2)}.mobile-brand .brand-icon{width:30px;height:30px;font-size:var(--fate-text-xs)}.mobile-brand .brand-text{font-size:1.1rem}.burger{width:36px;height:36px;background:none;border:1px solid var(--border);border-radius:var(--fate-radius-xs);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px}.burger span{display:block;width:18px;height:2px;background:var(--text-muted);border-radius:1px;transition:all var(--fate-dur-slow) var(--fate-ease-standard)}.burger.open span:nth-child(1){transform:translateY(6px) rotate(45deg);background:var(--accent)}.burger.open span:nth-child(2){opacity:0}.burger.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg);background:var(--accent)}.sidebar-overlay{display:none;position:fixed;inset:0;background:var(--bg-scrim-light);backdrop-filter:blur(var(--fate-blur-sm));-webkit-backdrop-filter:blur(var(--fate-blur-sm));z-index:calc(var(--fate-z-sidebar) - 1)}.main-content{flex:1;margin-left:var(--sidebar-w);padding:var(--fate-space-7) 36px;position:relative;min-width:0}.main-content:before{content:"";position:fixed;top:-200px;right:-200px;width:600px;height:600px;background:radial-gradient(circle,rgba(255,107,157,.04) 0%,transparent 65%);pointer-events:none}.page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--fate-space-3);margin-bottom:var(--fate-space-6)}.page-header h1{font-size:var(--fate-text-3xl);font-weight:var(--fate-weight-bold);letter-spacing:var(--fate-tracking-heading);line-height:var(--fate-leading-snug)}.page-subtitle{color:var(--text-muted);font-size:var(--fate-text-base);margin-top:2px}.glow-orb{position:absolute;border-radius:50%;pointer-events:none}.glow-orb--pink{width:500px;height:500px;top:-200px;right:-100px;background:radial-gradient(circle,rgba(255,107,157,.08) 0%,transparent 65%)}.glow-orb--purple{width:400px;height:400px;bottom:-150px;left:-100px;background:radial-gradient(circle,rgba(168,85,247,.06) 0%,transparent 65%)}.avatar{width:32px;height:32px;border-radius:50%;background:var(--grad-brand);color:var(--text-on-accent);display:inline-flex;align-items:center;justify-content:center;font-size:var(--fate-text-sm);font-weight:var(--fate-weight-bold);flex:none;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-sm{width:24px;height:24px;font-size:10px}.avatar-lg{width:40px;height:40px;font-size:var(--fate-text-base)}.avatar-group{display:inline-flex}.avatar-group .avatar{border:2px solid var(--bg-card)}.avatar-group .avatar+.avatar{margin-left:-8px}.kv{display:grid;grid-template-columns:180px 1fr;row-gap:var(--fate-space-3);column-gap:var(--fate-space-5)}.kv dt{font-size:var(--fate-text-sm);text-transform:uppercase;letter-spacing:var(--fate-tracking-label);color:var(--text-muted);font-weight:var(--fate-weight-medium);align-self:center}.kv dd{font-size:var(--fate-text-base);color:var(--text-main)}.timeline{position:relative;padding-left:var(--fate-space-6)}.timeline:before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:1px;background:var(--border-strong)}.timeline-item{position:relative;padding-bottom:var(--fate-space-5)}.timeline-item:before{content:"";position:absolute;left:-23px;top:5px;width:9px;height:9px;border-radius:50%;background:var(--fate-ink-800);border:2px solid var(--text-muted)}.timeline-item.accent:before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 8px #ff6b9d66}.timeline-item .tl-title{font-size:var(--fate-text-base);color:var(--text-main);font-weight:var(--fate-weight-medium)}.timeline-item .tl-meta{font-size:var(--fate-text-sm);color:var(--text-muted)}.divider{height:1px;background:var(--border);margin:var(--fate-space-5) 0;border:none}.kbd{display:inline-block;padding:2px 6px;border-radius:5px;border:1px solid var(--border-strong);border-bottom-width:2px;background:var(--fate-alpha-5);font-family:var(--fate-font-mono);font-size:var(--fate-text-sm);color:var(--text-secondary)}.code-inline{font-family:var(--fate-font-mono);font-size:.9em;padding:2px 6px;border-radius:5px;background:var(--fate-alpha-5);border:1px solid var(--border);color:var(--fate-pink-300)}.code-block{font-family:var(--fate-font-mono);font-size:var(--fate-text-md);padding:var(--fate-space-4);border-radius:var(--radius-sm);background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);overflow-x:auto;line-height:1.6}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes fade-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(12px) scale(.98)}}@keyframes drawer-in{0%{transform:translate(40px);opacity:0}}@keyframes toast-in{0%{transform:translate(24px);opacity:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.spinner,.spinner-lg{animation:spin 1.5s linear infinite!important}}.dropzone{display:flex;flex-direction:column;align-items:center;gap:var(--fate-space-3);width:100%;padding:var(--fate-space-8);background:var(--fate-alpha-2);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);color:var(--text-muted);font-family:var(--fate-font-sans);font-size:var(--fate-text-base);text-align:center;cursor:pointer;transition:border-color var(--fate-dur-base) var(--fate-ease-standard),background var(--fate-dur-base) var(--fate-ease-standard)}.dropzone:hover{border-color:var(--fate-alpha-20);background:var(--fate-alpha-3)}.dropzone.dragover{border-color:var(--border-focus);background:var(--accent-faint);color:var(--text-secondary)}.dz-hint{font-size:var(--fate-text-sm);color:var(--text-muted)}.file-list{display:flex;flex-direction:column;gap:var(--fate-space-2);margin-top:var(--fate-space-3)}.file-row{display:flex;align-items:center;gap:var(--fate-space-3);padding:10px var(--fate-space-3);background:var(--fate-alpha-2);border:1px solid var(--border);border-radius:var(--fate-radius-xs);font-size:var(--fate-text-md)}.file-row .file-name{flex:1;min-width:0;color:var(--text-main);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.file-row .file-size{color:var(--text-muted);font-size:var(--fate-text-sm);flex:none}.file-row .progress{width:120px;flex:none}.file-row.done .file-status{color:var(--success)}.file-row.error{border-color:var(--danger-border);background:var(--danger-faint)}.file-row.error .file-msg{color:var(--danger);font-size:var(--fate-text-sm)}@media(forced-colors:active){.progress{border:1px solid CanvasText}.progress .bar{background:Highlight}.switch .track{border-color:CanvasText}.switch .track:after{background:CanvasText}.switch input:checked+.track{background:Highlight}.sidebar-nav a.active{outline:1px solid CanvasText;outline-offset:-1px}}@media print{body{background:#fff!important;color:#000!important}.sidebar,.mobile-header,.sidebar-overlay,.toast-stack,.glow-orb,.burger,.btn,.actions,.toolbar,.filter-chip,.pagination,.bulk-bar{display:none!important}.main-content{margin-left:0!important;padding:0!important}.main-content:before{display:none!important}.card,.stat-card,.modal{background:#fff!important;border-color:#bbb!important;box-shadow:none!important}.table th,.card th,.table td,.card td,.kv dt,.kv dd,.stat-value,.stat-label,h1,h2,h3,a{color:#000!important}.badge{background:none!important;border-color:#999!important;color:#000!important}.grad-text{background:none!important;-webkit-text-fill-color:initial!important;color:#000!important}}@media(max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}.main-content{padding:var(--fate-space-6) var(--fate-space-5)}.modal{max-width:90vw}}@media(max-width:768px){.mobile-header{display:flex}.sidebar{transition:left var(--fate-dur-slow) var(--fate-ease-standard)}.sidebar-overlay{display:block}.page-header{flex-direction:column;align-items:flex-start;gap:var(--fate-space-3)}.page-header h1{font-size:var(--fate-text-2xl)}.stats-grid{gap:10px}.stat-card{padding:var(--fate-space-4)}.stat-value{font-size:var(--fate-text-3xl)}.table-wrapper{-webkit-overflow-scrolling:touch}.table-wrapper table{min-width:600px}.modal-overlay{align-items:flex-end}.modal{max-width:100%;border-radius:var(--radius) var(--radius) 0 0;max-height:85vh}.modal-footer{flex-direction:column}.modal-footer .btn{width:100%}.form-row{grid-template-columns:1fr;gap:0}.form-group input,.form-group select{font-size:16px}.drawer{width:100vw;max-width:100vw;border-left:none}.main-content{margin-left:0;padding:calc(var(--topbar-h) + 16px) var(--fate-space-4) var(--fate-space-6)}.toast-stack{top:auto;bottom:var(--fate-space-4);right:var(--fate-space-4)}}@media(max-width:480px){.stats-grid{grid-template-columns:1fr 1fr;gap:var(--fate-space-2)}.badge{font-size:var(--fate-text-xs);padding:2px 8px}}.brand-mark{width:36px;height:36px}.mobile-brand .brand-mark{width:30px;height:30px}@media(max-width:768px){.sidebar{left:calc(-1 * var(--sidebar-w))}.sidebar.open{left:0}.sidebar-overlay{display:none}.sidebar-overlay.open{display:block}}.skip-link{position:absolute;left:var(--fate-space-4);top:-4rem;z-index:var(--fate-z-toast);padding:var(--fate-space-3) var(--fate-space-4);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-main);transition:top var(--fate-dur-base) var(--fate-ease-standard)}.skip-link:focus-visible{top:var(--fate-space-4)}.sidebar-nav .nav-disabled{display:flex;align-items:flex-start;gap:10px;padding:9px var(--fate-space-5);font-size:var(--fate-text-base);font-weight:var(--fate-weight-medium);color:var(--text-muted);opacity:.55;cursor:not-allowed}.sidebar-nav .nav-disabled .nav-dot{margin-top:8px}.sidebar-nav .nav-disabled-body{display:flex;flex-direction:column;gap:1px;min-width:0}.sidebar-nav .nav-hint{font-size:var(--fate-text-xs);line-height:var(--fate-leading-snug);opacity:.8}.sidebar-footer .operator{margin-bottom:var(--fate-space-3)}.sidebar-footer .operator-email{font-size:var(--fate-text-base);color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar .select{width:auto;min-width:12rem}form.card{padding:var(--fate-space-6);display:flex;flex-direction:column;gap:var(--fate-space-5)}form.card .card-footer{margin:var(--fate-space-2) calc(-1 * var(--fate-space-6)) calc(-1 * var(--fate-space-6))}app-date-time-field .form-row .form-group{margin-bottom:0}app-date-time-field .hint,app-date-time-field .error-text{margin-top:6px}.table tbody tr.row-clickable{cursor:pointer}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 22rem;gap:var(--fate-space-5);align-items:start}.detail-main,.detail-side{display:flex;flex-direction:column;gap:var(--fate-space-5);min-width:0}@media(max-width:1024px){.detail-grid{grid-template-columns:1fr}}.card-body .runbook-hint{margin-bottom:var(--fate-space-3);color:var(--text-muted);font-size:var(--fate-text-sm);line-height:var(--fate-leading-normal)}.action-row{display:flex;flex-wrap:wrap;gap:var(--fate-space-3);margin-top:var(--fate-space-4)}.card-body .kv+.alert,.card-body .alert+.kv,.card-body .kv+.btn,.card-body .btn+.page-subtitle{margin-top:var(--fate-space-4)}.lifecycle{position:relative;padding-left:var(--fate-space-6);list-style:none}.lifecycle:before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:1px;background:var(--border-strong)}.lifecycle-step{position:relative;padding-bottom:var(--fate-space-5)}.lifecycle-step:last-child{padding-bottom:0}.lifecycle-step:before{content:"";position:absolute;left:-23px;top:5px;width:9px;height:9px;border-radius:50%;background:var(--bg-card);border:2px solid var(--border-strong)}.lifecycle-step.reached:before{background:var(--text-muted);border-color:var(--text-muted)}.lifecycle-step.current:before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 8px #ff6b9d66}.lifecycle-step .ls-title{display:flex;align-items:center;gap:var(--fate-space-2);font-size:var(--fate-text-base);font-weight:var(--fate-weight-medium);color:var(--text-muted)}.lifecycle-step.reached .ls-title{color:var(--text-main)}.lifecycle-step .ls-meta{font-size:var(--fate-text-sm);color:var(--text-muted)}.lifecycle-step .ls-note{margin-top:var(--fate-space-2);font-size:var(--fate-text-sm);line-height:var(--fate-leading-snug);color:var(--text-muted);opacity:.85}.table tbody tr.row-winner{background:var(--fate-alpha-5)}.chat-thread{max-height:24rem;overflow-y:auto;display:flex;flex-direction:column;gap:var(--fate-space-3);padding:var(--fate-space-3);background:var(--fate-alpha-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.chat-message{display:flex;flex-direction:column;gap:2px;max-width:80%;align-items:flex-start}.chat-message.mine{align-self:flex-end;align-items:flex-end}.chat-message .chat-meta{font-size:var(--fate-text-xs);color:var(--text-muted)}.chat-message .chat-bubble{padding:var(--fate-space-2) var(--fate-space-3);border-radius:var(--radius);background:var(--fate-alpha-5);border:1px solid var(--border);color:var(--text-main);font-size:var(--fate-text-base);line-height:var(--fate-leading-body);white-space:pre-wrap;overflow-wrap:anywhere}.chat-message.mine .chat-bubble{background:var(--accent-soft);border-color:var(--border-focus)}.chat-message .chat-bubble.chat-unsupported{color:var(--text-muted);font-style:italic}.chat-composer{display:flex;flex-direction:column;gap:var(--fate-space-3);margin-top:var(--fate-space-4)}.chat-composer-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--fate-space-3)}.card-body .runbook-hint+.chat-thread,.card-body .alert+.chat-thread{margin-top:var(--fate-space-3)}.card-body .chat-thread+.action-row,.card-body .chat-composer+.action-row{margin-top:var(--fate-space-5)}body.modal-open{overflow:hidden}.modal-body .modal-line+.modal-line,.modal-body .modal-line+.form-group,.modal-body .form-group+.alert{margin-top:var(--fate-space-4)}.toast .toast-action{margin-top:var(--fate-space-2);padding-left:0;padding-right:0;color:var(--text-link)}.auth-page{position:relative;overflow:hidden;min-height:100vh;background:var(--bg-gradient);display:flex;align-items:center;justify-content:center;padding:var(--fate-space-5)}.auth-card{position:relative;width:100%;max-width:420px;padding:var(--fate-space-9)}.auth-brand{padding:0 0 var(--fate-space-6);border-bottom:none}.auth-card h1{font-size:var(--fate-text-2xl);font-weight:var(--fate-weight-bold);letter-spacing:var(--fate-tracking-heading)}.auth-card .alert,.auth-card form,.auth-card>.btn{margin-top:var(--fate-space-5)}@media(max-width:768px){.auth-page{align-items:flex-start;padding-top:15vh}}.form-page{display:flex;flex-direction:column;gap:var(--fate-space-5);max-width:640px}app-bulk-adjustment .form-page{max-width:none}.lookup-row{display:flex;gap:var(--fate-space-3);align-items:center}.lookup-row .input{flex:1;min-width:0}.lookup-row .btn{flex:none}.kv dd .hint{display:block;margin-top:2px}.textarea.mono{font-family:var(--fate-font-mono);font-size:var(--fate-text-sm)}.card-body .dropzone+.csv-paste,.card-body .file-list+.csv-paste{margin-top:var(--fate-space-5)}.table tbody tr.row-invalid td{background:var(--danger-faint)}.table td .error-text{display:block}.transcript{list-style:none;margin:var(--fate-space-4) 0;padding:0;display:flex;flex-direction:column;gap:var(--fate-space-3)}.transcript li{padding:var(--fate-space-3);border:1px solid var(--border);border-radius:var(--fate-radius-md)}.transcript li p{margin:4px 0 0;overflow-wrap:anywhere}.transcript li.reported{border-color:var(--danger);background:var(--danger-faint)}.chart-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:var(--fate-space-5);margin-top:var(--fate-space-5)}.chart-host{display:block;position:relative}.chart-svg{width:100%;min-height:200px;height:240px;display:block}.chart-grid{stroke:var(--chart-grid);stroke-width:1}.chart-axis{fill:var(--chart-axis-text);font-size:11px}.chart-crosshair{stroke:var(--chart-axis-text);stroke-width:1;stroke-dasharray:3 3}.chart-line{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.chart-line--dashed{stroke-dasharray:6 4}.chart-marker{stroke:var(--bg-card);stroke-width:1.5}.chart-swatch-line{display:inline-block;vertical-align:middle;flex:none}.chart-legend{display:flex;gap:var(--fate-space-4);margin-bottom:var(--fate-space-2);font-size:var(--fate-text-sm);color:var(--text-secondary)}.chart-legend-item{display:inline-flex;align-items:center;gap:6px}.chart-swatch{width:10px;height:10px;border-radius:2px;display:inline-block}.chart-tooltip{position:absolute;top:var(--fate-space-2);right:var(--fate-space-2);display:flex;flex-direction:column;gap:2px;padding:var(--fate-space-2) var(--fate-space-3);background:var(--surface-2, var(--surface));border:1px solid var(--border);border-radius:var(--fate-radius-md);font-size:var(--fate-text-sm);pointer-events:none}.chart-tooltip-row{display:inline-flex;align-items:center;gap:6px}.muted-value{color:var(--text-muted)}.skeleton-card{min-height:96px;background:var(--surface-2, var(--surface));animation:fate-skeleton 1.2s ease-in-out infinite}.skeleton-chart{min-height:240px;border-radius:var(--fate-radius-md);background:var(--surface-2, var(--surface));animation:fate-skeleton 1.2s ease-in-out infinite}@keyframes fate-skeleton{0%,to{opacity:.5}50%{opacity:.9}}@media(prefers-reduced-motion:reduce){.skeleton-card,.skeleton-chart{animation:none}}.skeleton-row{height:20px;border-radius:var(--fate-radius-sm);background:var(--surface-2, var(--surface));animation:fate-skeleton 1.2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.skeleton-row{animation:none}}.code-block{margin:0;padding:var(--fate-space-3);background:var(--bg);border:1px solid var(--border);border-radius:var(--fate-radius-sm);font-family:var(--fate-font-mono);font-size:13px;line-height:1.6;overflow-x:auto;max-height:320px;overflow-y:auto}.file-row .file-thumb{flex:none;width:64px;height:64px;border-radius:var(--radius-sm);object-fit:cover;background:var(--fate-alpha-3)}.file-row .file-msg{flex:1;min-width:0}.file-row.error .file-name{flex:none}app-image-upload-field .url-alternative{margin-top:var(--fate-space-4);margin-bottom:0}.guide-page{display:flex;flex-direction:column;gap:var(--fate-space-5)}.guide-toc{display:flex;flex-wrap:wrap;gap:var(--fate-space-2)}.guide-purpose,.guide-text,.guide-steps li,.guide-page .kv dd,.guide-page .alert{max-width:78ch}.guide-purpose{font-size:var(--fate-text-md);line-height:var(--fate-leading-body);color:var(--text-secondary)}.guide-text{line-height:var(--fate-leading-body);color:var(--text-main)}.guide-page .kv dd{line-height:var(--fate-leading-body)}.guide-heading{margin-top:var(--fate-space-6);font-size:var(--fate-text-base);font-weight:var(--fate-weight-semibold);text-transform:uppercase;letter-spacing:var(--fate-tracking-label);color:var(--text-muted)}.card-body>.guide-purpose+.guide-heading{margin-top:var(--fate-space-5)}.guide-heading+.guide-text,.guide-heading+.kv,.guide-heading+.guide-steps,.guide-heading+.alert,.guide-text+.kv,.guide-text+.guide-steps,.kv+.alert,.guide-steps+.alert{margin-top:var(--fate-space-4)}.guide-steps{padding-left:var(--fate-space-6);display:flex;flex-direction:column;gap:var(--fate-space-2);line-height:var(--fate-leading-body)}.guide-page .card-body>.alert:last-child{margin-bottom:0}.receipt-chunks{margin-top:var(--fate-space-5);padding-top:var(--fate-space-4);border-top:1px solid var(--border)}.receipt-chunks-title{margin:0 0 var(--fate-space-3);font-size:var(--fate-text-sm);font-weight:var(--fate-weight-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.ranked-bar-col{width:120px;min-width:80px}.ranked-sublabel{display:block;font-size:var(--fate-text-md);color:var(--text-muted);font-weight:var(--fate-weight-regular)}.activity-block{margin-top:var(--fate-space-7)}.activity-block-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--fate-space-4);flex-wrap:wrap}.activity-block-head .toolbar{margin-bottom:var(--fate-space-3)}.activity-rankings{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--fate-space-6)}.activity-timeline{background:var(--fate-alpha-5);border-top:1px solid var(--border)}.activity-attrs{display:inline-flex;flex-wrap:wrap;gap:4px}.activity-note{color:var(--text-muted);font-size:var(--fate-text-md);margin:var(--fate-space-3) 0 0}.activity-status{display:flex;align-items:center;flex-wrap:wrap;gap:var(--fate-space-3);margin-bottom:var(--fate-space-5)}.activity-status .activity-note{margin:0}.activity-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:var(--fate-space-6);margin-top:var(--fate-space-7)}.ranked-row-button{background:none;border:0;padding:0;font:inherit;color:inherit;text-align:left;cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}.ranked-row-button:hover,.ranked-row-button:focus-visible{color:var(--fate-pink)}.ranked-row-open{background:var(--fate-alpha-5)}.payments-status{display:flex;align-items:center;flex-wrap:wrap;gap:var(--fate-space-3);margin-bottom:var(--fate-space-5)}.payments-note{color:var(--text-muted);font-size:var(--fate-text-md);margin:0}.payments-sub{display:block;font-size:var(--fate-text-md);color:var(--text-muted);font-weight:var(--fate-weight-regular)}.payments-id+.payments-id{margin-left:var(--fate-space-2)}.payments-detail{padding:var(--fate-space-4) 0;display:grid;gap:var(--fate-space-4)}.payments-payload{margin:0;max-height:320px;overflow:auto;padding:var(--fate-space-3) var(--fate-space-4);background:var(--fate-alpha-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--fate-font-mono);font-size:var(--fate-text-md);color:var(--text-secondary);white-space:pre}.chip-row{display:flex;flex-wrap:wrap;gap:var(--fate-space-2)}.choice-group{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-inline-size:0;margin:0 0 var(--fate-space-4);padding:0;border:0}.choice-group>legend{padding:0;margin-bottom:6px}.summary-heading{display:block;margin:var(--fate-space-5) 0 var(--fate-space-3)}.moderation-actions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--fate-space-3)}.moderation-actions li{overflow-wrap:anywhere}.snapshot-photos{list-style:none;margin:var(--fate-space-4) 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--fate-space-3)}.snapshot-photos img{display:block;width:100%;aspect-ratio:3 / 4;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border)}.snapshot-photos .photo-missing{display:flex;align-items:center;justify-content:center;aspect-ratio:3 / 4;margin:0;padding:var(--fate-space-3);text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius-sm)}.table tbody tr.incident-unread td{color:var(--text-main);font-weight:var(--fate-weight-medium)}.incident-id{overflow-wrap:anywhere}
