:root{color-scheme:dark;--bg:#16141c;--side:#121017;--panel:#1e1b26;--raised:#26222f;--line:#393242;--text:#f0edf5;--muted:#929e9f;--accent:#b6a1f0;--red:#ee9d8f;--blue:#91bded;--amber:#e8c281;--purple:#b6a5ef;font-family:Inter,Segoe UI,Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a{color:inherit;text-decoration:none}button{color:inherit}svg{width:18px;height:18px;flex-shrink:0}button svg{vertical-align:middle}.loading{padding:100px;text-align:center;color:var(--muted)}.app-shell{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:232px;background:var(--side);border-right:1px solid var(--line);padding:28px 18px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:10px;padding:0 10px 30px;font-size:18px;font-weight:650;letter-spacing:-.6px}.brand img{width:34px}.brand span em{font-style:normal;color:var(--muted);font-weight:400}.workspace-tag{border:1px solid var(--line);padding:12px;border-radius:9px;display:flex;align-items:center;gap:9px;margin:2px 4px 28px;font-size:12px}.workspace-tag .mini-logo{display:grid;place-items:center;width:28px;height:28px;background:#352c49;border-radius:7px;color:var(--accent);font-weight:700}.eyebrow{text-transform:uppercase;font-size:10px;font-weight:600;letter-spacing:1.7px;color:var(--muted)}.nav-label{padding:0 14px;margin:10px 0 9px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;background:none;border:0;border-radius:7px;text-align:left;color:#a3adae;font-size:13px;margin:3px 0}.nav-item.active{background:#2e263f;color:var(--accent)}.nav-item:hover{background:#26222f;color:var(--text)}.nav-item.active:hover{background:#2e263f;color:var(--accent)}.nav-item .count{margin-left:auto;background:#44355e;padding:1px 6px;font-size:10px;border-radius:4px}.sidebar-bottom{margin-top:auto;padding-top:30px}.sidebar-note{margin:16px 12px;font-size:11px;color:#778688;line-height:1.7}.profile{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding:18px 8px 0}.profile .profile-text{flex:1;min-width:0}.profile strong{display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis}.profile small{font-size:10px;color:var(--muted)}.avatar{height:30px;width:30px;display:inline-grid;place-items:center;flex-shrink:0;border-radius:50%;background:#3a4447;color:#e0e7e6;font-size:10px;font-weight:650}.avatar.lime{background:#3b2e53;color:var(--accent)}.main{grid-column:2;min-width:0}.topbar{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;padding:0 38px}.breadcrumbs{display:flex;align-items:center;gap:11px;color:var(--muted);font-size:12px}.breadcrumbs strong{color:var(--text);font-weight:500}.topbar-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.search-box{position:relative}.search-box svg{position:absolute;top:10px;left:12px;color:var(--muted);width:16px}.search-box input{width:230px;padding:9px 35px;border:1px solid var(--line);background:var(--panel);border-radius:7px;font-size:12px}.icon-button{display:inline-grid;place-items:center;background:none;border:0;padding:7px;border-radius:6px;color:var(--muted);position:relative}.icon-button:hover{background:var(--raised);color:var(--text)}.notify-dot{position:absolute;top:4px;right:5px;width:6px;height:6px;background:var(--accent);border-radius:50%}.content{padding:32px 38px 42px;max-width:1700px;margin:auto}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:16px}.heading h1{font-size:28px;line-height:1.2;letter-spacing:-1px;font-weight:550;margin:0 0 9px}.heading p{font-size:12px;color:var(--muted);margin:0;line-height:1.6}.heading-actions{display:flex;gap:9px;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;background:var(--raised);border:1px solid var(--line);border-radius:7px;font-size:12px;font-weight:550;white-space:nowrap}.button:hover{background:#2c3539}.button.primary{background:var(--accent);border-color:var(--accent);color:#211a35}.button.primary:hover{background:#cbb9ff}.button.danger{color:var(--red)}.button.small{padding:6px 10px;font-size:11px}.button.ghost{background:none}.project-select{display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--line);padding:7px 11px;border-radius:7px}.project-select select{border:0;background:none;color:var(--text);padding:2px;max-width:210px;font-size:12px}.dot{width:7px;height:7px;display:inline-block;background:var(--accent);border-radius:50%;flex-shrink:0}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:22px 0}.metric{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:20px 22px}.metric-top{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.metric-top svg{width:16px;height:16px}.metric-value{font-size:34px;letter-spacing:-1px;font-weight:550;line-height:1.3;margin-top:13px}.metric-value small{font-size:14px;color:var(--muted);font-weight:400;letter-spacing:0}.metric-foot{font-size:11px;color:var(--muted);margin-top:7px}.metric-foot .green{color:var(--accent)}.metric-foot .amber{color:var(--amber)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(290px,1fr);gap:18px;margin-top:20px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;gap:10px}.panel-header h2{font-size:14px;font-weight:550;margin:0}.panel-header small{color:var(--muted);font-size:11px}.project-hero{padding:22px;position:relative;overflow:hidden;background:linear-gradient(105deg,#2e2740,#252135 55%,#342b46);min-height:170px}.project-hero:after{content:'';position:absolute;width:290px;height:290px;right:-38px;top:-110px;border:1px solid #8d76bd52;border-radius:50%;box-shadow:0 0 0 27px #8d76bd15,0 0 0 58px #8d76bd15,0 0 0 100px #8d76bd10;pointer-events:none}.project-hero h2{margin:10px 0;font-weight:500;letter-spacing:-.7px;font-size:23px;position:relative;z-index:1}.project-hero p{color:#b9afcb;font-size:12px;max-width:400px;line-height:1.7;position:relative;z-index:1}.hero-bottom{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1;margin-top:25px;font-size:11px;color:#ccc3da}.pill{display:inline-flex;align-items:center;gap:5px;font-size:10px;background:#413259;border:1px solid #76618f;color:#dfd0fa;padding:4px 8px;border-radius:5px}.progress-section{padding:20px 22px}.progress-caption{display:flex;justify-content:space-between;font-size:12px;margin-bottom:13px}.segmented-bar{display:flex;height:7px;gap:3px;border-radius:5px;overflow:hidden;background:#393242}.segmented-bar span{min-width:0}.legend{display:flex;gap:16px;flex-wrap:wrap;font-size:10px;color:var(--muted);margin-top:14px}.legend span{display:flex;gap:5px;align-items:center}.legend .dot{width:6px;height:6px}.status{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:10px;border-radius:4px;padding:5px 8px;background:#31393c;color:#bcc3c3}.status .dot{width:5px;height:5px;background:currentColor}.status.approved{background:#392d50;color:var(--accent)}.status.in_progress{background:#283b4b;color:var(--blue)}.status.internal_review{background:#383144;color:var(--purple)}.status.changes_requested{background:#49382b;color:var(--amber)}.status.on_hold{background:#443132;color:var(--red)}.status-select{font-size:10px;max-width:140px;border:0;cursor:pointer;padding-right:5px}select option{background:var(--raised);color:var(--text)}.activity{padding:0 22px 8px}.activity-item{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #2b3336}.activity-item:last-child{border:0}.activity-icon{display:grid;place-items:center;width:29px;height:29px;background:var(--raised);border:1px solid var(--line);border-radius:7px;color:var(--accent);flex-shrink:0}.activity-icon svg{width:14px}.activity-copy{line-height:1.6;font-size:11px;overflow-wrap:anywhere}.activity-copy small{display:block;color:var(--muted);font-size:10px}.table-toolbar{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid var(--line);gap:12px;flex-wrap:wrap}.table-toolbar h2{font-size:14px;font-weight:550;margin:0}.table-toolbar h2 span{font-size:10px;color:var(--muted);margin-left:7px}.tabs{display:flex;gap:3px}.tab{background:none;border:0;border-radius:5px;padding:7px 11px;color:var(--muted);font-size:11px}.tab.active{color:var(--text);background:#393242}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:10px;color:var(--muted);font-weight:500;padding:13px 20px;background:#171c1e;border-bottom:1px solid var(--line)}td{padding:14px 20px;border-bottom:1px solid #2b3336;font-size:11px;color:#bac4c4}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#26222f}.task-name{display:flex;align-items:center;gap:11px}.shot-tile{width:40px;height:28px;border-radius:4px;position:relative;overflow:hidden;display:grid;place-items:center;background:linear-gradient(130deg,#514266,#2c243b 60%,#8a74a8);color:#e3d8f3;font-size:9px;letter-spacing:1px;border:1px solid #78628f55}.shot-tile.t2{background:linear-gradient(140deg,#6a4c42,#2c373e 70%,#35464c)}.shot-tile.t3{background:linear-gradient(135deg,#394b68,#1d2d3b 60%,#6b7580)}.task-name strong{color:var(--text);font-size:11px;font-weight:550}.task-name small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.link-button{padding:0;background:none;border:0;color:var(--text);text-align:left}.link-button:hover{color:var(--accent)}.person{display:flex;align-items:center;gap:8px}.person .avatar{width:23px;height:23px;font-size:8px}.due{display:flex;align-items:center;gap:6px}.due.overdue{color:var(--red)}.mini-progress{width:68px;height:4px;background:#364044;border-radius:3px;overflow:hidden}.mini-progress span{display:block;background:var(--accent);height:100%}.time-cell{display:flex;gap:9px;align-items:center}.table-footer{padding:12px 20px;color:var(--muted);font-size:10px;border-top:1px solid var(--line);display:flex;justify-content:space-between}.section-gap{margin-top:22px}.empty{padding:45px 25px;text-align:center;color:var(--muted);font-size:12px;line-height:1.8}.empty svg{width:28px;height:28px;color:var(--accent);margin-bottom:10px}.empty h3{color:var(--text);font-weight:500;font-size:18px;margin:5px}.empty .button{margin-top:15px}.notice{padding:13px 16px;border:1px solid #46513a;background:#283124;border-radius:7px;font-size:12px;line-height:1.6;color:#c6d7b4;margin-bottom:20px}.notice.muted{background:var(--panel);border-color:var(--line);color:var(--muted)}.project-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.project-card{border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden}.project-card .project-hero{min-height:165px}.project-card-actions{display:flex;justify-content:space-between;padding:16px 20px}.filters{display:flex;gap:10px;align-items:center;margin-bottom:18px}.filters select,.filters input{width:auto;max-width:230px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .wide{grid-column:1/-1}label{display:block;color:#c3cccc;font-size:12px}label input,label select,label textarea{margin-top:7px}input,select,textarea{width:100%;color:var(--text);background:#141a1c;border:1px solid #394346;border-radius:6px;padding:10px 11px;min-width:0}textarea{resize:vertical;min-height:90px}input::placeholder,textarea::placeholder{color:#667477}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:1px solid #b6a1f044}input[type=checkbox]{width:16px;accent-color:var(--accent)}.hint{color:var(--muted);font-size:11px;line-height:1.6}.form-error{color:var(--red);font-size:12px;line-height:1.6;margin:12px 0;min-height:0}.modal-backdrop{position:fixed;inset:0;background:#080b0dc9;backdrop-filter:blur(5px);z-index:100;display:flex;justify-content:center;align-items:center;padding:24px}.modal{width:560px;max-width:100%;max-height:90vh;overflow-y:auto;border:1px solid #414b4d;background:var(--panel);border-radius:12px;box-shadow:0 24px 100px #0008}.modal.wide-modal{width:1000px}.modal-header{padding:23px 25px 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.modal-header h2{font-size:18px;font-weight:550;margin:0;letter-spacing:-.3px}.modal-body{padding:24px}.modal-footer{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.checklist{display:grid;gap:8px;max-height:340px;overflow:auto}.checklist label{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:7px}.checklist input{margin:0}.detail-header{display:flex;align-items:start;justify-content:space-between;gap:16px}.detail-header h3{font-weight:500;font-size:22px;margin:8px 0}.detail-meta{display:flex;gap:20px;flex-wrap:wrap;padding:18px 0;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.detail-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;margin-top:20px}.detail-columns h4{font-size:12px;font-weight:550;margin:0 0 16px}.comment{padding:14px 0;border-bottom:1px solid var(--line)}.comment .byline{display:flex;gap:8px;align-items:center;font-size:11px}.comment .byline small{color:var(--muted);margin-left:auto;font-size:9px}.comment p{color:#bcc6c5;font-size:12px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.comment-form{margin-top:15px}.comment-form .button{margin-top:8px}.delivery-card,.version-row{padding:13px;border:1px solid var(--line);border-radius:7px;margin-bottom:9px}.delivery-card strong,.version-row strong{font-size:12px;font-weight:500}.delivery-card small,.version-row small{display:block;margin-top:7px;color:var(--muted);font-size:10px}.delivery-card a{color:var(--accent);font-size:11px;display:block;margin-top:10px}.version-actions{display:flex;gap:8px;margin-top:10px}.review-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px}.video-panel{background:#080b0d;border:1px solid var(--line);border-radius:10px;overflow:hidden}.video-panel video{width:100%;max-height:65vh;display:block;aspect-ratio:16/9;background:#050708}.video-caption{background:var(--panel);padding:20px;display:flex;justify-content:space-between;gap:14px}.video-caption strong{font-size:14px;font-weight:500}.video-caption small{display:block;color:var(--muted);margin-top:6px;font-size:11px}.review-notes{padding:20px;max-height:70vh;overflow:auto}.review-notes h3{margin:0 0 12px;font-size:14px;font-weight:500}.timecode{font-size:10px;color:var(--accent);background:#382c4c;border:0;border-radius:4px;padding:4px 7px}.version-picker{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.version-picker .button.active{border-color:var(--accent);color:var(--accent)}.timeline{min-width:750px}.timeline-header,.timeline-row{display:grid;grid-template-columns:245px minmax(500px,1fr);border-bottom:1px solid var(--line)}.timeline-label{padding:15px 20px;font-size:12px}.timeline-label small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.timeline-track{position:relative;min-height:63px;background:repeating-linear-gradient(90deg,transparent,transparent calc(14.2857% - 1px),#393242 14.2857%)}.timeline-dates{display:grid;grid-template-columns:repeat(7,1fr);color:var(--muted);font-size:10px;padding:15px 0}.timeline-bar{position:absolute;top:18px;height:27px;border:1px solid #7c649f;border-radius:4px;background:#45335e;color:#e0d0ff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;padding:6px 8px;min-width:3px}.timeline-bar.approved{background:#362749}.timeline-bar.internal_review{background:#3b3249;border-color:#726084;color:#d4c1ef}.timeline-bar.not_started{background:#303a3e;border-color:#485458;color:#a6b4b6}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.team-card{padding:22px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.team-card-top{display:flex;gap:12px;align-items:center}.team-card-top .avatar{width:40px;height:40px;font-size:13px}.team-card h3{font-size:14px;font-weight:500;margin:0 0 5px}.team-card p{font-size:11px;color:var(--muted);margin:0;overflow-wrap:anywhere}.team-card-meta{display:flex;justify-content:space-between;margin:22px 0;font-size:11px;color:var(--muted)}.notification-item{padding:14px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.7}.notification-item small{display:block;color:var(--muted)}.notification-item.unread{color:var(--accent)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(100px);padding:12px 20px;max-width:90vw;background:#e0d2fa;color:#241a35;border-radius:8px;box-shadow:0 8px 30px #0005;z-index:200;transition:transform .2s;font-size:13px}#toast.show{transform:translateX(-50%) translateY(0)}#toast.error{background:#f0b3a9}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr}.auth-art{background:radial-gradient(ellipse at 70% 30%,#51416e,transparent 55%),linear-gradient(135deg,#231d34,#100e1b);padding:55px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-art:after{content:'';position:absolute;width:620px;height:620px;left:-180px;top:25%;border:1px solid #a08bc844;border-radius:50%;box-shadow:0 0 0 60px #a08bc811,0 0 0 120px #a08bc80a}.auth-art .brand{padding:0}.auth-art h1{font-size:55px;font-weight:450;letter-spacing:-2px;line-height:1.1;position:relative;z-index:1;max-width:420px}.auth-art h1 span{color:var(--accent)}.auth-art p{color:#b5acc5;font-size:13px;line-height:1.8;max-width:380px;position:relative;z-index:1}.auth-art .eyebrow{color:#bcadcf}.auth-form-wrap{display:grid;place-items:center;padding:40px}.auth-form{max-width:360px;width:100%}.auth-form h2{font-size:28px;font-weight:500;letter-spacing:-1px;margin:0 0 10px}.auth-form>p{color:var(--muted);line-height:1.7;font-size:12px;margin-bottom:30px}.auth-form label{margin:16px 0}.auth-form .button{width:100%;margin-top:10px;padding:12px}.auth-footer{font-size:10px;color:var(--muted);text-align:center;margin-top:25px;line-height:1.7}.mobile-menu{display:none}.report-summary{display:grid;grid-template-columns:1fr 1fr;gap:20px}.bar-row{display:flex;align-items:center;gap:12px;margin:19px 0;font-size:11px}.bar-row>span:first-child{width:130px;color:var(--muted)}.bar-row .mini-progress{flex:1;height:6px}.bar-row>strong{width:25px;text-align:right}.report-panel{padding:22px}.report-panel h3{font-weight:500;font-size:14px;margin:0 0 25px}.muted{color:var(--muted)}.nowrap{white-space:nowrap}.text-right{text-align:right}.spacer{height:16px}
.shot-thumbnail{width:72px;height:42px;object-fit:cover;border-radius:5px;border:1px solid var(--line);flex-shrink:0}.thumbnail-panel{margin-bottom:22px}.shot-cover{display:block;width:100%;max-height:280px;object-fit:contain;background:#0d1113;border:1px solid var(--line);border-radius:8px}.thumbnail-empty{padding:22px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);text-align:center;font-size:12px}.thumbnail-actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
#toast{opacity:0;pointer-events:none}#toast.show{opacity:1}
@media(min-width:1600px){.content{padding-top:40px}.dashboard-grid{grid-template-columns:2.1fr 1fr}.metric{padding:24px}}
@media(max-width:1200px){.sidebar{width:205px}.app-shell{grid-template-columns:205px minmax(0,1fr)}.content{padding:25px}.topbar{padding:0 25px}.project-cards,.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1.5fr 1fr}.metric{padding:16px}.heading h1{font-size:25px}.review-grid{grid-template-columns:1fr}.review-notes{max-height:none}}
@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.search-box input{width:180px}.heading{align-items:flex-start;flex-direction:column}.detail-columns{grid-template-columns:1fr}.report-summary{grid-template-columns:1fr}.topbar{padding:0 20px}.content{padding:25px 20px}.project-cards,.team-grid{grid-template-columns:1fr}}
@media(max-width:650px){.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:transform .2s;width:232px;box-shadow:20px 0 100px #000a}.sidebar.open{transform:translateX(0)}.main{width:100%}.mobile-menu{display:inline-grid}.topbar{height:64px;padding:0 15px;gap:8px}.breadcrumbs{font-size:10px;gap:6px}.topbar-actions{gap:3px}.search-box{display:none}.content{padding:24px 16px}.heading-actions{flex-wrap:wrap;width:100%}.heading h1{font-size:27px}.metric{padding:17px 15px}.metric-value{font-size:29px}.metric-top{font-size:10px}.metric-foot{font-size:10px}.panel-header{padding:18px}.table-toolbar{padding:14px}.tabs .tab{padding:6px 8px}.modal-backdrop{padding:10px}.modal-body{padding:18px}.modal-header{padding:18px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.auth-shell{grid-template-columns:1fr}.auth-art{min-height:180px;padding:28px}.auth-art h1{font-size:31px;max-width:260px;margin:25px 0 0}.auth-art p,.auth-art>.eyebrow{display:none}.auth-form-wrap{padding:35px 25px}.filters{flex-wrap:wrap}.filters input,.filters select{max-width:none}.legend{gap:9px}.video-caption{flex-direction:column}.project-select{max-width:100%}.project-select select{max-width:170px}}
@media print{.sidebar,.topbar,.heading-actions,button{display:none!important}.app-shell{display:block}.main{display:block}.content{padding:0}.panel,.metric{break-inside:avoid}body{color:#000;background:white}}

/* Larger frame previews in the shot board. */
.shot-board-table .shot-thumbnail,.shot-board-table .shot-tile{width:192px;height:108px;border-radius:7px;flex-shrink:0}
.shot-board-table .shot-thumbnail{object-fit:contain;background:#0d1113}
.shot-board-table .shot-tile{font-size:16px}
.shot-board-table .task-name{gap:16px}
@media(max-width:650px){.shot-board-table .shot-thumbnail,.shot-board-table .shot-tile{width:144px;height:81px}.shot-board-table .task-name{gap:12px}}

/* Studio logo beside the product name. */
.brand{gap:8px;padding-left:4px;padding-right:4px;font-size:16px}
.brand img{width:52px;height:52px;object-fit:contain;flex-shrink:0}
.auth-art .brand img{width:64px;height:64px}
.schedule-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:18px}.schedule-controls>label{width:210px;margin:0}.schedule-controls .form-error{width:100%;margin:0}.schedule-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:0 20px 10px;font-size:12px}.schedule-help{padding:0 20px 12px}.shot-schedule .timeline-track{overflow:hidden}.shot-schedule .timeline-label{display:flex;align-items:center;gap:10px}.schedule-check{margin:0}.schedule-check input{margin:0}.shot-schedule .timeline-bar{cursor:grab;touch-action:none;user-select:none;min-width:4px}.shot-schedule .timeline-bar:active{cursor:grabbing}.shot-schedule .timeline-bar.schedule-selected{outline:2px solid var(--accent);outline-offset:-2px;filter:brightness(1.25)}.schedule-saving{opacity:.6;pointer-events:none}#schedule-drag-status{color:var(--accent)}
.date-field{display:flex;position:relative;align-items:center;gap:5px;min-width:0}.date-field>input[data-date-input]{flex:1;min-width:0}.date-field>.date-picker-native{position:absolute;right:0;bottom:0;width:1px;height:1px;padding:0;border:0;opacity:0;pointer-events:none}
.button.approve-shot{background:#81d79c;border-color:#81d79c;color:#102d19;align-self:center}.button.approve-shot:hover{background:#9ce8b3}.button.approve-shot:disabled{opacity:1;background:#213f2b;border-color:#4a9060;color:#a7e8bb;cursor:default}
.performance-summary{display:grid;grid-template-columns:minmax(250px,1fr) 2fr;gap:20px}.performance-score,.performance-breakdown,.performance-method{padding:24px}.performance-number{font-size:64px;font-weight:600;margin:15px 0;letter-spacing:-2px}.performance-number small{font-size:18px;color:var(--muted);letter-spacing:0;margin-left:8px}.performance-good{color:var(--accent)}.performance-warn{color:var(--amber)}.performance-bad{color:var(--red)}.performance-breakdown h2,.performance-method h2{font-size:15px;margin:0 0 20px}.performance-bar{display:flex;align-items:center;gap:12px;margin:17px 0;font-size:12px}.performance-bar>span{width:170px;color:var(--muted)}.performance-bar>div{flex:1;background:var(--raised);height:8px;border-radius:5px;overflow:hidden}.performance-bar i{display:block;height:100%;background:var(--accent)}.performance-bar i.late,.performance-bar i.overdue{background:var(--red)}.performance-bar i.unknown{background:var(--muted)}.performance-bar>strong{width:25px;text-align:right}.performance-method p{color:var(--muted);font-size:12px;line-height:1.8}.performance-method strong{color:var(--text)}.performance-outcome.early,.performance-outcome.on_time{color:var(--accent)}.performance-outcome.late,.performance-outcome.overdue{color:var(--red)}.performance-outcome.unknown{color:var(--muted)}@media(max-width:800px){.performance-summary{grid-template-columns:1fr}.performance-bar>span{width:135px}}
.video-panel video[hidden],#review-canvas[hidden],#drawing-tools[hidden]{display:none}#review-canvas{display:block;width:100%;height:auto;touch-action:none;cursor:crosshair;background:#080b0d}.annotation-toolbar{padding:14px 18px;border-top:1px solid var(--line)}#drawing-tools{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:10px}#drawing-tools label{display:flex;align-items:center;gap:6px;font-size:11px;margin:0}#pen-color{width:42px;height:32px;padding:2px}#pen-width{width:95px;padding:6px}.annotation-image{display:block;margin:10px 0}.annotation-image img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:6px}.annotation-download{display:inline-block;color:var(--accent);font-size:12px;margin-bottom:12px}.task-feedback{margin-bottom:28px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.review-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}.review-card{padding:0;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden;color:var(--text)}.review-card:hover{border-color:var(--accent)}.review-card:focus-visible{outline:2px solid var(--accent)}.review-cover{position:relative;aspect-ratio:16/9;background:#100e1b;overflow:hidden}.review-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#100e1b}.review-cover img[hidden]{display:none}.review-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-size:12px}.review-pending{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:7px;background:#421d29;color:#ffb7c2;border:1px solid #9d4056;border-radius:6px;padding:6px 9px;font-size:11px;font-weight:600}.review-pending>span{color:#ff607d;font-size:18px}.review-play{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;background:#171120cf;border:1px solid #b6a1f077;border-radius:50%;width:36px;height:36px;color:#e0d2fa}.review-card-copy{display:grid;gap:7px;padding:17px 18px}.review-card-copy strong{font-size:15px}.review-card-copy span{font-size:12px;color:var(--muted)}.review-card-copy small{font-size:10px;color:var(--muted)}.review-back{margin-bottom:20px}
.annotation-download{display:block;width:fit-content}

.delivery-filters{display:flex;flex-wrap:wrap;gap:16px;padding:20px 22px;border-bottom:1px solid var(--border)}.delivery-filters label{flex:1;min-width:200px;max-width:360px}.delivery-count{padding:0 22px}

.schedule-resize{position:absolute;top:0;bottom:0;width:9px;cursor:ew-resize;background:#ffffff30;z-index:2}.schedule-resize.start{left:0;border-right:2px solid #ffffff80}.schedule-resize.end{right:0;border-left:2px solid #ffffff80}.shot-schedule .timeline-bar{padding-left:12px;padding-right:12px;min-width:10px}

.chat-messages{max-height:400px;overflow:auto;padding:0 22px;overflow-wrap:anywhere}.chat-messages p{white-space:pre-wrap}.chat-compose{padding:18px 22px;border-top:1px solid var(--line)}.chat-compose textarea{min-height:80px}.chat-compose>small{display:block;margin-top:10px}.chat-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.team-chat mark{background:#b6a1f030;color:var(--accent);border-radius:3px}.team-chat #chat-older{margin:0 22px 12px}

#chat-older[hidden]{display:none}

.dashboard-grid>.team-chat{min-width:0}.dashboard-grid>.team-chat .panel-header{align-items:flex-start;gap:12px;flex-wrap:wrap}.dashboard-grid>.team-chat .chat-messages{max-height:260px}
