.asset-grid-skeleton{gap:var(--space-3);display:grid}.asset-grid-skeleton-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:grid;overflow:hidden}.asset-grid-skeleton-media{background:var(--color-bg-tertiary);width:100%;position:relative}.asset-grid-skeleton-badge{left:var(--space-2);bottom:var(--space-2);border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-bg-secondary) 72%, transparent);width:42px;height:18px;position:absolute}.asset-grid-skeleton-content{gap:var(--space-2);padding:var(--space-3);display:grid}.asset-grid-skeleton-line,.asset-grid-skeleton-chip,.asset-grid-skeleton-button,.asset-grid-skeleton-code,.asset-grid-skeleton-copy{background:var(--color-bg-tertiary);display:block}.asset-grid-skeleton-line{border-radius:var(--radius-sm);height:14px}.asset-grid-skeleton-line-title{width:72%}.asset-grid-skeleton-line-body{width:92%}.asset-grid-skeleton-tags{flex-wrap:wrap;gap:6px;min-height:20px;display:flex}.asset-grid-skeleton-chip{border-radius:var(--radius-pill);width:52px;height:20px}.asset-grid-skeleton-chip-short{width:36px}.asset-grid-skeleton-button{border-radius:var(--radius-sm);width:100%;height:32px;margin-top:var(--space-1)}.asset-grid-skeleton-footer{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:var(--space-1);display:flex}.asset-grid-skeleton-code{border-radius:var(--radius-sm);width:96px;height:14px}.asset-grid-skeleton-copy{border-radius:var(--radius-sm);width:56px;height:28px}:root{--font-family-base:"PingFang SC", "Microsoft YaHei", "Noto Sans SC", "Helvetica Neue", sans-serif;--font-family-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-size-xs:11px;--font-size-sm:12px;--font-size-base:14px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:24px;--font-size-3xl:28px;--font-size-4xl:34px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-tight:1.15;--line-height-normal:1.5;--line-height-relaxed:1.7;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:9999px;--shadow-sm:0 1px 2px #0000000a, 0 1px 4px #00000008;--shadow-md:0 2px 4px #0000000a, 0 4px 12px #0000000f;--shadow-lg:0 4px 8px #0000000a, 0 12px 32px #00000014;--shadow-focus:0 0 0 3px #f9731633;--shadow-card:0 1px 3px #0000000f, 0 2px 8px #0000000a;--shadow-card-hover:0 4px 12px #00000014, 0 8px 24px #0000000f;--shadow-overlay:0 8px 24px #00000026, 0 16px 48px #0000001a;--motion-fast:.15s cubic-bezier(.4, 0, .2, 1);--motion-base:.22s cubic-bezier(.4, 0, .2, 1);--motion-slow:.3s cubic-bezier(.4, 0, .2, 1);--z-sticky:20;--z-modal:40;--z-toast:60;--container-max:1200px;--container-max-wide:1600px;--touch-target-min:40px;--header-h:52px;--color-bg-primary:#fafafa;--color-bg-secondary:#fff;--color-bg-tertiary:#f4f4f5;--color-bg-input:#fafafa;--color-grid-line:#a1a1aa26;--color-text-primary:#18181b;--color-text-secondary:#52525b;--color-text-muted:#a1a1aa;--color-text-inverse:#fff;--color-border-primary:#e4e4e7;--color-border-secondary:#d4d4d8;--color-border-focus:#f59e0b;--color-accent:#f97316;--color-accent-hover:#ea580c;--color-accent-weak:#f4f4f5;--color-media-bg:#09090b;--color-success:#4aba6e;--color-success-bg:#f2faf5;--color-success-text:#2d7a48;--color-warning:#e0a63a;--color-warning-bg:#fdf8ef;--color-warning-text:#8a6520;--color-error:#e06060;--color-error-bg:#fdf2f2;--color-error-text:#9c3a3a;--color-info:#6b9be0;--color-info-bg:#f2f6fc;--color-info-text:#3d6aaa}:root[data-theme=light]{--color-bg-primary:#fafafa;--color-bg-secondary:#fff;--color-bg-tertiary:#f4f4f5;--color-bg-input:#fafafa;--color-grid-line:#a1a1aa26;--color-text-primary:#18181b;--color-text-secondary:#52525b;--color-text-muted:#a1a1aa;--color-text-inverse:#fff;--color-border-primary:#e4e4e7;--color-border-secondary:#d4d4d8;--color-border-focus:#f59e0b;--color-accent:#f97316;--color-accent-hover:#ea580c;--color-accent-weak:#f4f4f5;--color-media-bg:#09090b}:root[data-theme=dark]{--color-bg-primary:#09090b;--color-bg-secondary:#18181b;--color-bg-tertiary:#27272a;--color-bg-input:#18181b;--color-grid-line:#71717a33;--color-text-primary:#fafafa;--color-text-secondary:#d4d4d8;--color-text-muted:#a1a1aa;--color-text-inverse:#fff;--color-border-primary:#27272a;--color-border-secondary:#3f3f46;--color-border-focus:#fbbf24;--color-accent:#fb923c;--color-accent-hover:#fdba74;--color-accent-weak:#27272a;--color-media-bg:#000;--color-success:#4ade80;--color-success-bg:#14532d;--color-success-text:#86efac;--color-warning:#fbbf24;--color-warning-bg:#422006;--color-warning-text:#fde68a;--color-error:#f87171;--color-error-bg:#450a0a;--color-error-text:#fca5a5;--color-info:#60a5fa;--color-info-bg:#1e3a5f;--color-info-text:#93c5fd}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{opacity:.35}50%{opacity:.75}to{opacity:.35}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ani-fade-in{animation:fade-in var(--motion-slow) ease both}.ani-stagger>*{opacity:0;animation:fade-in var(--motion-slow) ease forwards}.ani-stagger>:first-child{animation-delay:30ms}.ani-stagger>:nth-child(2){animation-delay:60ms}.ani-stagger>:nth-child(3){animation-delay:90ms}.ani-stagger>:nth-child(4){animation-delay:.12s}.ani-stagger>:nth-child(5){animation-delay:.15s}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);transition:background-color var(--motion-base), color var(--motion-base), border-color var(--motion-base)}a{color:var(--color-accent)}button,input,select,textarea{font:inherit}button,[role=button],input[type=radio]{min-height:var(--touch-target-min);min-width:var(--touch-target-min)}input[type=checkbox]{appearance:none;border:1.5px solid var(--color-border-primary,#888);cursor:pointer;width:16px;min-width:16px;height:16px;min-height:16px;transition:background var(--motion-fast), border-color var(--motion-fast);background:0 0;border-radius:4px;flex-shrink:0;position:relative}input[type=checkbox]:checked{background:var(--color-accent,#ff7a1a);border-color:var(--color-accent,#ff7a1a)}input[type=checkbox]:checked:after{content:"";border:solid var(--color-text-inverse);border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}input[type=checkbox]:focus-visible{box-shadow:var(--shadow-focus,0 0 0 2px #ff7a1a66)}input[type=checkbox]:disabled{opacity:.4;cursor:not-allowed}:focus-visible{box-shadow:var(--shadow-focus);outline:none}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-fade{animation:fade-in var(--motion-slow) ease both}.impersonation-banner{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--color-accent-weak);border-bottom:1px solid var(--color-accent);color:var(--color-text-primary);font-size:var(--font-size-sm);display:flex}.impersonation-banner__text{font-weight:600}.center-loading,.center-wrap{min-height:100vh;padding:var(--space-4);place-items:center;display:grid}.layout-shell{min-height:100vh;display:flex}.layout-sidebar{width:260px;padding:var(--space-4);border-inline-end:1px solid var(--color-border-primary);height:100vh;z-index:var(--z-sticky);flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0}.sidebar-brand{margin-block-end:var(--space-6)}.sidebar-nav{gap:var(--space-2);flex-direction:column;flex:1;display:flex}.nav-section-title{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:var(--font-weight-bold);padding-inline:var(--space-3);margin-block-start:var(--space-4);margin-block-end:var(--space-2)}.sidebar-nav a{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--motion-fast);font-weight:var(--font-weight-medium);text-decoration:none;display:flex}.sidebar-nav a:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.sidebar-nav a.active{background:var(--color-bg-tertiary);color:var(--color-accent);font-weight:var(--font-weight-semibold);box-shadow:inset 3px 0 0 var(--color-accent)}.nav-icon{font-size:var(--font-size-lg);text-align:center;width:24px}.sidebar-footer{margin-block-start:auto}.layout-breadcrumbs{align-items:center;gap:var(--space-3);min-width:0;display:inline-flex}.header-view-switcher{padding:var(--space-1);background:var(--color-bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--color-border-primary);gap:2px;display:inline-flex}.view-switch-btn{align-items:center;gap:var(--space-1);padding:6px var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);transition:all var(--motion-fast);white-space:nowrap;text-decoration:none;display:inline-flex}.view-switch-btn:hover{color:var(--color-text-primary)}.view-switch-btn.active{background:var(--color-bg-secondary);color:var(--color-text-primary);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-sm)}@media (width<=640px){.view-switch-label{display:none}}.layout-main{flex-direction:column;flex:1;min-width:0;display:flex}.layout-header{z-index:calc(var(--z-sticky) - 1);justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-6);border-block-end:1px solid var(--color-border-primary);display:flex;position:sticky;top:0;box-shadow:0 1px 3px #00000008}.glass-panel{background:color-mix(in srgb, var(--color-bg-secondary) 85%, transparent);-webkit-backdrop-filter:blur(20px)saturate(1.2)}.hover-lift{transition:transform var(--motion-fast), box-shadow var(--motion-fast)}.hover-lift:hover{transform:translateY(-1px)}.layout-brand{align-items:center;gap:var(--space-3);display:flex}.layout-brand strong{font-size:var(--font-size-lg);line-height:var(--line-height-tight);display:block}.layout-brand span{color:var(--color-text-muted);font-size:var(--font-size-xs);display:block}.layout-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:inline-flex}.profile-dropdown{position:relative}.profile-trigger{border:1px solid var(--color-border-secondary);background:var(--color-bg-secondary);cursor:pointer;width:36px;height:36px;transition:border-color var(--motion-fast), transform var(--motion-fast);border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.profile-trigger:hover{border-color:var(--color-accent);transform:scale(1.05)}.profile-avatar{background:var(--color-accent);width:28px;height:28px;color:var(--color-text-inverse);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);-webkit-user-select:none;user-select:none;border-radius:50%;justify-content:center;align-items:center;line-height:1;display:inline-flex}.profile-avatar-lg{width:40px;height:40px;font-size:var(--font-size-base)}.profile-menu{z-index:50;background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);min-width:220px;box-shadow:var(--shadow-lg);padding:var(--space-1);animation:fade-in var(--motion-fast) ease both;position:absolute;top:calc(100% + 6px);right:0}.profile-menu-header{align-items:center;gap:var(--space-2);padding:var(--space-2);display:flex}.profile-menu-info{font-size:var(--font-size-sm);flex-direction:column;gap:2px;min-width:0;display:flex}.profile-menu-info strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-menu-info .text-muted{font-size:var(--font-size-xs)}.profile-role{font-size:var(--font-size-xs);color:var(--color-accent);font-weight:var(--font-weight-semibold)}.profile-menu-divider{background:var(--color-border-primary);height:1px;margin:var(--space-1) 0}.profile-menu-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:background var(--motion-fast), color var(--motion-fast);text-align:left;background:0 0;border:none;display:flex}.profile-menu-item:hover{background:var(--color-bg-tertiary);color:var(--color-accent)}.profile-menu-danger{color:var(--color-error)}.profile-menu-danger:hover{background:color-mix(in srgb, var(--color-error) 10%, transparent)}button.sidebar-toggle,.sidebar-backdrop{display:none}@media (width<=768px){button.sidebar-toggle{display:inline-flex}.layout-sidebar{z-index:var(--z-modal);width:260px;transition:transform var(--motion-base) ease;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar-open .layout-sidebar{transform:translate(0)}.sidebar-backdrop{z-index:calc(var(--z-modal) - 1);animation:fade-in var(--motion-fast) ease both;background:#0006;display:block;position:fixed;inset:0}.layout-header{padding:var(--space-2) var(--space-3);flex-wrap:nowrap}.layout-actions{flex-wrap:nowrap}.summary-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=769px) and (width<=960px){.layout-sidebar{width:200px;padding:var(--space-3)}.sidebar-brand{margin-block-end:var(--space-4)}}.inline-select{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);display:inline-flex}.inline-select select,.ui-field select,.task-filter-actions select{border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary);min-height:var(--touch-target-min);padding:var(--space-2) var(--space-3);transition:border-color var(--motion-fast), box-shadow var(--motion-fast)}.inline-select select:focus,.ui-field select:focus,.task-filter-actions select:focus{border-color:var(--color-accent);box-shadow:var(--shadow-focus);outline:none}.layout-container{max-width:var(--container-max);width:100%;padding:var(--space-6);box-sizing:border-box;margin-inline:auto}.layout-container--full{box-sizing:border-box;width:100%;max-width:none}.auth-page{min-height:100vh;padding:var(--space-4);background:var(--color-bg-primary);place-items:center;display:grid}.auth-card{width:min(460px,100%);box-shadow:var(--shadow-lg)}.auth-card.auth-card-compact{padding:var(--space-6) var(--space-6) var(--space-5)}.auth-head{align-items:center;gap:var(--space-3);margin-block-end:var(--space-2);display:flex}.auth-brand-text h1{font-size:var(--font-size-3xl);line-height:var(--line-height-tight);margin:0}.auth-brand-text p{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.auth-card h2{margin:var(--space-2) 0 var(--space-1);font-size:var(--font-size-2xl)}.auth-subtitle{margin:0 0 var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm)}.auth-subtitle strong{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.brand-icon{border-radius:var(--radius-xl);width:72px;height:72px;font-weight:var(--font-weight-bold);color:#92400e;background:linear-gradient(145deg,#fde68a,#f59e0b);place-items:center;display:grid;box-shadow:0 8px 20px #f59e0b33,0 2px 6px #f59e0b26}.brand-icon.mini{width:40px;height:40px;font-size:var(--font-size-sm);border-radius:10px}.form-grid{gap:var(--space-3);display:grid}.auth-notice{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm);line-height:var(--line-height-snug);background:#f59e0b14;border:1px solid #f59e0b40;display:flex}.auth-notice .auth-notice-icon{color:#fff;width:20px;height:20px;font-size:12px;font-weight:var(--font-weight-bold);background:#f59e0b;border-radius:50%;flex-shrink:0;place-items:center;line-height:1;display:grid}.switch-row{justify-content:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-sm);margin-block-start:var(--space-3);display:flex}.dashboard-grid{gap:var(--space-4);display:grid}.panel{border-radius:var(--radius-lg)}.panel-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-block-end:var(--space-3);display:flex}.panel-head h3,.panel-head h4{margin:0}.hint{color:var(--color-text-muted);font-size:var(--font-size-sm)}.summary-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.summary-card{gap:var(--space-1);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);padding:var(--space-4);background:var(--color-bg-secondary);box-shadow:var(--shadow-sm);transition:box-shadow var(--motion-fast), transform var(--motion-fast);display:grid}.summary-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.summary-card span{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.summary-card strong{font-size:var(--font-size-2xl);line-height:var(--line-height-tight)}.overview-top-row{gap:var(--space-3);margin-bottom:var(--space-2);grid-template-columns:1fr 1fr 1fr;display:grid}.metric-panel{border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);background:var(--color-bg-secondary);box-shadow:var(--shadow-sm);border-top:3px solid var(--metric-accent,var(--color-accent));transition:box-shadow var(--motion-fast), transform var(--motion-fast)}.metric-panel:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.metric-panel-header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.metric-panel-title{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:500}.metric-badge{background:var(--metric-accent,var(--color-accent));color:var(--color-bg-primary);letter-spacing:.02em;opacity:.85;border-radius:999px;padding:1px 8px;font-size:10px;font-weight:600}.metric-panel-hero{font-size:var(--font-size-3xl);letter-spacing:-.02em;margin-bottom:var(--space-3);line-height:1.1;display:block}.metric-panel-sub{gap:var(--space-2);padding-top:var(--space-3);grid-template-columns:1fr 1fr;margin-top:auto;display:grid}.metric-sub-chip{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:color-mix(in srgb, var(--metric-accent,var(--color-accent)) 8%, transparent);border-left:3px solid color-mix(in srgb, var(--metric-accent,var(--color-accent)) 50%, transparent);flex-direction:column;gap:4px;display:flex}.metric-sub-chip span{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.metric-sub-chip strong{font-size:var(--font-size-lg);white-space:nowrap;line-height:1}.metric-sub-divider{background:var(--color-border-primary);width:1px;height:28px}.summary-side-group{gap:var(--space-3);grid-template-rows:1fr 1fr;display:grid}.summary-side-group .summary-card{flex-direction:column;justify-content:center;display:flex}.metric-duo{justify-content:space-evenly;align-items:center;gap:var(--space-4);width:100%;display:flex}.metric-duo-item{flex-direction:column;gap:2px;display:flex}.metric-duo-item span{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.metric-duo-item strong{font-size:var(--font-size-2xl);line-height:var(--line-height-tight);white-space:nowrap}.analytics-chart-wrap{width:100%;height:300px;padding:var(--space-1) 0}.analytics-two-col{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}@media (width<=768px){.analytics-two-col{grid-template-columns:1fr}}.analytics-tab-bar{padding:var(--space-1);background:var(--color-bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--color-border-primary);gap:2px;width:fit-content;display:flex}.analytics-tab{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-sm);transition:all var(--motion-fast);background:0 0;border:none;font-family:inherit}.analytics-tab:hover{color:var(--color-text-primary)}.analytics-tab.active{background:var(--color-bg-secondary);color:var(--color-text-primary);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-sm)}.invalid-spending-list{gap:var(--space-2);display:grid}.invalid-spending-item{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);cursor:pointer;transition:all var(--motion-fast);grid-template-columns:1fr auto;display:grid;position:relative;overflow:hidden}.invalid-spending-item:before{content:"";background:var(--severity-color,var(--color-warning));border-radius:3px 0 0 3px;width:3px;position:absolute;top:0;bottom:0;left:0}.invalid-spending-item:hover{border-color:var(--severity-color,var(--color-warning));background:color-mix(in srgb, var(--severity-color,var(--color-warning)) 5%, var(--color-bg-tertiary));transform:translate(2px)}.invalid-spending-item[aria-expanded=true]{border-color:var(--severity-color,var(--color-warning));background:color-mix(in srgb, var(--severity-color,var(--color-warning)) 8%, var(--color-bg-tertiary))}.invalid-spending-info{align-items:center;gap:var(--space-3);min-width:0;display:flex}.invalid-spending-avatar{border-radius:var(--radius-full);width:36px;height:36px;font-weight:700;font-size:var(--font-size-sm);color:var(--color-bg-primary);background:var(--severity-color,var(--color-warning));flex-shrink:0;place-items:center;display:grid}.invalid-spending-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.invalid-spending-name{font-weight:600;font-size:var(--font-size-sm);line-height:var(--line-height-tight);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.invalid-spending-stats{align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-muted);display:flex}.invalid-spending-stats .stat-pill{background:color-mix(in srgb, var(--pill-color,var(--color-text-muted)) 12%, transparent);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-weight:500;display:inline-flex}.invalid-spending-stats .stat-pill strong{color:var(--pill-color,var(--color-text-primary));font-weight:700}.invalid-spending-chevron{color:var(--color-text-muted);transition:transform var(--motion-fast);font-size:var(--font-size-sm);flex-shrink:0}.invalid-spending-item[aria-expanded=true] .invalid-spending-chevron{transform:rotate(90deg)}.invalid-spending-detail{animation:slideDown var(--motion-normal) ease-out;overflow:hidden}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.invalid-spending-detail-inner{padding:var(--space-2) var(--space-4) var(--space-3);gap:var(--space-2);display:grid}.invalid-spending-task-row{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-bg-secondary);font-size:var(--font-size-sm);border:1px solid var(--color-border-primary);grid-template-columns:auto 1fr auto auto;display:grid}.invalid-spending-task-row .task-index{border-radius:var(--radius-full);background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);width:20px;height:20px;color:var(--color-text-muted);flex-shrink:0;place-items:center;font-size:10px;font-weight:700;display:grid}.invalid-spending-task-row .task-model{color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.invalid-spending-task-row .task-tokens{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.invalid-spending-task-row .task-time{color:var(--color-text-muted);font-size:var(--font-size-xs);white-space:nowrap}.invalid-spending-nav-link{align-items:center;gap:var(--space-2);margin-top:var(--space-1);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--motion-fast);justify-self:end;font-weight:500;display:inline-flex}.invalid-spending-nav-link:hover{color:var(--color-text-primary);border-color:var(--color-border-secondary);background:var(--color-bg-tertiary);gap:var(--space-3)}.stat-pill-danger{--pill-color:var(--color-error);background:color-mix(in srgb, var(--color-error) 15%, transparent);color:var(--color-error)}.stat-pill-muted{--pill-color:var(--color-text-muted);background:var(--color-bg-tertiary);color:var(--color-text-muted)}.invalid-spending-task-row.in-window{border-inline-start:3px solid var(--color-error)}.invalid-spending-task-row.in-window .task-index{background:color-mix(in srgb, var(--color-error) 15%, transparent);border-color:color-mix(in srgb, var(--color-error) 30%, transparent);color:var(--color-error)}.invalid-spending-task-row.outside-window{opacity:.55;border-style:dashed;grid-template-columns:auto 1fr auto auto auto}.task-outside-badge{background:color-mix(in srgb, var(--color-text-muted) 15%, transparent);color:var(--color-text-muted);white-space:nowrap;border-radius:999px;padding:1px 6px;font-size:10px;font-weight:500}.task-cost{color:var(--color-error);font-variant-numeric:tabular-nums;font-weight:600;font-size:var(--font-size-xs);white-space:nowrap}.cost-toggle{align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex}.cost-toggle input{opacity:0;pointer-events:none;position:absolute}.cost-toggle-track{background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);width:32px;height:18px;transition:all var(--motion-fast);border-radius:999px;position:relative}.cost-toggle-thumb{border-radius:var(--radius-full);background:var(--color-text-muted);width:12px;height:12px;transition:all var(--motion-fast);position:absolute;top:2px;left:2px}.cost-toggle input:checked~.cost-toggle-track{background:color-mix(in srgb, var(--color-error) 20%, transparent);border-color:var(--color-error)}.cost-toggle input:checked~.cost-toggle-track .cost-toggle-thumb{background:var(--color-error);left:16px}.cost-toggle-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:500}.severity-low{--severity-color:var(--color-warning)}.severity-medium{--severity-color:var(--color-error)}.severity-high{--severity-color:#dc2626}.quick-links{gap:var(--space-2);display:grid}.quick-link{min-height:var(--touch-target-min);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);padding:0 var(--space-3);color:var(--color-accent);background:var(--color-bg-secondary);box-shadow:var(--shadow-sm);transition:transform var(--motion-fast), box-shadow var(--motion-fast), border-color var(--motion-fast);align-items:center;text-decoration:none;display:inline-flex}.quick-link:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-secondary);transform:translateY(-1px)}.mono{font-family:var(--font-family-mono);font-size:var(--font-size-xs)}.inline-actions,.cell-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.filter-row{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin-block-end:var(--space-3);display:grid}.filter-row.filter-row-3{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-row.filter-row-auto{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.filter-row.filter-row-auto>.analytics-tab-bar{grid-column:1/-1}.filter-row select,.filter-row input{box-sizing:border-box;width:100%}.filter-actions{align-items:flex-end;display:flex}.filter-actions-cluster{gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end}.filter-actions-full{grid-column:1/-1}.admin-table-title{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.admin-table-subline{color:var(--color-text-secondary);font-size:var(--font-size-xs);word-break:break-word;margin-top:4px}.admin-project-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.episode-create-meta-grid{column-gap:var(--space-3);row-gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.episode-create-meta-label{min-width:0;min-height:20px;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);align-items:center;display:flex}.episode-create-meta-label-with-hint{justify-content:space-between;gap:var(--space-2)}.episode-create-meta-label-text{color:inherit}.episode-create-meta-input{inline-size:100%}.episode-create-meta-input[type=number]{appearance:textfield}.episode-create-meta-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.episode-create-meta-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.admin-project-textarea{resize:vertical;width:100%;min-height:120px}.admin-project-full{grid-column:1/-1}.table-wrap{border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:auto}table{border-collapse:collapse;background:var(--color-bg-secondary);width:100%;min-width:720px}th,td{text-align:left;padding:var(--space-3);border-block-end:1px solid var(--color-border-primary);vertical-align:top;font-size:var(--font-size-sm)}th{font-weight:var(--font-weight-semibold);background:var(--color-bg-tertiary);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}tr:hover td{background:var(--color-bg-tertiary);transition:background var(--motion-fast)}.ui-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--touch-target-min);min-width:var(--touch-target-min);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--motion-fast), color var(--motion-fast), border-color var(--motion-fast), transform var(--motion-fast), box-shadow var(--motion-fast);font-weight:var(--font-weight-semibold);border:1px solid #0000;text-decoration:none;display:inline-flex}.ui-btn:disabled{opacity:.6;cursor:not-allowed}.ui-btn-small{padding:0 var(--space-2);font-size:var(--font-size-sm)}.ui-btn-medium{padding:0 var(--space-4);font-size:var(--font-size-base)}.ui-btn-large{padding:0 var(--space-5);font-size:var(--font-size-lg)}.ui-btn-primary{background:var(--color-accent);color:var(--color-text-inverse);box-shadow:var(--shadow-sm);border-color:#0000}.ui-btn-primary:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.ui-btn-ghost{background:var(--color-bg-secondary);color:var(--color-text-primary);border-color:var(--color-border-primary)}.ui-btn-ghost:hover:not(:disabled){background:var(--color-bg-tertiary);border-color:var(--color-border-secondary)}.ui-btn-link{color:var(--color-accent-hover);text-underline-offset:3px;background:0 0;border-color:#0000;text-decoration:underline}.ui-btn-link:hover:not(:disabled){color:var(--color-accent)}.ui-btn-danger{background:var(--color-error-bg);color:var(--color-error-text);border-color:color-mix(in srgb, var(--color-error) 40%, transparent)}.ui-btn-danger:hover:not(:disabled){background:color-mix(in srgb, var(--color-error-bg) 70%, var(--color-error))}.ui-btn-spinner{border:2px solid color-mix(in srgb, var(--color-text-inverse) 25%, transparent);border-top-color:var(--color-text-inverse);width:14px;height:14px;animation:spin var(--motion-slow) linear infinite;border-radius:50%}.ui-btn-icon{justify-content:center;align-items:center;display:inline-flex}.ui-card{border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);background:var(--color-bg-secondary);box-shadow:var(--shadow-sm)}.ui-card-default{box-shadow:var(--shadow-sm)}.ui-card-outlined{box-shadow:none}.ui-card-elevated{box-shadow:var(--shadow-lg)}.ui-card-pad-none{padding:0}.ui-card-pad-small{padding:var(--space-3)}.ui-card-pad-medium{padding:var(--space-4)}.ui-card-pad-large{padding:var(--space-5)}.ui-card-hoverable{transition:transform var(--motion-fast), box-shadow var(--motion-fast)}.ui-card-hoverable:hover{box-shadow:var(--shadow-card-hover);border-color:var(--color-border-secondary);transform:translateY(-2px)}.ui-field{gap:var(--space-2);display:grid}.ui-search-select,.ui-search-select-control{position:relative}.ui-search-select-input{border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-secondary);width:100%;color:var(--color-text-primary);min-height:var(--touch-target-min);padding:var(--space-2) calc(var(--space-6) + var(--space-2)) var(--space-2) var(--space-3);transition:border-color var(--motion-fast), box-shadow var(--motion-fast)}.ui-search-select-input:focus,.ui-search-select-control.is-open .ui-search-select-input{border-color:var(--color-accent);box-shadow:var(--shadow-focus);outline:none}.ui-search-select-control.is-error .ui-search-select-input{border-color:color-mix(in srgb, var(--color-error) 70%, transparent)}.ui-search-select-control.is-disabled .ui-search-select-input{background:var(--color-bg-tertiary);color:var(--color-text-muted);cursor:not-allowed}.ui-search-select-indicator{top:50%;right:var(--space-3);color:var(--color-text-muted);pointer-events:none;transition:transform var(--motion-fast);position:absolute;transform:translateY(-50%)}.ui-search-select-control.is-open .ui-search-select-indicator{transform:translateY(-50%)rotate(180deg)}.ui-search-select-menu{z-index:10;max-height:240px;padding:var(--space-1);background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);gap:2px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.ui-search-select-option{width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-primary);text-align:left;cursor:pointer;background:0 0;border:0;gap:2px;display:grid}.ui-search-select-option:hover,.ui-search-select-option.is-active,.ui-search-select-option.is-selected{background:var(--color-bg-tertiary)}.ui-search-select-option-label{font-weight:var(--font-weight-medium)}.ui-search-select-option-description,.ui-search-select-empty{color:var(--color-text-muted);font-size:var(--font-size-xs)}.ui-search-select-empty{padding:var(--space-2) var(--space-3)}.ui-field-label{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.ui-inline-check{place-self:end start;align-items:center;gap:var(--space-2);min-height:var(--touch-target-min);padding:0 var(--space-1);color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--motion-fast);display:inline-flex}.ui-inline-check:hover,.ui-inline-check:focus-within{color:var(--color-text-primary)}.ui-inline-check.is-active{color:var(--color-accent)}.ui-inline-check input{margin:0}.ui-inline-check-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap}.ui-input,.ui-field textarea{border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-secondary);width:100%;color:var(--color-text-primary);min-height:var(--touch-target-min);padding:var(--space-2) var(--space-3);transition:border-color var(--motion-fast), box-shadow var(--motion-fast)}.ui-input:focus,.ui-field textarea:focus{border-color:var(--color-accent);box-shadow:var(--shadow-focus);outline:none}.ui-field textarea{resize:vertical;min-height:124px}.ui-input.is-error,.ui-field textarea.is-error{border-color:color-mix(in srgb, var(--color-error) 70%, transparent)}.ui-field-hint{color:var(--color-text-muted);font-size:var(--font-size-xs)}.ui-field>.ui-field-hint{align-items:center;gap:6px;display:inline-flex}.ui-field>.ui-field-hint:before{content:"i";background:var(--color-text-muted);width:14px;height:14px;color:var(--color-bg-primary);font-family:var(--font-family-sans,sans-serif);font-size:10px;font-weight:var(--font-weight-bold);border-radius:50%;flex-shrink:0;place-items:center;font-style:normal;line-height:1;display:inline-grid}.ui-field-error{color:var(--color-error-text);font-size:var(--font-size-xs)}.ui-field>.ui-field-error{align-items:center;gap:6px;display:inline-flex}.ui-field>.ui-field-error:before{content:"!";background:var(--color-error-text);width:14px;height:14px;color:var(--color-bg-primary);font-family:var(--font-family-sans,sans-serif);font-size:10px;font-weight:var(--font-weight-bold);border-radius:50%;flex-shrink:0;place-items:center;font-style:normal;line-height:1;display:inline-grid}.field-hint-trigger{block-size:18px;inline-size:18px;color:var(--color-text-muted);cursor:help;transition:color var(--motion-fast), background var(--motion-fast);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.field-hint-trigger:hover,.field-hint-trigger:focus-visible{background:color-mix(in srgb, var(--color-accent) 10%, transparent);color:var(--color-accent);outline:none}.field-hint-tooltip{inset-inline-end:0;z-index:10;inline-size:max-content;max-inline-size:240px;padding:var(--space-2) var(--space-3);border:1px solid color-mix(in srgb, var(--color-accent) 18%, var(--color-border-primary));border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-bg-secondary) 94%, white);box-shadow:var(--shadow-md);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);text-align:left;opacity:0;pointer-events:none;transition:opacity var(--motion-fast), transform var(--motion-fast);line-height:1.5;position:absolute;top:calc(100% + 8px);transform:translateY(-4px)}.field-hint-trigger:hover .field-hint-tooltip,.field-hint-trigger:focus-visible .field-hint-tooltip{opacity:1;transform:translateY(0)}.ui-modal-overlay,.ui-drawer-overlay{z-index:1000;padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ui-drawer-overlay{justify-content:flex-end}.ui-modal-backdrop,.ui-drawer-backdrop{background:var(--color-bg-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);position:absolute;inset:0}.ui-modal{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);flex-direction:column;max-width:90vw;max-height:90vh;display:flex;position:relative;overflow:hidden}.ui-modal.ui-modal-overflow-visible{overflow:visible}.ui-drawer{background:var(--color-bg-secondary);border-inline-start:1px solid var(--color-border-primary);box-shadow:var(--shadow-xl);flex-direction:column;max-width:90vw;height:100%;animation:.3s cubic-bezier(.16,1,.3,1) slideInRight;display:flex;position:relative}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.ui-modal-small{width:min(420px,100%)}.ui-modal-medium{width:500px}.ui-modal-large{width:800px}.ui-modal-xlarge{width:min(1180px,96vw)}.ui-drawer-medium{width:450px}.ui-drawer-large{width:700px}.ui-drawer-full{width:100vw}.ui-modal-head,.ui-drawer-head{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-primary);justify-content:space-between;align-items:center;gap:var(--space-3);background:color-mix(in srgb, var(--color-bg-tertiary) 45%, transparent);display:flex}.ui-modal-title,.ui-drawer-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.ui-modal-close,.ui-drawer-close{color:var(--color-text-secondary);font-size:var(--font-size-xl);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);background:0 0;border:0;align-items:center;display:flex}.ui-modal-close:hover,.ui-drawer-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.ui-modal-close-btn{width:32px;min-width:32px;height:32px;min-height:32px;font-size:var(--font-size-lg);border-color:color-mix(in srgb, var(--color-border-secondary) 70%, transparent);border-radius:999px;padding:0;line-height:1}.ui-modal-body,.ui-drawer-body{padding:var(--space-4);overflow-y:auto}.ui-modal-body.ui-modal-body-overflow-visible{position:relative;overflow:visible}.ui-modal-member-form{min-height:min(360px,80vh)}.ui-modal-body.ui-modal-body-spacious{flex:auto;min-height:160px}.ui-confirm-message{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-3);white-space:pre-wrap;line-height:1.65}.ui-modal-foot,.ui-drawer-foot{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border-primary);background:color-mix(in srgb, var(--color-bg-tertiary) 35%, transparent);justify-content:flex-end;align-items:center;gap:var(--space-2);display:flex}.ui-toast-stack{z-index:9999;gap:var(--space-2);pointer-events:none;display:grid;position:fixed;inset-block-end:var(--space-4);inset-inline-end:var(--space-4)}.ui-toast-stack>*{pointer-events:auto}.ui-toast{justify-content:space-between;align-items:center;gap:var(--space-2);min-width:min(420px, calc(100vw - var(--space-8)));max-width:min(520px, calc(100vw - var(--space-8)));border-radius:var(--radius-lg);border:1px solid var(--color-border-primary);background:var(--color-bg-secondary);color:var(--color-text-primary);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-overlay);display:flex}.ui-toast-success{border-color:color-mix(in srgb, var(--color-success) 45%, transparent)}.ui-toast-error{border-color:color-mix(in srgb, var(--color-error) 45%, transparent)}.ui-toast-warning{border-color:color-mix(in srgb, var(--color-warning) 45%, transparent)}.ui-toast-info{border-color:color-mix(in srgb, var(--color-info) 45%, transparent)}.ui-toast-close{min-width:auto;min-height:auto;padding:0}.ui-loading{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);display:inline-flex}.ui-loading-small{font-size:var(--font-size-xs)}.ui-loading-medium{font-size:var(--font-size-sm)}.ui-loading-large{font-size:var(--font-size-base)}.ui-spinner{border:2px solid color-mix(in srgb, var(--color-accent) 20%, transparent);border-top-color:var(--color-accent);width:16px;height:16px;animation:spin var(--motion-slow) linear infinite;border-radius:50%}.ui-skeleton-wrap{gap:var(--space-2);width:100%;display:grid}.ui-skeleton-line{border-radius:var(--radius-pill);background:var(--color-bg-tertiary);width:100%;height:12px}.ui-skeleton-line.w-80{width:80%}.ui-skeleton-line.w-60{width:60%}.ui-skeleton-cell{border-radius:var(--radius-sm);background:var(--color-bg-tertiary);min-width:48px;max-width:100%;height:14px;display:inline-block}.ui-skeleton-cell-checkbox{width:16px;min-width:16px;max-width:16px;height:16px}.ui-progress{border-radius:var(--radius-pill);background:var(--color-border-primary);width:100%;height:6px;overflow:hidden}.ui-progress span{background:var(--color-accent);width:32%;height:100%;animation:.9s ease-in-out infinite pulse;display:block}.ui-empty-state,.ui-error-state{text-align:center;justify-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);display:grid}.ui-empty-state h3,.ui-error-state h3{margin:0}.ui-empty-state p,.ui-error-state p{color:var(--color-text-secondary);margin:0}.ui-empty-icon{background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);width:56px;height:56px;font-size:var(--font-size-2xl);box-shadow:var(--shadow-sm);border-radius:50%;place-items:center;display:grid}.ui-error-hint{font-size:var(--font-size-sm)}.ui-error-details{text-align:left;border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-tertiary);max-width:100%;padding:var(--space-3);font-size:var(--font-size-xs);overflow:auto}.task-form-v2{gap:var(--space-3);display:grid}.split-view{gap:var(--space-4);grid-template-columns:1fr 1fr;align-items:start;display:grid}@media (width<=960px){.split-view{grid-template-columns:1fr}}.task-form-v2 textarea{border:1px solid var(--color-border-secondary);border-radius:var(--radius-md);background:var(--color-bg-input);width:100%;color:var(--color-text-primary);padding:var(--space-2) var(--space-3);min-height:124px}.task-form-section{gap:var(--space-2);display:grid}.section-title{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.task-form-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.task-form-grid.task-form-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.template-row,.preset-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.status-check{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);display:inline-flex}.task-filters{gap:var(--space-3);margin-block-end:var(--space-3);display:grid}.task-filter-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.task-filter-statuses{gap:var(--space-2);flex-wrap:wrap;grid-column:1/-1;display:flex}.task-filter-actions{align-items:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.task-filter-actions label{gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);display:grid}.task-list-state{border:1px dashed var(--color-border-primary);border-radius:var(--radius-md);min-height:320px}.ui-pagination{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-3) 0;grid-column:1/-1;display:flex}.ui-pagination-ellipsis{padding:0 var(--space-2);color:var(--color-text-tertiary);-webkit-user-select:none;user-select:none}.ui-pagination-jumper{align-items:center;gap:var(--space-1);margin-inline-start:var(--space-3);display:flex}.ui-pagination-jumper-input{width:52px;padding:var(--space-1) var(--space-2);border:1px solid var(--color-border-primary);border-radius:var(--radius-sm);background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:var(--font-size-sm);text-align:center;-moz-appearance:textfield}.ui-pagination-jumper-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ui-pagination-jumper-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ui-pagination-jumper-input:focus{border-color:var(--color-accent);outline:none}.ui-pagination-jumper-total{font-size:var(--font-size-sm);color:var(--color-text-tertiary);white-space:nowrap}.task-card{gap:var(--space-3);display:grid}.task-card-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.task-card-media{border-radius:var(--radius-md);background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);min-height:170px;overflow:hidden}.video-player{background:var(--color-bg-tertiary);min-height:170px;display:grid;position:relative}.video-player video,.video-placeholder{object-fit:cover;width:100%;min-height:170px}.video-placeholder,.video-fallback{place-items:center;gap:var(--space-2);color:var(--color-text-secondary);padding:var(--space-3);display:grid}.task-progress{place-items:center;width:100%;height:100%;min-height:170px;display:grid}.task-progress span{border-radius:var(--radius-pill);background:var(--color-border-primary);width:72%;height:8px;position:relative;overflow:hidden}.task-progress span:after{content:"";background:var(--color-accent);width:36%;animation:.9s ease-in-out infinite pulse;position:absolute;inset:0}.task-failed{text-align:center;min-height:170px;padding:var(--space-4);color:var(--color-error-text);place-items:center;gap:var(--space-2);display:grid}.task-failed p{font-size:var(--font-size-sm);margin:0}.task-card-meta{gap:var(--space-1);display:grid}.task-card-meta p{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.task-card-actions{justify-content:flex-end;display:flex}.task-detail{gap:var(--space-3);display:grid}.task-detail-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.task-detail-head h3{margin:0}.task-detail-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.task-detail pre{white-space:pre-wrap;font-family:var(--font-family-mono);font-size:var(--font-size-xs);line-height:var(--line-height-relaxed);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-tertiary);padding:var(--space-3);margin:0}.task-media-list{gap:var(--space-1);margin:0;padding-inline-start:var(--space-4);display:grid}.timeline{gap:var(--space-2);margin:0;padding-inline-start:var(--space-4);display:grid}.timeline li{gap:var(--space-1);color:var(--color-text-secondary);font-size:var(--font-size-sm);display:grid}.error-text{color:var(--color-error-text);font-weight:var(--font-weight-semibold)}.status-tag{justify-content:center;align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);padding:2px var(--space-3);min-height:24px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);background:var(--color-bg-tertiary);color:var(--color-text-secondary);letter-spacing:.01em;transition:background-color var(--motion-fast), color var(--motion-fast);display:inline-flex}.status-pending_submit,.status-submitted,.status-pending_review{background:var(--color-warning-bg);color:var(--color-warning-text)}.status-queued{background:var(--color-info-bg);color:var(--color-info-text)}.status-running{background:var(--color-info-bg);color:var(--color-info);animation:1.8s ease-in-out infinite status-pulse}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.65}}.status-succeeded,.status-approved{background:var(--color-success-bg);color:var(--color-success-text)}.status-failed{background:var(--color-error-bg);color:var(--color-error-text)}.status-expired{color:#92400e;background:#fef3c7}.status-cancelled{background:var(--color-bg-tertiary);color:var(--color-text-muted)}.status-rejected_locked,.status-frozen,.status-deleted{background:var(--color-error-bg);color:var(--color-error-text)}[data-theme=dark] .status-queued{color:#93c5fd;background:#1e3a5f}[data-theme=dark] .status-running{color:#60a5fa;background:#1e3a5f}[data-theme=dark] .status-expired{color:#fbbf24;background:#422006}[data-theme=dark] .status-cancelled{background:var(--color-bg-tertiary);color:var(--color-text-muted)}.role-error,.error-boundary{text-align:center;width:min(520px,100%)}@media (width<=960px){.layout-container{padding:var(--space-3)}.summary-grid,.filter-row,.filter-row.filter-row-3,.task-filter-grid,.task-list,.task-form-grid,.task-form-grid.task-form-grid-4,.task-detail-grid,.episode-create-meta-grid,.admin-project-form-grid{grid-template-columns:1fr}.table-wrap table{min-width:640px}.ui-toast-stack{inset-inline:var(--space-3);inset-block-end:var(--space-3)}.ui-toast{min-width:auto;max-width:none}.filter-actions-cluster{justify-content:flex-start}}.icon-button{min-width:var(--touch-target-min);min-height:var(--touch-target-min);padding:var(--space-2);border:1px solid var(--color-border-secondary);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:var(--font-size-lg);cursor:pointer;transition:background-color var(--motion-fast), border-color var(--motion-fast), transform var(--motion-fast);justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-primary)}.icon-button:active{transform:scale(.95)}.td{gap:var(--space-4);flex-direction:column;display:flex}.td-header{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.td-header-left{align-items:center;gap:var(--space-3);display:flex}.td-id{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);word-break:break-all;-webkit-user-select:all;user-select:all}.td-actions{align-items:center;gap:var(--space-2);display:flex}.td-action{border-radius:var(--radius-sm);border:1px solid var(--color-border-secondary);width:32px;min-width:32px;height:32px;min-height:32px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--motion-fast);background:0 0;justify-content:center;align-items:center;display:inline-flex}.td-action:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary);border-color:var(--color-text-muted)}.td-player{border-radius:var(--radius-lg);background:var(--color-media-bg,#000);justify-content:center;align-items:center;max-height:420px;display:flex;overflow:hidden}.td-player .video-player{background:var(--color-media-bg,#000);justify-content:center;align-items:center;width:100%;height:100%;min-height:auto;max-height:420px;display:flex}.td-player .video-player video{object-fit:contain;max-width:100%;height:100%;min-height:auto;max-height:420px}.td-player .video-placeholder{min-height:200px}.td-grid{gap:var(--space-4);grid-template-columns:1fr 280px;align-items:start;min-width:0;display:grid}@media (width<=720px){.td-grid{grid-template-columns:1fr}}.td-section{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.td-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0}.td-prompt-box{background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);overflow:hidden}.td-prompt-header{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border-primary);background:var(--color-bg-secondary);display:flex}.td-prompt-label{margin:0}.td-prompt-copy{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-accent);border:1px solid var(--color-border-secondary);border-radius:var(--radius-md);cursor:pointer;transition:background var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast);background:0 0;display:inline-flex}.td-prompt-copy:hover{background:var(--color-bg-tertiary);border-color:var(--color-accent)}.td-prompt-copy:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.td-prompt-body{padding:var(--space-3);min-width:0;max-height:280px;overflow:hidden auto}.td-prompt-body .td-prompt{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--color-text-primary);white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;max-width:100%;margin:0}.td-revised-prompt-box{border-left:3px solid var(--color-accent);opacity:.85}.td-revised-prompt-box .td-prompt-body{min-width:0}.td-revised-prompt{word-break:break-word;overflow-wrap:break-word;max-width:100%;font-style:italic}.td-media-links{gap:var(--space-2);flex-wrap:wrap;display:flex}.td-media-chip{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3) var(--space-1) var(--space-1);border-radius:var(--radius-pill);border:1px solid var(--color-border-secondary);background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:var(--font-size-xs);appearance:none;font-weight:500;font:inherit;transition:all var(--motion-fast);cursor:pointer;text-decoration:none;display:inline-flex}.td-media-chip:hover{border-color:var(--color-accent);background:var(--color-bg-tertiary)}.td-media-chip-thumb{background:var(--color-bg-tertiary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;display:flex;overflow:hidden}.td-media-chip-thumb img{object-fit:cover;width:100%;height:100%}.td-media-chip-icon{font-size:13px;line-height:1}.td-media-chip-icon-video{color:#8b5cf6}.td-media-chip-icon-audio{color:#f59e0b}.td-media-chip-image{border-color:#3b82f640}.td-media-chip-image:hover{border-color:#3b82f6}.td-media-chip-video{border-color:#8b5cf640}.td-media-chip-video:hover{border-color:#8b5cf6}.td-media-chip-audio{border-color:#f59e0b40}.td-media-chip-audio:hover{border-color:#f59e0b}.td-media-chip-label{white-space:nowrap}.td-timeline{gap:var(--space-2);border-inline-start:2px solid var(--color-border-primary);flex-direction:column;padding-inline-start:var(--space-3);display:flex}.td-event{flex-direction:column;gap:2px;display:flex;position:relative}.td-event:before{content:"";left:calc(-1 * var(--space-3) - 5px);background:var(--color-border-secondary);border:2px solid var(--color-bg-secondary);border-radius:50%;width:8px;height:8px;position:absolute;top:4px}.td-event-time{font-size:var(--font-size-xs);color:var(--color-text-muted)}.td-event-flow{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.td-event-reason{font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic}.td-params{background:var(--color-bg-tertiary);border-radius:var(--radius-lg);padding:var(--space-4)}.td-kv-list{gap:var(--space-2);flex-direction:column;display:flex}.td-kv{justify-content:space-between;align-items:baseline;gap:var(--space-2);font-size:var(--font-size-sm);min-width:0;display:flex}.td-kv>span:first-child{color:var(--color-text-muted)}.td-kv strong,.td-kv>span:last-child{color:var(--color-text-primary);text-align:right;word-break:break-word;overflow-wrap:break-word;min-width:0}.td-creator{align-items:center;gap:var(--space-2);display:inline-flex}.td-creator-icon{opacity:.85;font-size:1em;line-height:1}.td-kv-sep{background:var(--color-border-primary);height:1px;margin:var(--space-1) 0}.td-error{gap:var(--space-1);padding:var(--space-2);border-radius:var(--radius-sm);background:var(--color-error-bg);color:var(--color-error-text);font-size:var(--font-size-sm);margin-top:var(--space-1);flex-direction:column;min-width:0;display:flex}.td-error strong,.td-error span{word-break:break-word;overflow-wrap:break-word}.td-upstream-request{margin-top:var(--space-2);position:relative}.td-upstream-copy{margin-bottom:var(--space-2)}.td-upstream-pre{padding:var(--space-3);font-family:var(--font-family-mono);font-size:var(--font-size-xs);background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-all;max-height:320px;margin:0;line-height:1.5;overflow:auto}.dash-page{padding:var(--space-4);gap:var(--space-3);min-height:calc(100vh - var(--header-h));flex-direction:column;display:flex}.dash-topbar{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.dash-stats{align-items:center;gap:var(--space-3);display:flex}.dash-stat{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary);display:inline-flex}.dash-stat strong{font-size:var(--font-size-xl);color:var(--color-text-primary);line-height:1}.dash-stat-label{white-space:nowrap}.dash-stat-sep{background:var(--color-border-primary);width:1px;height:20px}.dash-stat-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dash-stat-dot-warn{background:var(--color-warning)}.dash-stat-dot-ok{background:var(--color-success)}.dash-stat-sk{border-radius:var(--radius-sm);background:var(--color-bg-tertiary);width:28px;height:22px;animation:.9s ease-in-out infinite pulse;display:inline-block}.overview-page{width:100%;max-width:none;padding:var(--space-6) var(--space-8);gap:var(--space-4);box-sizing:border-box;flex-direction:column;display:flex}.overview-header{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.overview-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);letter-spacing:-.02em;margin:0}.overview-metrics{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.overview-main{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(360px,1fr);align-items:start;display:grid}.overview-left{gap:var(--space-3);display:grid}.overview-right{display:grid}.ov-card{gap:var(--space-1);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-bg-primary);transition:background var(--motion-fast);border:1px solid #0000;flex-direction:column;display:flex}.ov-card:hover{background:var(--color-bg-tertiary)}.ov-card-highlight{border-left:2px solid var(--color-accent)}.ov-card-label{font-size:var(--font-size-xs);color:var(--color-text-muted);letter-spacing:.02em}.ov-card-number{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);font-variant-numeric:tabular-nums;line-height:1}.ov-card-badge{align-items:center;gap:var(--space-2);margin-top:var(--space-1);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);width:fit-content;padding:2px var(--space-3);border-radius:var(--radius-pill);display:inline-flex}.ov-card-meta{color:var(--color-text-muted);font-size:var(--font-size-sm)}.ov-card-meta strong{color:var(--color-text-primary);font-variant-numeric:tabular-nums}.ov-card-badge:before{content:"";border-radius:50%;flex-shrink:0;width:6px;height:6px}.ov-badge-active{background:var(--color-warning-bg);color:var(--color-warning-text)}.ov-badge-active:before{background:var(--color-warning);animation:1.5s ease-in-out infinite pulse-dot}.ov-badge-idle{background:var(--color-bg-tertiary);color:var(--color-text-muted)}.ov-badge-idle:before{background:var(--color-text-muted)}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.overview-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ov-section{gap:var(--space-3);padding:var(--space-5);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);background:var(--color-bg-secondary);flex-direction:column;display:flex}.ov-section-compact{gap:var(--space-2)}.ov-section-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ov-section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0}.ov-bar{border-radius:var(--radius-pill);gap:2px;height:6px;display:flex;overflow:hidden}.ov-bar-seg{border-radius:var(--radius-pill);min-width:4px;transition:flex var(--motion-base)}.ov-status-list{flex-direction:column;gap:2px;display:flex}.ov-status-row{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);padding:4px 0;display:flex}.ov-status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.ov-status-name{color:var(--color-text-secondary);flex:1}.ov-status-count{font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;text-align:right;min-width:28px}.ov-status-pct{color:var(--color-text-muted);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;text-align:right;min-width:32px}.ov-token-grid{gap:var(--space-4) var(--space-3);grid-template-columns:1fr 1fr;display:grid}.ov-progress-wrap{gap:var(--space-3);margin-top:var(--space-2);display:grid}.ov-progress-meta{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--space-1);justify-content:space-between;align-items:center;display:flex}.ov-progress-meta strong{color:var(--color-text-primary);font-variant-numeric:tabular-nums}.ov-progress{border-radius:var(--radius-pill);background:var(--color-bg-tertiary);width:100%;height:4px;overflow:hidden}.ov-progress span{background:var(--color-warning);border-radius:inherit;height:100%;display:block}.ov-progress-secondary span{background:var(--color-info)}.ov-kpi-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ov-kpi{gap:var(--space-1);padding:var(--space-3);border-radius:var(--radius-md);background:0 0;display:grid}.ov-kpi-label{color:var(--color-text-muted);font-size:var(--font-size-xs)}.ov-kpi-value{color:var(--color-text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.ov-help-text{color:var(--color-text-muted);font-size:var(--font-size-xs);margin:0}.ov-kpi-highlight .ov-kpi-value{color:var(--color-text-primary)}.ov-kpi-warn{cursor:pointer;border:1px solid color-mix(in srgb, var(--color-warning) 40%, transparent);background:color-mix(in srgb, var(--color-warning) 6%, transparent);transition:border-color var(--motion-fast), box-shadow var(--motion-fast);animation:2.2s ease-in-out infinite ov-kpi-warn-pulse}.ov-kpi-warn:hover{border-color:var(--color-warning);box-shadow:0 0 0 2px color-mix(in srgb, var(--color-warning) 18%, transparent)}.ov-kpi-warn .ov-kpi-value{color:var(--color-warning)}@keyframes ov-kpi-warn-pulse{0%,to{opacity:1}50%{opacity:.7}}.ov-kpi-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-1)}.ov-status-inline{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border-primary);flex-direction:column;display:flex}.ov-recent-grid{gap:var(--space-2);grid-template-columns:1fr;width:100%;display:grid}.ov-recent-panel{top:var(--space-4);position:sticky}.ov-token-item{flex-direction:column;gap:2px;display:flex}.ov-token-label{font-size:var(--font-size-xs);color:var(--color-text-muted)}.ov-token-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;color:var(--color-accent);line-height:1}@media (width<=640px){.overview-page{padding:var(--space-4)}.overview-main,.overview-metrics,.overview-grid{grid-template-columns:1fr}.overview-right{order:-1}.ov-kpi-grid,.overview-top-row{grid-template-columns:1fr}.summary-side-group{grid-column:1/-1;grid-template-rows:none;grid-template-columns:1fr 1fr}}@media (width<=1080px){.overview-page{padding:var(--space-5)}.overview-main,.overview-grid{grid-template-columns:1fr}.ov-recent-panel{position:static}}.dash-toolbar{gap:var(--space-2);background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);padding:var(--space-3);flex-direction:column;display:flex}.dash-toolbar-row{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.dash-chips{gap:var(--space-1);flex-wrap:wrap;display:flex}.dash-chip{border-radius:var(--radius-pill);border:1px solid var(--color-border-secondary);color:var(--color-text-secondary);font-size:var(--font-size-xs);cursor:pointer;white-space:nowrap;min-width:32px;min-height:32px;transition:all var(--motion-fast);background:0 0;align-items:center;gap:4px;padding:4px 12px;display:inline-flex}.dash-chip:hover{border-color:var(--color-text-muted);color:var(--color-text-primary);background:var(--color-bg-tertiary)}.dash-chip-active{background:var(--color-bg-tertiary);border-color:var(--color-accent);color:var(--color-accent)}.dash-chip-active:hover{background:var(--color-border-primary)}.dash-chip-warn.dash-chip-active{border-color:var(--color-warning);color:var(--color-warning-text);background:var(--color-warning-bg)}.dash-chip-warn.dash-chip-active:hover{background:color-mix(in srgb, var(--color-warning) 18%, transparent)}.dash-chip-select{cursor:pointer;position:relative}.dash-chip-select select{appearance:none;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;min-width:auto;min-height:auto;padding-inline-end:2px}.dash-chip-checkbox{gap:var(--space-2);cursor:pointer}.dash-chip-checkbox input{width:14px;height:14px;accent-color:var(--color-accent);cursor:pointer;margin:0}.dash-toolbar-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.dash-search{align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--color-border-secondary);background:var(--color-bg-input);color:var(--color-text-muted);min-height:32px;transition:border-color var(--motion-fast);padding:4px 12px;display:inline-flex}.dash-search:focus-within{border-color:var(--color-accent)}.dash-search input{color:var(--color-text-primary);font-size:var(--font-size-xs);background:0 0;border:0;outline:none;width:120px;min-width:auto;min-height:auto;padding:0}.dash-search input::placeholder{color:var(--color-text-muted)}.dash-advanced{gap:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--color-border-primary);flex-wrap:wrap;display:flex}.dash-advanced-field{gap:var(--space-1);flex-direction:column;flex:1;min-width:200px;display:flex}.dash-advanced-field label{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-semibold)}.dash-advanced-field input{border:1px solid var(--color-border-secondary);border-radius:var(--radius-sm);background:var(--color-bg-input);color:var(--color-text-primary);padding:var(--space-1) var(--space-2);font-size:var(--font-size-sm);min-width:32px;min-height:32px}.dash-content{flex:1}.tcard{border:1px solid var(--color-border-secondary);border-radius:var(--radius-lg);background:var(--color-bg-secondary);box-shadow:var(--shadow-card);cursor:pointer;transition:transform var(--motion-fast), box-shadow var(--motion-fast), border-color var(--motion-fast);position:relative;overflow:visible}.tcard.is-prompt-open{z-index:20}.tcard:hover{box-shadow:var(--shadow-card-hover);border-color:color-mix(in srgb, var(--color-accent) 40%, var(--color-border-secondary));transform:translateY(-3px)}.tcard-media{border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-media-bg,#000);justify-content:center;align-items:center;height:200px;display:flex;position:relative;overflow:hidden}.tcard-poster{object-fit:cover;width:100%;height:100%;display:block}.tcard-empty-preview{color:var(--color-text-muted);font-size:var(--font-size-sm)}.tcard-media .video-player{background:var(--color-media-bg,#000);justify-content:center;align-items:center;width:100%;height:100%;min-height:auto;display:flex}.tcard-media .video-player video{object-fit:contain;max-width:100%;height:100%;min-height:auto}.tcard-media-fab-offset{top:52px}.tcard-star-fab{box-sizing:border-box;aspect-ratio:1;color:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;width:34px;min-width:34px;height:34px;min-height:34px;transition:transform var(--motion-fast), background var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast);z-index:3;background:#0f0f0f80;border:1px solid #ffffff47;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:10px;right:10px;box-shadow:0 10px 22px #00000042}.tcard-star-fab:hover{background:#6b480db2;border-color:#fcd266;transform:scale(1.06)}.tcard-star-fab:focus-visible{outline-offset:2px;outline:2px solid #fff}.tcard-star-fab.is-active{color:#fbbf24;background:#5d3f0eb5;border-color:#fccd54}.tcard-star-fab.is-idle{opacity:0;pointer-events:none;transform:translateY(-6px)}.tcard-has-star-action:hover .tcard-star-fab.is-idle,.tcard-has-star-action:focus-within .tcard-star-fab.is-idle,.tcard-star-fab.is-idle:focus-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.tcard-star-fab:disabled{cursor:wait;opacity:.72}.tcard-star-fab:after{content:attr(data-label);border-radius:var(--radius-sm);color:#fff;white-space:nowrap;opacity:0;transition:opacity var(--motion-fast), transform var(--motion-fast);pointer-events:none;background:#0f0f0fd1;padding:4px 8px;font-size:11px;font-weight:600;line-height:1;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-4px)}.tcard-star-fab:hover:after,.tcard-star-fab:focus-visible:after{opacity:1;transform:translateY(0)}.tcard-remix-fab{width:34px;min-width:34px;height:34px;min-height:34px;color:var(--color-text-inverse);cursor:pointer;-webkit-backdrop-filter:blur(6px);transition:transform var(--motion-fast), background var(--motion-fast), border-color var(--motion-fast);z-index:3;background:#0f0f0f94;border:1px solid #ffffff73;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:10px;right:10px}.tcard-remix-fab:hover{background:color-mix(in srgb, var(--color-accent) 45%, #0f0f0f94);border-color:color-mix(in srgb, var(--color-accent) 75%, #fff);transform:scale(1.06)}.tcard-remix-fab:focus-visible{outline-offset:2px;outline:2px solid #fff}.tcard-remix-fab:after{content:attr(data-label);border-radius:var(--radius-sm);color:var(--color-text-inverse);font-size:var(--font-size-xs);white-space:nowrap;opacity:0;transition:opacity var(--motion-fast), transform var(--motion-fast);pointer-events:none;background:#0c0c0cd1;border:1px solid #ffffff2e;padding:4px 8px;line-height:1.2;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-3px)}.tcard-remix-fab:hover:after,.tcard-remix-fab:focus-visible:after{opacity:1;transform:translateY(0)}.tcard-cancel-fab{width:34px;min-width:34px;height:34px;min-height:34px;color:var(--color-text-inverse);cursor:pointer;-webkit-backdrop-filter:blur(6px);transition:transform var(--motion-fast), background var(--motion-fast), border-color var(--motion-fast);z-index:3;background:#0f0f0f94;border:1px solid #ffffff73;border-radius:999px;justify-content:center;align-items:center;font-size:16px;display:inline-flex;position:absolute;top:10px;right:10px}.tcard-cancel-fab:hover{background:color-mix(in srgb, var(--color-danger,#dc2626) 45%, #0f0f0f94);border-color:color-mix(in srgb, var(--color-danger,#dc2626) 75%, #fff);transform:scale(1.06)}.tcard-cancel-fab:focus-visible{outline-offset:2px;outline:2px solid #fff}.tcard-cancel-fab:after{content:attr(data-label);border-radius:var(--radius-sm);color:var(--color-text-inverse);font-size:var(--font-size-xs);white-space:nowrap;opacity:0;transition:opacity var(--motion-fast), transform var(--motion-fast);pointer-events:none;background:#0c0c0cd1;border:1px solid #ffffff2e;padding:4px 8px;line-height:1.2;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-3px)}.tcard-cancel-fab:hover:after,.tcard-cancel-fab:focus-visible:after{opacity:1;transform:translateY(0)}.tcard-download-fab{width:34px;min-width:34px;height:34px;min-height:34px;color:var(--color-text-inverse);cursor:pointer;-webkit-backdrop-filter:blur(6px);transition:transform var(--motion-fast), background var(--motion-fast), border-color var(--motion-fast);z-index:3;background:#0f0f0f94;border:1px solid #ffffff73;border-radius:999px;justify-content:center;align-items:center;text-decoration:none;display:inline-flex;position:absolute;top:10px;left:10px}.tcard-download-fab:hover{background:color-mix(in srgb, var(--color-accent) 45%, #0f0f0f94);border-color:color-mix(in srgb, var(--color-accent) 75%, #fff);transform:scale(1.06)}.tcard-download-fab:focus-visible{outline-offset:2px;outline:2px solid #fff}.tcard-download-fab:after{content:attr(data-label);border-radius:var(--radius-sm);color:var(--color-text-inverse);font-size:var(--font-size-xs);white-space:nowrap;opacity:0;transition:opacity var(--motion-fast), transform var(--motion-fast);pointer-events:none;background:#0c0c0cd1;border:1px solid #ffffff2e;padding:4px 8px;line-height:1.2;position:absolute;top:calc(100% + 8px);left:0;transform:translateY(-3px)}.tcard-download-fab:hover:after,.tcard-download-fab:focus-visible:after{opacity:1;transform:translateY(0)}.tcard-erase-fab{width:34px;min-width:34px;height:34px;min-height:34px;color:var(--color-text-inverse);cursor:pointer;-webkit-backdrop-filter:blur(6px);transition:transform var(--motion-fast), background var(--motion-fast), border-color var(--motion-fast);z-index:3;background:#0f0f0f94;border:1px solid #ffffff73;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:54px;left:10px}.tcard-erase-fab:hover{background:linear-gradient(135deg,#6366f1c7,#8b5cf6c7);border-color:#ffffffd9;transform:scale(1.06)}.tcard-erase-fab:focus-visible{outline-offset:2px;outline:2px solid #fff}.tcard-erase-fab:after{content:attr(data-label);border-radius:var(--radius-sm);color:var(--color-text-inverse);font-size:var(--font-size-xs);white-space:nowrap;opacity:0;transition:opacity var(--motion-fast), transform var(--motion-fast);pointer-events:none;background:#0c0c0cd1;border:1px solid #ffffff2e;padding:4px 8px;line-height:1.2;position:absolute;top:calc(100% + 8px);left:0;transform:translateY(-3px)}.tcard-erase-fab:hover:after,.tcard-erase-fab:focus-visible:after{opacity:1;transform:translateY(0)}.tcard-kind-chip{font-size:var(--font-size-xs);border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;line-height:1.4;display:inline-flex}.tcard-kind-chip-erase{color:#4338ca;background:#6366f11a;border-color:#6366f12e}.tcard-kind-chip-icon{font-size:11px;line-height:1}.tcard-erase-source-link{font-size:var(--font-size-xs);color:var(--color-text-secondary,#6b7280);cursor:pointer;background:0 0;border:1px dashed #0000;border-radius:6px;align-items:center;gap:4px;width:fit-content;margin-top:4px;margin-bottom:2px;padding:2px 6px;display:inline-flex}.tcard-erase-source-link:hover{color:#4338ca;border-color:#6366f159}.vthumbnail{background:var(--color-media-bg,#000);justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.vthumbnail-img,.vthumbnail-video{object-fit:contain;width:100%;height:100%;display:block}.vthumbnail-play{color:var(--color-text-inverse);opacity:0;transition:opacity var(--motion-fast);pointer-events:none;background:#00000040;justify-content:center;align-items:center;font-size:28px;display:flex;position:absolute;inset:0}.tcard:hover .vthumbnail-play{opacity:1}.vthumbnail-empty{background:var(--color-bg-tertiary)}.vthumbnail-empty .vthumbnail-play{opacity:.5;color:var(--color-text-muted);background:0 0}.tcard-progress{background:#0000004d;place-items:center;display:grid;position:absolute;inset:0}.tcard-progress span{border-radius:var(--radius-pill);background:var(--color-border-primary);width:60%;height:6px;position:relative;overflow:hidden}.tcard-progress span:after{content:"";background:var(--color-accent);width:36%;animation:.9s ease-in-out infinite pulse;position:absolute;inset:0}.tcard-fail{text-align:center;padding:var(--space-3);color:var(--color-text-inverse);place-items:center;gap:var(--space-1);background:#00000080;display:grid;position:absolute;inset:0}.tcard-fail span{font-size:var(--font-size-2xl)}.tcard-fail p{font-size:var(--font-size-xs);line-height:var(--line-height-normal);margin:0}.tcard-pending{color:var(--color-text-inverse);font-size:var(--font-size-2xl);background:#00000059;place-items:center;display:grid;position:absolute;inset:0}.tcard-body{padding:var(--space-3);gap:var(--space-2);display:grid}.tcard-top{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.tcard-status{border-radius:var(--radius-pill);padding:2px var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);align-items:center;display:inline-flex}.tcard-unlinked{border-radius:var(--radius-pill);padding:2px var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);background:var(--color-warning-bg);color:var(--color-warning-text);cursor:default;align-items:center;animation:2s ease-in-out infinite unlinked-pulse;display:inline-flex}@keyframes unlinked-pulse{0%,to{opacity:1}50%{opacity:.45}}.tcard-unlinked-action{cursor:pointer}.tcard-unlinked-action:hover{background:color-mix(in srgb, var(--color-warning) 30%, transparent)}.link-task-modal-body{gap:var(--space-5);flex-direction:column;display:flex}.link-task-modal-actions{justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-3);display:flex}.tcard-id{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-muted)}.tcard-series-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tcard-series-chip{border:1px solid color-mix(in srgb, var(--color-accent) 22%, var(--color-border-primary));background:linear-gradient(135deg, color-mix(in srgb, var(--color-accent) 14%, var(--color-surface-elevated)), color-mix(in srgb, var(--color-accent) 6%, transparent));min-width:0;max-width:100%;color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;padding:5px 10px;font-size:12px;font-weight:600;line-height:1.2;display:inline-flex;overflow:hidden}.tcard-series-chip-episode{border-color:var(--color-border-primary);background:color-mix(in srgb, var(--color-surface-elevated) 82%, white);color:var(--color-text-secondary);font-weight:500}.tcard-prompt-wrap{position:relative}.tcard-prompt{font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.tcard-prompt-label{color:var(--color-text-muted)}.tcard-prompt-popover{z-index:40;background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);min-width:280px;max-width:400px;box-shadow:var(--shadow-lg);padding:var(--space-3);animation:fade-in var(--motion-fast) ease both;cursor:default;position:absolute;top:calc(100% + 4px);left:0;right:0}.tcard-prompt-popover-label{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}.tcard-prompt-popover-text{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-text-primary);word-break:break-word;white-space:pre-wrap;max-height:4.5em;transition:max-height var(--motion-normal) ease;overflow:hidden}.tcard-prompt-popover-text.expanded{max-height:20em;overflow-y:auto}.tcard-prompt-expand-btn{margin-top:var(--space-2);color:var(--color-accent);font-size:var(--font-size-xs);cursor:pointer;font-weight:var(--font-weight-medium);background:0 0;border:none;padding:0;display:inline-block}.tcard-prompt-expand-btn:hover{text-decoration:underline}.tcard-highlight{background:color-mix(in srgb, var(--color-accent) 12%, var(--color-bg-tertiary));color:var(--color-text-primary);border-radius:4px;padding:0 2px}.tcard-meta{gap:var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-muted);display:grid}.tcard-user{align-items:center;gap:var(--space-2);display:inline-flex}.tcard-user-icon{opacity:.85;font-size:1em;line-height:1}.tcard-time{white-space:nowrap}.tcard-refs{gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.tcard-ref-chip{border-radius:var(--radius-pill);border:1px solid var(--color-border-secondary);background:var(--color-bg-secondary);font-size:var(--font-size-xs);color:var(--color-text-primary);white-space:nowrap;align-items:center;gap:4px;padding:2px 8px 2px 2px;font-weight:500;line-height:1;display:inline-flex}.tcard-ref-chip-thumb{background:var(--color-bg-tertiary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex;overflow:hidden}.tcard-ref-chip-thumb img{object-fit:cover;width:100%;height:100%}.tcard-ref-chip-icon{font-size:var(--font-size-xs);line-height:1}.tcard-ref-chip-icon-video{color:var(--color-info)}.tcard-ref-chip-icon-audio{color:var(--color-warning)}.tcard-ref-chip-image{border-color:#3b82f640}.tcard-ref-chip-video{border-color:#8b5cf640}.tcard-ref-chip-audio{border-color:#f59e0b40}@keyframes tcard-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.tcard-skeleton{pointer-events:none}.tcard-sk-media{background:var(--color-bg-tertiary)}.tcard-sk-shimmer{background:linear-gradient(90deg, transparent 0%, color-mix(in srgb, var(--color-bg-secondary) 50%, transparent) 50%, transparent 100%);background-size:400px 100%;width:100%;height:100%;animation:1.6s ease-in-out infinite tcard-shimmer}.tcard-sk-block{border-radius:var(--radius-sm);background:var(--color-bg-tertiary);height:14px;display:inline-block}.episode-header{gap:var(--space-3);padding:var(--space-4) var(--space-5);border:1px solid color-mix(in srgb, var(--color-accent) 14%, var(--color-border-primary));border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--color-bg-secondary), color-mix(in srgb, var(--color-bg-secondary) 88%, white));display:grid}.episode-header-top{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.episode-header-title{align-items:baseline;gap:var(--space-1) var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.episode-header-kicker{color:var(--color-accent);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase}.episode-header-title h1{font-size:var(--font-size-xl);white-space:nowrap;margin:0;line-height:1.2}.episode-header-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.episode-header-bar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.episode-header-stats{align-items:center;gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.episode-stat{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.episode-stat strong{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.episode-header-bar .ui-field{width:min(280px,100%);margin:0}.episode-header-bar .ui-field-label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=640px){.episode-header-top{flex-direction:column}.episode-header-bar{flex-direction:column;align-items:stretch}.episode-header-bar .ui-field{width:100%}}.task-list{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (width<=1200px){.task-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=960px){.dash-topbar{flex-direction:column;align-items:flex-start}.task-list{grid-template-columns:1fr}.overview-top-row{grid-template-columns:1fr 1fr}.summary-side-group{grid-column:1/-1;grid-template-rows:none;grid-template-columns:1fr 1fr}}:is(.layout-container:has(.creator-page),.layout-container:has(.dash-page),.layout-container:has(.overview-page)){max-width:none;margin-inline:0;padding:0}.creator-page{min-height:calc(100vh - var(--header-h));flex-direction:column;display:flex}.creator-page-body{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:0;min-height:0;display:grid}.creator-page-body .cr-input-area>.cr-editor-wrap>.cr-editor{min-height:var(--creator-editor-min-h,200px);max-height:var(--creator-editor-max-h,60vh)}.cr-editor::-webkit-scrollbar{width:6px;height:6px}.cr-editor::-webkit-scrollbar-track{background:0 0}.cr-editor::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--color-text-muted) 40%, transparent);border-radius:3px}.cr-editor::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--color-text-muted) 65%, transparent)}@media (width<=1279px){.creator-page-body{grid-template-columns:minmax(0,1fr)}}.creator-page-body>.cr-form{width:100%}.cr-form{min-height:0;padding:var(--space-3) var(--space-4) var(--space-3);flex-direction:column;flex:1;display:flex;position:relative}.cr-dismiss{z-index:30;position:fixed;inset:0}.cr-card{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);width:100%;box-shadow:var(--shadow-lg);transition:box-shadow var(--motion-base);position:relative;overflow:visible}.cr-card:focus-within{box-shadow:var(--shadow-lg), 0 0 0 2px color-mix(in srgb, var(--color-accent) 15%, transparent)}.cr-stack-wrap{align-items:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4) 0;display:flex;position:relative}.cr-stack{flex-shrink:0;height:72px;position:relative}.cr-stack-item{border-radius:var(--radius-sm);border:2px solid var(--color-bg-secondary);background:var(--color-bg-tertiary);width:52px;height:68px;box-shadow:var(--shadow-md);transform-origin:bottom;position:absolute;bottom:0;left:0;overflow:hidden}.cr-stack-item img{object-fit:cover;width:100%;height:100%}.cr-stack-icon{width:100%;height:100%;font-size:var(--font-size-lg);color:var(--color-text-muted);place-items:center;display:grid}.cr-stack-close{width:20px;min-width:20px;height:20px;min-height:20px;color:var(--color-text-inverse);cursor:pointer;z-index:5;background:#0009;border:0;border-radius:50%;place-items:center;padding:0;font-size:12px;line-height:1;display:grid;position:absolute;top:-6px;right:-6px}.cr-stack-tag{border-radius:var(--radius-pill);background:var(--color-bg-tertiary);border:1px solid var(--color-border-secondary);color:var(--color-text-secondary);font-size:var(--font-size-xs);white-space:nowrap;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.cr-stack-tag button{color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;min-width:16px;min-height:16px;padding:0;font-size:12px;display:inline-flex}.cr-stack-tag button:hover{color:var(--color-error)}.cr-input-area{padding:var(--space-3) var(--space-4)}.cr-type-buttons{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.cr-type-btn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid color-mix(in srgb, var(--color-accent) 35%, var(--color-border-primary));border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-secondary);cursor:pointer;transition:all var(--motion-fast);text-align:left;flex:170px;min-width:0;min-height:0;display:flex}.cr-type-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent);background:var(--color-bg-tertiary);border-style:solid}.cr-type-btn:disabled,.cr-type-btn-full{opacity:.45;cursor:not-allowed;border-style:solid}.cr-type-btn-icon{border-radius:var(--radius-sm);background:var(--color-bg-tertiary);width:28px;height:28px;color:var(--color-accent);flex-shrink:0;place-items:center;display:grid}.cr-type-btn:hover:not(:disabled) .cr-type-btn-icon{background:var(--color-border-primary);color:var(--color-accent)}.cr-type-btn-body{flex-direction:column;gap:1px;min-width:0;display:flex}.cr-type-btn-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);align-items:center;gap:var(--space-1);min-width:0;display:flex}.cr-type-btn-count{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-muted);background:var(--color-bg-tertiary);padding:0 var(--space-1);border-radius:var(--radius-pill);flex-shrink:0;line-height:16px}.cr-type-btn-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;line-height:1.3;overflow:hidden}.cr-inline-warn{font-size:var(--font-size-xs);color:var(--color-warning-text,#c77c00);background:color-mix(in srgb, var(--color-warning-text,#c77c00) 8%, transparent);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);margin-bottom:var(--space-2)}.cr-fan-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:.03em;color:var(--color-text-inverse);z-index:2;pointer-events:none;border-radius:4px;padding:2px 4px;line-height:1;position:absolute;top:3px;left:3px}.cr-fan-badge-image{background:#3b82f6}.cr-fan-badge-scene-frame{background:#0f766e}.cr-fan-badge-video{background:#8b5cf6}.cr-fan-badge-audio{background:#f59e0b}.cr-refs-row{margin-bottom:var(--space-3)}.cr-fan{padding:var(--space-2) var(--space-1);align-items:flex-end;gap:0;min-height:80px;display:flex;position:relative}.cr-fan-card{border-radius:var(--radius-md);border:2px solid var(--color-border-primary);background:var(--color-bg-tertiary);cursor:default;width:64px;height:80px;transition:transform var(--motion-fast), box-shadow var(--motion-fast), margin var(--motion-fast);transform-origin:bottom;flex-shrink:0;margin-inline-start:-12px;position:relative;overflow:hidden}.cr-fan-card-previewable{cursor:pointer}.cr-fan-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.cr-fan-card:first-child{margin-inline-start:0}.cr-fan-card img,.cr-fan-card video{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.cr-fan-card-hover{box-shadow:var(--shadow-overlay);border-color:var(--color-accent);z-index:50;margin-inline:4px;transform:translateY(-8px)scale(1.12)rotate(0)!important}.cr-fan-close{width:18px;min-width:18px;height:18px;min-height:18px;color:var(--color-text-inverse);cursor:pointer;z-index:60;box-shadow:var(--shadow-sm);transition:background var(--motion-fast);animation:fade-in var(--motion-fast) ease both;background:#0000008c;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:4px;right:4px}.cr-fan-close:hover{background:var(--color-error-text,#dc2626)}.cr-fan-role{z-index:5;color:var(--color-text-inverse);font-size:var(--font-size-xs);cursor:pointer;white-space:nowrap;background:#000000a6;border:none;border-radius:4px;padding:1px 6px;line-height:1.6;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.cr-fan-role:hover{background:var(--color-accent)}.cr-fan-role-tag{padding:2px var(--space-1);color:var(--color-text-inverse);font-size:var(--font-size-xs);white-space:nowrap;pointer-events:none;background:#00000080;border-radius:4px;line-height:1.6;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.cr-duration-tick-auto{min-width:36px}.cr-fan-icon{width:100%;height:100%;color:var(--color-text-muted);justify-content:center;align-items:center;font-size:22px;display:flex}.cr-fan-progress{background:#0000004d;height:4px;position:absolute;bottom:0;left:0;right:0}.cr-fan-progress-bar{background:var(--color-accent);border-radius:0 2px 2px 0;height:100%;transition:width .2s}.cr-fan-add{width:56px;height:72px;border:1.5px dashed var(--color-border-secondary);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-xs);cursor:pointer;transition:all var(--motion-fast);background:0 0;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:2px;margin-inline-start:var(--space-2);display:flex}.cr-fan-add:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-weak)}.cr-editor-wrap{min-height:100px;position:relative}.cr-editor{border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);background:var(--color-bg-primary);width:100%;min-height:100px;max-height:260px;font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);color:var(--color-text-primary);padding:var(--space-3);white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;transition:border-color var(--motion-fast), box-shadow var(--motion-fast);outline:none;overflow-y:auto}.cr-editor:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent) 12%, transparent)}.cr-editor:empty:before{content:attr(data-placeholder);color:var(--color-text-muted);pointer-events:none}.cr-cap{align-items:center;gap:var(--space-1);padding:2px var(--space-2) 2px 2px;-webkit-user-drag:element;border-radius:var(--radius-pill);background:var(--color-bg-tertiary);border:1px solid var(--color-border-secondary);vertical-align:middle;cursor:grab;-webkit-user-select:none;user-select:none;transition:background var(--motion-fast), border-color var(--motion-fast), box-shadow var(--motion-fast);margin:0 2px;line-height:1;display:inline-flex;position:relative;top:-1px}.cr-cap:hover{background:var(--color-bg-tertiary);border-color:var(--color-accent)}.cr-cap:active{cursor:grabbing;box-shadow:0 2px 8px color-mix(in srgb, var(--color-accent) 25%, transparent)}.cr-cap-thumb{object-fit:cover;background:var(--color-bg-tertiary);width:20px;height:20px;font-size:var(--font-size-xs);border-radius:4px;flex-shrink:0;place-items:center;display:inline-grid;overflow:hidden}.cr-cap-thumb-audio{color:#f59e0b;background:#f59e0b26}.cr-cap-thumb-video{color:#3b82f6;background:#3b82f626}.cr-cap-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-accent);white-space:nowrap}.cr-templates{gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.cr-tpl-chip{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-border-secondary);background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;min-width:32px;min-height:32px;transition:all var(--motion-fast);align-items:center;display:inline-flex}.cr-tpl-chip:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-weak)}.cr-error{padding:var(--space-2) var(--space-4);color:var(--color-error-text);font-size:var(--font-size-sm);background:var(--color-error-bg)}.cr-toolbar{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:1px solid var(--color-border-primary);flex-wrap:wrap;display:flex}.cr-toolbar-end{align-items:center;gap:var(--space-2);margin-inline-start:auto;display:flex}.cr-chip{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-border-secondary);background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;min-width:32px;min-height:32px;transition:all var(--motion-fast);line-height:1;display:inline-flex}.cr-chip:hover{border-color:var(--color-text-muted);color:var(--color-text-primary)}.cr-chip-mode{background:var(--color-bg-tertiary);border-color:var(--color-accent);color:var(--color-accent);cursor:default}.cr-chip-on{background:var(--color-bg-tertiary);border-color:var(--color-accent);color:var(--color-accent)}.cr-chip-estimate{background:var(--color-bg-tertiary);border-color:var(--color-warning,var(--color-accent));color:var(--color-warning,var(--color-accent));cursor:help;font-variant-numeric:tabular-nums}.cr-chip-open{box-shadow:var(--shadow-sm)}.cr-chip-wrap{z-index:31;position:relative}.cr-popover{z-index:32;background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);min-width:200px;box-shadow:var(--shadow-lg);padding:var(--space-2);animation:fade-in var(--motion-fast) ease both;position:absolute;top:calc(100% + 6px);left:0}.cr-popover-up{top:auto;bottom:calc(100% + 6px)}.cr-popover-ref{min-width:320px}.cr-popover-ratio{min-width:300px;left:0;right:auto}.cr-popover-duration{min-width:280px;padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex;left:0;right:auto}.cr-duration-top{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.cr-duration-top-label{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-semibold)}.cr-duration-auto-option{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border:2px solid color-mix(in srgb, var(--color-accent) 45%, var(--color-border-primary));border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-accent) 6%, var(--color-bg-secondary));color:var(--color-text-primary);cursor:pointer;transition:background var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast)}.cr-duration-auto-option:hover{border-color:color-mix(in srgb, var(--color-accent) 65%, var(--color-border-primary));background:color-mix(in srgb, var(--color-accent) 12%, var(--color-bg-secondary));color:var(--color-accent)}.cr-duration-auto-option.active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg-primary)}.cr-duration-slider-area{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.cr-duration-header{height:1.5em;font-size:var(--font-size-xs);color:var(--color-text-muted);position:relative}.cr-duration-header>span:first-child{position:absolute;left:0}.cr-duration-header>span:last-child{position:absolute;right:0}.cr-duration-header .cr-duration-value{left:var(--duration-pct,50%);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-accent);position:absolute;transform:translate(-50%)}.cr-duration-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-accent)}.cr-duration-slider{appearance:none;border-radius:var(--radius-pill);background:var(--color-border-primary);cursor:pointer;outline:none;width:100%;height:6px}.cr-duration-slider::-webkit-slider-thumb{appearance:none;background:var(--color-accent);border:2px solid var(--color-bg-secondary);width:18px;height:18px;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--motion-fast);border-radius:50%}.cr-duration-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.cr-duration-slider::-moz-range-thumb{background:var(--color-accent);border:2px solid var(--color-bg-secondary);width:18px;height:18px;box-shadow:var(--shadow-sm);cursor:pointer;border-radius:50%}.cr-duration-slider.cr-duration-slider-auto::-webkit-slider-thumb{background:var(--color-accent,#ff7a1a)!important}.cr-duration-slider.cr-duration-slider-auto::-moz-range-thumb{background:var(--color-accent,#ff7a1a)!important}.cr-duration-ticks{justify-content:space-between;display:flex}.cr-duration-tick{border-radius:var(--radius-sm);min-width:20px;min-height:20px;color:var(--color-text-muted);font-size:var(--font-size-xs);cursor:pointer;transition:color var(--motion-fast);background:0 0;border:0;padding:0;line-height:1}.cr-duration-tick:hover{color:var(--color-text-primary)}.cr-duration-tick.active{color:var(--color-accent);font-weight:var(--font-weight-bold)}.cr-resolution-ticks{gap:var(--space-2)}.cr-resolution-tick{min-width:98px;min-height:36px;padding:var(--space-2);border:1px solid var(--color-border-primary);background:var(--color-bg-secondary);border-radius:var(--radius-md);justify-content:center;align-items:center;line-height:1.3;display:flex}.cr-resolution-tick:hover{color:var(--color-text-primary);border-color:var(--color-text-muted);background:var(--color-bg-hover)}.cr-resolution-tick.active{border-color:color-mix(in srgb, var(--color-accent) 55%, var(--color-border-primary));background:color-mix(in srgb, var(--color-accent) 10%, var(--color-bg-secondary))}.cr-popover-title{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-semibold)}.cr-popover-field{gap:var(--space-1);padding:var(--space-1) var(--space-2);display:grid}.cr-popover-field label{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-semibold)}.cr-popover-field input{border:1px solid var(--color-border-secondary);border-radius:var(--radius-sm);background:var(--color-bg-input);width:100%;color:var(--color-text-primary);padding:var(--space-1) var(--space-2);font-size:var(--font-size-sm);min-width:34px;min-height:34px}.cr-field-err{color:var(--color-error-text);font-size:var(--font-size-xs);padding:0 var(--space-2)}.cr-ratio-top{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-1);display:flex}.cr-ratio-top-label{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-semibold)}.cr-ratio-adaptive-option{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border:2px solid color-mix(in srgb, var(--color-accent) 45%, var(--color-border-primary));border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-accent) 6%, var(--color-bg-secondary));color:var(--color-text-primary);cursor:pointer;transition:background var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast)}.cr-ratio-adaptive-option:hover{border-color:color-mix(in srgb, var(--color-accent) 65%, var(--color-border-primary));background:color-mix(in srgb, var(--color-accent) 12%, var(--color-bg-secondary));color:var(--color-accent)}.cr-ratio-adaptive-option.active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg-primary)}.cr-ratio-grid{gap:var(--space-2);padding:var(--space-2);grid-template-columns:repeat(4,1fr);display:grid}.cr-ratio-item{align-items:center;gap:var(--space-1);padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-xs);min-width:36px;min-height:36px;transition:all var(--motion-fast);background:0 0;border:1px solid #0000;flex-direction:column;display:flex}.cr-ratio-item:hover{background:var(--color-bg-tertiary)}.cr-ratio-item.active{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-weak)}.cr-ratio-icon{border:1.5px solid;border-radius:4px;width:100%;max-width:28px;max-height:50px;display:block}.cr-credits{color:var(--color-text-muted);font-size:var(--font-size-sm)}.cr-submit{background:var(--color-accent);width:36px;min-width:36px;height:36px;min-height:36px;color:var(--color-text-inverse);cursor:pointer;transition:all var(--motion-fast);box-shadow:0 2px 8px color-mix(in srgb, var(--color-accent) 35%, transparent);border:0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.cr-submit:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:0 4px 14px color-mix(in srgb, var(--color-accent) 45%, transparent);transform:scale(1.06)}.cr-submit:disabled{opacity:.6;cursor:not-allowed}.cr-spinner{border:2px solid #ffffff4d;border-top-color:var(--color-text-inverse);width:16px;height:16px;animation:spin var(--motion-slow) linear infinite;border-radius:50%}.admin-tabs{gap:var(--space-1);border-bottom:1px solid var(--color-border-primary);margin-bottom:var(--space-4);display:flex}.admin-tab{appearance:none;padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;transition:color var(--motion-fast), border-color var(--motion-fast);background:0 0;border:none;border-bottom:2px solid #0000}.admin-tab:hover{color:var(--color-text-primary)}.admin-tab.is-active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.temp-scene-frame-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.temp-scene-frame-item{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-secondary);grid-template-columns:112px minmax(0,1fr);display:grid}.temp-scene-frame-preview{aspect-ratio:1;border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-tertiary);width:112px;color:var(--color-text-muted);cursor:zoom-in;padding:0;overflow:hidden}.temp-scene-frame-preview img,.temp-scene-frame-preview video{object-fit:cover;width:100%;height:100%;display:block}.temp-scene-frame-body{gap:var(--space-2);min-width:0;display:grid}.temp-scene-frame-title{justify-content:space-between;align-items:flex-start;gap:var(--space-2);min-width:0;display:flex}.temp-scene-frame-title strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.temp-scene-frame-meta{gap:var(--space-1);margin:0;display:grid}.temp-scene-frame-meta div{gap:var(--space-2);grid-template-columns:88px minmax(0,1fr);min-width:0;display:grid}.temp-scene-frame-meta dt{color:var(--color-text-muted);font-size:var(--font-size-xs)}.temp-scene-frame-meta dd{min-width:0;color:var(--color-text-secondary);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.temp-scene-frame-meta-dialog{padding:var(--space-3);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-secondary)}@media (width<=960px){.task-context-card{margin:var(--space-2) var(--space-2) var(--space-3)}.cr-form{padding:var(--space-2)}.cr-ratio-grid{grid-template-columns:repeat(3,1fr)}}.cr-upload-row{gap:var(--space-1);align-items:center;display:flex}.cr-upload-row input[type=url]{flex:1;min-width:0}.cr-upload-btn{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);border:1px solid var(--color-border-primary);border-radius:var(--radius-sm);background:var(--color-bg-tertiary);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;transition:background var(--motion-fast), border-color var(--motion-fast);flex-shrink:0}.cr-upload-btn:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-accent)}.cr-upload-btn:disabled{opacity:.6;cursor:not-allowed}.cr-popover-model{min-width:260px;left:0;right:auto}.cr-popover-mode{min-width:220px;left:0;right:auto}.cr-model-item{width:100%;padding:var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;text-align:left;transition:background var(--motion-fast);background:0 0;border:none;flex-direction:column;gap:2px;display:flex}.cr-model-item:hover{background:var(--color-bg-hover)}.cr-model-item.active{background:var(--color-bg-tertiary)}.cr-model-item strong{font-size:var(--font-size-sm)}.cr-model-default{font-size:var(--font-size-xs);color:var(--color-accent);font-weight:var(--font-weight-medium)}.cr-model-desc{font-size:var(--font-size-xs);color:var(--color-text-muted)}.cr-popover-at{min-width:220px;max-width:300px;left:0;right:auto}.cr-at-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;text-align:left;transition:background var(--motion-fast);background:0 0;border:none;display:flex}.cr-at-item:hover{background:var(--color-bg-hover)}.cr-at-thumb{border-radius:var(--radius-sm);background:var(--color-bg-tertiary);flex-shrink:0;place-items:center;width:36px;height:36px;display:grid;overflow:hidden}.cr-at-thumb img,.cr-at-thumb video{object-fit:cover;width:100%;height:100%}.cr-at-icon{font-size:var(--font-size-sm);color:var(--color-text-muted)}.cr-at-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);flex:1}.cr-at-type{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:capitalize}.cr-at-item-active{background:var(--color-bg-hover)}.cr-at-autocomplete{z-index:99999;background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);min-width:220px;max-width:300px;max-height:260px;box-shadow:var(--shadow-lg);padding:var(--space-2);animation:fade-in var(--motion-fast) ease both;position:absolute;overflow-y:auto;transform:translateY(-100%)}.audit-pagination{padding:var(--space-3) 0;margin-top:var(--space-3);border-top:1px solid var(--color-border-primary);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.audit-pagination-info{align-items:center;gap:var(--space-3);display:flex}.audit-pagination-pages{align-items:center;gap:2px;display:flex}.audit-page-btn{min-width:32px;height:32px;padding:0 var(--space-2);border:1px solid var(--color-border-secondary);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--motion-fast);justify-content:center;align-items:center;display:inline-flex}.audit-page-btn:hover:not(:disabled){background:var(--color-bg-tertiary);border-color:var(--color-accent);color:var(--color-accent)}.audit-page-btn.active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text-inverse);font-weight:var(--font-weight-bold)}.audit-page-btn:disabled{opacity:.35;cursor:not-allowed}.audit-page-ellipsis{width:28px;color:var(--color-text-muted);font-size:var(--font-size-sm);justify-content:center;align-items:center;display:inline-flex}.modal-overlay{z-index:1000;background:var(--color-bg-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{padding:var(--space-6);border-radius:var(--radius-lg);min-width:400px;max-width:560px;max-height:80vh;position:relative;overflow-y:auto}.modal-content h3{margin-bottom:var(--space-4)}.form-fields{gap:var(--space-3);flex-direction:column;display:flex}.form-field{gap:var(--space-1);flex-direction:column;display:flex}.form-field label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.form-field select,.form-field textarea,.form-field input[type=text],.form-field input[type=number]{border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary);min-height:var(--touch-target-min);padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);transition:border-color var(--motion-fast), box-shadow var(--motion-fast)}.form-field select:focus,.form-field textarea:focus,.form-field input[type=text]:focus,.form-field input[type=number]:focus{border-color:var(--color-accent);box-shadow:var(--shadow-focus);outline:none}.asset-upload-box{gap:var(--space-2);padding:var(--space-3);border:1px dashed var(--color-border-primary);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-bg-secondary) 88%, white);display:grid}.asset-upload-toolbar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.asset-upload-caption{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.5}.asset-upload-progress{gap:var(--space-1);font-size:var(--font-size-xs);color:var(--color-text-secondary);display:grid}.asset-upload-progress-track{border-radius:var(--radius-full);background:var(--color-border-primary);width:100%;height:8px;overflow:hidden}.asset-upload-progress-fill{border-radius:inherit;background:linear-gradient(90deg, var(--color-accent), var(--color-accent-hover));height:100%;transition:width var(--motion-fast)}.asset-upload-meta{gap:var(--space-1);padding:var(--space-2);border:1px solid var(--color-border-primary);border-radius:var(--radius-sm);background:var(--color-bg-primary);display:grid}.asset-upload-meta strong{font-size:var(--font-size-sm);color:var(--color-text-primary);word-break:break-word}.asset-upload-meta span{font-size:var(--font-size-xs);color:var(--color-text-secondary);word-break:break-all}.asset-upload-error{padding:var(--space-2);border:1px solid color-mix(in srgb, var(--color-error-text) 18%, transparent);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-error-bg) 48%, transparent);color:var(--color-error-text);font-size:var(--font-size-xs);line-height:1.5}.asset-upload-preview img{aspect-ratio:1;object-fit:cover;border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-primary);width:144px;max-width:100%;display:block}.form-field-row{gap:var(--space-4);flex-direction:row}.form-field-row label{align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--font-sm,.875rem);-webkit-user-select:none;user-select:none;display:flex}.library-project-pill-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.library-project-pill{padding-inline-end:6px}.library-project-pill-remove{block-size:20px;inline-size:20px;color:var(--color-text-muted);cursor:pointer;transition:background var(--motion-fast), color var(--motion-fast);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.library-project-pill-remove:hover,.library-project-pill-remove:focus-visible{background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-accent);outline:none}.modal-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);display:flex}.library-bulk-modal-body{min-height:min(760px,84vh)}.library-bulk-layout{gap:var(--space-4);grid-template-columns:minmax(280px,340px) minmax(0,1fr);min-height:100%;display:grid}.library-bulk-sidebar,.library-bulk-main{gap:var(--space-4);align-content:start;min-width:0;display:grid}.library-bulk-panel,.library-bulk-detail,.library-bulk-empty{border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-bg-secondary) 88%, white);box-shadow:var(--shadow-sm)}.library-bulk-panel{padding:var(--space-4)}.library-bulk-panel-head,.library-bulk-main-head,.library-bulk-detail-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.library-bulk-panel-head h4,.library-bulk-main-head h4,.library-bulk-detail-head h4{font-size:var(--font-size-md);color:var(--color-text-primary);margin:0}.library-bulk-panel-head p,.library-bulk-main-head p,.library-bulk-detail-head p,.library-bulk-dropzone span,.library-bulk-empty span{margin:var(--space-1) 0 0;font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.6}.library-bulk-stats{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.library-bulk-stat{padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border-primary);background:color-mix(in srgb, var(--color-bg-tertiary) 72%, white);gap:2px;display:grid}.library-bulk-stat span{font-size:var(--font-size-xs);color:var(--color-text-muted)}.library-bulk-stat strong{font-size:var(--font-size-lg);color:var(--color-text-primary)}.library-bulk-dropzone{justify-items:start;gap:var(--space-2);padding:var(--space-4);border:1px dashed color-mix(in srgb, var(--color-accent) 35%, var(--color-border-primary));border-radius:var(--radius-lg);background:radial-gradient(circle at top right, color-mix(in srgb, var(--color-accent) 12%, transparent), transparent 42%), color-mix(in srgb, var(--color-bg-tertiary) 70%, white);display:grid}.library-bulk-dropzone strong,.library-bulk-empty strong{font-size:var(--font-size-md);color:var(--color-text-primary)}.library-bulk-template-actions,.library-bulk-match-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.library-bulk-main{min-height:0}.library-bulk-main-head{margin-bottom:0}.library-bulk-queue{gap:var(--space-3);max-height:360px;padding-inline-end:2px;display:grid;overflow-y:auto}.library-bulk-row{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-bg-secondary) 90%, white);transition:border-color var(--motion-fast), box-shadow var(--motion-fast), transform var(--motion-fast);grid-template-columns:minmax(0,1fr) auto;display:grid}.library-bulk-row.is-selected{border-color:color-mix(in srgb, var(--color-accent) 55%, var(--color-border-primary));box-shadow:var(--shadow-md);transform:translateY(-1px)}.library-bulk-row-main{gap:var(--space-3);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:72px minmax(0,1fr);padding:0;display:grid}.library-bulk-row-preview{border-radius:var(--radius-md);border:1px solid var(--color-border-primary);background:var(--color-bg-tertiary);width:72px;height:72px;color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);place-items:center;display:grid;overflow:hidden}.library-bulk-row-preview img,.library-bulk-detail-preview img{object-fit:cover;width:100%;height:100%;display:block}.library-bulk-row-copy{gap:var(--space-2);align-content:start;min-width:0;display:grid}.library-bulk-row-topline{gap:2px;display:grid}.library-bulk-row-topline strong{color:var(--color-text-primary);font-size:var(--font-size-sm);word-break:break-word}.library-bulk-row-topline span,.library-bulk-row-note{font-size:var(--font-size-xs);color:var(--color-text-muted);word-break:break-word;line-height:1.5}.library-bulk-row-tags{gap:var(--space-2);flex-wrap:wrap;display:flex}.library-bulk-row-actions{align-content:start;gap:var(--space-2);display:grid}.library-bulk-detail{padding:var(--space-4)}.library-bulk-detail-grid{gap:var(--space-4);grid-template-columns:220px minmax(0,1fr);align-items:start;display:grid}.library-bulk-detail-preview{aspect-ratio:1;border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);background:var(--color-bg-tertiary);overflow:hidden}.library-bulk-detail-preview-placeholder{width:100%;height:100%;color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);place-items:center;display:grid}.library-bulk-detail-row{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.library-bulk-inspect-summary{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.library-bulk-empty{justify-items:center;gap:var(--space-2);padding:var(--space-6);text-align:center;display:grid}.library-bulk-status-pending{background:var(--color-warning-bg);color:var(--color-warning-text)}.library-bulk-status-queued{background:color-mix(in srgb, var(--color-bg-tertiary) 88%, white);color:var(--color-text-secondary)}.library-bulk-status-conflict{background:color-mix(in srgb, var(--color-warning-bg) 80%, var(--color-error-bg));color:color-mix(in srgb, var(--color-warning-text) 70%, var(--color-error-text))}.library-bulk-footer-summary{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.library-bulk-footer-meta{gap:var(--space-2);flex-direction:column;min-width:min(32rem,100%);margin-inline-end:auto;display:flex}.library-bulk-submit-feedback{gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-sm);border:1px solid #0000;flex-direction:column;line-height:1.45;display:flex}.library-bulk-submit-feedback strong{font-size:var(--font-size-sm)}.library-bulk-submit-feedback-success{background:color-mix(in srgb, var(--color-success-bg) 78%, white);color:var(--color-success-text);border-color:color-mix(in srgb, var(--color-success) 30%, transparent)}.library-bulk-submit-feedback-warning{background:color-mix(in srgb, var(--color-warning-bg) 82%, white);color:var(--color-warning-text);border-color:color-mix(in srgb, var(--color-warning-text) 24%, transparent)}.library-bulk-submit-feedback-error{background:color-mix(in srgb, var(--color-error-bg) 82%, white);color:var(--color-error-text);border-color:color-mix(in srgb, var(--color-error-text) 24%, transparent)}@media (width<=1080px){.library-bulk-layout,.library-bulk-detail-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=840px){.library-bulk-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.library-bulk-row{grid-template-columns:minmax(0,1fr)}.library-bulk-row-actions,.library-bulk-match-actions,.library-bulk-template-actions{grid-auto-flow:row}.library-bulk-footer-meta{min-width:100%}.library-bulk-detail-row{grid-template-columns:minmax(0,1fr)}}.confirm-danger-block{gap:var(--space-2);padding:var(--space-3);border:1px solid color-mix(in srgb, var(--color-error) 32%, transparent);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-error-bg) 60%, transparent);display:grid}.confirm-danger-title{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);margin:0}.confirm-danger-hint{color:var(--color-error-text);font-size:var(--font-size-sm);margin:0}.settings-section{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border-subtle)}.settings-section:first-of-type{margin-top:var(--space-2);border-top:none;padding-top:0}.settings-section-title{font-size:var(--font-size-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--space-4) 0;font-weight:600}.form-hint{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:var(--space-1);line-height:1.4}.version-info-grid{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.version-info-card{padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-border-primary);background:color-mix(in srgb, var(--color-bg-secondary) 86%, transparent)}.version-info-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.version-info-card-head h4{color:var(--color-text-primary);font-size:var(--font-size-base);margin:0}.version-info-list{gap:var(--space-3);margin:0;display:grid}.version-info-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.version-info-row dt{color:var(--color-text-muted);font-size:var(--font-size-sm)}.version-info-row dd{color:var(--color-text-primary);text-align:right;font-size:var(--font-size-sm);margin:0}.version-info-row code,.version-info-row time{font-family:var(--font-family-mono)}.version-info-error{color:var(--color-error-text);font-size:var(--font-size-sm);margin:0}@media (width>=1440px){.layout-container{max-width:var(--container-max-wide)}.layout-container--full{max-width:none}.task-list,.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ov-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-main{grid-template-columns:minmax(0,1.1fr) minmax(360px,1fr)}.task-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.task-form-grid.task-form-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.task-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.td-grid{grid-template-columns:1fr 340px}.dash-page{padding:var(--space-5) var(--space-6)}.overview-page{padding:var(--space-8) var(--space-10)}.overview-grid,.ov-recent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ov-recent-panel .tcard-media{height:180px}.td-player,.td-player .video-player,.td-player .video-player video{max-height:520px}}@media (width>=1920px){.layout-container{max-width:none;padding:var(--space-5) var(--space-8)}.task-list{grid-template-columns:repeat(5,minmax(0,1fr))}.summary-grid{gap:var(--space-4)}.overview-main{gap:var(--space-6);grid-template-columns:minmax(0,1.1fr) minmax(400px,1fr)}.overview-page{padding:var(--space-8) var(--space-12)}.dash-page{padding:var(--space-6) var(--space-8)}.td-grid{grid-template-columns:1fr 400px}.td-player,.td-player .video-player,.td-player .video-player video{max-height:600px}.ov-token-grid{grid-template-columns:repeat(4,1fr)}.dash-search input{width:200px}}.project-page{gap:var(--space-4);display:grid}.project-page--list{width:100%;min-width:0;container:project-list/inline-size}.project-page-actions{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.project-hero,.project-detail-hero{gap:var(--space-4);padding:var(--space-6);border:1px solid color-mix(in srgb, var(--color-accent) 18%, var(--color-border-primary));border-radius:var(--radius-xl);background:radial-gradient(circle at top right, #f9731629, transparent 28%), linear-gradient(135deg, var(--color-bg-secondary), color-mix(in srgb, var(--color-bg-secondary) 76%, white));box-shadow:var(--shadow-md);grid-template-columns:minmax(0,1.4fr) auto;display:grid}.project-hero-compact{grid-template-columns:1fr}.project-hero-main{gap:var(--space-2);display:grid}.project-hero-kicker,.project-context-banner-kicker,.project-inline-context-kicker{color:var(--color-accent);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}.project-hero-title{margin:0;font-size:clamp(2rem,3vw,2.75rem);line-height:1.05}.project-hero-desc{color:var(--color-text-secondary);max-width:72ch;margin:0}.project-hero-meta,.project-detail-head,.project-shot-card-actions,.project-task-actions,.project-primary-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.project-hero-actions{align-items:flex-start;gap:var(--space-2);display:flex}.project-pill,.project-card-group,.project-context-banner-id,.project-inline-context-id{border:1px solid var(--color-border-primary);background:color-mix(in srgb, var(--color-bg-secondary) 82%, white);color:var(--color-text-secondary);font-size:var(--font-size-xs);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.project-filter-card{gap:var(--space-3);display:grid}.task-context-card{margin:var(--space-3) var(--space-4) var(--space-4)}.task-context-grid{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;display:grid}.task-context-summary{margin-top:var(--space-1)}.task-context-shortcuts{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.task-context-shortcuts-label{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.task-context-shortcut-list{gap:var(--space-2);flex-wrap:wrap;flex:1;min-width:0;display:flex}.task-context-shortcut{border:1px solid color-mix(in srgb, var(--color-accent) 24%, var(--color-border-primary));border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-accent) 8%, var(--color-bg-secondary));max-width:min(100%,320px);min-height:32px;color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-align:center;overflow-wrap:anywhere;cursor:pointer;transition:background var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast), transform var(--motion-fast);justify-content:center;align-items:center;padding:6px 12px;line-height:1.2;display:inline-flex}.task-context-shortcut:hover,.task-context-shortcut:focus-visible,.task-context-shortcut.is-active{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 14%, var(--color-bg-secondary));color:var(--color-accent-dark)}.task-context-shortcut:active{transform:translateY(1px)}.task-context-error{display:block}.project-filter-grid{gap:var(--space-3);grid-template-columns:minmax(0,2fr) repeat(2,minmax(180px,1fr)) auto;align-items:end;display:grid}.project-filter-grid-tight{grid-template-columns:minmax(0,2fr) minmax(180px,1fr) auto}.project-filter-actions{justify-content:flex-end;display:flex}.project-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));display:grid}@container project-list (width>=720px){.project-page--list .project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@container project-list (width>=1000px){.project-page--list .project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@container project-list (width>=1280px){.project-page--list .project-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@container project-list (width>=1560px){.project-page--list .project-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.project-card{cursor:pointer;padding:0;overflow:hidden}.project-card-cover{aspect-ratio:16/9;background:radial-gradient(circle at 0 0,#f9731647,#0000 34%),linear-gradient(140deg,#fff7ed,#ffedd5 55%,#fed7aa);position:relative;overflow:hidden}.project-card-cover img,.project-detail-cover img,.project-task-thumb img{object-fit:cover;width:100%;height:100%;display:block}.project-card-cover-fallback,.project-task-thumb-fallback{color:#9a3412;width:100%;height:100%;font-size:clamp(1rem,4vw,2.25rem);font-weight:var(--font-weight-bold);place-items:center;display:grid}.project-card-cover-fallback-lg{min-height:220px}.project-status-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:6px 10px;display:inline-flex}.project-status-active,.project-status-succeeded,.project-status-formal_selected{background:color-mix(in srgb, var(--color-success) 14%, white);color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 36%, transparent)}.project-status-archived,.project-status-discarded,.project-status-cancelled{background:color-mix(in srgb, var(--color-error) 12%, white);color:var(--color-error);border-color:color-mix(in srgb, var(--color-error) 28%, transparent)}.project-status-running,.project-status-queued,.project-status-submitted,.project-status-generating,.project-status-has_candidates{background:color-mix(in srgb, var(--color-warning,#f59e0b) 12%, white);color:#b45309;border-color:#f59e0b47}.project-status-not_started,.project-status-pending_submit,.project-status-expired,.project-status-failed{background:color-mix(in srgb, var(--color-bg-tertiary) 84%, white);color:var(--color-text-secondary);border-color:var(--color-border-primary)}.project-card .project-status-badge{inset:var(--space-3) var(--space-3) auto auto;position:absolute}.project-card-body{gap:var(--space-3);padding:var(--space-4);display:grid}.project-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.project-card-head h3,.project-shot-card h3,.project-episode-card h3{margin:0;line-height:1.2}.project-card-desc,.project-shot-card-hint,.project-episode-card p,.project-section-head p,.project-context-banner-desc,.project-primary-meta-row span,.project-task-time{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.project-card-meta{color:var(--color-text-secondary);font-size:var(--font-size-sm);gap:6px;display:grid}.project-pagination{justify-content:center;align-items:center;gap:var(--space-3);display:flex}.project-page--list .project-card-group{white-space:normal;text-align:center;max-width:min(100%,18rem)}@container project-list (width<=1040px){.project-page--list .project-list-hero{padding:var(--space-5);grid-template-columns:1fr}.project-page--list .project-hero-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center}.project-page--list .project-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-page--list .project-filter-search,.project-page--list .project-filter-actions{grid-column:1/-1}.project-page--list .project-filter-actions{justify-content:flex-start}}@container project-list (width<=760px){.project-page--list{gap:var(--space-3)}.project-page--list .project-list-hero{padding:var(--space-4)}.project-page--list .project-hero-title{font-size:clamp(1.75rem,8vw,2.25rem)}.project-page--list .project-hero-actions,.project-page--list .project-filter-grid{grid-template-columns:1fr}.project-page--list .project-hero-actions{align-items:stretch;display:grid}.project-page--list .project-card-head{flex-direction:column;align-items:stretch}.project-page--list .project-hero-actions .ui-btn,.project-page--list .project-filter-actions .ui-btn{width:100%}.project-page--list .project-grid{gap:var(--space-3)}.project-page--list .project-card-body{padding:var(--space-3)}.project-page--list .project-pagination{justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}}.project-pagination-text{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.project-detail-hero{grid-template-columns:minmax(220px,300px) minmax(0,1fr)}.project-detail-cover{border-radius:calc(var(--radius-xl) - 4px);background:radial-gradient(circle at 0 0,#f973162e,#0000 36%),linear-gradient(155deg,#fff7ed,#ffedd5);min-height:220px;overflow:hidden}.project-detail-main{gap:var(--space-3);display:grid}.project-detail-metrics{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.project-metric{padding:var(--space-3);border-radius:var(--radius-lg);border:1px solid var(--color-border-primary);background:color-mix(in srgb, var(--color-bg-secondary) 82%, white);gap:6px;display:grid}.project-metric span{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.project-quota-bar{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-bg-secondary) 82%, white);display:flex}.project-quota-bar-summary{align-items:baseline;gap:var(--space-2);min-width:0;font-size:var(--font-size-sm);display:flex}.project-quota-bar-label{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.project-section-head{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-3);display:flex}.project-section-head h2{margin:0 0 4px}.project-section-tools{width:min(340px,100%)}.project-section-tools-stack{gap:var(--space-2);display:grid}.project-episode-list{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));max-width:100%;display:grid}.project-episode-card,.project-shot-card{gap:var(--space-2);width:100%;padding:var(--space-4);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-bg-secondary) 88%, white);text-align:left;display:grid}.project-episode-card{gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3);cursor:pointer;transition:transform var(--motion-fast), border-color var(--motion-fast), box-shadow var(--motion-fast), background-color var(--motion-fast);position:relative;overflow:hidden}.project-episode-card:before{content:"";width:3px;transition:background-color var(--motion-fast);background:0 0;position:absolute;inset-block:0;inset-inline-start:0}.project-episode-card:hover{border-color:color-mix(in srgb, var(--color-accent) 42%, var(--color-border-primary));box-shadow:var(--shadow-card-hover);background:var(--color-bg-secondary);transform:translateY(-2px)}.project-episode-card:hover:before{background:var(--color-accent)}.project-episode-card:focus-visible{box-shadow:var(--shadow-focus);border-color:var(--color-accent);outline:none}.project-episode-card--recent{background:radial-gradient(circle at top right, #f973161f, transparent 55%), color-mix(in srgb, var(--color-bg-secondary) 88%, white);border-color:color-mix(in srgb, var(--color-accent) 28%, var(--color-border-primary))}.project-episode-card--recent:before{background:var(--color-accent)}.project-episode-card-head{align-items:flex-start;gap:var(--space-3)}.project-episode-card-title-group{gap:2px;min-width:0;display:grid}.project-episode-card-title{font-size:var(--font-size-xl);color:var(--color-text-primary);letter-spacing:.01em;line-height:1.2}.project-episode-card-caption{color:var(--color-text-muted,var(--color-text-secondary));font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.project-episode-recent-badge{isolation:isolate;border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-accent) 16%, white);color:#b45309;border:1px solid color-mix(in srgb, var(--color-accent) 42%, transparent);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;padding:4px 9px 4px 7px;display:inline-flex;position:relative}.project-episode-recent-badge:after{content:"";z-index:-1;border-radius:inherit;box-shadow:0 0 0 2px color-mix(in srgb, var(--color-accent) 50%, transparent);opacity:0;will-change:transform, opacity;pointer-events:none;animation:2.4s ease-out infinite project-episode-recent-pulse;position:absolute;inset:-1px;transform:scale(1)}.project-episode-recent-icon{color:var(--color-accent)}@keyframes project-episode-recent-pulse{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(1.35)}}@media (prefers-reduced-motion:reduce){.project-episode-recent-badge:after{animation:none;display:none}.project-episode-card,.project-episode-card:before{transition:none}.project-episode-card:hover{transform:none}}.project-episode-meta{gap:var(--space-2);display:grid}.project-episode-meta-row{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);min-width:0;margin:0;display:flex}.project-episode-meta-icon{color:var(--color-accent);opacity:.85;flex-shrink:0}.project-episode-meta-text{text-overflow:ellipsis;white-space:nowrap;align-items:baseline;gap:6px;min-width:0;display:inline-flex;overflow:hidden}.project-episode-meta-value{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.project-episode-card-head,.project-shot-card-head,.project-task-head,.project-primary-meta-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.project-shot-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.project-shot-index{color:var(--color-accent);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em}.project-primary-layout,.project-task-card-panel{display:grid}.project-primary-card{gap:var(--space-3);display:grid}.project-primary-content{gap:var(--space-4);grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:start;display:grid}.project-primary-player{min-width:0}.project-primary-meta{gap:var(--space-3);display:grid}.project-primary-meta-row strong{text-align:right}.project-task-list{gap:var(--space-3);display:grid}.project-task-item{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-bg-secondary) 88%, white);grid-template-columns:132px minmax(0,1fr);display:grid}.project-task-thumb{aspect-ratio:16/9;border-radius:var(--radius-md);background:var(--color-bg-tertiary);overflow:hidden}.project-task-thumb-fallback{font-size:var(--font-size-xs);color:var(--color-text-secondary);padding:var(--space-2);text-align:center}.project-task-body{gap:var(--space-3);min-width:0;display:grid}.project-task-subline{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-top:6px;display:flex}.project-context-banner,.project-inline-context{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);border:1px solid color-mix(in srgb, var(--color-accent) 24%, var(--color-border-primary));background:linear-gradient(135deg, #fff7edf5, #ffedd5e0), var(--color-bg-secondary);display:flex}.project-context-banner-main{gap:4px;display:grid}.project-context-banner-main strong,.project-inline-context strong{line-height:1.2}.project-inline-context{margin-bottom:var(--space-4)}.project-context-banner-actions,.project-inline-context-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}@media (width<=960px){.project-hero,.project-detail-hero,.project-primary-content,.project-filter-grid,.project-filter-grid-tight,.task-context-grid,.project-task-item,.project-detail-metrics{grid-template-columns:1fr}.project-hero-actions,.project-page-actions,.project-section-head,.project-context-banner,.project-inline-context{flex-direction:column;align-items:stretch}.project-section-tools{width:100%}.task-context-shortcuts{flex-direction:column;align-items:flex-start}.task-context-shortcut-list,.task-context-shortcut{width:100%}}.cr-lightbox{z-index:9999;background:#000000d9;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.cr-lightbox-dialog{border-radius:calc(var(--radius-lg) + 2px);background:#111827f0;border:1px solid #ffffff1f;flex-direction:column;gap:12px;width:min(960px,100%);max-height:calc(100vh - 48px);padding:16px;display:flex;position:relative;box-shadow:0 24px 60px #00000052}.cr-lightbox-media{justify-content:center;align-items:center;min-height:240px;display:flex}.cr-lightbox-media img,.cr-lightbox-media video{object-fit:contain;border-radius:var(--radius-md);background:#ffffff0a;max-width:100%;max-height:calc(100vh - 160px)}.cr-lightbox-media audio{width:min(560px,100%)}.cr-lightbox-close{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;transition:background .15s;display:flex;position:absolute;top:12px;right:12px}.cr-lightbox-close:hover{background:#ffffff4d}.cr-lightbox-caption{color:#ffffffeb;text-align:center;word-break:break-word;font-size:14px;line-height:1.5}.ui-update-overlay{z-index:10000;padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ui-update-backdrop{background:var(--color-bg-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);position:absolute;inset:0}.ui-update-modal{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);flex-direction:column;width:min(460px,100%);max-height:90vh;display:flex;position:relative;overflow:hidden}.ui-update-head{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-primary);background:color-mix(in srgb, var(--color-bg-tertiary) 45%, transparent)}.ui-update-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.ui-update-body{padding:var(--space-4);gap:var(--space-3);display:grid}.ui-update-desc{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0;line-height:1.55}.ui-update-rows{gap:var(--space-2);margin:0;display:grid}.ui-update-row{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-bg-tertiary);border-radius:var(--radius-sm);display:flex}.ui-update-row dt{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.ui-update-row dd{color:var(--color-text-primary);font-family:var(--font-family-mono,ui-monospace, SFMono-Regular, Menlo, monospace);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);flex-direction:column;align-items:flex-end;gap:2px;margin:0;display:flex}.ui-update-build-time{color:var(--color-text-secondary);font-family:var(--font-family-base,inherit);font-size:var(--font-size-xs);font-weight:var(--font-weight-regular)}.ui-update-foot{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border-primary);background:color-mix(in srgb, var(--color-bg-tertiary) 35%, transparent);justify-content:flex-end;display:flex}
