:root{--surface-base: #111111;--surface-low: #181818;--surface-card: #212121;--surface-elevated: #2a2a2a;--surface-highest: #333333;--surface-variant: #383838;--primary: #01e0b4;--primary-container: #00e0b4;--primary-dim: #48fdcf;--secondary: #97d3bd;--secondary-container:#145242;--text-primary: #e0e0e0;--text-secondary: #b0b0b0;--text-muted: #888888;--text-disabled: #505050;--color-success: #4ade80;--color-warning: #fbbf24;--color-danger: #f87171;--color-info: #60a5fa;--outline-variant: rgba(255, 255, 255, .08);--font-sans: "Poppins", sans-serif;--font-mono: "JetBrains Mono", monospace;--fs-display-lg: 3.5rem;--fs-display-md: 2.5rem;--fs-headline-lg: 1.875rem;--fs-headline-sm: 1.25rem;--fs-body-lg: 1rem;--fs-body-sm: .875rem;--fs-label-lg: .75rem;--fs-label-sm: .625rem;--fw-regular: 400;--fw-semibold: 600;--fw-black: 900;--lh-tight: 1;--lh-snug: 1.2;--lh-normal: 1.5;--lh-relaxed: 1.6;--radius-xs: .25rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-full: 9999px;--shadow-card: 0 20px 40px rgba(0, 0, 0, .5);--shadow-float: 0px 24px 48px rgba(0, 0, 0, .4), 0px 0px 20px rgba(1, 224, 180, .02);--shadow-intense: 0 25px 50px -12px rgba(0, 0, 0, .6);--shadow-glow-primary:0 0 8px rgba(1, 224, 180, .6);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--z-base: 1;--z-sidebar: 100;--z-header: 200;--z-modal: 500;--z-toast: 900;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--bp-mobile: 768px;--bp-tablet: 1024px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--fs-body-lg);font-weight:var(--fw-regular);line-height:var(--lh-normal);color:var(--text-primary);background-color:var(--surface-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}img{display:block;max-width:100%}body{background-image:radial-gradient(rgba(80,80,76,.35) 1px,transparent 1px);background-size:14px 14px;background-attachment:fixed}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.5'/%3E%3C/svg%3E");opacity:.03;pointer-events:none;z-index:0}.hero-title{font-family:var(--font-sans);font-weight:var(--fw-black);font-style:italic;font-size:var(--fs-display-lg);text-transform:uppercase;line-height:var(--lh-tight);letter-spacing:-.02em;color:var(--text-primary)}.section-title{font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-headline-lg);line-height:var(--lh-snug);color:var(--text-primary)}.label{font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-label-lg);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.body-text{font-family:var(--font-sans);font-weight:var(--fw-regular);font-size:var(--fs-body-lg);line-height:var(--lh-relaxed);color:var(--text-secondary)}.mono{font-family:var(--font-mono);font-size:var(--fs-body-sm)}.studio-name{font-family:var(--font-sans);font-weight:var(--fw-black);font-style:italic;text-transform:uppercase;letter-spacing:-.02em;line-height:var(--lh-tight)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);background:var(--primary-container);color:#00382b;font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-body-sm);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-base);box-shadow:none;position:relative;overflow:hidden;z-index:0}.btn-primary:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#ffffff26,#fff0 60%);opacity:0;transition:opacity var(--transition-base);z-index:-1}.btn-primary:hover:before{opacity:1}.btn-primary:hover{box-shadow:var(--shadow-glow-primary);transform:scale(1.02)}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);background:var(--surface-elevated);color:var(--text-primary);font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-body-sm);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-base)}.btn-secondary:hover{background:var(--surface-variant)}.btn-secondary:active{transform:scale(.98)}.btn-secondary:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);background:transparent;color:var(--text-secondary);font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-body-sm);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-base)}.btn-ghost:hover{background:var(--surface-elevated);color:var(--text-primary)}.btn-ghost:active{transform:scale(.98)}.btn-ghost:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);background:#f871711f;color:var(--color-danger);font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-body-sm);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-base)}.btn-danger:hover{background:#f8717133}.btn-danger:active{transform:scale(.98)}.btn-danger:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--fs-label-lg);height:32px}.card{background:var(--surface-card);border-radius:var(--radius-lg);border:1px solid var(--outline-variant);overflow:hidden;transition:all var(--transition-base)}.card-hero{background:var(--surface-card);border-radius:var(--radius-xl);border:1px solid var(--outline-variant);overflow:hidden;box-shadow:var(--shadow-float)}.glass-card{background:#01e0b40f;border:1px solid rgba(1,224,180,.15);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-lg)}.glass-panel{position:relative;background:#353534b3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.05)}.glass-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#01e0b40a,#01e0b403);pointer-events:none;border-radius:inherit}.player-controls{background:#0009;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-lg)}.progress-track{width:100%;height:8px;background:var(--surface-highest);border-radius:var(--radius-full);overflow:hidden}.progress-fill{height:100%;background:var(--primary);border-radius:var(--radius-full);position:relative;transition:width var(--transition-slow)}.progress-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff26;animation:pulse 2s ease-in-out infinite}.progress-fill--gradient{height:100%;background:linear-gradient(to right,var(--secondary-container),var(--primary-container));border-radius:var(--radius-full);position:relative;transition:width var(--transition-slow)}.progress-fill--gradient:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff26;animation:pulse 2s ease-in-out infinite}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-xs);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.badge-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;animation:pulse 2s ease-in-out infinite}.badge-active .badge-dot{background:var(--primary)}.badge-rendered{background:#4ade801a;color:var(--color-success)}.badge-rendered .badge-dot{background:var(--color-success)}.badge-pending .badge-dot{background:var(--color-warning)}.badge-error .badge-dot{background:var(--color-danger)}.badge-final .badge-dot{background:var(--color-info)}.item-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);transition:all var(--transition-base)}.item-row:hover{background:var(--surface-elevated);transform:translate(4px)}.item-row--active{background:var(--surface-highest);border-left:2px solid var(--primary)}.item-row--active:hover{transform:translate(0)}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);color:var(--text-disabled);font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-body-sm);transition:all var(--transition-base);text-decoration:none}.nav-item:hover{background:var(--surface-low);color:var(--text-primary)}.nav-item--active{background:#01e0b41a;color:var(--primary);border-right:2px solid var(--primary)}.input{width:100%;background:var(--surface-card);border:none;border-bottom:1px solid transparent;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--fs-body-sm);transition:all var(--transition-base)}.input:focus{background:var(--surface-elevated);border-bottom-color:var(--primary);outline:none}.input::placeholder{color:var(--text-muted)}.input-mono{font-family:var(--font-mono)}.select{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface-card);border:none;border-bottom:1px solid transparent;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--fs-body-sm);cursor:pointer;transition:all var(--transition-base)}.select:focus{background:var(--surface-elevated);border-bottom-color:var(--primary);outline:none}.textarea{width:100%;background:var(--surface-card);border:none;border-bottom:1px solid transparent;border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--fs-body-sm);resize:vertical;min-height:80px;transition:all var(--transition-base)}.textarea:focus{background:var(--surface-elevated);border-bottom-color:var(--primary);outline:none}.textarea::placeholder{color:var(--text-muted)}.input-group{display:flex;flex-direction:column;gap:var(--space-2)}.input-group .label{margin-bottom:0}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--primary),var(--secondary));color:#00382b;font-family:var(--font-sans);font-weight:var(--fw-semibold);flex-shrink:0}.avatar-sm{width:24px;height:24px;font-size:10px}.avatar-md{width:32px;height:32px;font-size:var(--fs-label-lg)}.avatar-lg{width:48px;height:48px;font-size:var(--fs-body-sm)}.tag{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px 8px;border-radius:var(--radius-xs);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.tag-blue{background:#60a5fa1f;color:var(--color-info)}.tag-green{background:#4ade801f;color:var(--color-success)}.tag-amber{background:#fbbf241f;color:var(--color-warning)}.tag-red{background:#f871711f;color:var(--color-danger)}.tag-accent{background:#01e0b41f;color:var(--primary)}.live-state-card{position:relative;border-radius:var(--radius-xl);overflow:hidden;border:1px solid rgba(255,255,255,.05);box-shadow:var(--shadow-intense);display:flex;flex-direction:column;background:var(--surface-low)}.live-card-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.live-card-img{width:100%;height:100%;object-fit:cover;opacity:.3;transition:transform 1s ease}.live-state-card:hover .live-card-img{transform:scale(1.05)}.live-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,var(--surface-base) 0%,rgba(13,21,18,.4) 50%,transparent 100%)}.live-card-header{position:relative;z-index:10;padding:var(--space-10) var(--space-10) var(--space-4);border-bottom:1px solid rgba(255,255,255,.05);background:#0d151266;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:space-between;align-items:center}.live-card-label{font-family:var(--font-mono);font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--primary);display:block;margin-bottom:var(--space-1)}.live-card-title{font-family:var(--font-sans);font-weight:var(--fw-black);font-style:italic;font-size:2.25rem;text-transform:uppercase;color:var(--text-primary);line-height:var(--lh-tight);letter-spacing:-.02em}.live-card-title span{color:#01e0b4e6}.live-card-meta{display:flex;align-items:center;gap:var(--space-6)}.live-card-meta-label{font-family:var(--font-mono);font-size:.6rem;text-transform:uppercase;letter-spacing:.2em;color:var(--text-muted);opacity:.6;margin-bottom:var(--space-1)}.live-card-timer{font-family:var(--font-mono);font-size:var(--fs-headline-sm);font-weight:700;color:var(--text-primary)}.live-card-divider{height:var(--space-10);width:1px;background:#ffffff1a}.live-card-badge{background:#01e0b426;color:var(--primary);padding:.625rem 1.25rem;border-radius:var(--radius-md);border:1px solid rgba(1,224,180,.35);display:flex;align-items:center;gap:var(--space-3);font-family:var(--font-sans);font-weight:var(--fw-black);font-style:italic;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.live-badge-dot{width:8px;height:8px;border-radius:50%;background:var(--primary);animation:pulse 2s ease-in-out infinite}.live-card-body{position:relative;z-index:10;padding:var(--space-10);flex:1;display:flex;flex-direction:column;justify-content:space-between}.live-card-description{font-size:var(--fs-body-lg);color:var(--text-secondary);max-width:640px;line-height:var(--lh-relaxed);margin-bottom:var(--space-8)}.live-card-panel{background:#08100d99;border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-lg);padding:var(--space-6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.live-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.live-panel-label{font-family:var(--font-mono);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--text-muted)}.live-panel-status{font-family:var(--font-mono);font-size:.6rem;color:var(--primary)}.live-panel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.live-panel-item{display:flex;align-items:center;gap:var(--space-3);background:#21212166;padding:var(--space-3);border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.05)}.live-item-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.live-item-dot--active{background:var(--primary);box-shadow:0 0 8px #01e0b480}.live-item-dot--idle{background:#bacac24d}.live-item-name{font-family:var(--font-mono);font-size:var(--fs-label-lg);font-weight:700;color:var(--text-primary)}.live-item-status{font-family:var(--font-mono);font-size:.55rem;text-transform:uppercase;color:var(--primary)}.live-item-status--idle{color:#bacac266}.live-card-footer{display:flex;align-items:flex-end;gap:var(--space-16);margin-top:var(--space-8)}.live-progress{flex:1}.live-progress-header{display:flex;justify-content:space-between;margin-bottom:var(--space-3)}.live-progress-label{font-family:var(--font-mono);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--text-muted)}.live-progress-value{font-family:var(--font-mono);font-size:var(--fs-label-lg);font-weight:700;color:var(--primary)}.live-progress-track{height:6px;width:100%;background:var(--surface-highest);border-radius:var(--radius-full);overflow:hidden}.live-progress-fill{height:100%;background:var(--primary);border-radius:var(--radius-full);box-shadow:0 0 10px #01e0b480}.live-card-stats{display:flex;gap:var(--space-8)}.live-stat{text-align:right}.live-stat-label{font-family:var(--font-mono);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--text-muted);opacity:.6;margin-bottom:var(--space-1)}.live-stat-value{font-family:var(--font-mono);font-size:var(--fs-body-lg);font-weight:700;color:var(--text-primary)}.live-stat-value--accent{color:var(--primary)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;animation:fadeIn var(--transition-base)}.modal{background:var(--surface-low);border-radius:var(--radius-xl);border:1px solid var(--outline-variant);box-shadow:var(--shadow-intense);width:90%;max-width:540px;max-height:85vh;overflow-y:auto;animation:slideInUp var(--transition-slow)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-6);border-bottom:1px solid var(--outline-variant)}.modal-body{padding:var(--space-6)}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-6);border-top:1px solid var(--outline-variant)}.drawer{position:fixed;top:0;right:0;bottom:0;width:400px;max-width:90vw;background:var(--surface-low);border-left:1px solid var(--outline-variant);box-shadow:var(--shadow-intense);z-index:var(--z-modal);overflow-y:auto;animation:slideInRight var(--transition-slow)}.toast{position:fixed;bottom:var(--space-6);right:var(--space-6);min-width:280px;max-width:400px;padding:var(--space-4) var(--space-6);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);z-index:var(--z-toast);animation:slideInRight var(--transition-slow);display:flex;align-items:center;gap:var(--space-3);border:1px solid var(--outline-variant);box-shadow:var(--shadow-float)}.toast-success{background:var(--surface-card);color:var(--color-success);border-left:3px solid var(--color-success)}.toast-error{background:var(--surface-card);color:var(--color-danger);border-left:3px solid var(--color-danger)}.toast-warning{background:var(--surface-card);color:var(--color-warning);border-left:3px solid var(--color-warning)}.toast-info{background:var(--surface-card);color:var(--color-info);border-left:3px solid var(--color-info)}.breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-sans);font-size:var(--fs-body-sm)}.breadcrumb a{color:var(--text-muted);transition:color var(--transition-fast)}.breadcrumb a:hover{color:var(--text-primary)}.breadcrumb-sep{color:var(--text-disabled);font-size:var(--fs-label-lg)}.breadcrumb-current{color:var(--text-primary);font-weight:var(--fw-semibold)}.skeleton{background:var(--surface-elevated);border-radius:var(--radius-sm);position:relative;overflow:hidden}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.04) 50%,transparent 100%);animation:shimmer 1.5s ease-in-out infinite}.skeleton-line{height:14px;width:100%;margin-bottom:var(--space-2)}.skeleton-block{height:80px;width:100%}.skeleton-avatar{width:40px;height:40px;border-radius:var(--radius-full)}.skeleton-card{height:200px;width:100%;border-radius:var(--radius-lg)}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-thumb{background:var(--outline-variant);border-radius:var(--radius-full)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(max-width:768px){.stats-row{flex-wrap:wrap}.stat-card{flex:0 0 50%}.stat-value{font-size:var(--fs-headline-lg)}}.filter-bar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.filter-pill{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);border:1px solid var(--outline-variant);background:transparent;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-label-sm);font-weight:700;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:all var(--transition-base)}.filter-pill:hover{color:var(--text-primary);border-color:var(--text-muted);background:var(--surface-elevated)}.filter-pill--active{background:var(--primary);color:#00382b;border-color:var(--primary)}.filter-pill--active:hover{box-shadow:var(--shadow-glow-primary)}.filter-count{font-size:.5rem;opacity:.7}.page-hero-title{font-family:var(--font-sans);font-weight:var(--fw-black);font-style:italic;font-size:var(--fs-display-lg);text-transform:uppercase;line-height:var(--lh-tight);letter-spacing:-.02em;color:var(--text-primary);margin-bottom:var(--space-2)}@media(max-width:768px){.page-hero-title{font-size:var(--fs-headline-lg)}}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.section-header-left{display:flex;align-items:center;gap:var(--space-3)}.section-count{font-family:var(--font-mono);font-size:var(--fs-label-sm);color:var(--text-muted);background:var(--surface-elevated);padding:2px var(--space-2);border-radius:var(--radius-full)}.due-badge{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:var(--fs-label-sm);padding:2px var(--space-2);border-radius:var(--radius-xs)}.due-badge--safe{background:#4ade801a;color:var(--color-success)}.due-badge--soon{background:#fbbf241a;color:var(--color-warning)}.due-badge--overdue{background:#f871711a;color:var(--color-danger)}.unread-dot{width:8px;height:8px;border-radius:50%;background:#f97316;animation:pulse 2s ease-in-out infinite;flex-shrink:0}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16) var(--space-8);text-align:center;gap:var(--space-4)}.empty-state-icon{font-size:3rem;color:var(--text-disabled)}.empty-state-title{font-size:var(--fs-headline-sm);color:var(--text-secondary)}.empty-state-text{font-size:var(--fs-body-sm);color:var(--text-muted);max-width:360px}.panel-tabs{display:flex;border-bottom:1px solid var(--outline-variant);flex-shrink:0}.panel-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4) var(--space-3);font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-body-sm);color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;transition:all var(--transition-fast);background:none;border-top:none;border-left:none;border-right:none}.panel-tab:hover{color:var(--text-secondary);background:#ffffff05}.panel-tab--active{color:var(--primary);border-bottom-color:var(--primary)}.panel-tab-count{font-family:var(--font-mono);font-size:10px;font-weight:700;padding:1px 6px;border-radius:var(--radius-full);background:#01e0b41f;color:var(--primary)}.live-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:4px 12px;border-radius:var(--radius-xs);background:#f871711f;border:1px solid rgba(248,113,113,.3);font-family:var(--font-mono);font-size:var(--fs-label-lg);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-danger)}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--color-danger);flex-shrink:0;animation:pulse-live 1.2s ease-in-out infinite}@keyframes pulse-live{0%,to{box-shadow:0 0 #f8717180}50%{box-shadow:0 0 0 5px #f8717100}}.hidden{display:none!important}.app-shell{display:grid;grid-template-columns:180px 1fr;min-height:100vh;position:relative}.app-sidebar{position:fixed;top:0;left:0;bottom:0;width:180px;background:var(--surface-base);z-index:var(--z-sidebar);display:flex;flex-direction:column;padding:var(--space-6) 0;padding-top:calc(72px + var(--space-6));overflow-y:auto;transition:width var(--transition-slow),transform var(--transition-slow)}.app-main{margin-left:180px;min-height:100vh;position:relative;z-index:var(--z-base)}.app-header{position:sticky;top:0;height:72px;background:#111c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--outline-variant);z-index:var(--z-header);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 var(--space-8)}.header-center{display:flex;align-items:center;justify-content:center;gap:var(--space-3)}.header-isotipo{width:20px;height:50px;fill:#fff;flex-shrink:0}.header-wordmark-svg{height:33px;width:auto;fill:var(--text-primary);flex-shrink:0}@media(max-width:1024px){.app-shell{grid-template-columns:48px 1fr}.app-sidebar{width:48px;align-items:center;padding:var(--space-4) 0}.app-sidebar .nav-label,.app-sidebar .sidebar-logo-text{display:none}.app-sidebar .nav-item{justify-content:center;padding:var(--space-3)}.app-main{margin-left:48px}}@media(max-width:768px){.app-shell{grid-template-columns:1fr}.app-sidebar{width:180px;transform:translate(-180px);box-shadow:none}.app-sidebar.sidebar-open{transform:translate(0);box-shadow:var(--shadow-intense)}.app-sidebar.sidebar-open .nav-label,.app-sidebar.sidebar-open .sidebar-logo-text{display:inline}.app-sidebar.sidebar-open .nav-item{justify-content:flex-start;padding:var(--space-3) var(--space-4)}.app-main{margin-left:0}}.sidebar-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:calc(var(--z-sidebar) - 1)}@media(max-width:768px){.sidebar-backdrop.sidebar-open{display:block}}.menu-toggle{display:none;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:none;color:var(--text-primary);font-size:20px;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.menu-toggle:hover{background:var(--surface-elevated)}@media(max-width:768px){.menu-toggle{display:inline-flex}}.header-left{display:flex;align-items:center;gap:var(--space-4);justify-self:start}.header-right{display:flex;align-items:center;gap:var(--space-3);justify-self:end}.page-container{max-width:1600px;margin:0 auto;padding:var(--space-8) var(--space-8)}.page-header{margin-bottom:var(--space-8)}.page-content{display:flex;flex-direction:column;gap:var(--space-8)}@media(max-width:1024px){.page-container{padding:var(--space-6) var(--space-6)}}@media(max-width:768px){.page-container{padding:var(--space-4) var(--space-4)}}.bento-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-6)}.bento-cell{background:var(--surface-card);border-radius:var(--radius-lg);border:1px solid var(--outline-variant);overflow:hidden;padding:var(--space-6)}.bento-cell--wide{grid-column:span 2}.bento-cell--hero{grid-column:span 3}.bento-cell--tall{grid-row:span 2}@media(max-width:1024px){.bento-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4)}.bento-cell--hero{grid-column:span 2}}@media(max-width:768px){.bento-grid{grid-template-columns:1fr;gap:var(--space-4)}.bento-cell--wide,.bento-cell--hero{grid-column:span 1}.bento-cell--tall{grid-row:span 1}}@media(max-width:1024px){.hide-below-desktop{display:none!important}}.app-footer{padding:var(--space-8) var(--space-8);text-align:center;font-family:var(--font-sans);font-weight:900;font-style:italic;font-size:var(--fs-label-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--text-disabled)}.header-logo{display:flex;align-items:center;gap:var(--space-3)}.header-isotipo{width:20px;height:50px;fill:#fff;flex-shrink:0;filter:drop-shadow(0 0 6px rgba(1,224,180,.8)) drop-shadow(0 0 14px rgba(1,224,180,.3))}.header-wordmark-svg{height:33px;width:auto;fill:var(--text-primary);flex-shrink:0;filter:drop-shadow(0 0 8px rgba(1,224,180,.6)) drop-shadow(0 0 16px rgba(1,224,180,.25))}.sidebar-nav{display:flex;flex-direction:column;gap:var(--space-1);padding:0 var(--space-3)}.sidebar-section-label{font-family:var(--font-mono);font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--text-disabled);padding:var(--space-4) var(--space-4) var(--space-2)}.nav-icon{font-size:1.1rem;width:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.player-column{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;padding:var(--space-4) var(--space-5);gap:var(--space-3);overflow-y:auto}.player-column>*{width:100%;max-width:calc(var(--player-max-h, calc(100vh - 260px) ) * 16 / 9)}.video-title-area{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);flex-shrink:0}.video-title-left{display:flex;flex-direction:column;gap:2px;min-width:0}.video-title{font-family:var(--font-sans);font-weight:var(--fw-black);font-style:italic;font-size:var(--fs-headline-sm);text-transform:uppercase;line-height:var(--lh-tight);letter-spacing:-.02em;color:var(--text-primary)}.video-project-name{font-family:var(--font-mono);font-size:var(--fs-label-lg);color:var(--text-muted)}.player-toolbar{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.version-pills{display:flex;gap:var(--space-1)}.version-pill{padding:var(--space-1) var(--space-4);border-radius:var(--radius-full);border:none;font-family:var(--font-mono);font-weight:700;font-size:var(--fs-label-lg);color:var(--text-muted);background:transparent;cursor:pointer;transition:all var(--transition-fast)}.version-pill:hover{color:var(--text-primary);background:var(--surface-elevated)}.version-pill--active,.version-pill--active:hover{background:var(--primary-container);color:#00382b}.player-wrapper{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:var(--radius-lg);overflow:hidden;background:linear-gradient(135deg,#141420,#1e2038,#1f2d4a,#172f5a);flex-shrink:0;max-height:var(--player-max-h, calc(100vh - 260px) );max-width:calc(var(--player-max-h, calc(100vh - 260px) ) * 16 / 9)}.player-wrapper:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.4) 100%);pointer-events:none;z-index:1}.player-version-badge{position:absolute;top:var(--space-3);left:var(--space-3);z-index:5}.player-duration-badge{position:absolute;bottom:calc(var(--space-12) + var(--space-2));right:var(--space-4);z-index:5;font-family:var(--font-mono);font-size:var(--fs-label-lg);font-weight:700;color:var(--text-primary);background:#00000080;padding:2px 8px;border-radius:var(--radius-xs)}.play-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:3;cursor:pointer}.play-circle{width:64px;height:64px;border-radius:50%;background:#00000080;border:2px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;color:var(--text-primary);font-size:24px;transition:all var(--transition-base);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.play-circle:hover{background:#01e0b433;border-color:var(--primary);color:var(--primary);transform:scale(1.08);box-shadow:0 0 24px #01e0b44d}.annotation-canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.annotation-canvas.active{pointer-events:auto;cursor:crosshair}.annotation-mark{position:absolute;border:2px solid #f87171;border-radius:50%;width:80px;height:80px;top:35%;left:55%;pointer-events:none}.annotation-arrow{position:absolute;top:30%;left:52%;color:var(--color-danger);font-size:20px;pointer-events:none;transform:rotate(-45deg)}.annotation-toolbar{position:absolute;bottom:calc(var(--space-12) + var(--space-4));left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg)}.anno-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-secondary);font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.anno-btn:hover{background:#ffffff1a;color:var(--text-primary)}.anno-btn--active{background:#01e0b426;color:var(--primary)}.anno-divider{width:1px;height:20px;background:#ffffff1a;margin:0 var(--space-1)}.anno-color{width:18px;height:18px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all var(--transition-fast)}.anno-color:hover{transform:scale(1.15)}.anno-color--active{border-color:var(--text-primary)}.anno-color--white{background:#e0e0e0}.anno-color--red{background:#f87171}.anno-color--yellow{background:#fbbf24}.anno-btn--confirm{color:var(--primary)}.anno-btn--cancel{color:var(--color-danger)}.controls-bar{position:absolute;bottom:var(--space-3);left:var(--space-4);right:var(--space-4);z-index:10;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg)}.ctrl-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-secondary);font-size:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.ctrl-btn:hover{color:var(--text-primary)}.ctrl-btn--play{color:var(--text-primary);font-size:22px}.timecode-display{font-family:var(--font-mono);font-size:var(--fs-body-sm);font-weight:700;color:var(--text-primary);white-space:nowrap;flex-shrink:0}.timecode-display span{color:var(--text-muted)}.controls-spacer{flex:1}.volume-group{display:flex;align-items:center;gap:var(--space-2)}.volume-track{width:60px;height:3px;background:#ffffff1f;border-radius:var(--radius-full);position:relative}.volume-fill{position:absolute;top:0;left:0;width:75%;height:100%;background:var(--text-secondary);border-radius:var(--radius-full)}.timeline-inline{flex:1;position:relative;height:4px;background:#ffffff1f;border-radius:var(--radius-full);cursor:pointer;margin:0 var(--space-3)}.timeline-inline .timeline-progress{position:absolute;top:0;left:0;height:100%;background:linear-gradient(to right,var(--secondary-container),var(--primary-container));border-radius:var(--radius-full)}.timeline-inline .timeline-thumb{position:absolute;top:50%;width:12px;height:12px;background:var(--primary);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 8px #01e0b480;cursor:grab;z-index:2}.timeline-inline .timeline-dot{position:absolute;top:50%;width:8px;height:8px;border-radius:50%;transform:translate(-50%,-50%);z-index:1;cursor:pointer;transition:transform var(--transition-fast)}.timeline-inline .timeline-dot:hover{transform:translate(-50%,-50%) scale(1.5)}.timeline-inline .timeline-dot--studio{background:var(--primary)}.timeline-inline .timeline-dot--client{background:var(--color-success)}.timeline-inline .timeline-dot--warning{background:var(--color-warning)}.comment-list{flex:1;overflow-y:auto;padding:var(--space-3) 0}.comment-item{transition:background var(--transition-fast);border-radius:var(--radius-sm);margin:0 var(--space-2)}.comment-item:hover{background:#ffffff08}.comment-item--clickable{cursor:pointer}.comment-item--clickable:hover{background:#01e0b40d}.comment-item--internal{background:#fbbf240a}.comment-item--internal:hover{background:#fbbf2414}.comment-item--action{background:#f871710a}.comment-item--action:hover{background:#f8717114}.comment-list::-webkit-scrollbar{width:4px}.comment-list::-webkit-scrollbar-track{background:transparent}.comment-list::-webkit-scrollbar-thumb{background:var(--surface-elevated);border-radius:var(--radius-full)}.comment{padding:var(--space-3) var(--space-5);border-left:3px solid transparent;transition:background var(--transition-fast)}.comment:hover{background:#ffffff05}.comment--studio{border-left-color:var(--primary)}.comment--client{border-left-color:var(--color-success)}.comment--reply{margin-left:var(--space-8);border-left-color:var(--surface-elevated);padding-top:var(--space-2);padding-bottom:var(--space-2)}.comment-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.comment-author{font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-body-sm);color:var(--text-primary)}.comment-role{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.comment-timecode{display:inline-flex;align-items:center;gap:3px;padding:1px 6px;border-radius:var(--radius-xs);background:#01e0b41a;color:var(--primary);font-family:var(--font-mono);font-size:10px;font-weight:700;cursor:pointer;transition:background var(--transition-fast)}.comment-timecode:hover{background:#01e0b433}.comment-body{font-size:var(--fs-body-sm);color:var(--text-secondary);line-height:var(--lh-relaxed);margin-bottom:var(--space-2)}.comment-action-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-xs);background:#fbbf241f;color:var(--color-warning);font-family:var(--font-mono);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.comment-footer{display:flex;align-items:center;gap:var(--space-4)}.comment-actions{display:flex;align-items:center;gap:var(--space-3)}.comment-action-btn{background:none;border:none;color:var(--text-disabled);font-size:var(--fs-label-lg);font-family:var(--font-sans);font-weight:var(--fw-semibold);cursor:pointer;transition:color var(--transition-fast);display:flex;align-items:center;gap:var(--space-1)}.comment-action-btn:hover{color:var(--text-secondary)}.comment-reactions{display:flex;gap:var(--space-2)}.reaction{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:var(--radius-full);background:var(--surface-card);border:1px solid var(--outline-variant);font-size:11px;cursor:pointer;transition:all var(--transition-fast)}.reaction:hover{background:var(--surface-elevated);border-color:#01e0b433}.reaction-count{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.comment-input-area{flex-shrink:0;padding:var(--space-3) var(--space-5);border-top:1px solid var(--outline-variant);background:var(--surface-card)}.comment-input-tc{font-family:var(--font-mono);font-size:var(--fs-label-lg);font-weight:700;color:var(--primary);margin-bottom:var(--space-2);display:flex;align-items:center;gap:var(--space-2)}.comment-input-tc i{font-size:14px}.comment-input-row{display:flex;gap:var(--space-2);align-items:flex-end}.comment-textarea{flex:1;background:var(--surface-elevated);border:none;border-bottom:1px solid transparent;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--fs-body-sm);resize:none;min-height:36px;max-height:80px;transition:all var(--transition-base)}.comment-textarea:focus{outline:none;border-bottom-color:var(--primary)}.comment-textarea::placeholder{color:var(--text-muted)}.comment-send-btn{width:36px;height:36px;border-radius:var(--radius-sm);border:none;background:var(--primary-container);color:#00382b;font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-base);flex-shrink:0}.comment-send-btn:hover{box-shadow:var(--shadow-glow-primary);transform:scale(1.05)}.client-header{position:fixed;top:0;left:0;right:0;height:72px;background:#111111d9;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--outline-variant);z-index:var(--z-header);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 var(--space-8)}.client-header-left{display:flex;align-items:center}.client-header-center{display:flex;flex-direction:column;align-items:center;gap:2px}.client-header-right{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3)}.client-project-name{font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-body-sm);color:var(--text-primary)}.client-project-label{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.client-isotipo{width:14px;height:32px;fill:var(--text-muted);flex-shrink:0}.client-shell{padding-top:72px;height:100vh;display:flex;flex-direction:column;overflow:hidden}.review-layout{display:flex;flex:1;overflow:hidden;min-height:0}.right-panel{width:440px;min-width:440px;background:var(--surface-low);display:flex;flex-direction:column;border-left:1px solid var(--outline-variant)}.anno-toolbar{position:absolute;top:calc(var(--space-16) + var(--space-4));right:var(--space-8);left:auto;bottom:auto;transform:none;display:flex;align-items:center;gap:var(--space-1);padding:4px 3px;background:#212121e0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);box-shadow:-10px 10px 10px #0000004d;z-index:20;white-space:nowrap;-webkit-user-select:none;user-select:none;overflow:visible}.anno-toolbar__drag{display:flex;align-items:center;justify-content:center;width:16px;height:24px;color:var(--text-disabled);font-size:12px;cursor:grab;flex-shrink:0;border-radius:var(--radius-xs);transition:color var(--transition-fast)}.anno-toolbar__drag:hover{color:var(--text-muted)}.anno-toolbar__drag:active{cursor:grabbing}.anno-toolbar__toggle{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--primary);font-size:15px;cursor:pointer;flex-shrink:0;transition:all var(--transition-fast)}.anno-toolbar__toggle:hover{background:var(--surface-elevated)}.anno-toolbar__body{display:flex;align-items:center;gap:var(--space-1);overflow:visible;max-width:500px;transition:max-width .25s ease,opacity .2s ease;opacity:1}.anno-toolbar__body--collapsed{max-width:0;opacity:0;padding:0;margin:0;gap:0;overflow:hidden}.anno-toolbar__sep{width:1px;height:20px;background:#ffffff1f;margin:0 var(--space-1);flex-shrink:0}.anno-toolbar__btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);font-size:15px;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.anno-toolbar__btn:hover{color:var(--text-primary);background:var(--surface-elevated)}.anno-toolbar__btn--active{color:var(--primary);background:#01e0b41f;border-color:#01e0b44d}.anno-toolbar__sub-arrow{font-size:10px;margin-left:-2px;opacity:.6}.anno-toolbar__draw-wrap{position:relative}.anno-toolbar__draw-dd{display:none;position:absolute;top:calc(100% + var(--space-2));left:50%;transform:translate(-50%);background:var(--surface-card);border:1px solid var(--outline-variant);border-radius:var(--radius-md);padding:4px;z-index:30;box-shadow:var(--shadow-float)}.anno-toolbar__draw-dd--open{display:flex;flex-direction:row;gap:2px}.anno-toolbar__draw-opt{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:none;background:transparent;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.anno-toolbar__draw-opt i{font-size:15px}.anno-toolbar__draw-opt:hover{background:var(--surface-elevated);color:var(--text-primary)}.anno-toolbar__draw-opt--active{color:var(--primary);background:#01e0b41f}.anno-toolbar__color-wrap{position:relative}.anno-toolbar__color-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.anno-toolbar__color-btn:hover{background:var(--surface-elevated)}.anno-toolbar__swatch{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.15);pointer-events:none}.anno-toolbar__color-dd{display:none;position:absolute;top:calc(100% + var(--space-2));left:50%;transform:translate(-50%);background:var(--surface-card);border:1px solid var(--outline-variant);border-radius:var(--radius-md);padding:var(--space-2);gap:var(--space-2);flex-wrap:wrap;width:116px;z-index:30;box-shadow:var(--shadow-float)}.anno-toolbar__color-dd--open{display:flex}.anno-toolbar__color-opt{width:22px;height:22px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:border-color var(--transition-fast);flex-shrink:0}.anno-toolbar__color-opt:hover,.anno-toolbar__color-opt--active{border-color:var(--text-primary)}.anno-toolbar__thick-wrap{position:relative}.anno-toolbar__thick-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.anno-toolbar__thick-btn:hover{background:var(--surface-elevated)}.anno-toolbar__thick-line{height:1px;width:14px;background:var(--text-muted);border-radius:var(--radius-full);pointer-events:none;transition:height .1s ease}.anno-toolbar__thick-pop{display:none;position:absolute;top:calc(100% + var(--space-2));left:50%;transform:translate(-50%);background:var(--surface-card);border:1px solid var(--outline-variant);border-radius:var(--radius-md);padding:var(--space-4);width:168px;z-index:30;box-shadow:var(--shadow-float)}.anno-toolbar__thick-pop--open{display:block}.anno-toolbar__thick-preview{height:16px;margin-bottom:var(--space-3);display:flex;align-items:center}.anno-toolbar__thick-preview-line{width:100%;background:var(--text-secondary);border-radius:var(--radius-full);height:2px;transition:height .1s ease}.anno-toolbar__thick-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;background:var(--surface-highest);border-radius:var(--radius-full);outline:none}.anno-toolbar__thick-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--primary);cursor:pointer;border:none}.anno-palette{position:absolute;z-index:50;background:#212121eb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);box-shadow:0 8px 32px #00000080;-webkit-user-select:none;user-select:none;transition:width var(--transition-base),height var(--transition-base);overflow:hidden}.anno-palette-handle{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);cursor:grab;border-bottom:1px solid rgba(255,255,255,.06)}.anno-palette-handle:active{cursor:grabbing}.anno-palette-drag-dots{display:flex;gap:3px;color:var(--text-muted);font-size:12px}.anno-palette-title{font-family:var(--font-mono);font-size:var(--fs-label-sm);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.anno-palette-toggle{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-muted);font-size:14px;cursor:pointer;border-radius:var(--radius-xs);transition:all var(--transition-fast)}.anno-palette-toggle:hover{color:var(--text-primary);background:#ffffff0f}.anno-palette-body{padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3)}.anno-palette--collapsed .anno-palette-body{display:none}.anno-palette--collapsed .anno-palette-handle{border-bottom:none}.anno-palette-row{display:flex;align-items:center;gap:var(--space-2)}.anno-palette-sep{width:1px;height:20px;background:#ffffff14;flex-shrink:0}.anno-tool{width:32px;height:32px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-secondary);font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);position:relative}.anno-tool:hover{background:#ffffff14;color:var(--text-primary)}.anno-tool--active{background:#01e0b41f;color:var(--primary);border:1px solid rgba(1,224,180,.3)}.anno-color-trigger{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.1);background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.anno-color-trigger:hover{border-color:#fff3}.anno-color-swatch{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.15)}.anno-color-dropdown{display:none;position:absolute;top:100%;left:0;margin-top:var(--space-2);padding:var(--space-2);background:var(--surface-card);border:1px solid var(--outline-variant);border-radius:var(--radius-sm);box-shadow:var(--shadow-float);z-index:60;gap:var(--space-1);flex-wrap:wrap;width:130px}.anno-color-dropdown--open{display:flex}.anno-color-opt{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color var(--transition-fast)}.anno-color-opt:hover,.anno-color-opt--active{border-color:var(--text-primary)}.anno-thick-popover{display:none;position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:var(--space-2);padding:var(--space-3);background:var(--surface-card);border:1px solid var(--outline-variant);border-radius:var(--radius-sm);box-shadow:var(--shadow-float);z-index:60;width:140px}.anno-thick-popover--open{display:block}.anno-thick-preview{height:12px;margin-bottom:var(--space-2)}.anno-thick-wedge{width:100%;height:100%;background:var(--text-muted);clip-path:polygon(0 calc(50% - 1px),0 calc(50% + 1px),100% 100%,100% 0);border-radius:2px}.anno-thick-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;background:var(--surface-highest);border-radius:var(--radius-full);outline:none}.anno-thick-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--primary);cursor:pointer;border:none}.anno-palette-label{font-family:var(--font-mono);font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--text-disabled)}:root{--pt-font-mono: "JetBrains Mono", monospace;--pt-row-pad: 6px;--pt-row-height: 125px;--pt-frame-w: 200px;--pt-frame-h: 113px}.prod-section{margin-bottom:32px}.prod-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--outline-variant);flex-wrap:wrap;gap:8px}.prod-section-title{font-size:12px;font-weight:700;font-style:italic;text-transform:uppercase;letter-spacing:.12em;color:var(--text-secondary)}.prod-section-count{font-family:var(--pt-font-mono);font-size:10px;color:var(--text-muted)}.prod-btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-sans);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:7px 14px;border-radius:var(--radius-xs);cursor:pointer;border:none;transition:all .2s cubic-bezier(.4,0,.2,1);text-decoration:none}.prod-btn-accent{background:var(--primary);color:#000}.prod-btn-accent:hover{filter:brightness(1.15)}.prod-btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid rgba(255,255,255,.12)}.prod-btn-ghost:hover{color:var(--text-primary);border-color:var(--text-muted);background:var(--surface-elevated)}.prod-btn-sm{padding:4px 10px;font-size:10px}.prod-btn-danger{background:var(--color-danger-soft);color:var(--color-danger);border:1px solid rgba(229,72,77,.2)}.prod-btn-danger:hover{background:#e5484d33}.prod-toolbar{display:flex;align-items:center;gap:6px;padding:8px 0;flex-wrap:wrap}.prod-toolbar-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:10px;font-family:var(--font-sans);font-weight:500;color:var(--text-muted);background:none;border:1px solid transparent;border-radius:var(--radius-xs);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.prod-toolbar-btn:hover{color:var(--text-secondary);border-color:var(--outline-variant)}.prod-toolbar-btn.active{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.prod-toolbar-badge{font-size:9px;background:var(--primary);color:#000;border-radius:var(--radius-full);padding:0 5px;font-weight:700;margin-left:2px}.prod-toolbar-sep{width:1px;height:16px;background:var(--outline-variant);margin:0 4px}.prod-toolbar-panel{background:#1a1a1a!important;border:1px solid #333!important;border-radius:var(--radius-sm);padding:12px;min-width:260px;max-width:360px;box-shadow:0 8px 32px #000c!important;z-index:99999!important;opacity:1!important}.prod-toolbar-panel-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:8px}.prod-toolbar-row{display:flex;align-items:center;gap:6px;margin-bottom:6px}.prod-toolbar-row:last-child{margin-bottom:0}.prod-tbar-input{padding:4px 8px;font-family:var(--font-sans);font-size:10px;background:var(--surface-highest);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-xs);color:var(--text-primary);outline:none;flex:1;min-width:0}.prod-tbar-input:focus{border-color:var(--primary)}.prod-tbar-select{padding:4px 20px 4px 8px;font-family:var(--font-sans);font-size:10px;background:var(--surface-highest);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-xs);color:var(--text-primary);outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5'%3E%3Cpath d='M0 0l4 5 4-5z' fill='%238A8A8A'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center}.prod-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:4px 0;font-size:11px;color:var(--text-secondary)}.prod-toggle-switch{width:28px;height:16px;border-radius:var(--radius-full);background:var(--surface-highest);border:1px solid rgba(255,255,255,.12);cursor:pointer;position:relative;transition:all var(--transition-fast)}.prod-toggle-switch.on{background:var(--primary);border-color:var(--primary)}.prod-toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:#fff;transition:all var(--transition-fast)}.prod-toggle-switch.on:after{left:14px}.prod-table-wrap{border:1px solid var(--outline-variant);border-radius:var(--radius-xs) var(--radius-xs) 0 0;position:relative;display:flex;overflow:hidden;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#111111bf}.table-left{flex-shrink:0;overflow:hidden;position:relative;z-index:2;box-shadow:2px 0 8px #00000026;border-right:2px solid var(--outline-variant);background:#0e0e0e99}.table-center{flex:1;overflow-x:auto;min-width:0;background:#11111180}.table-right{flex-shrink:0;overflow:hidden;border-left:2px solid var(--outline-variant);position:relative;z-index:1;box-shadow:-2px 0 8px #00000026;background:#0e0e0e99}.prod-table{border-collapse:collapse;font-size:11px;table-layout:fixed}.prod-table th{font-family:var(--pt-font-mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding:6px 10px;text-align:center;background:var(--surface-card);border-bottom:2px solid var(--outline-variant);font-weight:600;white-space:normal;word-wrap:break-word;position:relative;border-right:1px solid var(--outline-variant)}.prod-table th:last-child{border-right:none}.prod-table td{padding:var(--pt-row-pad) 10px;border-bottom:2px solid rgba(56,56,56,.4);color:var(--text-secondary);vertical-align:middle;border-right:1px solid rgba(56,56,56,.15);overflow:hidden;text-overflow:ellipsis;height:var(--pt-row-height, 98px)}.prod-table td:last-child{border-right:none}.prod-table tr:last-child td{border-bottom:none}.prod-table tr:hover td,.prod-table tr.hovered td{background:#1e1e1e59}.prod-table tr:hover .drag-handle,.prod-table tr.hovered .drag-handle,.prod-table tr:hover .row-actions,.prod-table tr.hovered .row-actions{opacity:1}.prod-table tr.selected td{background:var(--primary-soft)!important}.col-sel{width:32px!important;min-width:32px;max-width:32px;text-align:center;padding:var(--pt-row-pad) 4px!important;vertical-align:middle;background:inherit}.col-info{width:52px!important;min-width:52px;max-width:52px;text-align:center!important;vertical-align:middle;padding:var(--pt-row-pad) 4px!important;background:inherit}.cbox{width:14px;height:14px;border:1.5px solid rgba(255,255,255,.12);border-radius:3px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0;background:transparent;margin:0 auto}.cbox:hover{border-color:var(--text-muted)}.cbox.on{background:var(--primary);border-color:var(--primary)}.cbox.on i{display:block;font-size:10px;color:#000;line-height:1}.cbox:not(.on) i{display:none}.row-info{display:flex;align-items:center;gap:2px;justify-content:center;white-space:nowrap}.row-num{font-family:var(--pt-font-mono);font-size:13px;font-weight:700;color:var(--text-muted);min-width:16px;text-align:center}.drag-handle{opacity:0;cursor:grab;color:var(--text-muted);font-size:10px;transition:opacity var(--transition-fast);flex-shrink:0;line-height:1}.drag-handle:hover{color:var(--text-secondary)}.row-actions{opacity:0;display:flex;gap:1px;transition:opacity var(--transition-fast);flex-shrink:0}.row-action-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:11px;padding:1px;border-radius:var(--radius-xs);transition:all var(--transition-fast);line-height:1}.row-action-btn:hover{color:var(--text-primary);background:var(--surface-elevated)}.row-action-btn.danger:hover{color:var(--color-danger);background:var(--color-danger-soft)}.add-row-bar{cursor:pointer;transition:background var(--transition-fast);padding:8px 0;text-align:center;font-size:11px;color:var(--text-muted);border-top:none;border-left:1px solid var(--outline-variant);border-right:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant);border-radius:0 0 var(--radius-xs) var(--radius-xs)}.add-row-bar:hover{background:var(--primary-soft);color:var(--primary)}.prod-status{display:inline-flex;align-items:center;gap:4px;font-family:var(--pt-font-mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:var(--radius-xs);font-weight:500;cursor:pointer;border:1px solid}.prod-check{font-size:18px;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center;width:18px;height:18px;margin:0 auto}.prod-check.yes{color:var(--color-success)}.prod-check.no{color:var(--text-muted)}.selection-bar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:9998;background:var(--surface-elevated);border:1px solid var(--primary);border-radius:var(--radius-sm);padding:8px 16px;display:none;align-items:center;gap:12px;box-shadow:0 8px 24px #00000080;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.selection-bar.visible{display:flex}.selection-bar-count{font-size:11px;font-weight:500;color:var(--primary)}.selection-bar-actions{display:flex;gap:6px}.col-frame{width:calc(var(--pt-frame-w, 160px) + 8px)!important;min-width:calc(var(--pt-frame-w, 160px) + 8px);max-width:calc(var(--pt-frame-w, 160px) + 8px);padding:4px!important;vertical-align:middle;background:inherit}.frame-thumb{width:var(--pt-frame-w, 160px);height:var(--pt-frame-h, 90px);border-radius:var(--radius-xs);overflow:hidden;cursor:pointer;border:1px solid var(--outline-variant);background:var(--surface-card);display:flex;align-items:center;justify-content:center;flex-shrink:0}.frame-thumb img{width:100%;height:100%;object-fit:cover}.frame-thumb i{font-size:16px;color:var(--text-muted);opacity:.5}.frame-upload-area{margin-top:8px;padding:12px;border:1px dashed rgba(255,255,255,.12);border-radius:var(--radius-xs);text-align:center;cursor:pointer;transition:all var(--transition-fast);font-size:10px;color:var(--text-muted)}.frame-upload-area:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.sp-frame-hero{width:calc(100% + 48px);aspect-ratio:16/9;border-radius:var(--radius-sm) var(--radius-sm) 0 0;overflow:hidden;margin:-24px -24px 16px;cursor:pointer;background:var(--surface-card);display:flex;align-items:center;justify-content:center}.sp-frame-hero img{width:100%;height:100%;object-fit:cover}.sp-frame-hero i{font-size:32px;color:var(--text-muted);opacity:.3}.resize-handle{position:absolute;right:0;top:0;width:4px;height:100%;cursor:col-resize;z-index:4;background:transparent;transition:background var(--transition-fast)}.resize-handle:hover,.resize-handle.active{background:var(--primary);opacity:.8}.prod-tabs{display:flex;gap:0;border-bottom:1px solid var(--outline-variant);margin-bottom:0;align-items:stretch}.prod-tab{padding:8px 16px;font-family:var(--font-sans);font-size:11px;font-weight:500;color:var(--text-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;display:inline-flex;align-items:center;gap:4px}.prod-tab:hover{color:var(--text-secondary)}.prod-tab.active{color:var(--text-primary);border-bottom-color:var(--primary)}.prod-tab.sortable-ghost{opacity:.4;border-bottom-color:var(--primary)}.prod-view{display:none}.prod-view.active{display:block}.kanban-board{display:grid;gap:12px;padding:16px 0;min-height:200px}.kanban-col{background:#11111180;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid var(--outline-variant);border-radius:var(--radius-xs);display:flex;flex-direction:column;min-height:80px;transition:all var(--transition-fast)}.kanban-col.collapsed{min-height:auto}.kanban-col.collapsed .kanban-col-body,.kanban-col.collapsed .kanban-add-btn{display:none}.kanban-col-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--outline-variant);cursor:pointer;-webkit-user-select:none;user-select:none}.kanban-col-title{font-family:var(--pt-font-mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-weight:500}.kanban-col-count{font-family:var(--pt-font-mono);font-size:9px;color:var(--text-muted);background:var(--surface-elevated);padding:1px 6px;border-radius:var(--radius-full)}.kanban-col-body{padding:8px;display:flex;flex-direction:column;gap:6px;flex:1}.kanban-card{background:var(--surface-elevated);border:1px solid var(--outline-variant);border-radius:var(--radius-xs);padding:10px 12px;transition:border-color var(--transition-fast);position:relative;cursor:grab}.kanban-card:hover{border-color:#ffffff1f}.kanban-card:hover .kanban-card-del{opacity:1}.kanban-card-del{position:absolute;top:6px;right:6px;opacity:0;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:11px;padding:2px;border-radius:var(--radius-xs);transition:all var(--transition-fast)}.kanban-card-del:hover{color:var(--color-danger);background:var(--color-danger-soft)}.kanban-card-name{font-size:12px;font-weight:500;color:var(--text-primary);margin-bottom:4px}.kanban-card-desc{font-size:9px;color:var(--text-muted);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kanban-card-thumb{width:100%;height:60px;border-radius:var(--radius-xs);overflow:hidden;margin-bottom:6px;background:var(--surface-card);display:flex;align-items:center;justify-content:center}.kanban-card-thumb img{width:100%;height:100%;object-fit:cover}.kanban-card-tags{display:flex;gap:4px;flex-wrap:wrap}.kanban-tag{font-family:var(--pt-font-mono);font-size:8px;letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;border-radius:var(--radius-xs);font-weight:500;border:1px solid}.kanban-card--drag-over{border-color:var(--primary)!important}.kanban-card--dragging{opacity:.4;border-color:var(--primary)!important}.kanban-add-btn{margin:4px 8px 8px;padding:6px;text-align:center;font-size:10px;color:var(--text-muted);border:1px dashed rgba(255,255,255,.12);border-radius:var(--radius-xs);cursor:pointer;transition:all var(--transition-fast)}.kanban-add-btn:hover{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.kanban-empty{text-align:center;padding:24px 12px;font-size:10px;color:var(--text-muted)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:16px 0}.gallery-card{background:var(--surface-elevated);border:1px solid var(--outline-variant);border-radius:var(--radius-xs);overflow:hidden;transition:border-color var(--transition-fast)}.gallery-card:hover{border-color:#ffffff1f}.gallery-thumb{aspect-ratio:16/10;background:var(--surface-card);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--outline-variant);overflow:hidden}.gallery-thumb img{width:100%;height:100%;object-fit:cover}.gallery-thumb i{font-size:28px;color:var(--text-muted);opacity:.4}.gallery-card-body{padding:10px 12px}.gallery-card-name{font-size:12px;font-weight:500;color:var(--text-primary);margin-bottom:6px}.gallery-card-meta{display:flex;gap:4px;flex-wrap:wrap}.cal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 0 8px}.cal-title{font-size:13px;font-weight:600;color:var(--text-primary)}.cal-nav{display:flex;gap:4px}.cal-nav-btn{width:28px;height:28px;border-radius:var(--radius-xs);background:var(--surface-elevated);border:1px solid var(--outline-variant);color:var(--text-muted);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.cal-nav-btn:hover{color:var(--text-primary);border-color:var(--text-muted)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--outline-variant);border-radius:var(--radius-xs);overflow:hidden;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:#11111180}.cal-dow{font-family:var(--pt-font-mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-weight:500;padding:8px 6px;text-align:center;background:var(--surface-card);border-bottom:1px solid var(--outline-variant)}.cal-day{min-height:72px;padding:6px;border-right:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant);background:#1111114d;display:flex;flex-direction:column;position:relative}.cal-day:nth-child(7n){border-right:none}.cal-day.outside{opacity:.3}.cal-day.today .cal-day-num{background:var(--primary);color:#000;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.cal-day-num{font-family:var(--pt-font-mono);font-size:10px;color:var(--text-secondary);margin-bottom:4px;font-weight:500}.cal-event{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:1px 4px;border-radius:3px;cursor:pointer;transition:opacity var(--transition-fast)}.cal-event:hover{opacity:.8}.cal-bar{font-size:9px;padding:2px 6px;border-radius:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;margin-bottom:1px;font-weight:500}.cal-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}.cal-more{font-family:var(--pt-font-mono);font-size:9px;color:var(--text-muted);padding:1px 0}.cal-day-add{opacity:0;width:16px;height:16px;border-radius:50%;background:var(--primary);color:#000;font-size:11px;display:flex;align-items:center;justify-content:center;cursor:pointer;position:absolute;top:4px;right:4px;transition:opacity var(--transition-fast);line-height:1}.cal-day:hover .cal-day-add{opacity:1}.cal-mobile-list{display:none}.cell-dropdown-anchor{position:relative;cursor:pointer}.cell-dropdown{background:#1a1a1a!important;border:1px solid #333!important;border-radius:var(--radius-xs);min-width:140px;padding:4px 0;box-shadow:0 8px 32px #000c!important;z-index:99999!important;opacity:1!important}.cell-dropdown-item{padding:6px 12px;font-size:11px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;gap:6px;transition:background var(--transition-fast)}.cell-dropdown-item:hover{background:#2a2a2a;color:var(--text-primary)}.cell-dropdown-item.danger{color:var(--color-danger)}.cell-dropdown-item.danger:hover{background:var(--color-danger-soft)}.cell-dropdown-item.active{color:var(--primary)}.ctx-sep{height:1px;background:#484848;margin:4px 0}.field-popover{background:#1a1a1a!important;border:1px solid #333!important;border-radius:var(--radius-sm);padding:12px;min-width:200px;box-shadow:0 8px 32px #000c!important;z-index:99999!important;opacity:1!important}.field-popover-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:8px}.field-input{width:100%;padding:6px 8px;font-family:var(--font-sans);font-size:11px;background:var(--surface-highest);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-xs);color:var(--text-primary);outline:none}.field-input:focus{border-color:var(--primary)}.field-select{width:100%;padding:6px 24px 6px 8px;font-family:var(--font-sans);font-size:11px;background:var(--surface-highest);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-xs);color:var(--text-primary);outline:none;margin-top:6px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238A8A8A'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.field-select:focus{border-color:var(--primary)}.field-popover-actions{display:flex;gap:6px;margin-top:10px;justify-content:flex-end}.todo-cell{display:flex;align-items:center;gap:3px;flex-wrap:wrap}.todo-tag{display:inline-flex;align-items:center;gap:2px;font-family:var(--pt-font-mono);font-size:8px;letter-spacing:.04em;text-transform:uppercase;padding:2px 5px;border-radius:var(--radius-xs);font-weight:500;border:1px solid;white-space:nowrap}.todo-tag-x{cursor:pointer;opacity:.5;font-size:9px;line-height:1;margin-left:1px;transition:opacity var(--transition-fast)}.todo-tag-x:hover{opacity:1;color:var(--color-danger)}.todo-add-btn{width:18px;height:18px;border-radius:var(--radius-xs);border:1px dashed rgba(255,255,255,.12);background:none;color:var(--text-muted);font-size:10px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.todo-add-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.todo-search{width:100%;padding:5px 8px;font-family:var(--font-sans);font-size:11px;background:var(--surface-highest);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-xs);color:var(--text-primary);outline:none}.todo-search:focus{border-color:var(--primary)}.todo-search::placeholder{color:var(--text-muted)}.todo-picker-list{max-height:180px;overflow-y:auto}.todo-picker-item{padding:6px 10px;font-size:11px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:background var(--transition-fast)}.todo-picker-item:hover{background:var(--surface-highest)}.todo-picker-check{width:14px;font-size:11px;color:var(--primary);flex-shrink:0;text-align:center}.todo-picker-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}.desc-cell{cursor:pointer;position:relative}.desc-cell:hover{background:var(--surface-elevated);border-radius:var(--radius-xs)}.desc-text{font-size:10px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:2px 4px}.desc-placeholder{font-size:10px;color:var(--text-disabled)!important;font-style:italic!important;font-weight:300!important;padding:2px 4px}.desc-textarea{font-family:var(--font-sans);font-size:10px;color:var(--text-primary);line-height:1.5;background:var(--surface-elevated);border:1px solid var(--primary);border-radius:var(--radius-xs);padding:4px 6px;width:100%;min-width:120px;min-height:28px;max-height:120px;resize:none;outline:none;display:block;overflow:hidden}.desc-saving{display:inline-flex;align-items:center;gap:4px;font-size:9px;color:var(--text-muted);padding:2px 4px}@keyframes desc-spin{to{transform:rotate(360deg)}}.desc-spinner{width:10px;height:10px;border:1.5px solid rgba(255,255,255,.12);border-top-color:var(--primary);border-radius:50%;animation:desc-spin .6s linear infinite}.cell-inline-input{width:100%;height:100%;min-height:28px;padding:3px 6px;background:var(--surface-elevated);border:1px solid var(--primary);border-radius:var(--radius-xs);color:var(--text-primary);font-family:var(--font-sans);font-size:11px;outline:none;box-sizing:border-box;display:block}.cell-inline-input.primary-input{font-weight:500;font-size:12px}.cell-inline-input::-webkit-inner-spin-button{display:none}.th-header{display:block;white-space:normal;word-wrap:break-word;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.3;min-width:0}.th-arrow{opacity:0;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:10px;padding:2px;transition:opacity var(--transition-fast);line-height:1;flex-shrink:0;position:absolute;right:6px;top:50%;transform:translateY(-50%)}th:hover .th-arrow{opacity:1}.th-arrow:hover{color:var(--primary)}.add-field-th{width:40px;min-width:40px;text-align:center;padding:var(--pt-row-pad) 6px!important;background:var(--surface-card);border-right:none!important;border-left:none!important}.add-field-td{width:40px;min-width:40px;background:var(--surface-card);border-right:none!important;border-left:none!important}.add-field-btn{width:22px;height:22px;border-radius:var(--radius-xs);border:1px dashed rgba(255,255,255,.12);background:none;color:var(--text-muted);font-size:11px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.add-field-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.sortable-header-ghost{opacity:.4;border:1px dashed var(--primary)!important}.sortable-header-chosen{background:var(--surface-elevated)!important}.sortable-row-ghost{opacity:.4}.sortable-row-chosen td{background:var(--primary-soft)!important}[data-dnd-dragging]{opacity:.4}.group-row td{background:var(--surface-card);padding:6px 12px;font-size:10px;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--outline-variant)}.prod-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20000;background:#000000d9;display:flex;align-items:center;justify-content:center;cursor:zoom-out}.prod-lightbox img{max-width:90vw;max-height:90vh;border-radius:var(--radius-sm);box-shadow:0 0 40px #00000080}.prod-lightbox-close{position:absolute;top:20px;right:20px;background:none;border:none;color:#fff;font-size:24px;cursor:pointer;opacity:.7;transition:opacity var(--transition-fast)}.prod-lightbox-close:hover{opacity:1}.prod-expand-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50000;background:#000000b3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center}.prod-expand-modal{width:560px;max-height:85vh;overflow-y:auto;background:#111;border:1px solid #2a2a2a;border-radius:10px;padding:24px;box-shadow:0 24px 64px #000c;transform:scale(.96);opacity:0;transition:transform .2s ease,opacity .2s ease}.prod-expand-overlay.open .prod-expand-modal{transform:scale(1);opacity:1}.sp-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--outline-variant)}.sp-title{font-size:14px;font-weight:600;color:var(--text-primary)}.sp-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:18px}.sp-close:hover{color:var(--text-primary)}.sp-field{margin-bottom:12px}.sp-label{font-family:var(--pt-font-mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.sp-value{font-size:12px;color:var(--text-secondary);padding:6px 8px;background:#1c1c1c;border-radius:var(--radius-xs);min-height:28px;word-break:break-word}.sp-history{margin-top:16px;padding-top:12px;border-top:1px solid var(--outline-variant)}.sp-hist-item{display:flex;gap:8px;padding:6px 0;font-size:10px;color:var(--text-muted);border-bottom:1px solid rgba(56,56,56,.3)}.sp-hist-item:last-child{border-bottom:none}.prod-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20001;background:#0009;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center}.prod-modal-panel{background:#1a1a1a;border:1px solid #333;border-radius:var(--radius-sm);padding:20px;min-width:320px;max-width:420px;box-shadow:0 16px 48px #000c}.prod-modal-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:12px}.prod-modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.pt-toast-container{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:8px;pointer-events:none}.pt-toast{padding:10px 16px;border-radius:var(--radius-xs);font-size:12px;font-family:var(--font-sans);max-width:360px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid;pointer-events:auto;animation:pt-toast-in .2s ease}@keyframes pt-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.pt-toast--success{background:#3dd68c26;color:var(--color-success);border-color:#3dd68c4d}.pt-toast--error{background:#e5484d26;color:var(--color-danger);border-color:#e5484d4d}@media(max-width:1024px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.prod-expand-modal{width:calc(100vw - 32px);max-height:90vh;padding:16px}}@media(max-width:900px){[data-hide-bp="1"]{display:none!important}}@media(max-width:800px){[data-hide-bp="2"]{display:none!important}}@media(max-width:768px){.kanban-board{overflow-x:auto}.cal-grid,.cal-dow{display:none}.cal-mobile-list{display:block;padding:8px 0}.prod-toolbar{overflow-x:auto}}@media(max-width:700px){[data-hide-bp="3"]{display:none!important}}@media(max-width:480px){.gallery-grid{grid-template-columns:1fr}}.prod-tab.active:focus-visible,.prod-btn-accent:focus-visible{outline:2px solid #fff;outline-offset:2px}html,body{height:100%}@keyframes fadeInUp{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}*:not(input):not(textarea):not([contenteditable=true]){caret-color:transparent}#root{position:relative;z-index:1;min-height:100vh}input,textarea,select{font-family:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--surface-variant);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-disabled)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-12) var(--space-8);text-align:center}.empty-icon{font-size:32px;color:var(--text-muted);opacity:.4}.empty-title{font-weight:var(--fw-semibold);font-size:var(--fs-body-lg);color:var(--text-secondary)}.empty-sub{font-size:var(--fs-body-sm);color:var(--text-muted)}.spinner{width:24px;height:24px;border:2px solid var(--outline-variant);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,var(--surface-card) 25%,var(--surface-elevated) 50%,var(--surface-card) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.form-input{width:100%;background:var(--surface-elevated);border:1px solid var(--outline-variant);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--fs-body-sm);transition:border-color var(--transition-fast);outline:none}.form-input:focus{border-color:#01e0b466}.form-input.error{border-color:var(--color-danger)}.form-input::placeholder{color:var(--text-muted)}.form-label{display:block;font-size:var(--fs-label-lg);font-weight:var(--fw-semibold);color:var(--text-secondary);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.05em}.form-error{font-size:.625rem;color:var(--color-danger);margin-top:var(--space-1)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);cursor:pointer;border:none;transition:all var(--transition-fast);white-space:nowrap}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-glow-primary)}.btn.btn-secondary{border:1px solid var(--outline-variant)}.btn.btn-secondary:hover:not(:disabled){border-color:#01e0b433}.btn.btn-danger{border:1px solid rgba(248,113,113,.2)}.btn-icon{width:32px;height:32px;padding:0;border-radius:var(--radius-sm)}.badge-green{background:#4ade801f;color:var(--color-success)}.badge-amber{background:#fbbf241f;color:var(--color-warning)}.badge-red{background:#f871711f;color:var(--color-danger)}.badge-accent{background:#01e0b41f;color:var(--primary)}.badge-indigo{background:#60a5fa1f;color:var(--color-info)}.badge-muted{background:var(--surface-elevated);color:var(--text-muted)}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.badge-pulse:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;animation:pulse-dot 1.5s infinite}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4)}.modal{background:var(--surface-card);border:1px solid var(--outline-variant);border-radius:var(--radius-xl);padding:var(--space-8);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-float)}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.modal-title{font-size:var(--fs-headline-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:var(--z-modal)}.drawer{position:fixed;top:0;right:0;bottom:0;width:480px;background:var(--surface-low);border-left:1px solid var(--outline-variant);z-index:calc(var(--z-modal) + 1);display:flex;flex-direction:column;overflow:hidden;animation:slideIn var(--transition-slow) ease}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--outline-variant);flex-shrink:0}.drawer-title{font-size:var(--fs-body-lg);font-weight:var(--fw-semibold)}.drawer-body{flex:1;overflow-y:auto;padding:var(--space-6)}@media(max-width:768px){.drawer{width:100%}}.app-sidebar{border-right:1px solid var(--outline-variant)}.sidebar-section-label--mt{margin-top:var(--space-4)}.nav-item--btn{border:none;background:none;cursor:pointer;width:100%;text-align:left}.sidebar-user{margin-top:auto;padding:var(--space-4);border-top:1px solid var(--outline-variant)}.sidebar-user-inner{display:flex;align-items:center;gap:var(--space-2)}.sidebar-username{color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-header--fixed{grid-column:1 / -1;position:fixed;top:0;left:0;right:0;z-index:var(--z-header)}.app-main--studio{padding-top:72px}.app-main--fullheight{margin-left:180px;height:calc(100vh - 72px);display:flex;flex-direction:column;overflow:hidden}@media(max-width:1024px){.app-main--fullheight{margin-left:48px}}@media(max-width:768px){.app-main--fullheight{margin-left:0}}.avatar{border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:var(--fw-semibold);flex-shrink:0;background:linear-gradient(135deg,var(--secondary-container, #145242),var(--primary));color:#00382b}.avatar-sm{width:22px;height:22px;font-size:9px}.avatar-md{width:32px;height:32px;font-size:13px}.page-hero{margin-bottom:var(--space-8)}.page-hero-label{font-family:var(--font-mono);font-size:var(--fs-label-sm);font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--primary);margin-bottom:var(--space-2)}.page-hero-title{font-family:var(--font-sans);font-weight:var(--fw-black);font-style:italic;font-size:var(--fs-display-lg);text-transform:uppercase;letter-spacing:-.02em;line-height:var(--lh-tight);color:var(--text-primary);margin-bottom:var(--space-2)}.page-hero-subtitle{font-size:var(--fs-body-lg);color:var(--text-secondary)}.stats-row{display:flex;align-items:stretch;background:var(--surface-card);border-radius:var(--radius-lg);border:1px solid var(--outline-variant);overflow:hidden}.stat-card{flex:1;padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-1);position:relative;transition:background var(--transition-base)}.stat-card:hover{background:var(--surface-elevated)}.stat-card+.stat-card:before{content:"";position:absolute;left:0;top:20%;height:60%;width:1px;background:#ffffff12}.stat-label{font-family:var(--font-mono);font-size:var(--fs-label-sm);font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--text-muted)}.stat-value{font-family:var(--font-sans);font-weight:var(--fw-black);font-style:italic;font-size:var(--fs-display-md);line-height:var(--lh-tight)}.stat-value--accent{color:var(--primary)}.stat-value--info{color:var(--color-info)}.stat-value--warning{color:var(--color-warning)}.stat-value--success{color:var(--color-success)}.section-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.section-header-left{display:flex;align-items:baseline;gap:var(--space-3)}.section-count{font-family:var(--font-mono);font-size:var(--fs-label-lg);color:var(--text-muted)}.filter-bar{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap}.filter-pill{display:inline-flex;align-items:center;gap:6px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);border:none;background:transparent;color:var(--text-muted);font-family:var(--font-sans);font-size:var(--fs-label-lg);font-weight:var(--fw-semibold);cursor:pointer;transition:all var(--transition-fast)}.filter-pill:hover{color:var(--text-secondary);background:var(--surface-elevated)}.filter-pill--active{background:#01e0b41a;color:var(--primary)}.filter-count{font-family:var(--font-mono);font-size:.55rem;background:var(--surface-elevated);padding:1px 5px;border-radius:var(--radius-full)}.filter-pill--active .filter-count{background:#01e0b426;color:var(--primary)}@media(max-width:768px){.hide-mobile{display:none!important}}@media(min-width:769px)and (max-width:1024px){.hide-tablet{display:none!important}}@media(min-width:1025px){.hide-desktop{display:none!important}}.section-title{font-size:var(--fs-headline-sm)}.btn.btn-primary{background:var(--primary-container);color:#00382b}.btn.btn-primary:hover:not(:disabled){background:var(--primary-dim)}.btn.btn-secondary{background:var(--surface-elevated);color:var(--text-primary)}.btn.btn-ghost{background:transparent;color:var(--text-secondary)}.btn.btn-ghost:hover:not(:disabled){background:var(--surface-elevated);color:var(--text-primary)}.btn.btn-danger{background:#f8717126;color:var(--color-danger)}.badge-active{background:#01e0b426;color:var(--primary)}.badge-pending{background:#fbbf241a;color:var(--color-warning)}.badge-error{background:#f871711a;color:var(--color-danger)}.badge-final{background:#60a5fa1a;color:var(--color-info)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
