:root{
  --studio:#111315;
  --studio-deep:#08090a;
  --panel:#1b1d20;
  --panel-raised:#222428;
  --panel-soft:#17191b;
  --ink:#f1ede3;
  --muted:#9b9890;
  --muted-dark:#6f7072;
  --line:#36393e;
  --line-strong:#4a4d52;
  --gold:#e6b84c;
  --gold-light:#f0c860;
  --gold-soft:#2d281b;
  --red:#d85a50;
  --green:#63a47c;
  --blue:#6d91b8;
  --violet:#8f7ab8;
  --orange:#c98a45;
  --status-pending:#8d929b;
  --status-production:#e5a000;
  --status-self:#7c3aed;
  --status-group:#f2c94c;
  --status-ai:#2f6feb;
  --status-rework:#d92d20;
  --status-exception:#a66a00;
  --status-completed:#2dbe60;
  --sans:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  font-family:var(--sans);
  color:var(--ink);
  background:var(--studio);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--studio)}
body{margin:0;min-height:100vh;color:var(--ink);background:radial-gradient(circle at 8% 0,rgba(230,184,76,.08),transparent 25%),linear-gradient(145deg,#17191c,#0f1113 65%);font-size:14px}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}

/* Studio header */
.studio-header{position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line);background:rgba(8,9,10,.97);backdrop-filter:blur(14px)}
.studio-header-inner{max-width:1560px;min-height:72px;margin:auto;padding:0 clamp(18px,3.2vw,52px);display:flex;align-items:center;gap:28px}
.studio-brand{display:flex;align-items:center;gap:12px;min-width:238px}
.studio-brand>span:last-child,.login-brand>div{display:grid;gap:3px}
.studio-brand strong,.login-brand strong{font-size:16px;font-weight:700;letter-spacing:.4px}
.studio-brand small,.login-brand small{color:#8c8983;font-size:11px;letter-spacing:1.4px}
.clapper-logo{position:relative;display:grid;place-items:center;width:46px;height:38px;margin-top:7px;color:#17130a;background:var(--gold)}
.clapper-logo i{position:absolute;left:0;top:-8px;width:46px;height:7px;transform:skewX(-12deg);transform-origin:left bottom;background:repeating-linear-gradient(135deg,#eee9df 0 7px,#17191b 7px 14px)}
.clapper-logo b{font-size:15px}
.studio-nav{display:flex;align-self:stretch;gap:4px}
.studio-nav a{display:flex;align-items:center;gap:7px;padding:0 13px;border-bottom:2px solid transparent;color:#aaa69e;white-space:nowrap}
.studio-nav a span{color:#77787b}
.studio-nav a:hover,.studio-nav a.active{color:var(--gold-light)}
.studio-nav a.active{border-bottom-color:var(--gold)}
.studio-nav a.active span{color:var(--gold)}
.dispatch-nav-badge{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:10px;color:#17130a;background:var(--gold);font-size:10px;line-height:1;font-weight:800}
.dispatch-nav-badge[hidden]{display:none}.dispatch-nav-badge.is-critical{color:#fff;background:#c84f46;box-shadow:0 0 0 3px rgba(200,79,70,.14)}
.studio-account{display:flex;align-items:center;gap:9px;margin-left:auto}
.studio-account>span{display:grid;gap:2px;text-align:right}
.studio-account strong{font-size:12px}.studio-account small{color:var(--muted);font-size:11px}
.studio-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#17130a;background:var(--gold)}
.studio-account form button{padding:7px;border:0;color:#88857f;background:transparent}
.studio-account form button:hover{color:var(--gold)}

/* Shared */
.studio-main{max-width:1560px;margin:auto;padding:30px clamp(18px,3.2vw,52px) 70px}
.call-sheet-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}
.call-sheet-header.compact{margin-bottom:16px}
.call-sheet-header h1{margin:6px 0 5px;font-size:34px;line-height:1.1;font-weight:600;letter-spacing:.5px}
.call-sheet-header p{margin:0;color:var(--muted)}
.cinema-eyebrow,.panel-heading span,.form-slate>span{color:#d1ad55;font-size:11px;font-weight:700;letter-spacing:1.5px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 15px;border:1px solid var(--line-strong);border-radius:0;color:var(--ink);background:var(--panel-raised);font-size:12px;font-weight:700;white-space:nowrap}
.button:hover{border-color:#77736a;background:#292b2f}
.button.primary{color:#17130a;border-color:var(--gold);background:var(--gold)}
.button.primary:hover{background:var(--gold-light)}
.button.secondary{color:var(--gold-light);border-color:#8f783e;background:transparent}
.button.ghost{color:#b4b0a7;background:transparent}
.button.success{color:#fff;border-color:var(--green);background:#48795c}
.button.warning{color:#f3d580;border-color:#8a7036;background:#3a311d}
.button.danger{color:#fff;border-color:var(--red);background:#a7443c}
.button.wide{width:100%}
.danger-text{color:#ed7168!important}
.alert-strip{margin:0 0 18px;padding:12px 15px;border-left:3px solid var(--orange);color:#e4c99b;background:#2a2218}
.alert-strip strong{color:#f0c05d}
.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:66px;padding:13px 17px;border-bottom:1px solid var(--line)}
.panel-heading.compact{min-height:60px}
.panel-heading>div{display:grid;gap:3px}
.panel-heading h2{margin:0;font-size:17px;font-weight:600}
.panel-heading>a,.panel-heading>small{color:var(--muted);font-size:11px}
.empty-card{padding:22px;border:1px dashed #484b50;color:#89867f;background:#17191b;text-align:center;font-size:12px}
.large-empty{min-height:190px;display:grid;place-items:center}

/* Dashboard */
.production-kpis{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:18px;border:1px solid var(--line);background:var(--panel)}
.production-kpis article{--kpi-color:var(--gold);position:relative;display:grid;grid-template-columns:1fr auto;gap:4px 14px;padding:18px 18px 18px 21px;border-right:1px solid var(--line)}
.production-kpis article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--kpi-color)}
.production-kpis .kpi-production{--kpi-color:var(--status-production)}.production-kpis .kpi-review{--kpi-color:var(--status-group)}.production-kpis .kpi-rework{--kpi-color:var(--status-rework)}.production-kpis .kpi-completed{--kpi-color:var(--status-completed)}
.production-kpis article:last-child{border-right:0}
.production-kpis small{grid-column:1/3;color:#8f8c85;font-size:11px;letter-spacing:1px}
.production-kpis strong{grid-row:2/4;color:var(--kpi-color);font-size:38px;font-weight:600;line-height:1}
.production-kpis span{align-self:end;font-weight:700}.production-kpis em{color:var(--muted);font-size:11px;font-style:normal}
.filmstrip-flow{display:grid;grid-template-columns:repeat(8,1fr);margin-bottom:18px;border:1px solid var(--line);background:var(--studio-deep)}
.filmstrip-flow a{--stage-color:var(--status-pending);--stage-soft:rgba(141,146,155,.12);position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;min-height:56px;padding:12px;border-right:1px solid #303338;box-shadow:inset 0 -3px var(--stage-color);color:#b1aea7;background:linear-gradient(180deg,transparent,var(--stage-soft))}
.filmstrip-flow a:last-child{border-right:0}.filmstrip-flow a:hover{background:var(--stage-soft)}
.filmstrip-flow a:before,.filmstrip-flow a:after{content:"";position:absolute;left:7px;width:8px;height:4px;background:#313338}
.filmstrip-flow a:before{top:3px}.filmstrip-flow a:after{bottom:3px}
.filmstrip-flow span{margin-left:10px;color:var(--stage-color);font-size:11px;font-weight:800}.filmstrip-flow small{font-size:10px;white-space:nowrap}.filmstrip-flow b{color:var(--stage-color);font-size:21px}
.production-board-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}
.shooting-board,.producer-sidebar>section,.control-console,.scene-directory,.take-section,.scene-sidebar>section,.crew-control,.crew-board,.audit-console,.production-form{border:1px solid var(--line);background:var(--panel)}
.scene-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
.scene-card{--task-color:var(--status-pending);--task-soft:rgba(141,146,155,.13);position:relative;display:grid;grid-template-rows:92px auto auto;gap:11px;min-width:0;padding:14px 14px 14px 18px;border-left:4px solid var(--task-color);background:#1c1e21}
.scene-card:hover{background:#232529;box-shadow:inset 0 0 0 1px var(--task-color)}
.scene-number{position:absolute;z-index:2;top:22px;left:6px;padding:6px 8px;color:#17130a;background:var(--gold);font-size:11px;letter-spacing:.7px}
.scene-poster{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-rows:1fr auto;align-items:end;gap:4px;padding:14px 16px;overflow:hidden;border:1px solid color-mix(in srgb,var(--task-color) 42%,var(--line));background:linear-gradient(135deg,var(--task-soft),#16181b 72%)}
.scene-poster:before{content:"";position:absolute;inset:0;opacity:.65;background:linear-gradient(120deg,transparent 40%,rgba(0,0,0,.85)),repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 2px,transparent 2px 12px)}
.scene-poster small,.scene-poster span,.scene-poster strong{position:relative}.scene-poster small{align-self:start;color:#aaa69e;font-size:10px;letter-spacing:1px}.scene-poster span{grid-row:2;color:var(--muted);font-size:9px;letter-spacing:1.2px}.scene-poster strong{grid-column:2;grid-row:1/3;color:var(--task-color);font-size:22px;font-weight:700;text-align:right}
.scene-copy{display:grid;gap:4px}.scene-copy small,.scene-copy p{color:var(--muted);font-size:11px}.scene-copy h3{margin:0;font-size:18px;font-weight:600}.scene-copy p{margin:0}
.scene-status{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid var(--line)}.scene-status time{color:var(--muted);font-size:11px}
.producer-sidebar{display:grid;align-content:start;gap:18px}.live-mark{color:var(--red);font-size:11px}
.live-work-item{display:grid;grid-template-columns:40px 9px 1fr;gap:9px;align-items:start;padding:13px 16px;border-bottom:1px solid var(--line)}
.live-work-item time{color:var(--gold);font-size:11px}.live-work-item i{width:7px;height:7px;margin-top:4px;border-radius:50%;background:var(--gold)}
.live-work-item span{display:grid;gap:3px}.live-work-item strong{font-size:12px}.live-work-item small{color:var(--muted);font-size:11px}
.review-room-item{display:grid;grid-template-columns:38px 1fr;gap:10px;padding:13px 16px;border-bottom:1px solid var(--line)}
.review-room-item>b{display:grid;place-items:center;width:34px;height:34px;color:#17130a;background:var(--status-group);font-size:11px}.review-room-item:nth-of-type(2)>b{color:#fff;background:var(--status-ai)}.review-room-item.retake>b{color:#fff;background:var(--status-rework)}
.review-room-item span{display:grid;gap:3px}.review-room-item strong{font-size:12px}.review-room-item small{color:var(--muted);font-size:11px}
.work-rule{padding:16px}.work-rule strong{color:var(--gold-light)}.work-rule p{margin:7px 0 0;color:var(--muted);font-size:11px;line-height:1.7}

/* Task directory */
.control-console{margin-bottom:18px;padding:15px}
.filter-bar{display:grid;grid-template-columns:minmax(260px,1fr) 220px auto auto;gap:10px;align-items:end}
.filter-bar label{display:grid;gap:6px}.filter-bar label>span,.form-grid label>span,.stack-form label{color:#aaa69e;font-size:11px;font-weight:700}
input,select,textarea,.form-control{width:100%;padding:11px 12px;border:1px solid var(--line-strong);border-radius:0;outline:none;color:var(--ink);background:#111315}
input:focus,select:focus,textarea:focus,.form-control:focus{border-color:var(--gold);box-shadow:inset 3px 0 var(--gold)}
select{color-scheme:dark}
.scene-entry{--task-color:var(--status-pending);padding:20px 20px 20px 24px;border-left:4px solid var(--task-color);border-bottom:1px solid var(--line)}.scene-entry:last-child{border-bottom:0}
.scene-entry>header{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:16px;align-items:center}
.scene-index{color:var(--gold);font-size:12px;letter-spacing:1px}.scene-entry header>a{display:grid;gap:3px}.scene-entry header>a>small{color:#d2ad54;font-size:11px}.scene-entry h2{margin:0;font-size:22px;font-weight:600}.scene-entry header>a>span{color:var(--muted);font-size:11px}
.scene-entry-status{display:flex;gap:7px;align-items:center}.scene-facts{display:grid;grid-template-columns:repeat(5,1fr);margin:16px 0 13px;border-block:1px solid var(--line)}
.scene-facts>span{display:grid;gap:4px;padding:11px 13px;border-right:1px solid var(--line)}.scene-facts>span:last-child{border-right:0}.scene-facts small{color:var(--muted);font-size:11px}.scene-facts strong{font-size:12px}
.status{display:inline-flex;width:max-content;padding:5px 10px;border:0;border-radius:999px;color:#fff;background:var(--status-pending);box-shadow:0 0 0 1px rgba(255,255,255,.08);font-size:11px;font-style:normal;font-weight:800;white-space:nowrap}
.status.large{padding:7px 13px;font-size:12px}.status-pending{color:#fff;background:var(--status-pending)}.status-production{color:#17130a;background:var(--status-production)}.status-self{color:#fff;background:var(--status-self)}.status-group{color:#17130a;background:var(--status-group)}.status-ai{color:#fff;background:var(--status-ai)}.status-rework{color:#fff;background:var(--status-rework)}.status-completed{color:#fff;background:var(--status-completed)}.status-exception{color:#fff;background:var(--status-exception)}
.task-pending{--task-color:var(--status-pending);--task-soft:rgba(141,146,155,.13)}.task-production{--task-color:var(--status-production);--task-soft:rgba(229,160,0,.14)}.task-self_check{--task-color:var(--status-self);--task-soft:rgba(124,58,237,.15)}.task-group_review{--task-color:var(--status-group);--task-soft:rgba(242,201,76,.13)}.task-ai_review{--task-color:var(--status-ai);--task-soft:rgba(47,111,235,.15)}.task-rework{--task-color:var(--status-rework);--task-soft:rgba(217,45,32,.15)}.task-exception{--task-color:var(--status-exception);--task-soft:rgba(166,106,0,.15)}.task-completed{--task-color:var(--status-completed);--task-soft:rgba(45,190,96,.14)}
.stage-pending{--stage-color:var(--status-pending);--stage-soft:rgba(141,146,155,.12)}.stage-production{--stage-color:var(--status-production);--stage-soft:rgba(229,160,0,.14)}.stage-self{--stage-color:var(--status-self);--stage-soft:rgba(124,58,237,.15)}.stage-group{--stage-color:var(--status-group);--stage-soft:rgba(242,201,76,.13)}.stage-ai{--stage-color:var(--status-ai);--stage-soft:rgba(47,111,235,.15)}.stage-rework{--stage-color:var(--status-rework);--stage-soft:rgba(217,45,32,.15)}.stage-exception{--stage-color:var(--status-exception);--stage-soft:rgba(166,106,0,.15)}.stage-completed{--stage-color:var(--status-completed);--stage-soft:rgba(45,190,96,.14)}
.mini-flag{display:inline-flex;width:max-content;padding:5px 7px;color:#f17b72;border:1px solid #c84c43;font-size:11px}
.stage-times-grid,.timecode-strip{display:grid;grid-template-columns:repeat(7,1fr);background:var(--studio-deep)}
.stage-time{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;min-height:66px;padding:11px;border-right:1px solid #303338;border-bottom:3px solid #303338;color:#75767a}
.stage-time:last-child{border-right:0}.stage-time i{grid-row:1/3;align-self:center;color:#55585d;font-size:11px;font-style:normal}.stage-time b{font-size:11px}.stage-time time{font-size:11px;white-space:nowrap}
.stage-time.recorded{color:#b8b4ab;border-bottom-color:#77746d}.stage-time.current{color:var(--stage-color);border-bottom-color:var(--stage-color);background:var(--stage-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--stage-color) 28%,transparent)}.stage-time.current i{color:var(--stage-color)}
.duration-board{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;margin-top:1px;background:var(--line)}
.duration-board-detail{margin:0 0 15px;border:1px solid var(--line)}
.duration-chip{position:relative;display:grid;gap:5px;min-width:0;padding:12px 13px;background:#17191b}
.duration-chip:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:#4b4e52}
.duration-chip small{color:#8f8d87;font-size:10px;white-space:nowrap}
.duration-chip strong{overflow:hidden;color:#d8d3c9;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}
.duration-chip.current{background:linear-gradient(110deg,var(--stage-soft),#191a1c)}
.duration-chip.current:before{width:4px;background:var(--stage-color)}
.duration-chip.current small,.duration-chip.current strong{color:var(--stage-color)}
[data-duration-live="true"]:after{content:" ●";color:var(--red);font-size:8px;vertical-align:middle}
.table-timer{color:#ddd6c8;font-size:11px;font-weight:600;white-space:nowrap}
.scene-runtime{display:flex;align-items:center;justify-content:space-between;padding:9px 10px;border-left:3px solid var(--task-color);background:var(--task-soft)}
.scene-runtime small{color:#b9b5ad;font-size:10px}.scene-runtime strong{color:var(--task-color);font-size:12px}

/* Task detail */
.scene-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:36px}.scene-toolbar>div{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:11px}
.production-slate{position:relative;display:grid;grid-template-columns:2fr .7fr 1fr 1fr;border:1px solid var(--line-strong);background:var(--line-strong);gap:1px}
.slate-clap{position:absolute;left:-1px;right:-1px;top:-22px;height:21px;transform:skewX(-4deg);transform-origin:left bottom;border:1px solid var(--line-strong);background:repeating-linear-gradient(135deg,#ece7dd 0 28px,#17191b 28px 56px)}
.production-slate>div:not(.slate-clap){display:grid;gap:5px;padding:13px 15px;background:var(--panel-raised)}.production-slate small{color:#918e87;font-size:11px;letter-spacing:.8px}.production-slate b{font-weight:600}
.production-slate .slate-title{grid-column:1/5;display:flex!important;align-items:center;justify-content:space-between;gap:14px;background:var(--panel-soft)!important}.slate-title span{display:grid;gap:4px}.slate-title h1{margin:0;font-size:30px;font-weight:600}.slate-title strong{margin-left:auto}.slate-title .status{padding:8px 14px}
.reel-workflow{display:grid;grid-template-columns:repeat(6,1fr);margin:15px 0;background:var(--studio-deep)}
.reel-workflow>span{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;padding:13px 11px;border-right:1px solid #303338;border-bottom:3px solid #303338;color:#75767a}.reel-workflow i{grid-row:1/3;align-self:center;color:#55585d;font-style:normal;font-size:11px}.reel-workflow b{font-size:12px}.reel-workflow time{font-size:11px}.reel-workflow .recorded{color:#b9b5ac;border-bottom-color:#77746d}.reel-workflow .current{color:var(--stage-color);border-bottom-color:var(--stage-color);background:var(--stage-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--stage-color) 28%,transparent)}.reel-workflow .current i{color:var(--stage-color)}
.retake-banner{display:flex;align-items:center;gap:10px;margin:-3px 0 15px;padding:10px 13px;color:#f29a92;background:#2d1c1b;border-left:3px solid var(--red)}.retake-banner b{padding:3px 6px;color:#fff;background:#a8443c;font-size:11px}
.scene-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}.take-console{min-width:0;display:grid;align-content:start;gap:14px}.current-take .panel-heading{min-height:72px}.recording{color:#f07369;font-size:12px}
.work-control{display:grid;grid-template-columns:38px minmax(180px,1fr) minmax(330px,.8fr);gap:13px;align-items:center;padding:17px;border-bottom:1px solid var(--line)}
.action-symbol{display:grid;place-items:center;width:36px;height:36px;color:var(--gold);background:var(--gold-soft)}.work-control strong{font-size:14px}.work-control p{margin:4px 0 0;color:var(--muted);font-size:11px}.work-control form{display:flex;gap:8px}.work-control input{min-width:180px}
.take-transition-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1px;background:var(--line)}.take-transition{display:grid;gap:9px;padding:17px;background:var(--panel)}.take-transition>span{color:var(--gold);font-size:11px;letter-spacing:1.3px}.take-transition strong{font-size:15px}.take-transition textarea{resize:vertical}
.stage-start-codes{display:grid;grid-template-columns:repeat(5,1fr)}.stage-start-codes>span{display:grid;gap:6px;padding:15px;border-right:1px solid var(--line)}.stage-start-codes>span:last-child{border-right:0}.stage-start-codes small{color:var(--muted);font-size:11px}.stage-start-codes b{font-size:12px}
.split-logs{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}.split-logs>div{min-width:0;background:var(--panel)}
.event-trace{padding:6px 16px 14px}.event-trace>div:not(.empty-card){display:grid;grid-template-columns:72px 10px 1fr;gap:9px;padding:10px 0}.event-trace time{color:var(--gold);font-size:11px}.event-trace i{width:7px;height:7px;margin-top:3px;border-radius:50%;background:var(--gold)}.event-trace span{display:grid;gap:3px}.event-trace strong{font-size:12px}.event-trace small{color:var(--muted);font-size:11px}
.scene-sidebar{display:grid;align-content:start;gap:14px}.scene-sidebar dl{margin:0;padding:7px 15px 13px}.scene-sidebar dl>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.scene-sidebar dt{color:var(--muted);font-size:11px}.scene-sidebar dd{margin:0;text-align:right;font-size:11px}.scene-note{margin:0 14px 14px;padding:12px;border-left:3px solid var(--gold);background:var(--gold-soft)}.scene-note p{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.6}
.hero-time{display:grid;gap:5px;margin:13px;padding:15px;background:var(--gold-soft)}.hero-time span,.hero-time small{color:#aaa69e;font-size:11px}.hero-time strong{color:var(--gold-light);font-size:25px;font-weight:600}
.scene-attachments>a{display:flex;align-items:center;gap:9px;padding:10px 15px;border-bottom:1px solid var(--line)}.scene-attachments>a>b{display:grid;place-items:center;width:38px;height:34px;color:var(--gold);border:1px solid #846e38;font-size:11px}.scene-attachments>a>span{display:grid;gap:2px;min-width:0}.scene-attachments a strong,.scene-attachments a small{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scene-attachments a strong{font-size:11px}.scene-attachments a small{color:var(--muted);font-size:11px}.scene-attachments form{display:grid;gap:8px;padding:14px}

/* Tables, forms, people */
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:11px}th{padding:10px;text-align:left;color:#aaa69e;border-bottom:1px solid var(--line);font-size:11px;white-space:nowrap}td{padding:11px 10px;border-bottom:1px solid #303338;vertical-align:top}.empty{text-align:center!important;color:#807e79;padding:28px!important}code{padding:3px 5px;color:#efc55e;background:var(--gold-soft);font-size:11px}
.production-form{max-width:1000px;padding:25px}.form-slate{position:relative;padding:17px;margin-bottom:23px;border:1px solid var(--line-strong);background:var(--panel-soft)}.form-slate:before{content:"";position:absolute;left:-1px;right:-1px;top:-11px;height:10px;background:repeating-linear-gradient(135deg,#eee9df 0 16px,#17191b 16px 32px)}.form-slate h2{margin:5px 0;font-size:24px}.form-slate p{margin:0;color:var(--muted)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label>span{display:block;margin-bottom:7px}.form-grid .span-2{grid-column:span 2}.form-grid input[type=checkbox]{width:18px;height:18px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
.crew-control{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px;margin-bottom:18px}.crew-control h2{margin:6px 0}.crew-control p{margin:0;color:var(--muted)}.crew-control form{display:flex;gap:8px}.crew-control select{min-width:160px}
.crew-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.crew-card{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;min-height:110px;padding:17px;background:var(--panel)}.crew-avatar{display:grid;place-items:center;width:42px;height:42px;color:#17130a;background:var(--gold);font-size:17px;font-weight:700}.crew-card>div{display:grid;gap:3px}.crew-card small{color:var(--gold);font-size:11px}.crew-card strong{font-size:16px}.crew-card p{margin:0;color:var(--muted);font-size:11px}.availability{padding:5px 8px;border:1px solid currentColor;font-size:11px}.availability-busy{color:#d7a95a}.availability-idle{color:#75b98e}.availability-blocked{color:#ec7167}.availability-normal{color:#78a1c8}
.audit-console{padding-bottom:12px}

/* Messages */
.messages{position:fixed;right:24px;top:86px;z-index:90;display:grid;gap:8px;max-width:430px}.message{padding:12px 15px;border:1px solid var(--green);color:#a4d4b5;background:#183023;box-shadow:0 12px 28px rgba(0,0,0,.25);font-size:12px}.message.error{border-color:var(--red);color:#f0a7a1;background:#321c1b}.message.warning{border-color:var(--orange);color:#e7c492;background:#31271a}

/* Login */
.login-main{min-height:100vh}.studio-login{min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr}.login-stage{position:relative;display:flex;flex-direction:column;justify-content:center;padding:9vh 7vw;color:#f5f0e6;background:linear-gradient(rgba(0,0,0,.18),rgba(0,0,0,.38)),radial-gradient(circle at 20% 18%,#68421e 0,transparent 34%),linear-gradient(135deg,#202329,#0a0b0d)}
.login-stage:after{content:"";position:absolute;inset:20px;border:1px solid rgba(230,184,76,.28);pointer-events:none}.login-clapper{position:absolute;top:58px;left:7vw;right:7vw;display:grid;grid-template-columns:1fr auto;gap:5px;padding:13px 16px;border:1px solid rgba(255,255,255,.28);background:#111315}.login-clapper:before{content:"";position:absolute;left:-1px;right:-1px;top:-14px;height:13px;background:repeating-linear-gradient(135deg,#eee9df 0 22px,#17191b 22px 44px)}.login-clapper span{color:var(--gold);font-size:11px;letter-spacing:2px}.login-clapper b{font-size:15px}.login-stage h1{max-width:780px;margin:14px 0 18px;font-size:clamp(40px,5vw,68px);line-height:1.12;font-weight:600;letter-spacing:-1px}.login-stage>p{max-width:660px;margin:0;color:#c1bbb0;line-height:1.9}.login-filmstrip{display:flex;align-items:center;gap:10px;margin-top:46px}.login-filmstrip span{padding:8px 10px;border:1px solid rgba(230,184,76,.55);font-size:11px}.login-filmstrip i{width:28px;height:1px;background:rgba(230,184,76,.55)}
.login-console{display:flex;flex-direction:column;justify-content:center;padding:7vw;background:#151719}.login-brand{display:flex;align-items:center;gap:12px;padding-bottom:22px;margin-bottom:34px;border-bottom:1px solid var(--line)}.login-console h2{margin:7px 0;font-size:31px}.login-console>p{margin:0 0 26px;color:var(--muted)}.stack-form{display:grid;gap:17px}.stack-form input{display:block;margin-top:7px}.stack-form .button{margin-top:5px}

@media(max-width:1180px){
  .studio-header-inner{flex-wrap:wrap;gap:10px;padding-top:10px}.studio-nav{order:3;width:100%;min-height:46px;overflow:auto}.studio-account>span{display:none}
  .production-board-layout,.scene-detail-grid{grid-template-columns:1fr}.producer-sidebar{grid-template-columns:1fr 1fr}.scene-sidebar{grid-template-columns:repeat(3,1fr)}
  .scene-card-grid{grid-template-columns:1fr}.scene-card{grid-template-columns:160px 1fr;grid-template-rows:auto auto}.scene-poster{grid-row:1/3;min-height:155px}.scene-status{align-self:end}
  .split-logs{grid-template-columns:1fr}.crew-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:820px){
  .studio-header{position:static}.studio-header-inner{padding-inline:16px}.studio-nav a{padding:0 10px}.studio-main{padding:24px 16px 50px}
  .call-sheet-header{align-items:flex-start;flex-direction:column}.production-kpis{grid-template-columns:1fr 1fr}.production-kpis article:nth-child(2){border-right:0}.production-kpis article:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .filmstrip-flow,.reel-workflow{grid-template-columns:repeat(3,1fr)}.producer-sidebar{grid-template-columns:1fr}
  .filter-bar{grid-template-columns:1fr 1fr}.scene-facts{grid-template-columns:repeat(2,1fr)}.stage-times-grid,.timecode-strip{grid-template-columns:repeat(2,1fr)}.duration-board{grid-template-columns:repeat(3,1fr)}
  .production-slate{grid-template-columns:1fr 1fr}.production-slate .slate-title{grid-column:1/3;align-items:flex-start;flex-direction:column}.slate-title strong{margin-left:0}
  .work-control{grid-template-columns:38px 1fr}.work-control form{grid-column:2;width:100%}.take-transition-grid{grid-template-columns:1fr}.stage-start-codes{grid-template-columns:repeat(2,1fr)}.scene-sidebar{grid-template-columns:1fr}
  .crew-control{align-items:flex-start;flex-direction:column}.crew-control form{width:100%}.crew-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}
  .studio-login{grid-template-columns:1fr}.login-stage{display:none}.login-console{min-height:100vh;padding:12vw}
}
@media(max-width:520px){
  .studio-brand strong{font-size:14px}.studio-brand small{font-size:10px}.studio-account{margin-left:auto}.studio-account form{display:none}
  .call-sheet-header h1{font-size:30px}.production-kpis{grid-template-columns:1fr}.production-kpis article{border-right:0;border-bottom:1px solid var(--line)}.filmstrip-flow,.reel-workflow{grid-template-columns:1fr 1fr}
  .scene-card{grid-template-columns:1fr;grid-template-rows:115px auto auto}.scene-poster{grid-row:auto;min-height:0}.filter-bar{grid-template-columns:1fr}.scene-entry{padding:15px}.scene-entry>header{grid-template-columns:1fr}.scene-entry-status{margin-top:5px}.scene-facts{grid-template-columns:1fr}.stage-times-grid,.timecode-strip{grid-template-columns:1fr 1fr}.duration-board{grid-template-columns:1fr 1fr}.duration-chip{padding:11px 10px}
  .scene-toolbar{align-items:flex-start;flex-direction:column}.scene-toolbar>div{align-items:flex-start;flex-direction:column}.production-slate{grid-template-columns:1fr}.production-slate .slate-title{grid-column:1}.reel-workflow{grid-template-columns:1fr 1fr}.work-control form{flex-direction:column}.stage-start-codes{grid-template-columns:1fr}.messages{left:14px;right:14px;top:14px}.login-console{padding:16vw 9vw}
}
