:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f3f4f6;background:#070809;color-scheme:dark;--bg:#070809;--panel:#101216;--panel2:#0b0d10;--border:#292d33;--muted:#949ba6;--text:#f5f7fa;--accent:#e9edf2}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 18% -10%,#22262c 0,#0c0e11 30%,#070809 62%);min-height:100vh}a{color:#fff}.shell{max-width:1540px;margin:auto;padding:30px}.narrow{max-width:620px}.top{display:flex;justify-content:space-between;align-items:center;margin:3px 0 28px}.brandrow,.reviewbrand{display:flex;align-items:center;gap:14px}.fourklogo{display:block;width:76px;max-width:21vw;height:auto;object-fit:contain;border-radius:7px}.brandmark{display:flex;align-items:baseline;gap:7px;line-height:1}.fourk{font-size:27px;font-weight:900;letter-spacing:-.08em}.filmdot{font-size:13px;font-weight:800;letter-spacing:.16em}.reviewtag,.eyebrow{font-size:10px;letter-spacing:.2em;color:#969da7;font-weight:800}.reviewtag{border-left:1px solid #3b4048;padding-left:14px}.reviewbrand{min-height:52px;margin-bottom:28px}.branddivider{height:28px;width:1px;background:#333842}.clientlogo{display:block;max-width:170px;max-height:38px;object-fit:contain;filter:drop-shadow(0 2px 8px #0008)}.clientname{color:#c8cdd4;font-size:14px}.panel{background:linear-gradient(180deg,#12151a,#0e1014);border:1px solid var(--border);border-radius:18px;padding:24px;box-shadow:0 20px 65px #0005;margin-bottom:22px}.uploadpanel{padding:28px}h1{font-size:clamp(30px,4vw,54px);line-height:1.02;letter-spacing:-.035em;margin:.18em 0 .25em}h2{margin:0;font-size:25px;letter-spacing:-.02em}.sectionhead{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.sectionhead.compact{align-items:center;margin-bottom:14px}.sectionhead p{margin:6px 0 0}small,.muted{color:var(--muted)}label{display:flex;flex-direction:column;gap:8px;font-size:12px;letter-spacing:.02em;color:#b8bec7}input,select,textarea{width:100%;padding:13px 14px;background:#090b0e;border:1px solid #30353e;border-radius:10px;color:#fff;font:inherit;outline:none;transition:border-color .18s,box-shadow .18s}input:focus,select:focus,textarea:focus{border-color:#777f8c;box-shadow:0 0 0 3px #fff1}textarea{min-height:110px;resize:vertical}button,.pill{background:var(--accent);color:#08090a;border:0;border-radius:10px;padding:12px 16px;font-weight:800;cursor:pointer;text-decoration:none}button:disabled{opacity:.5;cursor:wait}.primary{min-height:50px;font-size:14px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.wide{grid-column:1/-1}.optional{color:#777f89;font-weight:500;margin-left:4px}.dropzone{position:relative;min-height:220px;border:1.5px dashed #444b55;border-radius:16px;background:linear-gradient(180deg,#0b0d10,#090a0c);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;gap:8px;cursor:pointer;transition:.2s ease}.dropzone:hover,.dropzone.dragging{border-color:#cfd4db;background:#11151a;transform:translateY(-1px)}.dropzone.hasfile{border-style:solid;border-color:#68717d;background:#101419}.dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer}.dropzone strong{font-size:18px;color:#f7f8fa}.dropzone span{font-size:13px;color:#a1a8b1}.dropzone small{margin-top:5px}.dropicon{width:48px;height:48px;border-radius:50%;border:1px solid #3a4048;display:grid;place-items:center;font-size:23px;margin-bottom:8px;background:#12151a}.progressbox{padding:18px;border:1px solid #30353e;border-radius:14px;background:#0a0c0f}.progressmeta{display:flex;justify-content:space-between;gap:20px;margin-bottom:10px}.progressmeta span{font-variant-numeric:tabular-nums;color:#dce1e6;font-weight:800}.progressrail{height:8px;background:#20242a;border-radius:99px;overflow:hidden}.progressbar{height:100%;width:0;background:var(--brand-accent,#69727d);border-radius:99px;transition:width .12s linear}.progressbox small{display:block;margin-top:9px}.filemini{display:flex;align-items:center;min-height:46px;padding:10px 12px;border:1px solid #30353e;border-radius:10px;background:#090b0e;color:#949ba6;position:relative;overflow:hidden}.filemini input{position:absolute;inset:0;opacity:0;cursor:pointer}.logopreview{display:flex;flex-direction:column;gap:7px;margin-top:2px}.logopreviewlabel{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#777f89;font-weight:800}.logopreviewstage{min-height:84px;border:1px solid #30353e;border-radius:10px;background:linear-gradient(135deg,#15181d,#0b0d10);display:flex;align-items:center;justify-content:center;padding:14px}.logopreviewstage img{display:block;max-width:220px;max-height:58px;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 3px 10px #0008)}.uploadmessage{margin-top:-2px}.success{padding:12px 14px;background:#12311f;border:1px solid #24583a;border-radius:10px;margin:12px 0;color:#cdebd8}.error{padding:12px 14px;background:#36191c;border:1px solid #6c2c33;border-radius:10px;margin:12px 0}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:13px 12px;border-bottom:1px solid #292d33;text-align:left;white-space:nowrap}th{font-size:10px;letter-spacing:.12em;color:#8f96a0;text-transform:uppercase}td small{display:block;margin-top:4px}.projectcell{display:flex;align-items:center;gap:12px}.clientthumb{width:48px;height:30px;object-fit:contain;background:#fff;border-radius:5px;padding:3px}.reviewhead{margin-bottom:20px}.reviewhead h1{margin-top:8px}.reviewgrid{display:grid;grid-template-columns:minmax(0,1fr) 410px;gap:22px}.videoWrap{position:relative;background:#000;border-radius:16px;overflow:hidden;aspect-ratio:16/9;border:1px solid #23272d;box-shadow:0 22px 70px #0008}.videoWrap video{width:100%;height:100%;display:block;object-fit:contain}.marker{position:absolute;width:25px;height:25px;border:3px solid #fff;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #0009;pointer-events:none}.hidden{display:none!important}.transport{display:flex;justify-content:space-between;padding:11px 5px 16px;color:#969ca5}.transport strong{font-variant-numeric:tabular-nums;color:#fff;font-size:15px}.commentform{display:grid;gap:15px}.comments{max-height:80vh;overflow:auto;position:sticky;top:22px}.comment{display:flex;width:100%;flex-direction:column;align-items:flex-start;gap:6px;background:#0b0d10;color:#fff;border:1px solid #292e35;margin:8px 0;text-align:left}.comment.done{opacity:.48}.comment strong{font-variant-numeric:tabular-nums}.comment span{font-weight:500;white-space:normal}.commentcount{display:grid;place-items:center;min-width:30px;height:30px;border-radius:99px;background:#20242a;color:#cdd2d8;font-size:12px}.inlineform{display:inline;margin:0}.linkbtn{background:none;border:0;padding:0;color:inherit;text-decoration:underline;cursor:pointer;font:inherit}.inlineform .pill{display:inline-block;width:auto}
.reviewactions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.secondarypill{background:#20242a;color:#f3f5f7;border:1px solid #353b44}.secondarypill:hover{background:#2b3038}.masterlink{margin:4px 0 20px;padding:14px 16px;border:1px solid #30353e;border-radius:12px;background:#0a0c0f}.masterlink>span{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#777f89;font-weight:800;margin-bottom:9px}.copyrow{display:flex;gap:8px;align-items:center;min-width:0}.copyrow input{min-width:0;font-size:12px;color:#aeb5bf}.copybtn,.ghostbtn{white-space:nowrap;background:#20242a;color:#f3f5f7;border:1px solid #353b44;padding:10px 13px}.copybtn:hover,.ghostbtn:hover{background:#2b3038}.reviewerlist{display:grid;gap:10px;margin:12px 0 18px}.reviewerrow{display:grid;grid-template-columns:auto minmax(140px,.8fr) minmax(260px,1.8fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid #2b3037;border-radius:12px;background:#0b0d10}.reviewerrow.inactive{opacity:.5}.reviewerinfo{display:flex;flex-direction:column;gap:3px;min-width:0}.reviewerinfo small{font-size:11px}.avatar{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:transparent;color:#fff;font-weight:900}.smallavatar{width:34px;height:34px}.addreviewer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding-top:16px;border-top:1px solid #292d33}.identity{display:flex;align-items:center;gap:10px;padding:10px 13px;border:1px solid #30353e;border-radius:12px;background:#0b0d10;min-width:190px}.identity>div,.authorlocked>div{display:flex;flex-direction:column;gap:2px}.identity small,.authorlocked small{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#8d949d}.compactidentity{margin:12px 0;width:max-content}.reviewhead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.authorlocked{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #30353e;border-radius:10px;background:#0a0c0f}.commenttop{display:flex;width:100%;justify-content:space-between;align-items:center;gap:10px}.authorbadge{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:4px 8px;border-radius:99px;background:#282d35;color:#e7eaf0;font-size:10px;font-weight:800;white-space:nowrap}.comment .authorbadge{font-size:9px}.comments .comment{padding:12px 13px}.comments .comment>span{line-height:1.4}
@media(max-width:900px){.reviewgrid{grid-template-columns:1fr}.comments{position:static;max-height:none}.grid{grid-template-columns:1fr}.wide{grid-column:auto}.shell{padding:16px}.uploadpanel{padding:19px}.transport{font-size:12px;gap:10px}.reviewbrand{flex-wrap:wrap}.clientlogo{max-width:135px}.dropzone{min-height:180px}.top{align-items:flex-start}.brandmark .fourk{font-size:24px}.fourklogo{width:64px;max-width:23vw}.reviewerrow{grid-template-columns:auto 1fr}.reviewerlink{grid-column:1/-1}.reviewerrow .inlineform{grid-column:1/-1}.addreviewer{grid-template-columns:1fr}.reviewhead{align-items:flex-start;flex-direction:column}.reviewactions{width:100%;justify-content:flex-start}.identity{width:100%}}

/* v0.5.0 – technical status, resume and client guidance */
.statussetup{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px;border:1px solid #30353e;border-radius:14px;background:#0a0c0f}.statussetuphead{grid-column:1/-1;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding-bottom:4px}.statussetuphead strong{font-size:15px}.statussetuphead small{margin-left:auto}.statusedit{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}.statusedit button{min-height:46px}.statusmini{display:inline-flex;padding:4px 7px;margin:2px 2px 2px 0;border:1px solid #3b414a;border-radius:99px;background:#15191e;color:#aeb5bf;font-size:9px;font-weight:800;letter-spacing:.04em}.statusmini.ok{border-color:#315846;background:#10251b;color:#cbe7d8}
.reviewstatus{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 12px}.statusitem{min-width:0;padding:12px 13px;border:1px solid #31363e;border-radius:11px;background:#0b0d10}.statusitem small{display:block;margin-bottom:5px;font-size:9px;letter-spacing:.11em;font-weight:900;color:#878f99}.statusitem strong{display:block;font-size:12px;line-height:1.25;white-space:normal}.statusitem.final{border-color:#2d5a43;background:#0d1c15}.statusitem.final strong{color:#d5ebdf}.statusitem.preview{border-color:#674148;background:#241114}.statusitem.preview strong{color:#f2c9cd}.statusitem.layout{border-color:#65562f;background:#211c0f}.statusitem.layout strong{color:#eadca9}.statusitem.neutral strong{color:#eef1f4}
.reviewhelp{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1.7fr);gap:18px;align-items:center;margin:0 0 12px;padding:14px 16px;border:1px solid #2c3138;border-radius:12px;background:linear-gradient(180deg,#111419,#0d0f12)}.helpintro{display:flex;flex-direction:column;gap:5px}.helpintro strong{font-size:13px;line-height:1.35}.helpitems{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.helpitems>div{display:flex;align-items:center;gap:8px;min-width:0;color:#c5cbd2;font-size:11px;line-height:1.3}.helpitems kbd,.mouseicon,.tcicon{flex:0 0 auto;display:inline-grid;place-items:center;min-width:38px;height:28px;padding:0 8px;border:1px solid #454c56;border-bottom-width:2px;border-radius:7px;background:#090b0e;color:#fff;font:800 10px/1 system-ui,sans-serif;box-shadow:inset 0 1px #ffffff0d}.mouseicon{min-width:28px;border-radius:50%;padding:0;color:var(--brand-accent,#69727d)}.tcicon{min-width:30px;letter-spacing:.06em}.resumenote{margin:0 0 12px;padding:10px 12px;border-left:3px solid var(--brand-accent,#69727d);border-radius:7px;background:#121419;color:#9fa6b0;font-size:11px}.resumenote strong{color:#fff;font-variant-numeric:tabular-nums}
@media(max-width:1050px){.statussetup,.statusedit{grid-template-columns:repeat(2,minmax(0,1fr))}.reviewhelp{grid-template-columns:1fr}.helpitems{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:700px){.reviewstatus{grid-template-columns:1fr 1fr}.statussetup,.statusedit{grid-template-columns:1fr}.statussetuphead small{margin-left:0;width:100%}.helpitems{grid-template-columns:1fr}.reviewhelp{padding:13px}.statusitem{padding:10px}.resumenote{font-size:10px}}

/* v0.6.0 - user workflow, clickable review markers and freehand annotations */
.userchooser{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.4fr);gap:24px;align-items:start}.userchooser h2{margin:5px 0 6px}.userchoices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.userchoice{--user-color:var(--brand-accent,#69727d);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 9px;border:1px solid color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 30%,#30353e);border-left:3px solid var(--user-color,var(--brand-accent,#69727d));border-radius:10px;background:linear-gradient(90deg,color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 8%,#0a0c0f) 0%,#0a0c0f 42%);color:#fff;text-decoration:none;transition:border-color .18s,background .18s,transform .18s}.userchoice:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 14%,#12161b) 0%,#12161b 42%);border-color:color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 52%,#575f6b)}.userchoice>span:nth-child(2){display:flex;flex-direction:column;gap:2px;min-width:0}.userchoice .avatar{width:32px;height:32px;font-size:12px}.userchoice strong{font-size:13px}.userchoice small{font-size:9px}.userarrow{color:var(--user-color,var(--brand-accent,#69727d));font-size:15px;font-weight:900}.commentlocked{display:flex;flex-direction:column;gap:5px;border-color:#3d4149}.commentlocked span{color:#9299a3;font-size:12px}
.annotationCanvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3;touch-action:none}.annotationCanvas.pen-active{pointer-events:auto;cursor:crosshair}.videoWrap .marker{z-index:4;border-color:var(--brand-accent,#69727d);box-shadow:0 0 0 3px #fff,0 0 0 6px #0009}.videoWrap.isplaying .annotationCanvas,.videoWrap.isplaying .marker{opacity:0}.annotationtools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px;padding:10px 12px;border:1px solid #2c3138;border-radius:11px;background:#0b0d10}.tooltitle{margin-right:4px;font-size:9px;letter-spacing:.14em;color:#777f89;font-weight:900}.toolbtn{display:inline-flex;align-items:center;gap:7px;width:auto;padding:8px 10px;border:1px solid #343a43;background:#171a1f;color:#cfd4db;font-size:11px}.toolbtn.active{border-color:var(--brand-accent,#69727d);background:#2a1114;color:#fff}.ghosttool{background:#0c0e11}.toolicon{font-size:14px;color:var(--brand-accent,#69727d)}.annotationtools small{margin-left:auto;font-size:10px;line-height:1.35}
.reviewtimeline{position:relative;height:30px;margin:7px 4px 0;padding:0 5px}.timelinebase{position:absolute;left:5px;right:5px;top:14px;height:4px;border-radius:99px;background:#252a31;box-shadow:inset 0 1px 2px #000}.timelinemarkers{position:absolute;inset:0 5px}.timeline-marker{position:absolute;top:5px;width:18px;height:18px;padding:0;margin:0;border:0;border-radius:50%;background:transparent;transform:translateX(-50%);z-index:3}.timeline-marker span{display:block;width:9px;height:18px;margin:auto;border-radius:6px;background:var(--brand-accent,#69727d);border:2px solid #0b0d10;box-shadow:0 0 0 1px var(--brand-accent,#69727d)}.timeline-marker.done span{background:#6f7680;box-shadow:0 0 0 1px #6f7680}.timeline-marker:hover span,.timeline-marker:focus-visible span{width:13px;box-shadow:0 0 0 2px #fff}.timelineplayhead{position:absolute;top:3px;bottom:3px;width:2px;background:#fff;left:0;z-index:2;pointer-events:none;box-shadow:0 0 0 1px #000}.timelinelabel{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:0 5px 10px}.timelinelabel span{font-size:9px;letter-spacing:.13em;color:#858d97;font-weight:900}.timelinelabel small{font-size:10px}
.comments .comment{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:stretch;padding:0;overflow:hidden;gap:0}.commentplay{display:grid;place-items:center;width:100%;min-height:100%;padding:0;border-radius:0;border-right:1px solid #292e35;background:#13171c;color:var(--brand-accent,#69727d);font-size:17px}.commentplay:hover{background:#251216;color:#fff}.commentseek{display:flex;flex-direction:column;align-items:flex-start;gap:6px;width:100%;padding:12px 13px;border-radius:0;background:transparent;color:#fff;text-align:left;font-weight:500}.commentseek:hover{background:#14181d}.comment.selected{border-color:#6d3439;box-shadow:0 0 0 1px #e31b2340}.comment.selected .commentplay{background:#2a1114}.comment.done .commentplay,.comment.done .commentseek{opacity:.7}.comment.done{opacity:1}
@media(max-width:900px){.userchooser{grid-template-columns:1fr}.userchoices{grid-template-columns:1fr 1fr}.annotationtools small{width:100%;margin-left:0}.timelinelabel{align-items:flex-start;flex-direction:column;gap:3px}}
@media(max-width:600px){.userchoices{grid-template-columns:1fr}.reviewtimeline{margin-left:0;margin-right:0}.timelinelabel{padding-left:0;padding-right:0}.tooltitle{width:100%}.toolbtn{flex:1;justify-content:center}.comments .comment{grid-template-columns:40px minmax(0,1fr)}}

/* v0.6.1 - intercept clicks on paused picture without covering native video controls */
.pointCapture{position:absolute;left:0;right:0;top:0;bottom:54px;z-index:2;display:none;cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none}.videoWrap.point-capture .pointCapture{display:block}.videoWrap.isplaying .pointCapture{display:none}
@media(max-width:700px){.pointCapture{bottom:48px}}

/* v0.6.2 - compact reviewer selection buttons */


/* v0.6.3 - prominent timecode directly below video */
.transport-prominent{
  margin:10px 0 12px;
  padding:12px 4px 10px;
  align-items:flex-end;
  gap:22px;
}
.timecode-display{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:max-content;
}
.timecode-label{
  font-size:9px;
  line-height:1;
  letter-spacing:.2em;
  font-weight:800;
  color:#7f8791;
}
.transport-prominent #tc{
  display:block;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(22px,2.5vw,32px);
  line-height:1;
  letter-spacing:.035em;
  font-weight:750;
  color:#fff;
  font-variant-numeric:tabular-nums;
  text-shadow:0 2px 14px #000;
}
.transport-hint{
  margin-left:auto;
  padding-bottom:2px;
  font-size:12px;
  color:#8f96a0;
  text-align:right;
}
@media(max-width:700px){
  .transport-prominent{align-items:flex-start;flex-direction:column;gap:7px;padding-left:2px;padding-right:2px}
  .transport-hint{margin-left:0;text-align:left;font-size:11px}
  .transport-prominent #tc{font-size:clamp(22px,8vw,30px)}
}

/* legacy logo sizing rules retained for compatibility; neutral build renders no manufacturer logo */

/* v0.6.5 - customers may delete only their own reviews, with confirmation */
.commentdeleteform{display:flex;margin:0;border-left:1px solid #292e35;background:#0d0f12}.commentdelete{align-self:stretch;border-radius:0;background:transparent;color:#c86a70;padding:8px 10px;font-size:10px;letter-spacing:.04em}.commentdelete:hover{background:#2a1114;color:#fff}.comment.done .commentdelete{opacity:.7}@media(max-width:600px){.comments .comment{grid-template-columns:40px minmax(0,1fr)}.commentdeleteform{grid-column:2;border-left:0;border-top:1px solid #292e35;justify-content:flex-end}.commentdelete{min-height:34px;padding:6px 11px}}

/* v0.6.6 - clearer, slightly smaller timecode and more compact 4K branding */

/* v0.7.0 - simplified customer review UI, compact header and iPad/touch layout */
.shell{max-width:1320px;padding:14px 18px 24px}
.reviewbrand{min-height:34px;margin-bottom:8px;gap:10px}
.brandrow,.reviewbrand{gap:10px}
.fourklogo{width:58px;max-width:18vw;border-radius:5px}
.reviewtag{padding-left:10px;font-size:8px;letter-spacing:.18em}
.branddivider{height:22px}
.clientlogo{max-width:125px;max-height:28px}
.clientname{font-size:12px}
.reviewhead{align-items:center;margin-bottom:10px;gap:12px}
.reviewhead h1{font-size:clamp(22px,2.7vw,34px);line-height:1.04;margin:4px 0 0}
.reviewhead .eyebrow{font-size:8px}
.reviewactions{gap:7px;flex-wrap:nowrap}
.secondarypill{padding:8px 11px;border-radius:8px;font-size:11px}
.topidentity{min-width:0;padding:5px 8px;border-radius:9px;gap:7px;white-space:nowrap}
.topidentity .avatar{width:27px;height:27px;font-size:10px;border-radius:8px}
.topidentity strong{font-size:11px}
.userchooser{padding:14px;margin-bottom:12px;gap:14px}
.userchooser h2{font-size:19px;margin:3px 0 3px}.userchooser p{font-size:10px;margin:0}
.reviewgrid{grid-template-columns:minmax(0,1fr) 340px;gap:14px;align-items:start}
.reviewside{position:sticky;top:8px;align-self:start;min-width:0}
.videoWrap{border-radius:12px;box-shadow:0 12px 38px #0007}
.transport-prominent{margin:4px 0 4px;padding:5px 2px 4px;align-items:center;gap:12px}
.transport-prominent #tc{font-size:clamp(20px,2vw,27px);font-weight:700;letter-spacing:.025em;text-shadow:none}
.timecode-label{font-size:7px;letter-spacing:.18em;color:#6f7680}
.quicktools{margin-left:auto;display:flex;align-items:center;gap:7px;position:relative}
.marktoggle{display:inline-flex;align-items:center;gap:6px;width:auto;min-height:38px;padding:7px 10px;border:1px solid #343a43;border-radius:8px;background:#14171b;color:#d7dce2;font-size:10px;font-weight:800;touch-action:manipulation}
.marktoggle span{color:var(--brand-accent,#69727d)}.marktoggle.active{border-color:var(--brand-accent,#69727d);background:#291114;color:#fff}
.compacthelp{position:relative;color:#8f96a0;font-size:10px}
.compacthelp summary{list-style:none;cursor:pointer;padding:7px 8px;min-height:38px;display:flex;align-items:center;border:1px solid #2d3239;border-radius:8px;background:#0c0e11;color:#989fa8;font-weight:700;touch-action:manipulation}
.compacthelp summary::-webkit-details-marker{display:none}
.compacthelp>div{position:absolute;right:0;top:44px;z-index:30;width:250px;padding:10px 12px;border:1px solid #30353e;border-radius:9px;background:#101318;box-shadow:0 14px 35px #0009;display:grid;gap:6px}
.compacthelp>div span{display:block;line-height:1.35}
.reviewtimeline{height:24px;margin:1px 2px 0}.timelinebase{top:11px;height:3px}.timelineplayhead{top:2px;bottom:2px}.timeline-marker{top:2px;min-width:28px;width:28px;height:22px}.timeline-marker span{height:16px;width:8px;margin-top:3px}
.timelinelabel{padding:0 3px 5px;gap:8px}.timelinelabel span{font-size:7px}.timelinelabel small{font-size:8px;color:#717983}
.annotationtools{margin:3px 0 7px;padding:7px 8px;border-radius:9px;gap:6px}.annotationtools small{font-size:9px}.toolbtn{min-height:38px;padding:7px 9px;touch-action:manipulation}
.compactresume{margin:1px 0 0;padding:3px 3px;border:0;background:transparent;font-size:8px;color:#666e78}.compactresume strong{color:#9299a3}
.compactcomment{padding:13px 14px;margin-bottom:9px;border-radius:12px;box-shadow:none}
.compactcomment label{gap:6px}.commentlabel{display:flex;align-items:baseline;justify-content:space-between;gap:8px;color:#d7dce2;font-size:11px;font-weight:800}.commentlabel small{font-size:9px;font-weight:500}.commentlabel strong{color:#fff;font-variant-numeric:tabular-nums}
.compactcomment textarea{min-height:92px;padding:11px 12px;font-size:16px;line-height:1.35}.commentsave{min-height:44px;padding:10px 12px;font-size:12px;touch-action:manipulation}
.comments{position:static;max-height:360px;overflow:auto;padding:13px 12px;margin-bottom:7px;border-radius:12px;box-shadow:none;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.comments .sectionhead.compact{margin-bottom:7px}.comments h2{font-size:18px}.comments .eyebrow{font-size:7px}.commentcount{min-width:25px;height:25px;font-size:10px}
.comments .comment{margin:6px 0}.commentplay{min-width:42px;min-height:44px;touch-action:manipulation}.commentseek{padding:9px 10px;touch-action:manipulation}.commentseek>span{font-size:12px}.commentseek small{font-size:9px}.commenttop strong{font-size:11px}.authorbadge{font-size:8px;padding:3px 6px}
.commentdelete{min-height:44px;touch-action:manipulation}
.reviewmeta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:3px 8px;padding:2px 3px;color:#5f6670;font-size:7px;line-height:1.25;opacity:.82}.reviewmeta span{white-space:nowrap}
/* Keep the video picture itself under our control: tap = play/pause, never native fullscreen. Native control strip remains free. */
.pointCapture{display:block;cursor:pointer;touch-action:manipulation}.videoWrap.point-capture .pointCapture{display:block;cursor:crosshair;touch-action:none}.videoWrap.isplaying .pointCapture{display:block}
.videoWrap.point-capture.isplaying .pointCapture{display:block}
/* Apple touch devices: avoid accidental text selection/zoom gestures on review controls. */
.reviewgrid button,.reviewgrid summary{-webkit-tap-highlight-color:transparent}
@media(min-width:720px) and (max-width:1100px){
 .shell{padding:10px 11px 18px;max-width:none}
 .reviewbrand{margin-bottom:5px}.fourklogo{width:50px}.clientlogo{max-width:105px;max-height:24px}
 .reviewhead{margin-bottom:7px}.reviewhead h1{font-size:clamp(20px,2.8vw,27px)}
 .reviewgrid{grid-template-columns:minmax(0,1fr) 300px;gap:10px}
 .compactcomment{padding:11px}.compactcomment textarea{min-height:78px}
 .comments{max-height:315px;padding:10px}.comments .comment{grid-template-columns:38px minmax(0,1fr) auto}
 .commentplay{min-width:38px}.commentseek{padding:8px}
 .topidentity{padding:4px 6px}.topidentity .avatar{width:25px;height:25px;border-radius:8px}
 .transport-prominent #tc{font-size:21px}
 .marktoggle,.compacthelp summary{min-height:36px;padding:6px 8px}
 .timelinelabel small{display:none}
}
@media(max-width:719px){
 .shell{padding:10px 12px 20px}
 .reviewbrand{margin-bottom:7px}.fourklogo{width:50px}.clientlogo{max-width:110px;max-height:25px}
 .reviewhead{align-items:center;flex-direction:row;gap:8px}.reviewhead h1{font-size:22px}.reviewactions{width:auto;margin-left:auto;justify-content:flex-end}.topidentity{width:auto}
 .reviewgrid{grid-template-columns:1fr;gap:8px}.reviewside{position:static}
 .transport-prominent{align-items:center;flex-direction:row;gap:8px}.quicktools{margin-left:auto}.transport-prominent #tc{font-size:21px}
 .compacthelp>div{position:absolute;right:0;width:min(260px,80vw)}
 .comments{max-height:none}
 .reviewmeta{justify-content:flex-start;padding-bottom:8px}
 .annotationtools small{width:100%;margin-left:0}
}
@media(max-width:460px){
 .reviewtag,.branddivider{display:none}.clientlogo{margin-left:auto}.reviewhead .eyebrow{display:none}.reviewhead h1{margin:0;font-size:20px}
 .topidentity strong{max-width:92px;overflow:hidden;text-overflow:ellipsis}.secondarypill{padding:7px 8px}
 .timecode-display{min-width:0}.transport-prominent #tc{font-size:19px}.timecode-label{display:none}
 .marktoggle{font-size:0;padding:7px 9px}.marktoggle span{font-size:14px}.compacthelp summary{font-size:0}.compacthelp summary:after{content:'?';font-size:12px;color:#aaa}
}

/* v0.7.1 - unified custom video controls for desktop and iPad */
.videoWrap video{width:100%;height:100%;display:block;object-fit:contain;-webkit-user-select:none;user-select:none}
.videoWrap video::-webkit-media-controls{display:none!important}
.videoWrap video::-webkit-media-controls-enclosure{display:none!important}
.playercontrols{position:absolute;left:0;right:0;bottom:0;z-index:20;display:flex;align-items:center;gap:7px;min-height:58px;padding:10px 11px 8px;background:linear-gradient(to top,rgba(0,0,0,.94),rgba(0,0,0,.72) 66%,rgba(0,0,0,0));-webkit-user-select:none;user-select:none;touch-action:manipulation}
.playerbtn{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:42px;height:42px;min-height:42px;padding:0;border:1px solid #ffffff24;border-radius:9px;background:#11151acc;color:#f5f7fa;font:800 12px/1 system-ui,sans-serif;box-shadow:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.playerbtn:hover,.playerbtn:focus-visible{background:#22272ecc;border-color:#ffffff55;color:#fff}
.playtoggle{width:48px;background:var(--brand-accent,#69727d);border-color:var(--brand-accent,#69727d);color:#fff;font-size:17px}
.playtoggle.playing{background:#b9161c}.playtoggle span{transform:translateX(1px)}.playtoggle.playing span{transform:none;font-size:13px;letter-spacing:-2px}
.framebtn{width:39px;font-size:10px;color:#cfd5dc}.mutebtn{width:44px;font-size:9px;letter-spacing:.04em}.mutebtn.muted{color:var(--brand-accent,#69727d);border-color:#e31b2366}
.seekarea{display:flex;align-items:center;min-width:70px;flex:1;height:42px;padding:0 2px}
.videoseek{--seek-pct:0%;width:100%;height:34px;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;appearance:none;-webkit-appearance:none;cursor:pointer;touch-action:none}
.videoseek:focus{box-shadow:none}.videoseek::-webkit-slider-runnable-track{height:5px;border-radius:99px;background:linear-gradient(to right,var(--brand-accent,#69727d) 0,var(--brand-accent,#69727d) var(--seek-pct),#5d646e var(--seek-pct),#5d646e 100%)}
.videoseek::-webkit-slider-thumb{-webkit-appearance:none;width:19px;height:19px;margin-top:-7px;border:3px solid #fff;border-radius:50%;background:var(--brand-accent,#69727d);box-shadow:0 1px 5px #000b}
.videoseek::-moz-range-track{height:5px;border:0;border-radius:99px;background:#5d646e}.videoseek::-moz-range-progress{height:5px;border-radius:99px;background:var(--brand-accent,#69727d)}.videoseek::-moz-range-thumb{width:15px;height:15px;border:3px solid #fff;border-radius:50%;background:var(--brand-accent,#69727d);box-shadow:0 1px 5px #000b}
.playerclock{flex:0 0 auto;min-width:92px;text-align:center;color:#d3d8de;font:700 10px/1.2 system-ui,sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap}
/* The picture overlay deliberately stops above our custom controls. */
.pointCapture{bottom:58px!important}
.annotationCanvas{z-index:3}.playercontrols~*{} /* keep controls above all annotation layers */
@media(max-width:900px){
 .playercontrols{gap:5px;min-height:60px;padding:9px 8px 7px}
 .playerbtn{width:44px;height:44px;min-height:44px}.playtoggle{width:50px}.framebtn{width:40px}.mutebtn{width:42px}
 .playerclock{min-width:82px;font-size:9px}.pointCapture{bottom:60px!important}
}
@media(max-width:600px){
 .playercontrols{gap:4px;padding-left:6px;padding-right:6px}
 .framebtn{display:none}.playerclock{min-width:72px;font-size:8px}.mutebtn{width:38px}.seekarea{min-width:45px}
}

/* v0.7.3 - player controls moved below the picture */
.playerbar{margin-top:8px;border:1px solid #23272d;border-radius:12px;background:linear-gradient(180deg,#11151a,#0b0d10);overflow:hidden;box-shadow:0 10px 28px #0005}
.playerbar .playercontrols{position:static;left:auto;right:auto;bottom:auto;z-index:auto;min-height:52px;padding:7px 9px;background:transparent}
.pointCapture{bottom:0!important}
@media(max-width:900px){.pointCapture{bottom:0!important}.playerbar .playercontrols{min-height:54px;padding:7px 8px}}
@media(max-width:600px){.playerbar{margin-top:6px}.playerbar .playercontrols{padding:6px}}

/* v0.7.4 - full-width review workspace */
.shell{width:100%;max-width:none;margin:0;padding:12px 18px 22px}
.reviewgrid{grid-template-columns:minmax(0,1fr) clamp(340px,23vw,390px);gap:14px;width:100%}
.reviewmain,.reviewside{min-width:0}
.reviewhead{width:100%}
@media(min-width:1600px){
 .shell{padding-left:22px;padding-right:22px}
 .reviewgrid{grid-template-columns:minmax(0,1fr) 390px;gap:16px}
}
@media(min-width:720px) and (max-width:1100px){
 .shell{width:100%;max-width:none;margin:0;padding:10px 11px 18px}
 .reviewgrid{grid-template-columns:minmax(0,1fr) 300px;gap:10px}
}
@media(max-width:719px){
 .shell{width:100%;max-width:none;margin:0;padding:10px 12px 20px}
 .reviewgrid{grid-template-columns:1fr}
}

/* v0.7.5 - balanced wide workspace: generous, but no edge-to-edge layout */
.shell{width:calc(100% - 32px);max-width:1660px;margin:0 auto;padding:12px 18px 22px}
.reviewgrid{grid-template-columns:minmax(0,1fr) clamp(340px,22vw,380px);gap:14px}
@media(min-width:1800px){
 .shell{max-width:1680px;padding-left:18px;padding-right:18px}
 .reviewgrid{grid-template-columns:minmax(0,1fr) 380px;gap:16px}
}
@media(min-width:720px) and (max-width:1100px){
 .shell{width:calc(100% - 20px);max-width:none;margin:0 auto;padding:10px 11px 18px}
 .reviewgrid{grid-template-columns:minmax(0,1fr) 300px;gap:10px}
}
@media(max-width:719px){
 .shell{width:100%;max-width:none;margin:0;padding:10px 12px 20px}
 .reviewgrid{grid-template-columns:1fr}
}

/* v0.7.6 - slightly tighter desktop workspace so controls/timeline fit without scrolling */
@media(min-width:1101px){
 .shell{width:calc(100% - 40px);max-width:1590px;margin:0 auto;padding:12px 18px 22px}
 .reviewgrid{grid-template-columns:minmax(0,1fr) clamp(340px,22vw,375px);gap:14px}
}
@media(min-width:1500px){
 .shell{max-width:1600px}
 .reviewgrid{grid-template-columns:minmax(0,1fr) 375px;gap:15px}
}

/* v0.7.7 - slightly smaller desktop preview so player, timecode and review markers fit in view */
@media(min-width:1101px){
 .shell{max-width:1510px}
 .reviewgrid{grid-template-columns:minmax(0,1fr) clamp(340px,22vw,375px);gap:14px}
}
@media(min-width:1500px){
 .shell{max-width:1520px}
 .reviewgrid{grid-template-columns:minmax(0,1fr) 375px;gap:15px}
}


/* v0.7.8 - reviewer colors */
.avatar{background:var(--user-color,transparent)}
.authorbadge{background:color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 24%,#20242a);border:1px solid color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 65%,transparent);color:#fff}
.comment{border-left:3px solid var(--user-color,var(--brand-accent,#69727d))}
.commentplay{color:var(--user-color,var(--brand-accent,#69727d))}
.timeline-marker span{background:var(--user-color,transparent);box-shadow:0 0 0 1px var(--user-color,var(--brand-accent,#69727d))}
.timeline-marker.done span{background:color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 42%,#606770);box-shadow:0 0 0 1px color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 42%,#606770)}
.reviewercolorform{display:flex;align-items:end;gap:6px}.colorfield{display:flex;flex-direction:row;align-items:center;gap:6px}.colorfield input[type=color]{width:34px;height:34px;padding:2px;border-radius:8px;cursor:pointer}.colorfield span{font-size:9px;color:#8f96a0;font-variant-numeric:tabular-nums}.colorsave{padding:8px 10px}
@media(max-width:900px){.reviewercolorform{grid-column:1/-1;justify-content:flex-start}}

/* v0.7.9 - cleaner admin dashboard with project cards and frame-30 previews */
.adminshell{max-width:1440px;padding-top:22px}.adminbody .top{margin-bottom:18px}.adminoverview{margin-bottom:26px}.adminoverviewhead{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:20px}.adminoverviewhead h1{font-size:36px;margin:.12em 0 .12em}.newreview{position:relative;z-index:30}.newreview>summary{list-style:none;cursor:pointer;background:var(--brand-accent,#69727d);color:#fff;border-radius:10px;padding:11px 15px;font-weight:850;font-size:13px;white-space:nowrap;-webkit-user-select:none;user-select:none}.newreview>summary::-webkit-details-marker{display:none}.newreview[open]>summary{background:#a9161b}.newreviewpanel{position:absolute;right:0;top:50px;width:min(900px,calc(100vw - 36px));max-height:calc(100vh - 90px);overflow:auto;z-index:40;margin:0;box-shadow:0 28px 90px #000c}.newreviewpanel h2{font-size:25px}.compactdrop{min-height:150px}.compactstatus{padding:14px;gap:10px}.compactstatus .statussetuphead{margin-bottom:0}.projectcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.projectcard{overflow:hidden;background:linear-gradient(180deg,#12151a,#0c0e11);border:1px solid #292e35;border-radius:16px;transition:border-color .18s,transform .18s}.projectcard:hover{border-color:#454c56;transform:translateY(-1px)}.projectcard.selected{border-color:#e31b2377;box-shadow:0 0 0 1px #e31b2322}.projectthumb{position:relative;display:block;aspect-ratio:16/9;background:#030405;overflow:hidden;border-bottom:1px solid #252a31;text-decoration:none}.projectthumb video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none;background:#050607}.thumbshade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,#0009)}.thumbplay{position:absolute;left:14px;bottom:12px;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:var(--brand-accent,#69727d);color:#fff;font-size:12px;padding-left:2px;box-shadow:0 5px 20px #0008}.thumbversion{position:absolute;right:11px;top:10px;padding:5px 7px;border-radius:7px;background:#080a0dcc;border:1px solid #ffffff20;color:#fff;font-size:9px;font-weight:850;letter-spacing:.08em}.projectcardbody{padding:14px}.projecttitle{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.projecttitle>div{min-width:0}.projecttitle h3{font-size:17px;line-height:1.15;margin:2px 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.projecttitle small{font-size:10px}.cardclientlogo{display:block;max-width:74px;max-height:22px;object-fit:contain;margin-bottom:8px;background:#fff;border-radius:4px;padding:2px}.commentstat{flex:0 0 auto;padding:5px 7px;border-radius:99px;background:#20242a;color:#aab1ba;font-size:9px;font-weight:800}.commentstat.hasopen{background:#3b171a;color:#ff8b91}.projectmeta{display:flex;gap:5px;flex-wrap:wrap;margin:12px 0}.projectmeta span{font-size:8px;color:#9ca3ad;border:1px solid #2d3239;border-radius:6px;padding:4px 6px;background:#0a0c0f}.projectactions{display:flex;align-items:center;gap:11px;flex-wrap:wrap;border-top:1px solid #262b31;padding-top:12px}.projectactions .pill{padding:8px 10px;font-size:10px}.ghostlink{font-size:10px;color:#b7bdc6;text-decoration:none}.ghostlink:hover{color:#fff}.emptyprojects{text-align:center;padding:45px}.projectmanagehead{display:flex;align-items:center;gap:14px;margin:28px 0 12px;padding-top:18px;border-top:1px solid #22272d}.projectmanagehead h2{flex:1;font-size:24px}.managepanel{margin-bottom:16px}
@media(max-width:1100px){.projectcards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.adminoverviewhead{align-items:stretch;flex-direction:column}.newreview>summary{width:max-content}.newreviewpanel{position:fixed;left:12px;right:12px;top:72px;width:auto;max-height:calc(100vh - 84px)}.projectcards{grid-template-columns:1fr}.projectmanagehead{align-items:flex-start;flex-wrap:wrap}.projectmanagehead h2{width:100%;flex-basis:100%}}

/* v0.8.0 - editable reviewers */
.reviewereditform{display:grid;grid-template-columns:minmax(150px,1fr) auto auto;align-items:end;gap:8px;min-width:0}.reviewernamefield{min-width:0}.reviewernamefield input{padding:9px 10px}.reviewereditform .colorfield{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.reviewereditform .colorfield span{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#8f96a0}.reviewereditform .colorfield input[type=color]{width:40px;height:38px;padding:2px;border-radius:8px;cursor:pointer}.reviewerstatus{display:flex;align-items:center;justify-content:flex-end;gap:8px}.reviewerstatus small{font-size:10px;color:#8f96a0;white-space:nowrap}.reviewerrow{grid-template-columns:auto minmax(260px,1.15fr) minmax(260px,1.35fr) auto}.colorsave{padding:9px 11px}
@media(max-width:1100px){.reviewerrow{grid-template-columns:auto 1fr}.reviewereditform,.reviewerlink,.reviewerstatus{grid-column:2/-1}.reviewerstatus{justify-content:flex-start}}
@media(max-width:700px){.reviewereditform{grid-template-columns:1fr auto}.reviewereditform .colorsave{grid-column:1/-1}.reviewerlink{grid-column:1/-1}.reviewerstatus{grid-column:1/-1}.reviewerrow{grid-template-columns:auto 1fr}}

/* v0.8.1 - stronger reviewer colour coding */
.avatar{
  border:1px solid color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 78%,#fff)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 20%,transparent);
}
.comments .comment{
  position:relative;
  border-left:5px solid var(--user-color,var(--brand-accent,#69727d))!important;
  border-top-color:color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 38%,#292e35);
  border-right-color:color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 22%,#292e35);
  border-bottom-color:color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 22%,#292e35);
  background:linear-gradient(90deg,color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 13%,#0b0d10) 0%,#0b0d10 46%);
}
.comments .comment .authorbadge{
  background:var(--user-color,transparent)!important;
  border-color:var(--user-color,var(--brand-accent,#69727d))!important;
  color:#fff!important;
  box-shadow:0 0 0 1px #0005;
}
.comments .comment .commenttop>strong{
  color:var(--user-color,var(--brand-accent,#69727d));
}
.comments .comment .commentplay{
  color:var(--user-color,var(--brand-accent,#69727d))!important;
  border-right-color:color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 35%,#292e35);
  background:color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 8%,#13171c);
}
.comments .comment .commentplay:hover{
  background:color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 28%,#15171a);
}
.comments .comment.selected{
  border-color:var(--user-color,var(--brand-accent,#69727d))!important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 55%,transparent),0 0 18px color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 12%,transparent);
}
.comments .comment.selected .commentplay{
  background:color-mix(in srgb,var(--user-color,var(--brand-accent,#69727d)) 24%,#15171a);
}

/* v0.8.3 - force comment cards to mirror timeline reviewer colours */
.comments .comment{--comment-color:var(--user-color,var(--brand-accent,#69727d))}
.comments .comment::before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--comment-color);pointer-events:none}
.comments .comment .authorbadge{background:var(--comment-color)!important;border-color:var(--comment-color)!important}
.comments .comment .commenttop>strong,.comments .comment .commentplay{color:var(--comment-color)!important}

/* v0.8.6 - reviewer chooser colors synced */

/* v0.8.8 - avatar fill comes only from inline user colour */
.avatar{background-image:none}

/* v0.8.9 - avatars are filled rounded squares, no circles */
.avatar{border-radius:10px !important}
.smallavatar{border-radius:9px !important}
.userchoice .avatar{border-radius:9px !important}
.topidentity .avatar,.compactidentity .avatar{border-radius:8px !important}

/* v0.8.10 - revert avatar shape to fully filled circles */
.avatar,.smallavatar,.userchoice .avatar,.topidentity .avatar,.compactidentity .avatar{border-radius:50% !important}


/* v0.8.12 - solid reviewer colour, no pseudo layer */
.avatar,.smallavatar,.userchoice .avatar,.topidentity .avatar,.compactidentity .avatar{
  border-radius:50% !important;
  background-color:var(--user-color,var(--brand-accent,#69727d)) !important;
  background-image:none !important;
  color:#fff !important;
}
.avatar::before{content:none !important;display:none !important}


/* v0.9.0 - notifications and per-user review completion */
.notificationsetup{padding:0;overflow:hidden;margin-top:-4px;margin-bottom:22px}.notificationsetup>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;user-select:none}.notificationsetup>summary::-webkit-details-marker{display:none}.notificationsetup>summary>span:first-child{display:flex;flex-direction:column;gap:2px}.notificationsetup>summary strong{font-size:13px}.notificationsetup>summary small{font-size:10px}.setupchevron{font-size:23px;color:#7f8792;transition:transform .18s}.notificationsetup[open] .setupchevron{transform:rotate(90deg)}.notificationbody{border-top:1px solid #262b31;padding:16px}.notificationbody>p{margin:0 0 14px;font-size:11px}.notificationform{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}.checkline{grid-column:1/-1;display:flex;flex-direction:row;align-items:center;gap:9px;padding:8px 10px;border:1px solid #292e35;border-radius:9px;background:#0a0c0f}.checkline input{width:16px;height:16px;padding:0;margin:0;accent-color:var(--brand-accent,#69727d)}.checkline span{font-size:11px;color:#c7ccd3}.notificationactions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.notificationactions button{padding:9px 12px;font-size:11px}.projectmeta .allcomplete{border-color:#24583a;background:#10261a;color:#9ee0b4}.revieweractivity{display:flex;flex-direction:column;align-items:flex-end;gap:3px}.activitypill{display:inline-flex;width:max-content;padding:4px 7px;border-radius:99px;font-size:9px;font-weight:850}.activitypill.completed{background:#12311f;color:#a9e8bd;border:1px solid #24583a}.activitypill.pending{background:#282d35;color:#aeb5bf;border:1px solid #353b44}.revieweractivity small{font-size:9px}.reviewcompletion{padding:12px 13px;margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:12px}.reviewcompletion.iscomplete{border-color:#24583a;background:linear-gradient(180deg,#10251a,#0d1511)}.completiontitle{display:block;font-size:12px;margin:3px 0}.completioncopy{display:block;font-size:9px;line-height:1.35;max-width:230px}.completionform{margin:0;flex:0 0 auto}.reviewcompletebtn{background:#e9edf2;color:#08090a;padding:9px 11px;font-size:10px;white-space:nowrap}.reviewcompletebtn:hover{background:#fff}.reopenreview{padding:7px 9px;font-size:9px}.completionstate{display:flex;align-items:center;gap:9px}.completionstate>div{display:flex;flex-direction:column;gap:2px}.completionstate strong{font-size:12px;color:#cdebd8}.completionstate small{font-size:9px}.completioncheck{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#1f8a49;color:#fff;font-weight:900}.completionnotice{grid-column:1/-1;width:100%;padding:6px 8px;border-radius:7px;background:#12311f;color:#bfeacf;font-size:9px}.completionnotice.neutral{background:#20242a;color:#cbd0d7}
@media(max-width:900px){.notificationform{grid-template-columns:1fr}.notificationactions,.checkline{grid-column:auto}.revieweractivity{align-items:flex-start}.reviewcompletion{align-items:stretch;flex-direction:column}.completionform{width:100%}.reviewcompletebtn,.reopenreview{width:100%}}

/* v0.9.1 - white-label branding and expanded mail settings */
.fourklogo.custombrandlogo{width:auto!important;max-width:155px;max-height:58px;object-fit:contain;border-radius:5px}
.reviewbrand .fourklogo.custombrandlogo{max-width:145px;max-height:50px}
.brandingsetup{margin-bottom:12px}
.brandingpreview{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;margin:0 0 14px;border:1px solid #2b3037;border-radius:11px;background:#0a0c0f}
.brandingpreview>.eyebrow{margin:0;white-space:nowrap}.brandingpreview .brandrow{margin:0}
.brandingform .widefield,.notificationform .widefield{grid-column:1/-1}
.setuphint{display:block;margin-top:12px;font-size:9px;line-height:1.45;color:#7f8792}
.notificationform input[type=email],.notificationform input[type=url]{font-size:12px}
@media(max-width:900px){.fourklogo.custombrandlogo{max-width:130px;max-height:48px}.reviewbrand .fourklogo.custombrandlogo{max-width:120px;max-height:44px}.brandingpreview{align-items:flex-start;flex-direction:column}.brandingform .widefield,.notificationform .widefield{grid-column:auto}}

/* v0.9.2 - unified backend settings */
.settingspanel{margin-top:-4px;margin-bottom:22px}
.settingsbody{display:grid;grid-template-columns:1fr;gap:0;padding:0!important}
.settingssection{padding:18px 18px 20px}
.settingssection+.settingssection{border-top:1px solid #282d34}
.settingssectionhead{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:7px}
.settingssectionhead h3{font-size:17px;margin:3px 0 0}
.settingssectionhead .fourklogo,.settingssectionhead .brandlogo{max-height:42px;max-width:110px;width:auto}
.settingsmailstate{font-size:10px;color:#a7aeb8;background:#20242a;border:1px solid #343a43;border-radius:99px;padding:5px 8px;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.settingssection>.muted{margin:0 0 14px;font-size:11px}
.settingssection .notificationform{margin-top:10px}
@media(min-width:1180px){.settingsbody{grid-template-columns:1fr 1fr}.settingssection+.settingssection{border-top:0;border-left:1px solid #282d34}}
@media(max-width:700px){.settingssection{padding:15px}.settingssectionhead{align-items:flex-start}.settingsmailstate{max-width:130px}.notificationform{grid-template-columns:1fr}.widefield,.checkline,.notificationactions{grid-column:1/-1}}


/* v0.9.3 - backend video preview */
.projectthumb{cursor:pointer}
.projectthumb .thumbplay{transition:transform .18s,box-shadow .18s}
.projectthumb:hover .thumbplay{transform:scale(1.08);box-shadow:0 0 0 5px #e31b2320}
.projectmanageactions{display:flex;align-items:center;gap:8px;margin-left:auto}
.adminvideomodal[hidden]{display:none!important}
.adminvideomodal{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:28px}
.adminvideobackdrop{position:absolute;inset:0;background:#000c;backdrop-filter:blur(7px)}
.adminvideodialog{position:relative;z-index:1;width:min(1280px,94vw);max-height:92vh;border:1px solid #343a43;border-radius:16px;background:#0b0d10;box-shadow:0 30px 100px #000;overflow:hidden}
.adminvideohead{height:48px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 12px 0 16px;border-bottom:1px solid #292e35;background:#12151a}
.adminvideohead strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.adminvideoclose{width:34px;height:34px;padding:0;border:0;border-radius:9px;background:#242930;color:#fff;font-size:25px;line-height:1;cursor:pointer}
.adminvideoclose:hover{background:#343a43}
.adminvideobody{display:flex;align-items:center;justify-content:center;background:#000;max-height:calc(92vh - 48px)}
.adminvideobody video{display:block;width:100%;max-height:calc(92vh - 48px);background:#000;outline:none}
body.previewopen{overflow:hidden}
@media(max-width:700px){.adminvideomodal{padding:10px}.adminvideodialog{width:100%;max-height:96vh}.adminvideobody,.adminvideobody video{max-height:calc(96vh - 48px)}.projectmanageactions{width:100%;margin-left:0}.projectmanageactions>*{flex:1}}

/* v0.10.0 - correction loops, formal completion and PDF confirmation */
.projectmeta .roundmeta{border-color:#6b5525;background:#241d0d;color:#efcf86}
.roundbanner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 13px;margin:8px 0 12px;border-color:#5c4922;background:linear-gradient(90deg,#211a0c,#101114 52%)}
.roundbanner>div{display:flex;flex-direction:column;gap:2px}.roundbanner strong{font-size:13px}.roundbanner small{font-size:9px;line-height:1.4;color:#b9b2a4}.roundcount{flex:0 0 auto;display:grid;place-items:center;min-width:48px;height:34px;padding:0 10px;border-radius:99px;background:#e8c66f;color:#1b1609;font-weight:900;font-size:11px}
.reviewcompletion{flex-wrap:wrap}.completionconfirmform{display:grid;grid-template-columns:minmax(190px,1fr) auto;gap:8px;align-items:center;min-width:min(100%,360px)}
.completioncheckline{grid-column:1/-1;display:flex;align-items:flex-start;gap:7px;padding:8px 9px;border:1px solid #323840;border-radius:8px;background:#090b0e;cursor:pointer}.completioncheckline input{width:15px;height:15px;margin:1px 0 0;padding:0;accent-color:var(--brand-accent,#69727d);flex:0 0 auto}.completioncheckline span{font-size:9px;line-height:1.35;color:#c9ced5}
.completionactions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.completionpdf,.activitypdf{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid #2c6240;border-radius:8px;background:#12311f;color:#c6ecd2;font-size:9px;font-weight:850;padding:7px 9px}.completionpdf:hover,.activitypdf:hover{background:#19452b;color:#fff}.activitypdf{padding:3px 6px;border-radius:6px;font-size:8px}
.statusedit input[type=number]{font-variant-numeric:tabular-nums}
@media(max-width:900px){.roundbanner{align-items:flex-start}.completionconfirmform{grid-template-columns:1fr;width:100%}.completioncheckline{grid-column:auto}.completionactions{width:100%}.completionpdf,.completionactions .completionform,.completionactions button{width:100%}}


/* v0.10.1 - password management */
.adminforgot{margin:12px 0 0;font-size:11px;text-align:center}.adminforgot a{color:#aeb5bf}.adminforgot a:hover{color:#fff}
.securitysection{grid-column:1/-1!important;border-left:0!important;border-top:1px solid #282d34!important}.resethint{margin:13px 0 0;font-size:10px;color:#8f96a0}.resethint code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#c8cdd4}
@media(min-width:1180px){.securitysection{grid-column:1/-1!important;border-left:0!important;border-top:1px solid #282d34!important}}

/* v0.10.2 - correction loop admin + visible completion modal */
.correctionpanel{border-color:#5a4924;background:linear-gradient(180deg,#17140d,#101216)}
.correctionpanel .sectionhead{align-items:flex-start}
.roundadminbadge{display:grid;place-items:center;min-width:68px;height:44px;padding:0 14px;border-radius:99px;background:#e8c66f;color:#1b1609;font-size:15px;font-weight:950;letter-spacing:.04em}
.correctionsettings{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;align-items:end;gap:12px;margin-top:12px}
.correctionsettings input[type=number]{font-size:18px;font-weight:850;padding:12px}
.correctionsettings button{white-space:nowrap}
.roundadminpreview{display:flex;flex-direction:column;gap:3px;margin-top:12px;padding:11px 13px;border:1px solid #6b5525;border-radius:10px;background:#211a0c}
.roundadminpreview strong{font-size:12px;color:#f0d38b}.roundadminpreview span{font-size:10px;line-height:1.45;color:#c8bea8}
.roundadminpreview.neutral{border-color:#30353e;background:#0a0c0f}.roundadminpreview.neutral strong{color:#d8dde4}.roundadminpreview.neutral span{color:#9299a3}
.completiontopbtn{background:#e8c66f!important;color:#1b1609!important;border-color:#e8c66f!important;cursor:pointer}
.completiontopbtn:hover{background:#f1d98e!important}.completiontopdone{background:#12311f!important;color:#bfeacf!important;border-color:#24583a!important}
.completionmodal[hidden]{display:none!important}.completionmodal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:18px}
.completionmodalbackdrop{position:absolute;inset:0;background:#000d;backdrop-filter:blur(7px)}
.completionmodaldialog{position:relative;z-index:1;width:min(560px,94vw);border:1px solid #3b414a;border-radius:16px;background:#101318;box-shadow:0 30px 110px #000;overflow:hidden}
.completionmodalhead{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 18px 14px;border-bottom:1px solid #2c3138}.completionmodalhead h2{font-size:24px;margin:4px 0 0}
.completionmodalclose{width:34px;height:34px;flex:0 0 auto;padding:0;border:0;border-radius:50%;background:#252a31;color:#fff;font-size:24px;line-height:1;cursor:pointer}
.completionmodalbody{padding:18px}.completionround{display:flex;flex-direction:column;gap:4px;padding:12px 14px;margin-bottom:14px;border:1px solid #6b5525;border-radius:10px;background:#211a0c}.completionround strong{font-size:15px;color:#f1d58d}.completionround span{font-size:10px;line-height:1.45;color:#c9bea7}
.completionquestion{font-size:15px;font-weight:750;line-height:1.45;color:#f3f5f7;margin:0 0 14px}
.modalcompletionform{display:block;min-width:0}.modalcompletionform .completioncheckline{margin-bottom:14px}.completionmodalactions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.completionmodalactions button{min-width:130px}
body.completionmodalopen{overflow:hidden}
@media(max-width:900px){.correctionsettings{grid-template-columns:1fr}.roundadminbadge{min-width:58px;height:38px}.completionmodalactions{flex-direction:column-reverse}.completionmodalactions button{width:100%}}

/* v0.11.0 - visible mail settings, review scope and audio review */
.notificationstandalone{padding:18px 20px;margin:0 0 16px}.notificationstandalone .settingssectionhead{margin-bottom:6px}.notificationstandalone .settingssectionhead h2{font-size:19px;margin:2px 0 0}.notificationstandalone>.muted{margin:0 0 14px;font-size:11px}.notificationstandalone .notificationform{margin-top:8px}.notificationstandalone .settingsmailstate{padding:5px 8px;border-radius:99px;background:#0a0c0f;border:1px solid #30353e;font-size:9px;color:#b7bec7;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.reviewscopebox,.scopeedit{padding:14px;border:1px solid #30353e;border-radius:14px;background:#0a0c0f}.reviewscopebox .statussetuphead{margin-bottom:10px}.scopechoices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.scopechoice{display:flex;flex-direction:row;align-items:center;gap:9px;padding:10px 11px;border:1px solid #2c3239;border-radius:10px;background:#111419;cursor:pointer;min-height:58px}.scopechoice:hover{border-color:#4a525d}.scopechoice input{width:16px;height:16px;flex:0 0 16px;padding:0;margin:0;accent-color:var(--brand-accent,#69727d)}.scopechoice>span{display:flex;flex-direction:column;gap:2px;min-width:0}.scopechoice strong{font-size:11px;color:#e8ebef}.scopechoice small{font-size:9px;line-height:1.3}.scopechoice:has(input:checked){border-color:#e31b2380;background:#251013;box-shadow:0 0 0 1px #e31b2322 inset}.scopechoice.primaryscope:has(input:checked){background:#271115}.scopecustom{margin-top:10px}.scopeedit{display:grid;gap:12px}.scopeedit>button{justify-self:start}.scopeadminbadge{max-width:42%;padding:6px 9px;border:1px solid #38414b;border-radius:99px;background:#0c1014;color:#d9dee5;font-size:9px;font-weight:850;text-align:right}.scopemeta{border-color:#344657!important;color:#bcd2e8!important;background:#0c151d!important}

.reviewscopebanner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 14px;margin:8px 0 12px;border-color:#314659;background:linear-gradient(90deg,#0c1721,#101114 55%)}.reviewscopebanner>div{display:flex;flex-direction:column;gap:3px}.reviewscopebanner strong{font-size:14px;color:#edf5fc}.reviewscopebanner small{font-size:10px;line-height:1.45;color:#aebdca;max-width:980px}.scopemedium{flex:0 0 auto;padding:7px 10px;border-radius:99px;border:1px solid #3a5369;background:#132432;color:#b9d7ef;font-size:9px;font-weight:900;letter-spacing:.12em}.completionscope{display:flex;flex-direction:column;gap:5px;padding:12px 14px;margin-bottom:14px;border:1px solid #334a5d;border-radius:10px;background:#0d1821}.completionscope strong{font-size:15px}.completionscope small{font-size:10px;line-height:1.45;color:#b5c2ce}

.audioWrap{aspect-ratio:auto;min-height:310px;background:radial-gradient(circle at 50% 20%,#1b2631,#080a0d 58%);display:flex;align-items:center;justify-content:center;padding:28px}.audioWrap audio{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.audiohero{width:min(760px,90%);display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center}.audioheromark{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:var(--brand-accent,#69727d);color:#fff;font-size:31px;box-shadow:0 12px 38px #0009}.audiohero>div:nth-child(2){display:flex;flex-direction:column;gap:5px}.audiohero strong{font-size:clamp(20px,3vw,34px);letter-spacing:-.025em}.audiohero small{font-size:11px;color:#aab6c2}.audiowavehero{grid-column:1/-1;height:74px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 8px;border-top:1px solid #ffffff10;border-bottom:1px solid #ffffff10}.audiowavehero i,.audiowaves i{display:block;width:5px;border-radius:99px;background:linear-gradient(var(--brand-accent,#69727d),#8e151a)}.audiowavehero i:nth-child(1){height:16px}.audiowavehero i:nth-child(2){height:34px}.audiowavehero i:nth-child(3){height:50px}.audiowavehero i:nth-child(4){height:26px}.audiowavehero i:nth-child(5){height:58px}.audiowavehero i:nth-child(6){height:42px}.audiowavehero i:nth-child(7){height:64px}.audiowavehero i:nth-child(8){height:28px}.audiowavehero i:nth-child(9){height:52px}.audiowavehero i:nth-child(10){height:38px}.audiowavehero i:nth-child(11){height:60px}.audiowavehero i:nth-child(12){height:32px}.audiowavehero i:nth-child(13){height:48px}.audiowavehero i:nth-child(14){height:24px}.audiowavehero i:nth-child(15){height:14px}

.audioprojectthumb{background:linear-gradient(135deg,#151d26,#07090c)}.audiothumbvisual{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.audioicon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--brand-accent,#69727d);color:#fff;font-size:22px}.audiothumbvisual>strong{font-size:9px;letter-spacing:.14em;color:#c1cad4}.audiowaves{height:28px;display:flex;align-items:center;gap:3px}.audiowaves i{width:3px}.audiowaves i:nth-child(1),.audiowaves i:nth-child(9){height:7px}.audiowaves i:nth-child(2),.audiowaves i:nth-child(8){height:13px}.audiowaves i:nth-child(3),.audiowaves i:nth-child(7){height:20px}.audiowaves i:nth-child(4),.audiowaves i:nth-child(6){height:27px}.audiowaves i:nth-child(5){height:16px}.adminvideobody audio{width:min(760px,90%);margin:90px 0;background:#111;border-radius:10px}.dropzone.audiofile .dropicon{border-color:#e31b2366;color:#ff8388}.dropzone.audiofile strong:after{content:' · AUDIO';font-size:9px;letter-spacing:.13em;color:#e75b61;margin-left:6px}

@media(max-width:900px){.scopechoices{grid-template-columns:repeat(2,minmax(0,1fr))}.reviewscopebanner{align-items:flex-start}.scopeadminbadge{max-width:none}}
@media(max-width:620px){.scopechoices{grid-template-columns:1fr}.audioWrap{min-height:230px;padding:18px}.audiohero{grid-template-columns:auto 1fr;gap:12px}.audioheromark{width:54px;height:54px;font-size:24px}.audiowavehero{height:52px;gap:4px}.notificationstandalone{padding:15px}.notificationstandalone .notificationform{grid-template-columns:1fr}}

/* v0.12.0 - focused admin workspace, compact management and configurable appearance */

/* Brand accent: global controls that previously used the fixed 4K red. */
.progressbar,
.newreview>summary,
.thumbplay,
.playtoggle,
.audioheromark,
.audioicon{background:var(--brand-accent,#69727d)!important}
.checkline input,
.completioncheckline input,
.scopechoice input{accent-color:var(--brand-accent,#69727d)!important}
.marktoggle span,.mutebtn.muted{color:var(--brand-accent,#69727d)!important}
.marktoggle.active{border-color:var(--brand-accent,#69727d)!important;background:color-mix(in srgb,var(--brand-accent,#69727d) 18%,#111419)!important}
.videoseek::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--brand-accent,#69727d) 0,var(--brand-accent,#69727d) var(--seek-pct),#5d646e var(--seek-pct),#5d646e 100%)!important}
.videoseek::-webkit-slider-thumb{background:var(--brand-accent,#69727d)!important}
.videoseek::-moz-range-progress{background:var(--brand-accent,#69727d)!important}
.videoseek::-moz-range-thumb{background:var(--brand-accent,#69727d)!important}
.scopechoice:has(input:checked){border-color:color-mix(in srgb,var(--brand-accent,#69727d) 64%,#30353e)!important;background:color-mix(in srgb,var(--brand-accent,#69727d) 12%,#101318)!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-accent,#69727d) 22%,transparent) inset!important}
.projectcard.selected{border-color:color-mix(in srgb,var(--brand-accent,#69727d) 68%,#323840)!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-accent,#69727d) 18%,transparent)!important}

/* Dashboard first: stronger surface separation and less visual noise. */
.adminbody{background:radial-gradient(circle at 18% -12%,#20252c 0,#090b0e 36%,#050607 72%)}
.adminshell{max-width:1460px;padding-top:18px}
.adminbody .top{margin-bottom:14px;padding-bottom:13px;border-bottom:1px solid #252a31}
.adminoverviewhead{align-items:center;margin-bottom:18px}
.adminoverviewhead h1{font-size:38px;margin:.08em 0 .08em}
.adminoverviewhead .muted{margin:0;color:#858e99}
.adminheadtools{display:flex;align-items:center;gap:9px;position:relative;z-index:50}
.adminmanagebtn{padding:10px 14px!important;border-color:#48515d!important;background:#171b20!important;color:#f3f5f7!important;font-size:12px}
.adminmanagebtn:hover{background:#232831!important;border-color:#687382!important}
.projectcards{gap:16px}
.projectcard{background:linear-gradient(180deg,#15191f,#0b0d10);border-color:#333941;box-shadow:0 12px 34px #0005}
.projectcard:hover{border-color:#5b6470;box-shadow:0 16px 42px #0008}
.projectcardbody{padding:15px}
.projectmeta span{background:#0d1014;border-color:#333941;color:#aab1bb}
.projectactions{border-color:#30363e}

/* New review is a modal rather than a large floating dashboard column. */
.newreview{position:relative;z-index:60}
.newreview>summary{padding:10px 14px;border-radius:9px;font-size:12px;background:var(--brand-accent,#69727d)!important}
.newreview[open]>summary{background:color-mix(in srgb,var(--brand-accent,#69727d) 78%,#000)!important}
.newreview[open]::before{content:"";position:fixed;inset:0;z-index:800;background:#000c;backdrop-filter:blur(7px)}
.newreviewpanel{position:fixed!important;left:50%!important;right:auto!important;top:50%!important;transform:translate(-50%,-50%);z-index:820!important;width:min(1040px,calc(100vw - 36px))!important;max-height:calc(100vh - 46px)!important;overflow:auto!important;margin:0!important;padding:22px!important;border-color:#414953!important;background:linear-gradient(180deg,#171b21,#0c0f13)!important;box-shadow:0 34px 120px #000f!important}
.newreviewpanel>.sectionhead{position:sticky;top:-22px;z-index:8;margin:-22px -22px 18px;padding:20px 22px 15px;background:linear-gradient(180deg,#171b21 80%,#171b21ed);border-bottom:1px solid #30363e}
.adminmodalclose{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;padding:0;border-radius:50%;background:#292f37;color:#fff;border:1px solid #444c56;font-size:22px;line-height:1}
.adminmodalclose:hover{background:#373e48}
body.newreviewopen{overflow:hidden}
.compactdrop{min-height:125px}
.reviewscopebox{background:#0d1014;border-color:#39414b}
.projectextras{border:1px solid #333a43;border-radius:12px;background:#0b0e12;overflow:hidden}
.projectextras>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;color:#dfe3e8;font-size:12px;font-weight:800}
.projectextras>summary::-webkit-details-marker{display:none}
.projectextras>summary:after{content:'+';font-size:18px;color:#8e97a3}
.projectextras[open]>summary:after{content:'−'}
.projectextras>summary span{margin-left:auto;color:#737c87;font-size:9px;font-weight:600}
.projectextrasbody{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px;border-top:1px solid #2d333b}
.projectextrasbody>.wide{grid-column:1/-1}

/* Compact global administration overlay. */
.adminmanagementmodal[hidden]{display:none!important}
.adminmanagementmodal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px}
.adminmanagementbackdrop{position:absolute;inset:0;background:#000d;backdrop-filter:blur(8px)}
.adminmanagementdialog{position:relative;z-index:1;width:min(850px,96vw);height:min(680px,92vh);display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;border:1px solid #454d58;border-radius:17px;background:#0d1014;box-shadow:0 36px 130px #000}
.adminmanagementhead{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:20px 22px 16px;border-bottom:1px solid #30363e;background:#15191f}
.adminmanagementhead h2{font-size:24px;margin:3px 0 2px}
.adminmanagementhead p{margin:0;color:#89929e;font-size:10px}
.adminmanagementclose{width:35px;height:35px;display:grid;place-items:center;flex:0 0 35px;padding:0;border-radius:50%;background:#2a3038;color:#fff;border:1px solid #49525d;font-size:23px}
.managementtabs{display:flex;gap:4px;padding:9px 12px;border-bottom:1px solid #30363e;background:#090b0e;overflow:auto}
.managementtabs button{flex:0 0 auto;padding:8px 12px;border:1px solid transparent;border-radius:8px;background:transparent;color:#969faa;font-size:10px}
.managementtabs button:hover{background:#171b21;color:#fff}
.managementtabs button.active{background:#20262d;color:#fff;border-color:#3e4650}
.adminmanagementbody{overflow:auto;padding:20px 22px 24px;background:linear-gradient(180deg,#0d1014,#090b0e)}
.managementpanel{display:none}
.managementpanel.active{display:block}
.managementsectionhead{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #2e343c}
.managementsectionhead h3{margin:3px 0 4px;font-size:20px}
.managementsectionhead p{margin:0;max-width:580px;font-size:10px;line-height:1.5}
.managementbrandpreview{display:grid;place-items:center;min-width:88px;min-height:58px;padding:8px 10px;border:1px solid #353d46;border-radius:10px;background:#07090b}
.managementbrandpreview .fourklogo{width:auto;max-width:88px;max-height:44px}
.managementform{display:grid;grid-template-columns:1fr 1fr;gap:13px;align-items:end}
.managementform .widefield,.managementactions,.compacttoggles{grid-column:1/-1}
.managementmainfield input{font-size:16px;font-weight:700;padding:14px}
.managementactions{display:flex;align-items:center;gap:8px;padding-top:3px}
.managementactions button{padding:10px 13px;font-size:11px}
.settingsmailstate{max-width:280px;padding:5px 9px;border:1px solid #3a424c;border-radius:99px;background:#07090b;color:#c1c7cf;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.compacttoggles{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.advancedsettings{border:1px solid #303740;border-radius:10px;background:#090b0e;overflow:hidden}
.advancedsettings>summary{list-style:none;cursor:pointer;padding:10px 12px;color:#aab2bc;font-size:10px;font-weight:750}
.advancedsettings>summary::-webkit-details-marker{display:none}
.advancedsettings>summary:after{content:' +';color:#6f7884}
.advancedsettings[open]>summary:after{content:' −'}
.advancedsettingsbody,.advancedsettingsgrid{padding:12px;border-top:1px solid #2b3138}
.advancedsettingsgrid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.colorpick{padding:13px;border:1px solid #333b45;border-radius:12px;background:#0a0d11}
.colorinputrow{display:flex;align-items:center;gap:10px}
.colorinputrow input[type=color]{width:56px;height:44px;padding:3px;cursor:pointer}
.colorinputrow strong{font:700 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:#d6dbe1;text-transform:uppercase}
.colorpick small{font-size:9px;line-height:1.4}
.appearancechip{width:38px;height:38px;border-radius:50%;background:var(--chip);box-shadow:0 0 0 5px color-mix(in srgb,var(--chip) 18%,transparent)}
.appearancepreview{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.appearancepreview span{display:grid;place-items:center;min-height:62px;border:1px solid #ffffff22;border-radius:10px;color:#fff;font-size:10px;font-weight:850;text-shadow:0 1px 4px #000}
body.managementopen{overflow:hidden}

/* Make administration hierarchy easier to scan. */
.managepanel,.adminoverview .panel{border-color:#353c45}
.projectmanagehead{border-color:#353c45}
.projectmanagehead h2{font-size:25px}
.reviewscopepanel{background:linear-gradient(180deg,#121a21,#0d1115);border-color:#3a4a58}
.correctionpanel{background:linear-gradient(180deg,#19150d,#101216);border-color:#6a562b}
#projectstatus{background:linear-gradient(180deg,#15181d,#0f1115)}

@media(max-width:900px){
 .adminoverviewhead{align-items:flex-start}
 .adminheadtools{width:100%;justify-content:flex-end}
 .newreviewpanel{width:calc(100vw - 20px)!important;max-height:calc(100vh - 20px)!important;padding:16px!important}
 .newreviewpanel>.sectionhead{top:-16px;margin:-16px -16px 15px;padding:16px}
 .adminmanagementmodal{padding:10px}
 .adminmanagementdialog{width:100%;height:min(760px,calc(100vh - 20px))}
 .managementform,.compacttoggles,.advancedsettingsgrid,.projectextrasbody{grid-template-columns:1fr}
 .managementform .widefield,.managementactions,.compacttoggles,.projectextrasbody>.wide{grid-column:auto}
 .managementsectionhead{flex-direction:column}
 .managementbrandpreview{align-self:flex-start}
}
@media(max-width:620px){
 .adminheadtools{justify-content:stretch}.adminmanagebtn,.newreview,.newreview>summary{flex:1;width:100%}.newreview>summary{text-align:center}
 .managementtabs{padding:7px}.managementtabs button{padding:8px 9px}
 .adminmanagementbody{padding:16px}.adminmanagementhead{padding:16px}
 .projectextras>summary span{display:none}
}

/* v0.12.1 - compact system/update management */
.versionbadge{display:inline-flex;align-items:center;justify-content:center;min-width:72px;height:34px;padding:0 12px;border:1px solid #47515d;border-radius:999px;background:#171c22;color:#f4f6f8;font-size:12px;font-weight:800;letter-spacing:.04em;white-space:nowrap}
.updatesummary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 16px}
.updatesummary>div{display:flex;flex-direction:column;gap:5px;min-width:0;padding:11px 12px;border:1px solid #303741;border-radius:10px;background:#11151a}
.updatesummary span{color:#7f8995;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.updatesummary strong{color:#e8ebef;font-size:11px;line-height:1.35;overflow-wrap:anywhere}
.updateform{padding:14px;border:1px solid #343c46;border-radius:12px;background:#0a0d10}
.updatewarning{padding:10px 12px;border-left:3px solid var(--accent,#e31b23);border-radius:6px;background:#171b20;color:#aeb6c0;font-size:10px;line-height:1.5}
.updatewarning strong{color:#fff}
.rollbackbox{margin-top:14px}
.rollbackbox .advancedsettingsbody{display:flex;flex-direction:column;gap:12px}
.rollbackbox form{margin:0}
@media(max-width:720px){.updatesummary{grid-template-columns:1fr}.versionbadge{align-self:flex-start}}


/* v0.12.4 - compact review status + reliable audio controls */
.reviewstatusrow{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:10px;margin:7px 0 11px}
.reviewstatusrow.scope-only{grid-template-columns:1fr}
.reviewstatusrow .panel{margin:0;min-width:0}
.reviewstatusrow .roundbanner,.reviewstatusrow .reviewscopebanner{padding:9px 12px;min-height:58px}
.reviewstatusrow .roundbanner strong,.reviewstatusrow .reviewscopebanner strong{font-size:12px;line-height:1.2}
.reviewstatusrow .roundbanner small,.reviewstatusrow .reviewscopebanner small{font-size:8.5px;line-height:1.28;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.reviewstatusrow .eyebrow{font-size:8px}
.reviewstatusrow .roundcount{min-width:43px;height:29px;font-size:10px}
.reviewstatusrow .scopemedium{padding:5px 8px;font-size:8px}
.volumecontrol{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.volumecontrol .mutebtn{width:38px;padding-left:0;padding-right:0;font-size:15px;line-height:1}
.volumeslider{width:82px;min-width:60px;height:22px;padding:0;border:0;background:transparent;box-shadow:none;accent-color:var(--brand-accent,#69727d);cursor:pointer}
.volumeslider:focus{box-shadow:none;border:0}
@media(max-width:900px){.reviewstatusrow{grid-template-columns:1fr}.reviewstatusrow .roundbanner small,.reviewstatusrow .reviewscopebanner small{white-space:normal}.volumeslider{width:66px}}
@media(max-width:620px){.volumecontrol{gap:4px}.volumeslider{width:52px}.playerclock{font-size:9px}}

/* v0.12.5 - safe media/project deletion */
.dashboardnotice{margin:0 0 14px}
.mediamissingthumb{display:grid!important;place-items:center;text-align:center;background:linear-gradient(145deg,#171a1f,#0b0d10);border-bottom:1px solid #30363e;color:#7f8995}
.mediamissingthumb>div{display:flex;flex-direction:column;gap:6px;align-items:center}
.mediamissingthumb>div span{font-size:9px;letter-spacing:.16em;color:#b76b6b;font-weight:900}
.mediamissingthumb>div strong{font-size:11px;color:#9aa3ad}
.disabledlink{opacity:.42;cursor:not-allowed;pointer-events:none}
.filemissingbadge{display:inline-flex;align-items:center;padding:7px 10px;border:1px solid #6b4242;border-radius:8px;background:#241313;color:#e0a0a0;font-size:10px;font-weight:800}
.dangerjump{color:#e0a0a0!important;border-color:#6b4242!important}
.projectdanger{margin-top:20px;border-color:#623b3b!important;background:linear-gradient(180deg,#171012,#0d0d0f)!important}
.projectdanger .sectionhead{border-bottom:1px solid #3a292b;padding-bottom:14px;margin-bottom:14px}
.dangergrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.dangercard{display:flex;flex-direction:column;justify-content:space-between;gap:18px;padding:16px;border:1px solid #4a3739;border-radius:12px;background:#0f1013}
.dangercard h3{margin:4px 0 7px;font-size:16px}
.dangercard p{margin:0;color:#959da7;font-size:10px;line-height:1.5}
.dangercard p strong{color:#d8dde3;overflow-wrap:anywhere}
.finaldanger{border-color:#713f43;background:#160d0f}
.dangerbtn{width:100%;padding:10px 13px;border-color:#9b454c!important;background:#7e2931!important;color:#fff!important;font-size:10px;font-weight:850}
.dangerbtn:hover{background:#9a323b!important}
.secondarydanger{background:#29171a!important;border-color:#704249!important;color:#f1c3c7!important}
.secondarydanger:hover{background:#3b1f23!important}
.dangerconfirm{display:flex!important;align-items:flex-start;gap:9px;margin:0 0 10px;color:#c7cdd4!important;font-size:10px!important;font-weight:650!important;line-height:1.35!important}
.dangerconfirm input{width:auto!important;margin-top:1px;accent-color:#a73842}
@media(max-width:760px){.dangergrid{grid-template-columns:1fr}}


/* v0.12.6 - existing project media replacement */
.mediareplacepanel{border-color:color-mix(in srgb,var(--accent,#e31b23) 22%,#2b3139);}
.mediareplacebadge{font-size:11px;font-weight:900;letter-spacing:.1em;padding:6px 10px;border-radius:999px;background:#151a20;border:1px solid #303740;color:#cfd5dc}
.currentmediafile{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;margin:10px 0 14px;border:1px solid #2a3139;border-radius:12px;background:#101419}
.currentmediafile div{display:grid;gap:2px}.currentmediafile small{color:#7f8994;text-transform:uppercase;letter-spacing:.08em;font-size:10px}.currentmediafile strong{font-size:13px;color:#eef1f4}.currentmediafile span{font-size:12px;color:#929ca7}
.replaceform{display:grid;grid-template-columns:minmax(260px,1.6fr) minmax(120px,.55fr) minmax(120px,.45fr) auto;gap:10px;align-items:end}
.replacefilepick{position:relative;overflow:hidden}.replacefilepick input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.replacefilepick>span{display:flex;align-items:center;min-height:42px;padding:0 12px;border:1px dashed #46505b;border-radius:9px;background:#0e1216;color:#cdd3da;cursor:pointer}
.replaceform .primary{min-height:42px;white-space:nowrap}.replaceform .wide{grid-column:1/-1}.replacehint{display:flex;gap:10px;align-items:flex-start;margin-top:12px;padding:10px 12px;border-radius:10px;background:#0e1216;border:1px solid #252c33;font-size:12px}.replacehint strong{white-space:nowrap;color:#d9dee4}.replacehint span{color:#909aa4;line-height:1.45}
@media(max-width:900px){.replaceform{grid-template-columns:1fr 1fr}.replacefilepick,.replaceform .primary{grid-column:1/-1}.replacehint{display:grid}}

/* v0.13.0 - multi-part projects: compact customer workspace + clearer colorful backend */
.multipartshell{max-width:1540px;padding-top:14px}
.compactreviewbrand{min-height:44px;margin-bottom:5px;gap:9px}
.compactreviewbrand .fourklogo{width:auto;max-width:48px;max-height:42px}
.compactreviewbrand .clientlogo{max-height:27px;max-width:110px}
.compactreviewbrand .branddivider{height:24px}
.compactreviewbrand .reviewtag,.compactreviewbrand .clientname{font-size:8px;letter-spacing:.18em}
.compactprojecthead{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:0 0 8px;padding:0}
.compactprojecthead h1{font-size:clamp(23px,2.2vw,31px);line-height:1.02;margin:3px 0 0;letter-spacing:-.025em}
.compactprojecthead .eyebrow{font-size:7.5px}
.compactprojecthead .reviewactions{gap:7px}
.projectprogress{display:inline-flex;align-items:center;min-height:31px;padding:0 10px;border:1px solid #34404b;border-radius:999px;background:#111820;color:#b9c4ce;font-size:9px;font-weight:800;white-space:nowrap}
.projectprogress.done{border-color:#36634b;background:#102018;color:#a9dfbc}

.partnav{display:flex;gap:7px;margin:0 0 9px;padding:1px 0 2px;overflow-x:auto;scrollbar-width:thin;scroll-snap-type:x proximity}
.parttab{scroll-snap-align:start;display:grid;grid-template-columns:24px minmax(110px,1fr) 17px;align-items:center;gap:7px;min-width:178px;max-width:260px;min-height:47px;padding:7px 9px;border:1px solid #2d353e;border-radius:10px;background:#0f1318;color:#b5bdc7;text-decoration:none;transition:.15s ease}
.parttab:hover{border-color:#46515c;background:#141a20;color:#fff}
.parttab.active{border-color:color-mix(in srgb,var(--accent,#e31b23) 55%,#3c4650);background:linear-gradient(135deg,color-mix(in srgb,var(--accent,#e31b23) 13%,#11161b),#11161b);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent,#e31b23) 10%,transparent)}
.parttab.done:not(.active){border-color:#315342;background:#101a15}
.parttabindex{display:grid;place-items:center;width:23px;height:23px;border-radius:7px;background:#20262d;color:#87919d;font:800 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace}
.parttab.active .parttabindex{background:var(--accent,#e31b23);color:#fff}
.parttab.done .parttabindex{background:#244f37;color:#bfe6cb}
.parttabtext{display:grid;gap:2px;min-width:0}.parttabtext strong{font-size:10px;line-height:1.15;color:#eef1f4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.parttabtext small{font-size:7.5px;color:#77828d;white-space:nowrap}.parttabstate{font-size:10px;text-align:center;color:#7f8994}.parttab.done .parttabstate{color:#83c79d}

.multipartshell .reviewstatusrow{margin:0 0 8px;gap:7px}
.multipartshell .reviewstatusrow .roundbanner,.multipartshell .reviewstatusrow .reviewscopebanner{padding:7px 10px;min-height:50px}
.multipartshell .reviewgrid{grid-template-columns:minmax(0,1fr) minmax(315px,360px);gap:12px}
.multipartshell .reviewgrid>.panel,.multipartshell .reviewgrid aside>.panel{margin-bottom:9px}
.multipartshell .videoarea{border-radius:10px}
.projectcompletioncard{border-color:#355342!important;background:linear-gradient(180deg,#111b16,#0d1110)!important}
.projectcompletioncard .reviewcompletebtn{width:100%}
.projectprogressmini{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px;border:1px solid #303942;border-radius:9px;background:#0d1115}.projectprogressmini strong{font-size:10px;color:#dfe4e9}.projectprogressmini span{font-size:8px;color:#7e8994}
.projectfinalbtn{background:#2c6d49!important;border-color:#438a63!important}

/* Backend: deliverables as distinct, gently colored work cards. */
.partshub{border-color:#36424e!important;background:linear-gradient(180deg,#12171d,#0d1014)!important}
.partshub>.sectionhead{align-items:end}
.parttotalbadge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid #3c4651;background:#181e25;color:#dce2e8;font-size:9px;font-weight:850}
.addpartsform{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(160px,.7fr) auto;gap:9px;align-items:end;padding:12px;margin-bottom:13px;border:1px dashed #3d4854;border-radius:11px;background:#0c1014}
.addpartsform .wide{grid-column:1/-1}.addpartsform button{min-height:42px}
.adminpartgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.adminpartcard{--parttone:#58728d;position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--parttone) 45%,#303842);border-radius:13px;background:linear-gradient(145deg,color-mix(in srgb,var(--parttone) 9%,#12161b),#0d1014 62%);box-shadow:0 9px 22px #0002}
.adminpartcard:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--parttone)}
.parttone-1{--parttone:#4f8fca}.parttone-2{--parttone:#55a57a}.parttone-3{--parttone:#c8934d}.parttone-4{--parttone:#9472cb}.parttone-5{--parttone:#4ca3a7}.parttone-6{--parttone:#b76670}
.partcardmain{display:grid;grid-template-columns:174px minmax(0,1fr);gap:13px;padding:12px}
.partpreview{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid #303944;border-radius:9px;background:#07090b}.partpreview video{width:100%;height:100%;object-fit:cover}.partpreview .mediamissingthumb{height:100%}
.partinfo{display:flex;flex-direction:column;min-width:0}.partinfo .eyebrow{color:color-mix(in srgb,var(--parttone) 78%,#fff)}.partinfo h3{margin:3px 0 4px;font-size:16px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.partcountmeta{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.partcountmeta span{padding:4px 6px;border:1px solid #303942;border-radius:6px;background:#10151a;color:#9ca6b0;font-size:8px}.partcountmeta .done{border-color:#356146;color:#9bd2ae;background:#101c15}
.partactions{display:flex;gap:7px;align-items:center;margin-top:auto;padding-top:9px}.partactions>.pill{border-color:color-mix(in srgb,var(--parttone) 45%,#333c46)}
.partsettings{position:relative}.partsettings>summary{cursor:pointer;list-style:none;padding:7px 10px;border:1px solid #37414b;border-radius:8px;background:#151a20;color:#d5dae0;font-size:9px;font-weight:800}.partsettings>summary::-webkit-details-marker{display:none}.partsettings[open]>summary{border-color:var(--parttone)}
.partsettingsbody{padding:12px 13px 14px;border-top:1px solid #29313a;background:#0a0d10}
.parteditform{display:grid;grid-template-columns:1.2fr .55fr .45fr .65fr;gap:9px}.parteditform .wide{grid-column:1/-1}.parteditform label{font-size:9px}.partscopechoices{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;padding:8px;border:1px solid #2b343d;border-radius:8px;background:#0e1216}.partscopechoices label{display:flex;align-items:center;gap:5px;margin:0;padding:5px 7px;border-radius:6px;background:#171c22;color:#bac2cb}.partscopechoices input{width:auto;margin:0}.parteditform .primary{justify-self:start}
.replacePartForm{display:grid;grid-template-columns:minmax(210px,1.4fr) minmax(95px,.45fr) minmax(95px,.45fr) auto;gap:8px;align-items:end;padding:11px;margin-top:11px;border:1px solid #2f3943;border-radius:10px;background:#0e1216}.replacePartForm .wide{grid-column:1/-1}.replacePartForm button{min-height:40px}
.partdeleteactions{display:flex;gap:8px;justify-content:flex-end;margin-top:10px;padding-top:10px;border-top:1px solid #2b3138}.partdeleteactions form{margin:0}.partdeleteactions button{font-size:8px;padding:7px 9px}

@media(max-width:1150px){.adminpartgrid{grid-template-columns:1fr}.partcardmain{grid-template-columns:200px minmax(0,1fr)}}
@media(max-width:900px){.compactprojecthead{align-items:flex-start}.multipartshell .reviewgrid{grid-template-columns:1fr}.adminpartgrid{grid-template-columns:1fr}.addpartsform{grid-template-columns:1fr 1fr}.addpartsform button{grid-column:1/-1}.parteditform,.replacePartForm{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.multipartshell{padding-top:8px}.compactreviewbrand .fourklogo{max-width:40px;max-height:36px}.compactprojecthead{display:grid;gap:7px}.compactprojecthead h1{font-size:22px}.partnav{margin-bottom:7px}.parttab{min-width:155px;max-width:210px}.reviewstatusrow{grid-template-columns:1fr!important}.partcardmain{grid-template-columns:1fr}.partpreview{max-height:190px}.parteditform,.replacePartForm,.addpartsform{grid-template-columns:1fr}.parteditform .wide,.replacePartForm .wide,.addpartsform .wide,.replacePartForm button{grid-column:1}.partdeleteactions{display:grid}.compactprojecthead .reviewactions{flex-wrap:wrap}}

/* v0.13.0 - upload first, details second */
.uploadfirstbtn{min-height:48px;font-size:11px;letter-spacing:.02em}
.projectsetupstep{padding:13px;border:1px solid #38434e;border-radius:13px;background:linear-gradient(180deg,#121820,#0d1115)}
.setupstephead{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:13px;padding-bottom:11px;border-bottom:1px solid #303943}.stepnumber{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--accent,#e31b23);color:#fff;font-size:12px;font-weight:900}.setupstephead div{display:grid;gap:2px}.setupstephead strong{font-size:13px}.setupstephead small{font-size:9px;color:#8f99a4;line-height:1.35}.projectsetupgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.projectsetupgrid>.wide,.projectsetupgrid>.reviewscopebox,.projectsetupgrid>.projectextras,.projectsetupgrid>#submitUpload,.projectsetupgrid>#uploadMessage{grid-column:1/-1}
@media(max-width:700px){.setupstephead{grid-template-columns:30px 1fr}.setupstephead>.ghostbtn{grid-column:1/-1}.projectsetupgrid{grid-template-columns:1fr}.projectsetupgrid>*{grid-column:1!important}}

/* v0.13.0 card layout corrections */
.adminpartcard{display:grid;grid-template-columns:174px minmax(0,1fr);min-height:132px}
.adminpartcard>.partpreview{margin:12px 0 12px 12px;align-self:start}
.partpreviewbtn{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;border-radius:0;background:#07090b;overflow:hidden;cursor:pointer;color:#fff}
.partpreviewbtn video{display:block;width:100%;height:100%;object-fit:cover;opacity:.84}.partpreviewbtn:hover video{opacity:1}
.partplay{position:absolute;left:50%;top:50%;translate:-50% -50%;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#000b;border:1px solid #ffffff55;font-size:11px;padding-left:2px}
.partaudioicon{position:absolute;inset:0;display:grid;place-items:center;font-size:32px;color:color-mix(in srgb,var(--parttone) 80%,#fff);background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--parttone) 24%,#12161b),#090b0e 68%)}
.partmissing{display:grid;place-items:center;width:100%;height:100%;font-size:9px;font-weight:800;color:#8e98a3;background:#0c1014}
.partcardcontent{display:flex;flex-direction:column;min-width:0;padding:12px 13px 12px 13px}
.partcardtop{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.partcardtop>div{min-width:0}.partindex{display:block;margin-bottom:3px;color:color-mix(in srgb,var(--parttone) 76%,#fff);font-size:7px;font-weight:900;letter-spacing:.14em}.partcardtop h3{margin:0 0 4px;font-size:16px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.partcardtop small{display:block;font-size:8px;color:#818c97;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.partcomments{flex:0 0 auto;padding:5px 7px;border:1px solid #34404a;border-radius:999px;background:#141a20;color:#9da7b1;font-size:7.5px;font-weight:800}.partcomments.hasopen{border-color:#714448;background:#241315;color:#e3a2a7}
.partchips{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0 6px}.partchips span{padding:4px 6px;border:1px solid #303943;border-radius:6px;background:#10151a;color:#99a4ae;font-size:7.5px}.partchips .donechip{border-color:#356146;background:#101c15;color:#a8d8b8}
.partactions{display:flex;align-items:center;gap:7px;margin-top:auto;padding-top:4px}
.partsettings[open]{position:absolute;z-index:15;inset:7px;padding:0;border:1px solid color-mix(in srgb,var(--parttone) 55%,#333e49);border-radius:11px;background:#0c1014;box-shadow:0 16px 44px #000c;overflow:auto}
.partsettings[open]>summary{position:sticky;top:0;z-index:2;border:0;border-bottom:1px solid #313b45;border-radius:10px 10px 0 0;background:#171d23;padding:10px 12px;color:#fff}.partsettings[open]>summary:after{content:' ×';float:right;color:#aeb7c0}
.partsettings[open]>.success,.partsettings[open]>.error{margin:10px 11px 0}
.partsettings[open]>.parteditform,.partsettings[open]>.replacePartForm,.partsettings[open]>.partdeleteactions{margin-left:11px;margin-right:11px}.partsettings[open]>.parteditform{padding-top:11px}
.addpartsbox{margin-bottom:12px;border:1px solid #303a44;border-radius:10px;background:#0b0f13;overflow:hidden}.addpartsbox>summary{list-style:none;cursor:pointer;padding:10px 12px;color:#cbd2d9;font-size:9px;font-weight:850}.addpartsbox>summary::-webkit-details-marker{display:none}.addpartsbox[open]>summary{border-bottom:1px solid #303a44}.addpartsbox .addpartsform{margin:0;border:0;border-radius:0}.addpartsdrop{position:relative;overflow:hidden}.addpartsdrop input{position:absolute;inset:0;opacity:0;cursor:pointer}.addpartsdrop span{display:flex;align-items:center;min-height:42px;padding:0 11px;border:1px dashed #46515d;border-radius:8px;background:#0f1419;color:#bec6cf}
@media(max-width:1150px){.adminpartcard{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:680px){.adminpartcard{grid-template-columns:1fr}.adminpartcard>.partpreview{margin:11px 11px 0;max-height:170px}.partcardcontent{padding:11px}.partsettings[open]{position:fixed;inset:10px;z-index:1000}.partcardtop{display:grid}.partcomments{justify-self:start}}

/* v0.13.1 - compact reviewer/status/admin rows */
.compactchooser{display:flex!important;align-items:center;gap:14px;padding:10px 12px!important;margin-bottom:8px!important;border-radius:12px!important}
.compactchooser .chooserlabel{display:flex;align-items:center;gap:8px;flex:0 0 auto;white-space:nowrap;padding-right:10px;border-right:1px solid #303741}
.compactchooser .chooserlabel .eyebrow{font-size:7px;margin:0}
.compactchooser .chooserlabel strong{font-size:11px}
.compactchooser .userchoices{display:flex!important;align-items:center;gap:7px;flex:1;min-width:0}
.compactchooser .userchoice{display:flex!important;align-items:center;gap:7px;flex:1 1 0;min-width:0;min-height:38px;padding:5px 8px!important;border-radius:9px}
.compactchooser .userchoice .avatar{width:27px!important;height:27px!important;font-size:10px!important;flex:0 0 27px}
.compactchooser .userchoice strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.compactchooser .userchoice small{font-size:7px;margin-left:auto;white-space:nowrap;color:#828b96}

.compactpartnav{gap:5px!important;margin:0 0 6px!important;padding:0!important}
.compactpartnav .parttab{min-width:0!important;max-width:230px!important;min-height:36px!important;padding:5px 8px!important;border-radius:8px!important}
.compactpartnav .parttabindex{width:21px!important;height:21px!important;font-size:8px!important}
.compactpartnav .parttabtext strong{font-size:10px!important}
.compactpartnav .parttabtext small{font-size:7px!important;margin-top:1px!important}
.compactpartnav .parttabstate{font-size:9px!important}

.compactreviewstatus{display:flex!important;align-items:stretch;gap:6px!important;margin:0 0 7px!important}
.compactreviewstatus .roundbanner,.compactreviewstatus .reviewscopebanner{display:flex!important;align-items:center!important;gap:8px!important;min-height:38px!important;padding:5px 8px!important;border-radius:9px!important}
.compactreviewstatus .roundbanner{flex:0 0 auto;min-width:285px}
.compactreviewstatus .reviewscopebanner{flex:1 1 auto;min-width:0}
.compactreviewstatus .statusline{display:flex;align-items:center;gap:6px;min-width:0;flex:1}
.compactreviewstatus .statusline .eyebrow{font-size:6.8px!important;white-space:nowrap}
.compactreviewstatus .statusline strong{font-size:10.5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.compactreviewstatus .statusline small{display:none!important}
.compactreviewstatus .statussep{color:#56606b;font-size:10px}
.compactreviewstatus .roundcount{min-width:34px!important;height:24px!important;font-size:8px!important;padding:0 7px!important}
.compactreviewstatus .scopemedium{padding:4px 7px!important;font-size:7px!important}

.compactcorrection{padding:10px 12px!important;margin-bottom:10px!important}
.compactcorrectionrow{display:flex!important;align-items:end!important;gap:9px!important;margin:0!important}
.compactcorrectionrow .correctionlabel{display:flex;flex-direction:column;gap:2px;min-width:210px;margin-right:auto}
.compactcorrectionrow .correctionlabel .eyebrow{font-size:7px}
.compactcorrectionrow .correctionlabel strong{font-size:12px}
.compactcorrectionrow label{display:grid;grid-template-columns:auto 72px;align-items:center;gap:7px;font-size:9px;white-space:nowrap}
.compactcorrectionrow input[type=number]{width:72px;padding:7px 8px!important;font-size:12px!important}
.compactcorrectionrow button{padding:8px 11px!important;font-size:9px!important}
.compactroundbadge{min-width:42px!important;height:29px!important;padding:0 9px!important;font-size:10px!important}
.compactcorrection .success{margin:0 0 8px!important;padding:8px 10px!important;font-size:9px}

@media(max-width:900px){
 .compactchooser{align-items:flex-start;flex-direction:column}.compactchooser .chooserlabel{border-right:0;padding-right:0}.compactchooser .userchoices{width:100%;flex-wrap:wrap}.compactchooser .userchoice{flex:1 1 180px}
 .compactreviewstatus{display:grid!important;grid-template-columns:1fr!important}.compactreviewstatus .roundbanner{min-width:0}.compactreviewstatus .statusline{flex-wrap:wrap}.compactreviewstatus .statusline small{display:block!important;width:100%;font-size:8px!important}
 .compactcorrectionrow{display:grid!important;grid-template-columns:1fr 1fr auto!important;align-items:end!important}.compactcorrectionrow .correctionlabel{grid-column:1/-1;min-width:0}.compactcorrectionrow label{display:flex;flex-direction:column;align-items:stretch}.compactcorrectionrow input[type=number]{width:100%}.compactroundbadge{align-self:end}.compactcorrectionrow button{grid-column:1/-1}
}
@media(max-width:600px){.compactchooser .userchoices{display:grid!important;grid-template-columns:1fr!important}.compactreviewstatus .statusline{gap:4px}.compactreviewstatus .statusline .eyebrow:nth-of-type(2),.compactreviewstatus .statussep{display:none}.compactcorrectionrow{grid-template-columns:1fr 1fr!important}.compactroundbadge{display:none}.compactcorrectionrow button{grid-column:1/-1}}

/* v0.13.2 - ultra compact reviewer pills */
.compactchooser{
  gap:8px!important;
  padding:5px 8px!important;
  min-height:0!important;
  margin-bottom:6px!important;
  border-radius:9px!important;
}
.compactchooser .chooserlabel{
  gap:5px!important;
  padding-right:7px!important;
}
.compactchooser .chooserlabel .eyebrow{font-size:6px!important;letter-spacing:.12em!important}
.compactchooser .chooserlabel strong{font-size:9px!important}
.compactchooser .userchoices{
  gap:5px!important;
  flex-wrap:nowrap!important;
  justify-content:flex-start!important;
  overflow:hidden;
}
.compactchooser .userchoice{
  flex:0 1 150px!important;
  width:auto!important;
  max-width:170px!important;
  min-width:92px!important;
  min-height:22px!important;
  padding:2px 5px!important;
  gap:5px!important;
  border-radius:7px!important;
  border-left-width:2px!important;
}
.compactchooser .userchoice .avatar{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
  font-size:7px!important;
}
.compactchooser .userchoice strong{
  min-width:0!important;
  max-width:112px!important;
  font-size:9px!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.compactchooser .userchoice small{
  flex:0 0 auto!important;
  margin-left:auto!important;
  font-size:0!important;
  color:#7f8994!important;
}
.compactchooser .userchoice small::after{
  content:'↗';
  font-size:8px;
}
@media(max-width:900px){
  .compactchooser{flex-direction:row!important;align-items:center!important}
  .compactchooser .chooserlabel{border-right:1px solid #303741!important;padding-right:7px!important}
  .compactchooser .userchoices{width:auto!important;flex:1!important;flex-wrap:wrap!important;overflow:visible!important}
  .compactchooser .userchoice{flex:0 1 145px!important}
}
@media(max-width:600px){
  .compactchooser{align-items:flex-start!important;flex-direction:column!important}
  .compactchooser .chooserlabel{border-right:0!important;padding-right:0!important}
  .compactchooser .userchoices{display:flex!important;width:100%!important;flex-wrap:wrap!important}
  .compactchooser .userchoice{flex:1 1 130px!important;max-width:none!important}
}

/* v0.13.3 - single-line project/reviewer/status header */
.compactchooser{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:7px!important;
  padding:4px 7px!important;
  min-height:31px!important;
  margin-bottom:6px!important;
}
.compactchooser .chooserlabel{gap:5px!important;padding-right:7px!important;flex:0 0 auto!important}
.compactchooser .chooserlabel .eyebrow{font-size:6.2px!important}
.compactchooser .chooserlabel strong{font-size:9.5px!important}
.compactchooser .userchoices{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  flex:1 1 auto!important;
  min-width:0!important;
  flex-wrap:nowrap!important;
  overflow:hidden!important;
}
.compactchooser .userchoice{
  flex:0 1 145px!important;
  min-width:88px!important;
  max-width:160px!important;
  min-height:24px!important;
  padding:2px 5px!important;
  gap:5px!important;
}
.compactchooser .userchoice .avatar{width:20px!important;height:20px!important;flex:0 0 20px!important;font-size:7.5px!important}
.compactchooser .userchoice strong{font-size:10.5px!important;line-height:1.05!important;max-width:118px!important}
.compactchooser .userchoice small::after{font-size:8.5px!important}
.inlineprojectstatus{display:flex;align-items:center;gap:4px;min-width:0;white-space:nowrap}
.compactchooser .inlineprojectstatus{margin-left:auto;flex:0 0 auto}
.statuschip{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:0 7px;border:1px solid #343c46;border-radius:7px;background:#11161c;color:#cbd4dc;font-size:8.5px;font-weight:800;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.statuschip.roundchip{border-color:#69572f;background:#1a160d;color:#ecd27b}
.statuschip.partchip{max-width:175px;border-color:#344a5d;background:#0d1720;color:#c4d8e8}
.statuschip.scopechip{max-width:150px;border-color:#334c48;background:#0d1917;color:#b9d9d0}
.statuschip.mediachip{padding-left:6px;padding-right:6px;border-color:#3b4652;background:#121820;color:#9fb6c8;font-size:7px;letter-spacing:.08em}
.compactprojecthead{align-items:center!important;margin-bottom:6px!important}
.compactprojecthead .projecttitleblock{min-width:220px;flex:1 1 auto}
.compactprojecthead .reviewactions{display:flex!important;align-items:center!important;gap:5px!important;flex-wrap:nowrap!important;min-width:0}
.compactprojecthead .inlineprojectstatus{flex:0 1 auto}
.compactprojecthead .secondarypill{padding:7px 9px!important;font-size:8.5px!important;border-radius:8px!important}
.compactprojecthead .projectprogress{min-height:26px!important;padding:0 8px!important;font-size:8px!important}
.compactprojecthead .topidentity{min-height:26px!important;padding:2px 6px!important;gap:5px!important}
.compactprojecthead .topidentity .avatar{width:20px!important;height:20px!important;flex:0 0 20px!important;font-size:7.5px!important}
.compactprojecthead .topidentity strong{font-size:10.5px!important;max-width:110px!important}
/* The former full-width correction/scope boxes are intentionally no longer rendered. */
@media(max-width:1150px){
  .compactchooser{flex-wrap:wrap!important}
  .compactchooser .inlineprojectstatus{width:100%;margin-left:0!important}
  .compactprojecthead .reviewactions{flex-wrap:wrap!important;justify-content:flex-end}
  .compactprojecthead .inlineprojectstatus{order:2;flex-basis:100%;justify-content:flex-end}
}
@media(max-width:680px){
  .compactchooser{align-items:flex-start!important;flex-direction:column!important}
  .compactchooser .chooserlabel{border-right:0!important;padding-right:0!important}
  .compactchooser .userchoices{width:100%!important;flex-wrap:wrap!important;overflow:visible!important}
  .compactchooser .userchoice{flex:1 1 120px!important;max-width:none!important}
  .compactchooser .inlineprojectstatus{display:flex!important;flex-wrap:wrap!important;width:100%!important}
  .compactprojecthead{display:grid!important}
  .compactprojecthead .reviewactions{justify-content:flex-start!important}
  .compactprojecthead .inlineprojectstatus{order:0;flex-basis:auto;justify-content:flex-start;flex-wrap:wrap}
  .statuschip.partchip,.statuschip.scopechip{max-width:190px}
}


/* v0.13.4 - personal completion wording + iPad layout */
.reviewcompletion,.projectcompletioncard{padding:10px 11px!important;margin-bottom:8px!important;border-radius:11px!important;box-shadow:none!important}
.reviewcompletion .completiontitle,.projectcompletioncard .completiontitle{font-size:11.5px!important;margin:2px 0!important}
.reviewcompletion .completioncopy,.projectcompletioncard .completioncopy{font-size:8.5px!important;line-height:1.35!important;max-width:none!important;color:#9da6b0!important}
.reviewcompletion .eyebrow,.projectcompletioncard .eyebrow{font-size:6.8px!important}
.reviewcompletebtn{min-height:36px!important;padding:7px 9px!important;font-size:9px!important;border-radius:8px!important}
.personalcompletionnote{margin:0 0 13px;padding:9px 10px;border:1px solid #3a4550;border-radius:9px;background:#0d1319;color:#b9c3cd;font-size:10px;line-height:1.4}
.personalcompletionnote strong{color:#fff}
.projectprogress{white-space:nowrap}

/* iPad portrait: player gets the full width, review controls stay compact below it. */
@media(min-width:700px) and (max-width:900px){
  .reviewshell{width:100%!important;padding:9px 10px 18px!important}
  .reviewgrid,.multipartshell .reviewgrid{grid-template-columns:1fr!important;gap:8px!important}
  .reviewside{position:static!important;display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr)!important;gap:8px!important;align-items:start!important}
  .reviewside>.panel{margin-bottom:0!important}
  .reviewside>.compactcomment,.reviewside>.commentlocked{grid-column:1!important;grid-row:1 / span 2!important}
  .reviewside>.reviewcompletion{grid-column:2!important;grid-row:1!important}
  .reviewside>.projectcompletioncard{grid-column:2!important;grid-row:2!important}
  .reviewside>.comments,.reviewside>.reviewmeta{grid-column:1/-1!important}
  .reviewcompletion,.projectcompletioncard{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;padding:9px!important}
  .reviewcompletebtn,.reopenreview{width:100%!important}
  .completionmodal{padding:12px!important}
  .completionmodaldialog{width:min(560px,96vw)!important;max-height:88vh!important;overflow:auto!important;-webkit-overflow-scrolling:touch}
  .completionmodalhead{padding:14px!important}.completionmodalhead h2{font-size:20px!important}
  .completionmodalbody{padding:14px!important}
}

/* iPad landscape: keep the useful two-column workspace but slim down the side column. */
@media(min-width:901px) and (max-width:1180px){
  .reviewshell{width:calc(100% - 12px)!important;padding:9px 8px 17px!important}
  .reviewgrid,.multipartshell .reviewgrid{grid-template-columns:minmax(0,1fr) 285px!important;gap:9px!important}
  .reviewcompletion,.projectcompletioncard{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;padding:9px!important}
  .reviewcompletebtn,.reopenreview{width:100%!important}
  .compactcomment textarea{min-height:72px!important}
  .comments{max-height:300px!important}
}

@media(max-width:699px){
  .reviewcompletion,.projectcompletioncard{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;padding:9px!important}
  .personalcompletionnote{font-size:9px;padding:8px 9px}
  .completionmodalhead h2{font-size:19px!important}
}

/* v0.13.5 – dashboard grouped by customer / project family */
.clientgroups{display:grid;gap:18px;margin-top:4px}
.clientgroup{--client-hue:0;border:1px solid hsl(var(--client-hue) 30% 31% / .72);border-radius:18px;background:linear-gradient(180deg,hsl(var(--client-hue) 28% 12% / .72),#090b0e 88%);overflow:hidden;box-shadow:0 16px 40px #0004}
.clientgroup>summary{list-style:none}.clientgroup>summary::-webkit-details-marker{display:none}
.clientgrouphead{display:flex;align-items:center;gap:18px;min-height:76px;padding:14px 17px;cursor:pointer;user-select:none;border-left:4px solid hsl(var(--client-hue) 68% 52%);background:linear-gradient(90deg,hsl(var(--client-hue) 40% 18% / .55),transparent 46%)}
.clientgroupidentity{display:flex;align-items:center;gap:12px;min-width:220px;flex:1}.clientgroupdot{width:13px;height:13px;border-radius:50%;background:hsl(var(--client-hue) 72% 55%);box-shadow:0 0 0 5px hsl(var(--client-hue) 70% 50% / .13)}
.clientgroupidentity h2{font-size:20px;line-height:1.05;margin:3px 0 0}.clientgroupidentity .eyebrow{font-size:7px;color:hsl(var(--client-hue) 55% 74%)}
.clientgroupstats{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.clientgroupstats span{font-size:9px;font-weight:760;color:#aeb5bf;border:1px solid #343b44;background:#0b0e12b8;border-radius:999px;padding:5px 8px;white-space:nowrap}.clientgroupstats span.hasopen{color:#ff9da2;border-color:#7a3238;background:#351418}
.clientgroupchevron{font-size:18px;color:#8f97a1;transition:transform .18s}.clientgroup[open] .clientgroupchevron{transform:rotate(180deg)}
.projectcardsingroup{padding:16px;background:#07090b99;border-top:1px solid #252b32}
.projectpartpreview{display:flex;gap:5px;flex-wrap:wrap;margin:10px 0 2px}.projectpartpreview span{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:4px 6px;border-radius:6px;border:1px solid #303740;background:#0b0e12;color:#d9dee5;font-size:8px}.projectpartpreview b{font-weight:760;max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.projectpartpreview small{font-size:7px;color:#858e99}.projectpartpreview .moreparts{font-weight:800;color:#aeb6c0}
@media(max-width:900px){.clientgrouphead{align-items:flex-start;flex-wrap:wrap;gap:10px}.clientgroupidentity{min-width:0;width:100%;flex-basis:100%}.clientgroupstats{justify-content:flex-start}.clientgroupchevron{margin-left:auto}}
@media(max-width:700px){.clientgroups{gap:12px}.clientgroup{border-radius:14px}.clientgrouphead{min-height:64px;padding:11px 12px}.clientgroupidentity h2{font-size:17px}.clientgroupstats span{font-size:8px;padding:4px 6px}.projectcardsingroup{padding:10px}}


/* v0.13.6 – real project groups / orders, client shown as secondary information */
.clientgroupclient{display:block;margin-top:5px;color:#a7afb9;font-size:10px;line-height:1.2;font-weight:650}
.projectidentitypanel{padding:14px 16px}
.projectidentityform{display:grid;grid-template-columns:minmax(190px,.8fr) repeat(3,minmax(170px,1fr)) auto;align-items:end;gap:10px}
.projectidentitytitle{display:grid;gap:2px;align-self:center}
.projectidentitytitle strong{font-size:14px}
.projectidentitytitle small{font-size:9px;color:#8f98a3}
.projectidentityform label{gap:5px;font-size:10px}
.projectidentityform input{padding:10px 11px}
.projectidentityform button{padding:10px 12px;white-space:nowrap}
@media(max-width:1100px){.projectidentityform{grid-template-columns:1fr 1fr}.projectidentitytitle{grid-column:1/-1}.projectidentityform button{width:max-content}}
@media(max-width:700px){.projectidentityform{grid-template-columns:1fr}.projectidentitytitle,.projectidentityform>*{grid-column:1!important}.projectidentityform button{width:100%}.clientgroupclient{font-size:9px}}

/* v0.14.0 — klarer 3-Schritt-Workflow + farbigeres Backend */
.adminbody{background:
 radial-gradient(circle at 12% 0%,color-mix(in srgb,var(--brand-accent,#69727d) 10%,transparent),transparent 30%),
 radial-gradient(circle at 88% 12%,rgba(47,128,237,.08),transparent 28%),
 #090c10}
.compactprojectcreate{max-width:620px!important;padding:24px!important}
.projectcreateform{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.projectcreateform>button,.projectcreatehint{grid-column:1/-1}
.projectcreatehint{display:flex;align-items:center;gap:8px;padding:11px 12px;border:1px solid #2c3440;border-radius:12px;background:#0d1218;color:#aeb7c4;font-size:12px}
.wizarddot{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--brand-accent,#69727d);color:#fff;font-weight:900;font-size:11px;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-accent,#69727d) 15%,transparent)}
.wizarddot.mutedstep{background:#252c36;color:#9da7b4;box-shadow:none}

.projectsetupwizard{margin:18px 0 20px;border:1px solid #29313c;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#10161e,#0b0f14 65%);box-shadow:0 16px 46px rgba(0,0,0,.24)}
.wizardhead{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;border-bottom:1px solid #252c35;background:linear-gradient(90deg,rgba(47,128,237,.12),rgba(155,81,224,.05),transparent)}
.wizardhead h2{margin:2px 0 0;font-size:21px}
.wizardstatus{font-size:12px;font-weight:800;color:#cbd3df;border:1px solid #374252;border-radius:999px;padding:7px 10px;background:#121923}
.wizardsteps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#202934}
.wizardstep{min-height:76px;padding:14px 16px;display:flex;gap:12px;align-items:center;background:#0d1218;position:relative}
.wizardstep>span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:900;background:#252e39;color:#8792a1;flex:0 0 auto}
.wizardstep strong{display:block;font-size:14px;color:#e9eef5}.wizardstep small{display:block;margin-top:4px;color:#7f8b99;line-height:1.25}
.wizardstep.done{background:linear-gradient(135deg,rgba(39,174,96,.16),#0d1218 68%)}
.wizardstep.done>span{background:#27ae60;color:#fff}.wizardstep.done strong{color:#bff0d2}
.wizardstep.active{background:linear-gradient(135deg,rgba(47,128,237,.20),#0d1218 70%);box-shadow:inset 0 -3px 0 #2f80ed}
.wizardstep.active>span{background:#2f80ed;color:#fff}.wizardstep.active strong{color:#d7e7ff}
.wizardstep.locked{opacity:.55}
.wizardupload,.wizardfinish{padding:18px 20px;background:#0b1016}
.wizarduploadintro{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}.wizarduploadintro strong{font-size:15px;color:#fff}.wizarduploadintro small{color:#8d99a7}
.wizardaddparts{border:0!important;background:transparent!important;padding:0!important}
.wizardfinish{display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(90deg,rgba(242,153,74,.11),transparent 70%)}
.wizardfinish strong{display:block;color:#ffe1c2}.wizardfinish small{display:block;color:#9aa5b3;margin-top:3px}
.wizardactions{display:flex;flex-wrap:wrap;gap:8px}.wizardactions a{padding:8px 11px;border-radius:10px;border:1px solid #4c3e2f;background:#1a1511;color:#ffd3a6;text-decoration:none;font-weight:800;font-size:12px}.wizardactions a:hover{border-color:#f2994a}

/* Mehr visuelle Hierarchie im Dashboard */
.clientgroup{border-color:hsla(var(--client-hue),72%,58%,.30)!important;background:linear-gradient(135deg,hsla(var(--client-hue),72%,50%,.07),#0b0f14 40%)!important}
.clientgrouphead{background:linear-gradient(90deg,hsla(var(--client-hue),75%,52%,.18),hsla(var(--client-hue),55%,30%,.04) 48%,transparent)!important}
.clientgroupdot{box-shadow:0 0 18px hsla(var(--client-hue),85%,56%,.52)!important}
.projectcard{border-color:#2b3440!important;background:linear-gradient(155deg,#151b23,#0b0f14 72%)!important}
.projectcard.selected{box-shadow:0 0 0 1px var(--brand-accent,#69727d),0 14px 36px rgba(0,0,0,.28)!important}
.projectpartpreview span:nth-child(6n+1){border-color:rgba(47,128,237,.45);background:rgba(47,128,237,.09)}
.projectpartpreview span:nth-child(6n+2){border-color:rgba(39,174,96,.45);background:rgba(39,174,96,.08)}
.projectpartpreview span:nth-child(6n+3){border-color:rgba(242,153,74,.45);background:rgba(242,153,74,.08)}
.projectpartpreview span:nth-child(6n+4){border-color:rgba(155,81,224,.45);background:rgba(155,81,224,.08)}
.adminpartcard{box-shadow:0 8px 26px rgba(0,0,0,.22)}
.parttone-1{--part-tone:#2f80ed}.parttone-2{--part-tone:#27ae60}.parttone-3{--part-tone:#f2994a}.parttone-4{--part-tone:#9b51e0}.parttone-5{--part-tone:#56ccf2}.parttone-6{--part-tone:#eb5757}
.adminpartcard{border-top:3px solid var(--part-tone,#2f80ed)!important}
.partindex{color:var(--part-tone,#7aa7ff)!important}
.partcomments.hasopen{background:rgba(235,87,87,.14)!important;border-color:rgba(235,87,87,.45)!important;color:#ffaaa3!important}

/* Projektbenutzer gelten standardmäßig für alle Parts; pro Part nur Opt-out */
.partreviewersform{margin-top:14px;padding:14px;border:1px solid #303a46;border-radius:14px;background:linear-gradient(135deg,rgba(47,128,237,.10),#0c1117 58%)}
.partreviewershead strong,.partreviewershead small{display:block}.partreviewershead strong{margin-top:3px;color:#e8f1ff}.partreviewershead small{margin-top:4px;color:#8d9aaa;line-height:1.35}
.partreviewerchoices{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.partreviewerchoices label{display:flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid color-mix(in srgb,var(--user-color,#e31b23) 38%,#2d3641);border-radius:10px;background:color-mix(in srgb,var(--user-color,#e31b23) 8%,#0b1016);cursor:pointer}
.partreviewerchoices input{accent-color:var(--user-color,#e31b23)}
.miniavatar{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--user-color,#e31b23);color:white;font-weight:900;font-size:10px}.partreviewerchoices strong{font-size:12px;color:#f2f5f8}.partunassigned{border-color:rgba(242,153,74,.45)!important;color:#ffc98f!important;background:rgba(242,153,74,.08)!important}

@media (max-width:900px){
 .projectcreateform{grid-template-columns:1fr}
 .wizardsteps{grid-template-columns:1fr}.wizardstep{min-height:62px}.wizardfinish{align-items:flex-start;flex-direction:column}
 .wizarduploadintro{align-items:flex-start;flex-direction:column;gap:4px}
}
.projectaccesspanel{margin:0 0 18px;padding:0!important;overflow:hidden}.projectaccesspanel>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px;cursor:pointer;background:linear-gradient(90deg,rgba(155,81,224,.09),transparent);border-radius:14px}.projectaccesspanel>summary::-webkit-details-marker{display:none}.projectaccesspanel>summary span>strong{display:block;margin-top:2px}.projectaccesspanel>summary small{color:#8993a1}.projectaccessbody{padding:0 16px 16px}.projectaccessform{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}.projectaccessform>button{justify-self:start}.checkline{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;padding:10px 0}.checkline input{width:auto!important}
@media(max-width:760px){.projectaccessform{grid-template-columns:1fr}.projectaccesspanel>summary{align-items:flex-start}}
\n/* v0.14.1 - project-wide personal media switcher */
.projectmediaswitch{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 7px 0 9px;border:1px solid #39434e;border-radius:8px;background:#11161b;color:#97a1ac;margin:0;min-width:0;max-width:330px}
.projectmediaswitch>span{font-size:7px;font-weight:900;letter-spacing:.12em;color:#74808b;flex:0 0 auto}
.projectmediaswitch select{appearance:auto;width:auto;min-width:120px;max-width:260px;height:28px;border:0!important;background:transparent!important;color:#eef2f5!important;padding:0 4px!important;font-size:9px;font-weight:800;box-shadow:none!important;outline:none}
.projectmediaswitch option{background:#11161b;color:#eef2f5}
@media(max-width:900px){.projectmediaswitch{max-width:250px}.projectmediaswitch select{max-width:190px}}
@media(max-width:680px){.projectmediaswitch{width:100%;max-width:none}.projectmediaswitch select{width:100%;max-width:none;min-width:0}.compactprojecthead .reviewactions{width:100%}}

/* v0.14.3 — premium, grouped review header (desktop + iPad) */
.reviewherohead{
  display:grid;
  grid-template-columns:auto minmax(300px,1fr) auto minmax(330px,430px) auto;
  align-items:center;
  gap:18px;
  margin:0 0 14px;
  padding:13px 15px;
  min-height:86px;
  border:1px solid #29313b;
  border-radius:15px;
  background:
    radial-gradient(circle at 0 0,color-mix(in srgb,var(--brand-accent,#69727d) 16%,transparent),transparent 27%),
    radial-gradient(circle at 68% 0,rgba(47,128,237,.10),transparent 30%),
    linear-gradient(112deg,#11161d,#090c10 72%);
  box-shadow:0 15px 46px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.025);
}
.reviewhero-brand{display:flex;align-items:center;gap:11px;min-width:0;padding-right:16px;border-right:1px solid #313943}
.reviewhero-brand .brandrow{gap:9px;white-space:nowrap}
.reviewhero-brand .fourklogo{width:50px;max-width:50px;border-radius:6px}
.reviewhero-brand .reviewtag{font-size:8px;padding-left:9px;letter-spacing:.18em}
.hero-client{display:flex;align-items:center;min-width:0;padding-left:1px}
.hero-client .clientlogo{max-width:86px;max-height:30px}
.hero-client-name{max-width:115px;color:#9da7b3;font-size:9px;font-weight:750;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reviewhero-title{min-width:0}
.reviewhero-title .eyebrow{display:block;margin-bottom:6px;font-size:8px;letter-spacing:.16em;color:#8c98a6}
.reviewhero-title h1{margin:0!important;font-size:clamp(23px,2.05vw,35px)!important;line-height:1.08!important;padding-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reviewcontextcard{display:flex;align-items:stretch;min-height:58px;border:1px solid #34404d;border-radius:12px;background:linear-gradient(135deg,#111820,#0d1218);overflow:hidden;box-shadow:inset 0 1px rgba(255,255,255,.025)}
.reviewcontextitem{display:flex;align-items:center;gap:10px;padding:9px 13px;min-width:130px}
.reviewcontextitem+.reviewcontextitem{border-left:1px solid #323b46}
.reviewcontextitem .contexticon{width:30px;height:30px;display:grid;place-items:center;flex:0 0 30px;border-radius:50%;font-size:20px;font-weight:800}
.reviewcontextitem small{display:block;margin-bottom:3px;color:#7f8996;font-size:7px;font-weight:900;letter-spacing:.12em;white-space:nowrap}
.reviewcontextitem strong{display:block;color:#f4f7fa;font-size:12px;line-height:1.1;white-space:nowrap;max-width:150px;overflow:hidden;text-overflow:ellipsis}
.roundcontext .contexticon{color:#f2c94c;border:1px solid rgba(242,201,76,.48);background:rgba(242,201,76,.08)}
.roundcontext strong{color:#f7cf59;font-size:15px}
.scopecontext .contexticon{color:#55d89a;border:1px solid rgba(85,216,154,.42);background:rgba(85,216,154,.07)}

.projectmediaswitch.reviewmedia-card,.reviewmedia-card{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center;
  gap:5px!important;
  min-width:0!important;
  max-width:none!important;
  height:62px!important;
  margin:0!important;
  padding:8px 11px!important;
  border:1px solid #34404d!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#121922,#0c1117)!important;
  color:#fff!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025),0 8px 24px rgba(0,0,0,.18);
}
.media-card-label{display:block;color:#7d8997;font-size:7px!important;font-weight:900;letter-spacing:.14em;line-height:1;text-transform:uppercase}
.media-card-control{display:flex;align-items:center;gap:9px;min-width:0;flex:1}
.media-card-play{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;flex:0 0 32px;border:1px solid #ff5a61;background:linear-gradient(135deg,#f22932,#c9141c);color:#fff;font-size:11px;box-shadow:inset 0 1px rgba(255,255,255,.16),0 0 0 1px rgba(227,27,35,.10),0 4px 12px rgba(227,27,35,.18)}
.projectmediaswitch.reviewmedia-card select{
  appearance:none!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:32px!important;
  padding:0 18px 0 0!important;
  border:0!important;
  background:transparent!important;
  color:#f1f4f7!important;
  font-size:10px!important;
  font-weight:800!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  box-shadow:none!important;
  outline:none!important;
  cursor:pointer;
}
.projectmediaswitch.reviewmedia-card option{background:#11161b;color:#eef2f5}
.media-card-chevron{margin-left:-18px;pointer-events:none;color:#f4f7fa;font-size:17px;font-weight:900;line-height:1;flex:0 0 auto;text-shadow:0 1px 3px rgba(0,0,0,.75)}
.staticmedia-text{display:flex;flex-direction:column;min-width:0;gap:3px}.staticmedia-text strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staticmedia-text small{font-size:8px;color:#86919d}
.reviewhero-actions{display:flex;align-items:center;gap:10px;justify-content:flex-end;min-width:0}
.hero-pdf{display:inline-flex!important;align-items:center;gap:6px;min-height:42px;padding:0 12px!important;border-radius:10px!important;font-size:10px!important;background:#151b22!important}
.hero-pdf-icon{font-size:13px;color:#cfd8e2}
.hero-identity{min-width:145px!important;min-height:46px!important;padding:5px 9px!important;gap:8px!important;border-radius:11px!important;background:#10151b!important}
.hero-identity .avatar{width:33px!important;height:33px!important;flex:0 0 33px!important;border-radius:50%!important;font-size:11px!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--user-color,#e31b23) 12%,transparent)}
.hero-identity>div{min-width:0}.hero-identity small{display:block!important;margin:0 0 2px!important;font-size:6.5px!important;letter-spacing:.09em!important;color:#7f8a97!important;white-space:nowrap}.hero-identity strong{display:block;font-size:11px!important;max-width:90px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* general review: keep the reviewer selector visually subordinate to the new hero */
.reviewherohead + .compactchooser{margin-top:-4px!important;border-radius:12px!important;background:linear-gradient(90deg,#10151b,#0c1015)!important}

@media(max-width:1320px){
  .reviewherohead{grid-template-columns:auto minmax(260px,1fr) auto minmax(270px,360px);grid-template-areas:"brand title context actions" "brand title media media";gap:10px 14px}
  .reviewhero-brand{grid-area:brand;align-self:stretch}
  .reviewhero-title{grid-area:title}
  .reviewcontextcard{grid-area:context;justify-self:end}
  .reviewmedia-card{grid-area:media}
  .reviewhero-actions{grid-area:actions}
  .reviewcontextitem{min-width:118px;padding:8px 10px}.reviewcontextitem strong{max-width:125px}
}
@media(max-width:1050px){
  .reviewherohead{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand title actions" "context context media";align-items:center}
  .reviewhero-brand{border-right:1px solid #313943}
  .reviewcontextcard{justify-self:stretch}
  .reviewmedia-card{min-width:280px!important}
  .reviewcontextitem{flex:1}
}
@media(max-width:820px){
  .reviewherohead{grid-template-columns:1fr auto;grid-template-areas:"brand actions" "title title" "context context" "media media";gap:9px;padding:11px}
  .reviewhero-brand{border-right:0;padding-right:0;min-height:38px}
  .reviewhero-title h1{font-size:26px!important;white-space:normal}
  .reviewhero-title .eyebrow{font-size:7px}
  .reviewcontextcard{width:100%}
  .reviewmedia-card{width:100%!important;min-width:0!important;height:58px!important}
  .reviewhero-actions{justify-self:end}
  .hero-identity{min-width:128px!important}
  .hero-client{display:none}
}
@media(max-width:560px){
  .reviewherohead{grid-template-columns:1fr;grid-template-areas:"brand" "title" "context" "media" "actions"}
  .reviewhero-actions{justify-self:stretch;justify-content:space-between}
  .reviewcontextcard{display:grid;grid-template-columns:1fr 1fr}
  .reviewcontextitem{min-width:0;padding:8px}.reviewcontextitem .contexticon{width:27px;height:27px;flex-basis:27px;font-size:17px}.reviewcontextitem strong{max-width:105px;font-size:10px}.roundcontext strong{font-size:13px}
  .hero-pdf{min-height:40px}.hero-identity{margin-left:auto}
}


/* v0.14.4 — compact desktop review header */
@media(min-width:1051px){
  .reviewherohead{
    grid-template-columns:auto minmax(280px,1.05fr) auto minmax(300px,390px) auto;
    gap:10px;
    min-height:70px;
    padding:8px 10px;
    margin-bottom:10px;
    border-radius:13px;
  }
  .reviewhero-brand{gap:8px;padding-right:10px}
  .reviewhero-brand .fourklogo{width:42px;max-width:42px;border-radius:5px}
  .reviewhero-brand .reviewtag{font-size:7px;padding-left:7px;letter-spacing:.14em}
  .hero-client .clientlogo{max-width:72px;max-height:24px}
  .hero-client-name{max-width:95px;font-size:8px}
  .reviewhero-title .eyebrow{margin-bottom:3px;font-size:6.8px;letter-spacing:.13em}
  .reviewhero-title h1{font-size:clamp(21px,1.75vw,28px)!important}

  .reviewcontextcard{min-height:48px;border-radius:10px}
  .reviewcontextitem{gap:7px;padding:6px 9px;min-width:105px}
  .reviewcontextitem .contexticon{width:24px;height:24px;flex:0 0 24px;font-size:16px}
  .reviewcontextitem small{margin-bottom:2px;font-size:6px;letter-spacing:.1em}
  .reviewcontextitem strong{font-size:10px;max-width:118px}
  .roundcontext strong{font-size:12.5px}

  .projectmediaswitch.reviewmedia-card,.reviewmedia-card{
    height:50px!important;
    gap:3px!important;
    padding:6px 8px!important;
    border-radius:10px!important;
  }
  .media-card-label{font-size:6px!important;letter-spacing:.12em}
  .media-card-control{gap:7px}
  .media-card-play{width:26px;height:26px;flex:0 0 26px;border-radius:7px;font-size:9px}
  .projectmediaswitch.reviewmedia-card select{height:26px!important;font-size:8.7px!important;padding-right:16px!important}
  .media-card-chevron{margin-left:-15px;font-size:15px;font-weight:900}
  .staticmedia-text strong{font-size:9px}.staticmedia-text small{font-size:7px}

  .reviewhero-actions{gap:7px}
  .hero-pdf{min-height:36px;padding:0 10px!important;border-radius:9px!important;font-size:9px!important}
  .hero-pdf-icon{font-size:11px}
  .hero-identity{min-width:126px!important;min-height:40px!important;padding:4px 7px!important;gap:6px!important;border-radius:9px!important}
  .hero-identity .avatar{width:28px!important;height:28px!important;flex:0 0 28px!important;font-size:9px!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--user-color,#e31b23) 12%,transparent)}
  .hero-identity small{font-size:5.8px!important;letter-spacing:.07em!important}
  .hero-identity strong{font-size:9.5px!important;max-width:78px!important}
}

/* Keep the single-row layout longer on normal desktop widths. */
@media(min-width:1181px) and (max-width:1500px){
  .reviewherohead{
    grid-template-columns:auto minmax(255px,1fr) auto minmax(270px,345px) auto;
    grid-template-areas:none;
    gap:8px;
  }
  .reviewhero-brand,.reviewhero-title,.reviewcontextcard,.reviewmedia-card,.reviewhero-actions{grid-area:auto}
  .reviewcontextitem{min-width:96px;padding-left:7px;padding-right:7px}
  .reviewcontextitem strong{max-width:105px}
  .reviewhero-title h1{font-size:24px!important}
  .hero-client{display:none}
}

@media(min-width:1051px) and (max-width:1180px){
  .reviewherohead{
    grid-template-columns:auto minmax(0,1fr) auto;
    grid-template-areas:"brand title actions" "context context media";
    gap:7px 9px;
  }
  .reviewhero-brand{grid-area:brand}
  .reviewhero-title{grid-area:title}
  .reviewcontextcard{grid-area:context}
  .reviewmedia-card{grid-area:media}
  .reviewhero-actions{grid-area:actions}
  .hero-client{display:none}
}

/* v0.14.5 — shorter media label, give the project title more room */
@media(min-width:1501px){
  .reviewherohead{grid-template-columns:auto minmax(300px,1.15fr) auto minmax(260px,340px) auto}
}
@media(min-width:1181px) and (max-width:1500px){
  .reviewherohead{grid-template-columns:auto minmax(285px,1.15fr) auto minmax(240px,310px) auto}
}

/* v0.14.6 — red media play button + clearer dropdown chevron */


/* v0.14.7 neutral / white-label */
.brandrow>.reviewtag:only-child{padding-left:0!important;border-left:0!important;font-size:10px!important;letter-spacing:.22em!important;color:#aeb5bd!important}
.reviewhero-brand .brandrow>.reviewtag:only-child{padding-left:0!important;border-left:0!important;font-size:9px!important;color:#c6cbd2!important}
.appcopyright{max-width:1540px;margin:0 auto;padding:2px 30px 24px;text-align:center;color:#626b76;font-size:9px;font-weight:650;letter-spacing:.04em}
@media(max-width:900px){.appcopyright{padding:4px 16px 18px;font-size:8.5px}}

/* v0.14.8 - kompaktere Benutzerverwaltung */
@media (min-width:1101px){
  .reviewerrow{
    grid-template-columns:auto 305px minmax(360px,1fr) auto;
    align-items:center;
  }
  .reviewereditform{
    grid-template-columns:150px 40px auto;
    width:305px;
  }
  .reviewernamefield{
    width:150px;
  }
  .reviewerlink{
    min-width:0;
  }
  .addreviewer{
    grid-template-columns:320px auto;
    justify-content:start;
  }
}


/* v0.15.0 — project -> media -> version; per-media correction rounds */
.v015projectcards{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px}
.v015projectcards .projectcard{max-width:none}
.partcorrectionform{display:grid;grid-template-columns:minmax(125px,1fr) 92px 92px auto;gap:8px;align-items:end;margin:10px 0 8px;padding:9px 10px;border:1px solid #443b29;border-radius:9px;background:linear-gradient(180deg,#17140e,#0c0f13)}
.partcorrectionform label{font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:#9ea5ae}.partcorrectionform input{min-height:36px;padding:7px 8px}.partcorrectiontitle{display:grid;align-content:center}.partcorrectiontitle span{font-size:9px;font-weight:900;letter-spacing:.1em;color:#e5d8b9}.partcorrectiontitle small{font-size:8px;color:#817765}.roundmediachip{border-color:#69562f!important;background:#1c180f!important;color:#e7d4a7!important}.roundmediachip.unset{border-color:#39414a!important;background:#11151a!important;color:#8f98a3!important}.compactpartsaved{margin:6px 0 8px;padding:7px 9px;font-size:9px}
.projectidentityform{grid-template-columns:minmax(260px,1.3fr) minmax(220px,1fr) auto}
.addpartsform{grid-template-columns:minmax(230px,1.4fr) minmax(120px,.55fr) minmax(100px,.45fr) minmax(105px,.45fr) minmax(105px,.45fr) minmax(170px,.7fr) auto}
@media(min-width:1101px){.reviewerrow{grid-template-columns:auto 300px minmax(380px,1fr) auto}.reviewereditform{grid-template-columns:145px 40px auto;width:300px}.reviewernamefield{width:145px}.addreviewer{grid-template-columns:300px auto}}
@media(max-width:1150px){.partcorrectionform{grid-template-columns:1fr 90px 90px auto}.addpartsform{grid-template-columns:1fr 1fr 1fr}.addpartsform .wide,.addpartsform button{grid-column:1/-1}.projectidentityform{grid-template-columns:1fr 1fr}.projectidentityform button{grid-column:1/-1;justify-self:start}}
@media(max-width:680px){.partcorrectionform{grid-template-columns:1fr 1fr}.partcorrectiontitle,.partcorrectionform button{grid-column:1/-1}.projectidentityform{grid-template-columns:1fr}.projectidentityform>*{grid-column:1!important}}


/* v0.15.1 — restore 4K red action colors, clearer annotation tools, stronger mute button */
.playtoggle,
.thumbplay,
.partplay,
.newreview>summary{
  background:#e31b23!important;
  border-color:#e31b23!important;
  color:#fff!important;
}
.playtoggle:hover,
.thumbplay:hover,
.newreview>summary:hover,
.partplay:hover,
.playtoggle:focus-visible,
.newreview>summary:focus-visible{
  background:#c1171d!important;
  border-color:#c1171d!important;
  color:#fff!important;
}
.playtoggle.playing,
.newreview[open]>summary,
.partplay:focus-visible{
  background:#a71319!important;
  border-color:#a71319!important;
}
.marktoggle{
  border-color:#4a3135!important;
  background:linear-gradient(180deg,#171b20,#10141a)!important;
  color:#f1f4f7!important;
  box-shadow:inset 0 0 0 1px #ffffff05;
}
.marktoggle span{
  color:#ff6f76!important;
  text-shadow:0 0 12px rgba(227,27,35,.18);
}
.marktoggle:hover,
.marktoggle:focus-visible{
  border-color:#975058!important;
  background:linear-gradient(180deg,#1d2229,#131820)!important;
}
.marktoggle.active{
  border-color:#e31b23!important;
  background:linear-gradient(180deg,#57151a,#341015)!important;
  color:#fff!important;
  box-shadow:0 0 0 1px rgba(227,27,35,.28) inset,0 0 18px rgba(227,27,35,.16);
}
.annotationtools{
  border-color:#3a2d31!important;
  background:linear-gradient(180deg,#101419,#0c1015)!important;
}
.tooltitle{color:#9ca6b2!important}
.toolbtn{
  min-height:39px;
  border:1px solid #434a55!important;
  background:linear-gradient(180deg,#1a2027,#13181f)!important;
  color:#eef2f6!important;
}
.toolbtn:hover,
.toolbtn:focus-visible{
  border-color:#5a6471!important;
  background:linear-gradient(180deg,#202731,#171d25)!important;
}
.toolicon{
  color:#ff7279!important;
  text-shadow:0 0 10px rgba(227,27,35,.14);
}
.toolbtn.active{
  border-color:#e31b23!important;
  background:linear-gradient(180deg,#7f1c23,#5d141a)!important;
  color:#fff!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.06) inset,0 0 20px rgba(227,27,35,.18);
}
.toolbtn.active .toolicon{color:#fff!important;text-shadow:none}
.ghosttool{
  border-color:#343b45!important;
  background:linear-gradient(180deg,#11161c,#0c1015)!important;
  color:#d7dde4!important;
}
.annotationtools small{color:#c3ccd6!important}
.volumecontrol .mutebtn{
  width:42px;
  padding-left:0;
  padding-right:0;
  font-size:0!important;
  line-height:1;
  background:linear-gradient(180deg,#171d25,#10161d)!important;
  border-color:#4e5965!important;
  color:#eef2f6!important;
}
.volumecontrol .mutebtn:hover,
.volumecontrol .mutebtn:focus-visible{
  background:linear-gradient(180deg,#1d2430,#131a23)!important;
  border-color:#697687!important;
}
.volumecontrol .mutebtn.muted{
  color:#ff7e85!important;
  border-color:#e31b23!important;
  background:linear-gradient(180deg,#2c1116,#171b21)!important;
  box-shadow:0 0 0 1px rgba(227,27,35,.24) inset;
}
#muteIcon{display:inline-grid;place-items:center;min-width:18px;min-height:18px}
.mutebtn svg{display:block;width:18px;height:18px}
.mutebtn .icon-stroke{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.mutebtn .icon-fill{fill:currentColor;stroke:none}

.parttab.active{border-color:#e31b23!important;background:linear-gradient(180deg,#7f1c23,#5d141a)!important;color:#fff!important;box-shadow:0 0 0 1px rgba(255,255,255,.05) inset,0 0 18px rgba(227,27,35,.18)}
.parttab.active .parttabindex,.parttab.active .parttabstate,.parttab.active small{color:#ffd5d8!important}


/* v0.15.4 — one media selector only, in the review header */
.publicmediaswitch{display:none!important}


/* v0.15.6 - red center for seek playhead knob */
.videoseek::-webkit-slider-thumb{
  background:#e31b23!important;
  box-shadow:0 1px 5px #000b,0 0 0 1px rgba(227,27,35,.35)!important;
}
.videoseek::-moz-range-thumb{
  background:#e31b23!important;
  box-shadow:0 1px 5px #000b,0 0 0 1px rgba(227,27,35,.35)!important;
}


/* v0.15.7 — clearer help workflow and prominent completed-comment state */
.herohelp{position:relative;z-index:90}
.herohelp>summary{list-style:none;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 10px;border:1px solid #b9252c;border-radius:9px;background:linear-gradient(180deg,#6c181e,#451116);color:#fff;font-size:9px;font-weight:850;cursor:pointer;white-space:nowrap;box-shadow:inset 0 1px rgba(255,255,255,.06),0 5px 16px rgba(227,27,35,.12)}
.herohelp>summary::-webkit-details-marker{display:none}.herohelp>summary:hover{background:linear-gradient(180deg,#811d24,#571319);border-color:#e31b23}
.herohelp[open]>summary{background:#e31b23;border-color:#e31b23}
.herohelp-icon{display:grid;place-items:center;width:17px;height:17px;border:1px solid rgba(255,255,255,.46);border-radius:50%;font-size:10px;font-weight:900}
.herohelp-panel{position:absolute;right:0;top:43px;z-index:100;width:min(560px,calc(100vw - 32px));max-height:min(620px,calc(100vh - 105px));overflow:auto;padding:15px;border:1px solid #3c4652;border-radius:13px;background:linear-gradient(180deg,#151b22,#0d1116);box-shadow:0 24px 70px rgba(0,0,0,.78)}
.herohelp-head{display:flex;flex-direction:column;gap:4px;margin-bottom:12px;padding-bottom:11px;border-bottom:1px solid #303842}.herohelp-head strong{font-size:15px}.herohelp-head .eyebrow{font-size:7px;color:#e46a70}
.herohelp-steps{display:grid;gap:8px;margin:0;padding:0;list-style:none;counter-reset:helpstep}
.herohelp-steps li{counter-increment:helpstep;position:relative;display:grid;gap:3px;padding:9px 10px 9px 40px;border:1px solid #29323c;border-radius:9px;background:#0e1319}
.herohelp-steps li:before{content:counter(helpstep);position:absolute;left:10px;top:10px;width:21px;height:21px;display:grid;place-items:center;border-radius:50%;background:#e31b23;color:#fff;font-size:9px;font-weight:900}
.herohelp-steps strong{font-size:10px;color:#f2f5f8}.herohelp-steps span{font-size:9px;line-height:1.45;color:#aeb8c3}.herohelp-steps b{color:#fff}
.commenttopmeta{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}
.commentstate{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:0 7px;border-radius:6px;font-size:7.5px;font-weight:950;letter-spacing:.06em;white-space:nowrap}
.commentstate.isopen{border:1px solid #47515d;background:#151a20;color:#aeb7c1}
.commentstate.isdone{border:1px solid #3f9a62;background:linear-gradient(180deg,#247346,#185733);color:#e9fff0;box-shadow:0 0 0 1px rgba(78,204,125,.08),0 4px 14px rgba(31,138,73,.16)}
.comment.done{border-color:#315a42!important;background:linear-gradient(90deg,rgba(31,138,73,.075),#0b0d10 42%)!important}
.comment.done .commentseek{opacity:.9!important}.comment.done .commentstate{opacity:1!important}
.compacthelp>div{width:310px!important}.compacthelp>div span b{color:#e8edf2;font-weight:850}
@media(max-width:820px){.herohelp-panel{position:fixed;left:12px;right:12px;top:70px;width:auto;max-height:calc(100vh - 90px)}.herohelp>summary{min-height:40px}}
@media(max-width:560px){.reviewhero-actions{flex-wrap:wrap}.herohelp{order:1}.hero-pdf{order:2}.hero-identity{order:3;width:100%!important}.herohelp>summary,.hero-pdf{flex:1;justify-content:center}.commenttop{align-items:flex-start}.commenttopmeta{flex-wrap:wrap}.commentstate{font-size:7px}.compacthelp>div{width:min(320px,88vw)!important}}


/* v0.15.9 — smoother seeking for larger review videos */
.medialoading{position:absolute;left:50%;top:50%;z-index:12;display:flex;align-items:center;gap:10px;transform:translate(-50%,-50%) translateY(4px);padding:9px 13px;border:1px solid #ffffff24;border-radius:10px;background:#080b0ed9;backdrop-filter:blur(7px);color:#eef2f6;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,transform .16s ease,visibility .16s}
.medialoading.visible{opacity:1;visibility:visible;transform:translate(-50%,-50%) translateY(0)}
.medialoading small{color:#e7ebef;font-size:10px;font-weight:750;white-space:nowrap}
.medialoadingspinner{width:17px;height:17px;border:2px solid #ffffff38;border-top-color:var(--brand-accent,#69727d);border-radius:50%;animation:reviewloadspin .72s linear infinite}
@keyframes reviewloadspin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.medialoadingspinner{animation:none;border-top-color:#fff}.medialoading{transition:none}}


/* v0.15.19 — subtle player-only contrast compensation */
.videoWrap:not(.audioWrap) > video#v{filter:contrast(1.06);-webkit-filter:contrast(1.06)}

/* v0.15.21 — backend redesign: clear Frame.io-inspired project workspace */
.adminbody{background:#0d1016!important}
.adminbody.adminloginview{background:radial-gradient(circle at 18% -10%,#22262c 0,#0c0e11 30%,#070809 62%)!important}
.adminbody:not(.adminloginview) .adminshell{max-width:none!important;width:auto!important;margin:0 0 0 220px!important;padding:0 26px 34px!important}

.adminrail{position:fixed;z-index:120;inset:0 auto 0 0;width:220px;display:flex;flex-direction:column;background:#090c12;border-right:1px solid #222833;box-shadow:8px 0 30px rgba(0,0,0,.12)}
.adminrailbrand{height:68px;display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid #202631;text-decoration:none;color:#d8dde5}
.adminrailbrand .fourklogo{width:auto!important;max-width:86px!important;max-height:36px!important;border-radius:5px}
.adminrailbrand span{font-size:8px;font-weight:900;letter-spacing:.18em;color:#747e8d}
.adminrailnav{display:flex;flex-direction:column;gap:4px;padding:14px 10px;overflow:auto}
.adminrailitem,.adminrailsettings{min-height:40px;display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:#9ca5b2;text-decoration:none;font-size:12px;font-weight:720;text-align:left}
.adminrailitem:hover,.adminrailsettings:hover{background:#151a23;color:#f2f5f8;border-color:#242c38}
.adminrailitem.active{background:#191f2a;color:#fff;border-color:#2b3441;box-shadow:inset 3px 0 0 #e31b23}
.railglyph{width:20px;height:20px;display:grid;place-items:center;flex:0 0 auto;color:#8f99a7;font-size:12px;font-weight:900}
.adminrailitem.active .railglyph{color:#ff555b}
.adminrailproject{margin:12px 3px 7px;padding:11px 10px;border-top:1px solid #202631;border-bottom:1px solid #202631;background:#0c1017}
.adminrailproject small{display:block;margin-bottom:6px;font-size:7px;font-weight:900;letter-spacing:.14em;color:#657080}
.adminrailproject strong{display:block;color:#eef1f5;font-size:12px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.adminrailproject span{display:block;margin-top:4px;color:#7f8997;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.adminrailbottom{margin-top:auto;padding:10px;border-top:1px solid #202631}
.adminrailsettings{cursor:pointer}

.admintopbar{position:sticky;z-index:90;top:0;height:68px;margin:0 -26px 20px!important;padding:0 26px!important;display:flex!important;align-items:center!important;background:rgba(13,16,22,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid #252b35!important}
.admincrumbs{display:flex;align-items:center;gap:9px;min-width:0;color:#75808e;font-size:11px}
.admincrumbs a{color:#9aa4b1;text-decoration:none}.admincrumbs a:hover{color:#fff}
.admincrumbs span{color:#4f5865}.admincrumbs strong{min-width:0;max-width:520px;color:#e8ecf1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:760}
.admintopactions{display:flex;align-items:center;gap:14px;margin-left:auto}.adminversion{font-size:8px;color:#626c79;border:1px solid #252c36;border-radius:999px;padding:4px 7px}.admintopactions .linkbtn{color:#8c96a3;text-decoration:none;font-size:10px}.admintopactions .linkbtn:hover{color:#fff}

.adminoverview{margin:0 0 26px!important}.adminoverviewhead{align-items:center!important;margin:0 0 18px!important;padding:8px 0 17px;border-bottom:1px solid #222832}
.adminoverviewhead h1{margin:3px 0 4px!important;font-size:27px!important;letter-spacing:-.025em}.adminoverviewhead .muted{font-size:11px;margin:0}.adminoverviewhead .eyebrow{font-size:7px;color:#697482}
.adminheadtools{display:flex;align-items:center;gap:8px}.adminmanagebtn{padding:10px 12px!important;border-radius:8px!important;background:#151a22!important;border-color:#303845!important;color:#aeb6c1!important}.newreview>summary{border-radius:8px!important;padding:10px 13px!important;font-size:11px!important}

/* Project overview: calmer asset-library cards. */
.v015projectcards{grid-template-columns:repeat(auto-fill,minmax(270px,1fr))!important;gap:15px!important;align-items:start}
.v015projectcards .projectcard{border-radius:10px!important;background:#151922!important;border:1px solid #282f3a!important;box-shadow:none!important;transform:none!important}
.v015projectcards .projectcard:hover{border-color:#3c4654!important;background:#181d27!important;box-shadow:0 12px 28px rgba(0,0,0,.18)!important}
.v015projectcards .projectthumb{border-bottom:1px solid #272e38!important;background:#080a0e!important}
.v015projectcards .projectcardbody{padding:11px 12px 12px!important}
.v015projectcards .projecttitle h3{font-size:14px!important;margin:0 0 4px!important}.v015projectcards .projecttitle small{font-size:9px!important;color:#7f8996!important}
.v015projectcards .commentstat{font-size:8px!important;padding:4px 6px!important;background:#202631!important}.v015projectcards .commentstat.hasopen{background:#3b171a!important;color:#ff959a!important}
.v015projectcards .projectpartpreview{margin:8px 0 2px!important;gap:4px!important}.v015projectcards .projectpartpreview span{padding:3px 5px!important;border-radius:5px!important;font-size:7px!important;background:#10141a!important;border-color:#2b333e!important}.v015projectcards .projectpartpreview b{max-width:120px!important}.v015projectcards .projectpartpreview small{font-size:6.5px!important}
.v015projectcards .projectmeta{margin:9px 0!important}.v015projectcards .projectmeta span{padding:3px 5px!important;border-radius:5px!important;font-size:7px!important;background:#0e1218!important;border-color:#28303a!important;color:#788391!important}
.v015projectcards .projectactions{padding-top:9px!important;border-color:#252c36!important;gap:9px!important}.v015projectcards .projectactions .pill{padding:7px 9px!important;border-radius:7px!important;font-size:9px!important}.v015projectcards .ghostlink{font-size:9px!important;color:#7f8996!important}.v015projectcards .thumbplay{width:30px!important;height:30px!important;left:10px!important;bottom:9px!important;font-size:10px!important}.v015projectcards .thumbversion{top:8px!important;right:8px!important;font-size:7px!important;border-radius:5px!important}

/* When a project is open, show a workspace rather than the dashboard above it. */
.adminprojectview .adminoverview{margin:0!important}.adminprojectview .adminoverviewhead,.adminprojectview .adminoverview>.projectcards,.adminprojectview .adminoverview>.emptyprojects{display:none!important}
.adminprojectview .projectmanagehead{margin:0 0 14px!important;padding:3px 0 16px!important;border-top:0!important;border-bottom:1px solid #252c36!important;align-items:center!important}
.adminprojectview .projectmanagehead h2{font-size:25px!important;margin:2px 0 4px!important}.adminprojectview .projectmanagehead p{margin:0;color:#7f8996;font-size:10px}.adminprojectview .projectmanageactions{gap:7px!important}.adminprojectview .projectmanageactions .pill,.adminprojectview .projectmanageactions .ghostbtn{padding:9px 11px!important;border-radius:8px!important;font-size:9px!important}
.adminprojectview .projectsetupwizard.hasparts{display:none!important}
.adminprojectview .projectsetupwizard.emptyparts{margin-top:6px!important}

/* Main project content behaves like an asset browser. */
.adminprojectview .partshub{margin:0 0 16px!important;padding:16px!important;border-radius:10px!important;border:1px solid #29313c!important;background:#10141b!important;box-shadow:none!important}
.adminprojectview .partshub>.sectionhead{align-items:center!important;margin-bottom:13px!important;padding-bottom:12px;border-bottom:1px solid #252c36}.adminprojectview .partshub>.sectionhead h2{font-size:18px!important;margin-top:2px}.adminprojectview .partshub>.sectionhead p{font-size:9px!important;margin-top:4px!important;max-width:760px}.adminprojectview .parttotalbadge{font-size:8px!important;padding:5px 8px!important;border-radius:999px!important}
.adminprojectview .addpartsbox{margin:0 0 13px!important;border-radius:8px!important;background:#0d1117!important;border-color:#2a323d!important}.adminprojectview .addpartsbox>summary{font-size:10px!important;padding:10px 12px!important;color:#e5e9ef!important}
.adminprojectview .adminpartgrid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.adminprojectview .adminpartcard{display:flex!important;flex-direction:column!important;min-height:0!important;border:1px solid #2a323e!important;border-top:1px solid #2a323e!important;border-radius:9px!important;background:#151a22!important;box-shadow:none!important;overflow:hidden!important}
.adminprojectview .adminpartcard:before{display:none!important}.adminprojectview .adminpartcard>.partpreview{width:100%!important;margin:0!important;aspect-ratio:16/9!important;max-height:none!important;border:0!important;border-bottom:1px solid #29313c!important;border-radius:0!important;background:#07090c!important}
.adminprojectview .partpreviewbtn video{opacity:.94!important}.adminprojectview .partplay{width:30px!important;height:30px!important;font-size:10px!important}
.adminprojectview .partcardcontent{padding:11px 12px 12px!important;min-height:0!important}.adminprojectview .partcardtop h3{font-size:14px!important}.adminprojectview .partcardtop small{font-size:8px!important}.adminprojectview .partindex{font-size:6.5px!important;color:#7f8b99!important}.adminprojectview .partcomments{font-size:7px!important;padding:4px 6px!important}
.adminprojectview .partchips{gap:4px!important;margin:8px 0!important}.adminprojectview .partchips span{font-size:6.5px!important;padding:3px 5px!important;border-radius:5px!important;background:#10151c!important;border-color:#2d3641!important;color:#8e98a5!important}.adminprojectview .partchips .roundmediachip{color:#d8c79e!important}
.adminprojectview .partcorrectionform{grid-template-columns:1fr 1fr!important;gap:6px!important;margin:7px 0!important;padding:8px!important;border-radius:7px!important;background:#101319!important;border-color:#34302a!important}.adminprojectview .partcorrectiontitle{grid-column:1/-1!important;display:flex!important;align-items:baseline!important;justify-content:space-between!important}.adminprojectview .partcorrectiontitle span{font-size:7px!important}.adminprojectview .partcorrectiontitle small{font-size:7px!important}.adminprojectview .partcorrectionform label{font-size:6.5px!important}.adminprojectview .partcorrectionform input{min-height:32px!important;padding:5px 7px!important;font-size:10px!important}.adminprojectview .partcorrectionform button{grid-column:1/-1!important;min-height:30px!important;padding:6px 8px!important;border-radius:6px!important;font-size:8px!important}
.adminprojectview .partactions{padding-top:2px!important;gap:6px!important}.adminprojectview .partactions>.pill{padding:7px 9px!important;border-radius:7px!important;font-size:8px!important}.adminprojectview .partsettings>summary{font-size:8px!important}

/* Secondary administration stays available, but visually steps behind the media. */
.adminprojectview .projectidentitypanel,.adminprojectview .projectaccesspanel,.adminprojectview #participants,.adminprojectview .projectcomments,.adminprojectview .projectdanger{border-radius:10px!important;box-shadow:none!important;background:#0f131a!important;border-color:#272f39!important}
.adminprojectview .projectidentitypanel{padding:12px 14px!important}.adminprojectview .projectidentitytitle strong{font-size:12px!important}.adminprojectview .projectidentitytitle small{font-size:8px!important}.adminprojectview .projectidentityform input{padding:8px 9px!important}.adminprojectview .projectidentityform button{padding:8px 10px!important;font-size:9px!important}
.adminprojectview #participants>.sectionhead h2,.adminprojectview .projectcomments>.sectionhead h2{font-size:18px!important}.adminprojectview #participants>.sectionhead p,.adminprojectview .projectcomments>.sectionhead p{font-size:9px!important;max-width:900px}

@media(max-width:1320px){
 .adminprojectview .adminpartgrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
 .adminbody:not(.adminloginview) .adminshell{margin-left:58px!important;padding:0 14px 24px!important}
 .adminrail{width:58px}.adminrailbrand{height:58px;justify-content:center;padding:0 6px}.adminrailbrand .fourklogo{max-width:38px!important;max-height:30px!important}.adminrailbrand>span,.adminrailitem>span:last-child,.adminrailsettings>span:last-child,.adminrailproject{display:none!important}.adminrailnav{padding:10px 7px}.adminrailitem,.adminrailsettings{justify-content:center;padding:8px 4px}.railglyph{width:24px;height:24px}.adminrailbottom{padding:7px}.admintopbar{height:58px;margin:0 -14px 14px!important;padding:0 14px!important}.admincrumbs strong{max-width:48vw}.adminoverviewhead{align-items:flex-start!important}.adminprojectview .adminpartgrid{grid-template-columns:1fr!important}
}
@media(max-width:680px){
 .adminbody:not(.adminloginview) .adminshell{margin-left:0!important;padding:58px 10px 20px!important}.adminrail{width:100%;height:48px;right:0;bottom:auto;flex-direction:row;align-items:center;border-right:0;border-bottom:1px solid #252c36}.adminrailbrand{height:48px;width:54px;border-bottom:0;border-right:1px solid #252c36}.adminrailbrand .fourklogo{max-width:34px!important;max-height:26px!important}.adminrailnav{flex:1;flex-direction:row;padding:5px;overflow:visible}.adminrailitem{min-height:36px;width:40px}.adminrailbottom{margin:0;padding:5px;border:0;border-left:1px solid #252c36}.adminrailsettings{min-height:36px;width:40px}.admintopbar{position:relative;height:50px;margin:-50px -10px 12px!important;padding:0 10px!important}.adminversion{display:none}.adminoverviewhead{gap:12px!important}.adminoverviewhead h1{font-size:23px!important}.adminheadtools{width:100%;justify-content:flex-start}.adminmanagebtn{display:none!important}.v015projectcards{grid-template-columns:1fr!important}.adminprojectview .projectmanagehead{align-items:flex-start!important}.adminprojectview .projectmanageactions{width:100%;display:flex;flex-wrap:wrap}.adminprojectview .partshub{padding:10px!important}.adminprojectview .partshub>.sectionhead{align-items:flex-start!important}.adminprojectview .partcorrectionform{grid-template-columns:1fr 1fr!important}
}

/* v0.15.22 · 4K Review Bridge */
.bridgeapisettings{margin-top:28px;padding-top:24px;border-top:1px solid var(--line,rgba(255,255,255,.1))}
.managementsectionhead.compact{margin-bottom:14px}
.bridgeapistate{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border:1px solid rgba(255,255,255,.12);border-radius:999px;font-size:12px;color:var(--muted,#9ca3af);white-space:nowrap}
.bridgeapistate.active{color:#fff;border-color:color-mix(in srgb,var(--accent,#e31b23) 50%,transparent);background:color-mix(in srgb,var(--accent,#e31b23) 14%,transparent)}
.bridgeonetimetoken{margin:14px 0;padding:14px;border:1px solid color-mix(in srgb,var(--accent,#e31b23) 45%,transparent);border-radius:12px;background:color-mix(in srgb,var(--accent,#e31b23) 8%,transparent)}
.bridgeonetimetoken label{margin:0}.bridgeonetimetoken input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.bridgeapiinfo{display:grid;gap:8px;margin:14px 0}.bridgeapiinfo>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.035)}
.bridgeapiinfo span{color:var(--muted,#9ca3af);font-size:12px}.bridgeapiinfo code{overflow-wrap:anywhere;text-align:right}.bridgeapiactions{margin-top:12px}
@media(max-width:720px){.bridgeapiinfo>div{align-items:flex-start;flex-direction:column}.bridgeapiinfo code{text-align:left}}


/* v0.15.25 — Frame.io-style hover preview on the seek bar */
/* v0.15.29 — compact, premium media selector; the whole card is clickable */
.media-switch-active{
  position:relative;
  height:52px!important;
  padding:7px 10px 7px 13px!important;
  gap:4px!important;
  overflow:hidden;
  border:1px solid #303a45!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,#111821,#0c1117)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025),0 5px 16px rgba(0,0,0,.13)!important;
  cursor:pointer;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
.media-switch-active::before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:2px;
  border-radius:0 2px 2px 0;
  background:#e31b23;
  opacity:.9;
  pointer-events:none;
}
.media-switch-active:hover,.media-switch-active:focus-within{
  border-color:#586575!important;
  background:linear-gradient(135deg,#141c26,#0d131a)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 0 0 1px rgba(227,27,35,.10),0 7px 20px rgba(0,0,0,.17)!important;
}
.media-card-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;line-height:1}
.media-switch-active .media-card-label{color:#d8dde4!important;font-size:6.4px!important;font-weight:850!important;letter-spacing:.13em!important}
.media-card-count{flex:0 0 auto;color:#717d89;font-size:5.8px;font-weight:800;letter-spacing:.08em;white-space:nowrap}
.media-switch-active .media-card-control{display:flex;align-items:center;gap:10px;min-width:0;flex:1}
.media-card-current{display:flex;flex:1;min-width:0;align-items:baseline;gap:7px;white-space:nowrap;overflow:hidden}
.media-card-current strong{min-width:0;overflow:hidden;text-overflow:ellipsis;color:#f2f5f8;font-size:9.3px;font-weight:800;line-height:1.15}
.media-card-current small{flex:0 0 auto;color:#8f99a5;font-size:7.2px;font-weight:700;line-height:1.15}
.media-card-chevron{position:relative;width:25px;height:25px;flex:0 0 25px;border:1px solid #34404b;border-radius:7px;background:#151b22;pointer-events:none;transition:border-color .16s ease,background .16s ease}
.media-card-chevron::before{content:"";position:absolute;left:8px;top:7px;width:6px;height:6px;border-right:1.5px solid #c7cfd7;border-bottom:1.5px solid #c7cfd7;transform:rotate(45deg)}
.media-switch-active:hover .media-card-chevron,.media-switch-active:focus-within .media-card-chevron{border-color:#8e4145;background:#191b21}
.projectmediaswitch.reviewmedia-card.media-switch-active select.media-card-native{
  position:absolute!important;
  inset:0!important;
  z-index:5!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  opacity:0!important;
  cursor:pointer!important;
  appearance:auto!important;
  -webkit-appearance:menulist!important;
}
@media(min-width:1051px){
  .media-switch-active{height:48px!important;padding:6px 9px 6px 12px!important}
  .media-switch-active::before{top:9px;bottom:9px}
  .media-switch-active .media-card-label{font-size:5.9px!important}
  .media-card-count{font-size:5.3px}
  .media-card-current strong{font-size:8.7px}.media-card-current small{font-size:6.7px}
  .media-card-chevron{width:23px;height:23px;flex-basis:23px;border-radius:6px}
  .media-card-chevron::before{left:7px;top:6px}
}
@media(max-width:560px){
  .media-switch-active{height:54px!important;padding:7px 10px 7px 13px!important}
  .media-card-current{display:block}.media-card-current strong,.media-card-current small{display:block}.media-card-current small{margin-top:2px}
  .media-switch-active .media-card-label{font-size:6.4px!important}.media-card-count{font-size:5.8px}
}


/* v0.15.30 — reduced, direct media selector: no fake button, no click trap */
.media-switch-active{
  position:relative!important;
  height:46px!important;
  padding:6px 9px 6px 11px!important;
  gap:3px!important;
  overflow:hidden!important;
  border:1px solid #36404b!important;
  border-radius:9px!important;
  background:linear-gradient(135deg,#111820,#0c1117)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025)!important;
  cursor:default!important;
}
.media-switch-active::before{
  content:"";
  position:absolute;
  left:0;
  top:9px;
  bottom:9px;
  width:2px;
  border-radius:0 2px 2px 0;
  background:#d9222a;
  opacity:.72;
  pointer-events:none;
}
.media-switch-active:hover,.media-switch-active:focus-within{
  border-color:#4b5865!important;
  background:linear-gradient(135deg,#121a23,#0d1319)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.03)!important;
}
.media-switch-active .media-card-heading{height:10px;display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;line-height:1}
.media-switch-active .media-card-label{font-size:5.7px!important;font-weight:850!important;letter-spacing:.12em!important;color:#aeb7c1!important}
.media-switch-active .media-card-count{font-size:5.3px!important;font-weight:800!important;letter-spacing:.07em!important;color:#66717d!important}
.media-select-row{position:relative;display:flex;align-items:center;min-width:0;height:26px;border-radius:6px;background:#0c1117;border:1px solid #28323c;overflow:hidden}
.projectmediaswitch.reviewmedia-card.media-switch-active select.media-card-native{
  position:relative!important;
  inset:auto!important;
  z-index:1!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:26px!important;
  min-height:26px!important;
  margin:0!important;
  padding:0 26px 0 8px!important;
  border:0!important;
  border-radius:6px!important;
  opacity:1!important;
  background:transparent!important;
  color:#edf1f5!important;
  font-size:8.5px!important;
  font-weight:750!important;
  line-height:26px!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  box-shadow:none!important;
  outline:none!important;
  text-overflow:ellipsis;
}
.projectmediaswitch.reviewmedia-card.media-switch-active select.media-card-native:focus{box-shadow:inset 0 0 0 1px rgba(217,34,42,.48)!important}
.media-select-chevron{position:absolute;right:8px;top:50%;width:7px;height:7px;margin-top:-5px;border-right:1.5px solid #c6cdd5;border-bottom:1.5px solid #c6cdd5;transform:rotate(45deg);pointer-events:none;z-index:2}
.media-switch-active .media-card-current,.media-switch-active .media-card-chevron{display:none!important}
@media(min-width:1051px){
  .media-switch-active{height:44px!important;padding:5px 8px 5px 10px!important}
  .media-select-row{height:25px}
  .projectmediaswitch.reviewmedia-card.media-switch-active select.media-card-native{height:25px!important;min-height:25px!important;line-height:25px!important;font-size:8.1px!important}
}
@media(max-width:560px){
  .media-switch-active{height:48px!important;padding:6px 9px 6px 11px!important}
  .media-switch-active .media-card-label{font-size:6px!important}
  .media-switch-active .media-card-count{font-size:5.5px!important}
  .projectmediaswitch.reviewmedia-card.media-switch-active select.media-card-native{font-size:8.8px!important}
}


/* v0.15.39 — Frame.io-style scrub preview in the main picture.
   Deliberately tiny proxy enlarged to player size: fast, visibly lower resolution,
   no separate floating thumbnail and no extra frame. */
.scrubpreviewvideo{
 position:absolute!important;
 inset:0;
 z-index:1;
 width:100%!important;
 height:100%!important;
 object-fit:contain;
 background:#000;
 opacity:0;
 visibility:hidden;
 pointer-events:none;
 border:0!important;
 border-radius:0!important;
 box-shadow:none!important;
 transition:none!important
}
.scrubpreviewvideo.visible{opacity:1;visibility:visible}


/* v0.15.46 — full-width marker rail, owner-only comment editing, persistent review completion */
.reviewtimeline{width:100%!important;margin:2px 0 0!important;padding:0!important;box-sizing:border-box}
.reviewtimeline .timelinebase{left:0!important;right:0!important}
.reviewtimeline .timelinemarkers{inset:0!important}
.timelinelabel{padding-left:0!important;padding-right:0!important}
.hero-reviewcomplete{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 11px!important;border:1px solid #b9252c!important;border-radius:9px!important;background:linear-gradient(180deg,#771b21,#511217)!important;color:#fff!important;font-size:9px!important;font-weight:900!important;white-space:nowrap;box-shadow:inset 0 1px rgba(255,255,255,.06),0 5px 16px rgba(227,27,35,.12)}
button.hero-reviewcomplete:hover{background:#e31b23!important;border-color:#e31b23!important}
.hero-reviewcomplete.iscomplete{border-color:#318b54!important;background:linear-gradient(180deg,#216b40,#174b2e)!important;color:#eafff0!important}
.hero-reviewcomplete.partdone{border-color:#46515d!important;background:#171c22!important;color:#c7cdd4!important}
.hero-reviewcomplete.isdisabled{border-color:#46515d!important;background:#171c22!important;color:#8f98a3!important;opacity:.82;cursor:pointer!important}
.chooserattention{animation:chooserattention1546 .9s ease 0s 2;box-shadow:0 0 0 2px rgba(227,27,35,.6),0 0 30px rgba(227,27,35,.24)!important}
@keyframes chooserattention1546{50%{border-color:#e31b23;background:#191114}}
.commentowneractions{display:flex;flex-direction:column;align-items:stretch;border-left:1px solid #292e35;background:#0d0f12;min-width:72px}
.commentowneractions .commentdeleteform{border:0;background:transparent;flex:1}
.commenteditbutton,.commentowneractions .commentdelete{flex:1;min-height:34px;padding:7px 9px;border-radius:0;background:transparent;font-size:8.5px;font-weight:850;letter-spacing:.03em}
.commenteditbutton{color:#aeb8c4;border-bottom:1px solid #292e35}
.commenteditbutton:hover{background:#16202b;color:#fff}
.commentowneractions .commentdelete{width:100%;color:#d8787e}
.commenteditform{grid-column:2/-1;display:grid;gap:8px;padding:10px;border-top:1px solid #303741;background:#0f141a}
.commenteditform label{gap:5px;font-size:9px;color:#b8c1cb}
.commenteditform textarea{min-height:76px;padding:9px 10px;font-size:12px;line-height:1.4;resize:vertical}
.commenteditactions{display:flex;justify-content:flex-end;gap:7px}
.commenteditactions button{min-height:34px;padding:7px 10px;font-size:9px}
@media(max-width:600px){.commentowneractions{grid-column:2;flex-direction:row;border-left:0;border-top:1px solid #292e35}.commenteditbutton,.commentowneractions .commentdelete{min-height:36px}.commenteditbutton{border-bottom:0;border-right:1px solid #292e35}.commenteditform{grid-column:1/-1}.hero-reviewcomplete{flex:1}}

/* v0.15.48 — wider desktop workspace, calmer hero actions */
@media(min-width:1101px){
  .shell.reviewshell{width:calc(100% - 12px)!important;max-width:1840px!important;margin:0 auto!important;padding-left:8px!important;padding-right:8px!important}
  .multipartshell .reviewgrid,.reviewgrid{grid-template-columns:minmax(0,1fr) clamp(305px,20vw,350px)!important;gap:12px!important}
}
@media(min-width:1280px){
  .reviewherohead{
    grid-template-columns:auto minmax(220px,1.25fr) minmax(215px,.72fr) minmax(250px,.92fr) minmax(390px,auto)!important;
    grid-template-areas:none!important;
    gap:9px!important;
    padding-left:11px!important;
    padding-right:11px!important;
  }
  .reviewhero-brand,.reviewhero-title,.reviewcontextcard,.reviewmedia-card,.reviewhero-actions{grid-area:auto!important}
  .reviewhero-actions{min-width:390px!important;gap:7px!important;flex-wrap:nowrap!important;justify-content:flex-end!important}
  .herohelp>summary{min-height:40px!important;padding:0 10px!important}
  .hero-pdf{min-height:40px!important;padding:0 11px!important}
  .hero-reviewcomplete{min-width:132px!important;min-height:40px!important;padding:0 14px!important;font-size:9.5px!important}
  .hero-identity{min-width:112px!important;max-width:126px!important;min-height:40px!important}
  .hero-identity strong{max-width:72px!important}
}
@media(min-width:1101px) and (max-width:1279px){
  .reviewherohead{
    grid-template-columns:auto minmax(0,1fr) minmax(340px,auto)!important;
    grid-template-areas:"brand title actions" "context media media"!important;
    gap:8px 10px!important;
  }
  .reviewhero-brand{grid-area:brand!important}.reviewhero-title{grid-area:title!important}.reviewcontextcard{grid-area:context!important}.reviewmedia-card{grid-area:media!important}.reviewhero-actions{grid-area:actions!important}
  .reviewhero-actions{min-width:340px!important;gap:7px!important;flex-wrap:nowrap!important}
  .hero-reviewcomplete{min-width:126px!important;min-height:40px!important;padding:0 12px!important}
}



/* v0.15.51 — compact desktop player, readable admin annotations */
@media(min-width:1101px){
  .reviewgrid>div:first-child{
    --review-player-width:min(100%,calc((100vh - 255px) * 16 / 9));
  }
  .reviewgrid>div:first-child>.videoWrap:not(.audioWrap),
  .reviewgrid>div:first-child>.playerbar,
  .reviewgrid>div:first-child>.transport,
  .reviewgrid>div:first-child>.reviewtimeline,
  .reviewgrid>div:first-child>.timelinelabel,
  .reviewgrid>div:first-child>.annotationtools{
    width:var(--review-player-width)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .reviewgrid>div:first-child>.videoWrap:not(.audioWrap){
    aspect-ratio:16/9!important;
  }
}
@media(min-width:1101px) and (max-height:760px){
  .reviewgrid>div:first-child{--review-player-width:min(100%,calc((100vh - 235px) * 16 / 9));}
}

/* Project backend: annotations must remain readable instead of behaving like compact metadata. */
.adminprojectview .projectcomments .tablewrap{overflow-x:auto!important}
.adminprojectview .projectcomments table{table-layout:fixed!important;min-width:900px!important}
.adminprojectview .projectcomments th{font-size:9px!important;padding:10px 11px!important}
.adminprojectview .projectcomments td{font-size:11px!important;padding:11px!important;vertical-align:top!important}
.adminprojectview .projectcomments th:nth-child(1),.adminprojectview .projectcomments td:nth-child(1){width:18%;white-space:normal!important}
.adminprojectview .projectcomments th:nth-child(2),.adminprojectview .projectcomments td:nth-child(2){width:11%}
.adminprojectview .projectcomments th:nth-child(3),.adminprojectview .projectcomments td:nth-child(3){width:39%;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;line-height:1.5!important;font-size:13px!important;color:#f3f6fa!important}
.adminprojectview .projectcomments th:nth-child(4),.adminprojectview .projectcomments td:nth-child(4){width:11%;white-space:normal!important}
.adminprojectview .projectcomments th:nth-child(5),.adminprojectview .projectcomments td:nth-child(5){width:8%;text-align:center}
.adminprojectview .projectcomments th:nth-child(6),.adminprojectview .projectcomments td:nth-child(6){width:13%}
.adminprojectview .projectcomments td:nth-child(1) strong{font-size:11px!important;line-height:1.3!important}
.adminprojectview .projectcomments td:nth-child(1) small{font-size:9px!important;line-height:1.35!important;white-space:normal!important}
.adminprojectview .projectcomments td:nth-child(2) strong{font-size:11px!important;font-variant-numeric:tabular-nums}
.adminprojectview .projectcomments td:nth-child(6) .pill{font-size:9px!important;padding:7px 8px!important;white-space:normal!important;line-height:1.2!important}



/* v0.15.55 — iOS/mobile: suppress false loading overlay during active playback */
@media (hover:none) and (pointer:coarse){.medialoading,.medialoading.visible{display:none!important;opacity:0!important;visibility:hidden!important}}


/* v0.15.56 — backend workflow redesign: Video → Videoinfos → Nutzer & Freigabe */
.adminprojectview .projectmanagehead{
  margin-bottom:16px!important;
  padding-bottom:16px!important;
}
.adminprojectview .projectmanagehead>div:first-child:before{
  content:'REVIEW-PROJEKT';display:block;margin-bottom:5px;color:#7d8795;font-size:7px;font-weight:900;letter-spacing:.17em
}
.adminprojectview .projectmanagehead .eyebrow{display:none!important}
.adminprojectview .projectmanagehead h2{font-size:28px!important;letter-spacing:-.03em!important;color:#f5f7fa!important}
.adminprojectview .projectmanagehead p{font-size:10px!important;color:#8d97a4!important}

.adminworkflow{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 16px
}
.adminworkflowstep{
  position:relative;display:flex;align-items:center;gap:12px;min-height:74px;padding:13px 15px;
  border:1px solid #2b3440;border-radius:12px;background:#11161e;text-decoration:none;overflow:hidden;
  transition:border-color .15s ease,transform .15s ease,background .15s ease
}
.adminworkflowstep:before{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:var(--flow-color,#e31b23)}
.adminworkflowstep:hover{transform:translateY(-1px);border-color:#495462;background:#151b24}
.adminworkflowstep .flowindex{
  width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;
  color:#fff;background:color-mix(in srgb,var(--flow-color,#e31b23) 78%,#1b222c);font-weight:900;font-size:14px;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--flow-color,#e31b23) 13%,transparent)
}
.adminworkflowstep strong{display:block;color:#f2f5f8;font-size:13px;line-height:1.15}
.adminworkflowstep small{display:block;margin-top:4px;color:#7f8a98;font-size:8px;line-height:1.25}
.adminworkflowstep.video{--flow-color:#ef3340;background:linear-gradient(135deg,rgba(239,51,64,.13),#11161e 58%)}
.adminworkflowstep.info{--flow-color:#e0a72f;background:linear-gradient(135deg,rgba(224,167,47,.11),#11161e 58%)}
.adminworkflowstep.users{--flow-color:#2f80ed;background:linear-gradient(135deg,rgba(47,128,237,.12),#11161e 58%)}

/* Step 1: videos */
.adminprojectview .partshub{
  position:relative!important;padding:18px!important;border:1px solid #3a2a2e!important;
  background:linear-gradient(180deg,rgba(239,51,64,.055),#10141b 110px)!important
}
.adminprojectview .partshub:before{content:'';position:absolute;left:-1px;top:16px;bottom:16px;width:3px;border-radius:3px;background:#ef3340}
.adminprojectview .partshub>.sectionhead{padding-left:8px!important}
.adminprojectview .partshub>.sectionhead .eyebrow{color:#ff6e78!important}
.adminprojectview .partshub>.sectionhead h2{font-size:20px!important;color:#fff!important}
.adminprojectview .partshub>.sectionhead p{font-size:10px!important;color:#8f99a6!important}
.adminprojectview .addpartsbox{border:1px dashed #71323a!important;background:linear-gradient(135deg,rgba(239,51,64,.10),#0e131a)!important}
.adminprojectview .addpartsbox>summary{padding:12px 14px!important;color:#fff!important;font-size:11px!important;font-weight:850!important}
.adminprojectview .addpartsbox>summary:before{content:'＋';display:inline-grid;place-items:center;width:22px;height:22px;margin-right:8px;border-radius:7px;background:#e31b23;color:#fff;font-size:14px;vertical-align:middle}

.adminprojectview .adminpartgrid{gap:15px!important}
.adminprojectview .adminpartcard{
  border-color:#313b48!important;background:#141a23!important;border-radius:12px!important;
  box-shadow:0 10px 26px rgba(0,0,0,.16)!important
}
.adminprojectview .adminpartcard:hover{border-color:#465363!important}
.adminprojectview .partcardcontent{padding:13px 14px 14px!important}
.adminprojectview .partcardtop h3{font-size:15px!important;color:#fff!important}
.adminprojectview .partcardtop small{font-size:8.5px!important;color:#8b96a4!important}
.adminprojectview .partindex{color:#ff6f78!important;font-size:7px!important;letter-spacing:.14em!important}
.adminprojectview .partchips span{font-size:7px!important;padding:4px 6px!important}
.adminprojectview .partcorrectionform{background:linear-gradient(135deg,rgba(224,167,47,.08),#101319)!important;border-color:#4b4128!important}
.adminprojectview .partcorrectiontitle span{color:#e8c563!important}

/* Step 2: video information */
.adminprojectview .partsettings.videoinfos{
  display:block!important;margin-top:8px!important;border:1px solid #463e29!important;border-radius:9px!important;
  background:linear-gradient(135deg,rgba(224,167,47,.07),#0d1218 55%)!important;overflow:hidden!important
}
.adminprojectview .partsettings.videoinfos>summary{
  display:flex!important;align-items:center!important;gap:8px!important;padding:10px 11px!important;cursor:pointer!important;
  color:#f2e4bb!important;font-size:9px!important;font-weight:850!important;list-style:none!important
}
.adminprojectview .partsettings.videoinfos>summary::-webkit-details-marker{display:none}
.adminprojectview .partsettings.videoinfos>summary:before{
  content:'2';width:22px;height:22px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:#b88921;color:#fff;font-size:9px;font-weight:900
}
.adminprojectview .partsettings.videoinfos[open]>summary{border-bottom:1px solid #3d3829;background:rgba(224,167,47,.04)}
.adminprojectview .partsettings.videoinfos .parteditform{padding:11px!important}
.adminprojectview .partsettings.videoinfos .parteditform label{font-size:8px!important;color:#aab2bd!important}
.adminprojectview .partsettings.videoinfos .parteditform input,
.adminprojectview .partsettings.videoinfos .parteditform select{min-height:35px!important;background:#111823!important;border-color:#34404d!important;color:#f1f3f6!important}
.adminprojectview .partsettings.videoinfos .parteditform button{background:#b88921!important;border-color:#cda63f!important;color:#fff!important}
.adminprojectview .partsettings.videoinfos .partreviewersform,
.adminprojectview .partsettings.videoinfos>p,
.adminprojectview .partsettings.videoinfos>.partdeleteactions{margin-left:11px!important;margin-right:11px!important}

/* Project information is useful but secondary to the three-step workflow. */
.adminprojectview .projectidentitypanel{margin-top:14px!important;border-left:3px solid #566170!important;background:#0d1218!important}
.adminprojectview .projectidentitytitle .eyebrow{color:#828c99!important}
.adminprojectview .projectidentitytitle strong{font-size:13px!important;color:#e6eaf0!important}
.adminprojectview .projectidentitytitle small{font-size:8.5px!important;color:#7f8996!important}
.adminprojectview .projectaccesspanel{margin-top:10px!important}

/* Step 3: users and release */
.adminprojectview #participants{
  position:relative!important;padding:18px!important;border:1px solid #233b56!important;
  background:linear-gradient(180deg,rgba(47,128,237,.07),#0f131a 120px)!important
}
.adminprojectview #participants:before{content:'';position:absolute;left:-1px;top:16px;bottom:16px;width:3px;border-radius:3px;background:#2f80ed}
.adminprojectview #participants>.sectionhead{padding-left:8px!important;padding-bottom:12px!important;border-bottom:1px solid #253445!important}
.adminprojectview #participants>.sectionhead .eyebrow{color:#69a7ff!important}
.adminprojectview #participants>.sectionhead h2{font-size:20px!important;color:#fff!important}
.adminprojectview #participants>.sectionhead p{font-size:10px!important;color:#8e99a7!important}
.adminprojectview .masterlink{margin:13px 0!important;padding:11px 12px!important;border:1px solid #30445e!important;border-radius:9px!important;background:#0c1420!important}
.adminprojectview .masterlink>span{color:#84b5fb!important;font-size:8px!important;font-weight:850!important;letter-spacing:.05em!important}
.adminprojectview .reviewerlist{display:grid!important;gap:8px!important;margin-top:10px!important}
.adminprojectview .reviewerrow{
  grid-template-columns:auto minmax(250px,320px) minmax(300px,1fr) auto!important;gap:10px!important;align-items:center!important;
  padding:10px 11px!important;border:1px solid #2c3745!important;border-radius:10px!important;background:#121822!important
}
.adminprojectview .reviewerrow:hover{border-color:#40516a!important;background:#151d29!important}
.adminprojectview .reviewerrow .avatar{width:38px!important;height:38px!important;border:3px solid rgba(255,255,255,.08)!important;box-shadow:0 0 0 3px rgba(255,255,255,.025)!important}
.adminprojectview .reviewereditform{gap:7px!important}
.adminprojectview .reviewernamefield{font-size:7px!important;color:#768292!important}
.adminprojectview .reviewernamefield input{min-height:34px!important;font-size:11px!important;font-weight:760!important}
.adminprojectview .reviewerlink input{background:#0b1119!important;border-color:#303b49!important;color:#8e9aaa!important}
.adminprojectview .activitypill.pending{border-color:#5b4521!important;background:#241c0e!important;color:#e6bf66!important}
.adminprojectview .activitypill.completed{border-color:#24573c!important;background:#102319!important;color:#7ee0aa!important}
.adminprojectview .addreviewer{
  margin-top:12px!important;padding:12px!important;border:1px dashed #35577d!important;border-radius:10px!important;background:rgba(47,128,237,.055)!important
}
.adminprojectview .addreviewer label{color:#9eb7d4!important;font-weight:800!important}
.adminprojectview .addreviewer button{background:#2f80ed!important;border-color:#4d94f0!important;color:#fff!important}

/* Less important sections visually recede. */
.adminprojectview .projectcomments{margin-top:14px!important;opacity:.94}
.adminprojectview .projectdanger{margin-top:14px!important;background:#120d0f!important;border-color:#3c2429!important}

@media(max-width:1180px){
  .adminprojectview .reviewerrow{grid-template-columns:auto minmax(220px,1fr) minmax(260px,1.2fr)!important}
  .adminprojectview .reviewerstatus{grid-column:2/-1!important}
}
@media(max-width:900px){
  .adminworkflow{grid-template-columns:1fr!important}
  .adminworkflowstep{min-height:60px!important}
  .adminprojectview .reviewerrow{grid-template-columns:auto 1fr!important}
  .adminprojectview .reviewereditform,.adminprojectview .reviewerlink,.adminprojectview .reviewerstatus{grid-column:2!important;width:100%!important}
}
@media(max-width:680px){
  .adminworkflowstep small{font-size:8.5px!important}
  .adminprojectview .partshub,.adminprojectview #participants{padding:12px!important}
  .adminprojectview .reviewerrow{padding:9px!important}
}


/* v0.15.57 - clearer comment administration */
.projectcomments .admincommenttext{-webkit-user-select:text!important;user-select:text!important;cursor:text!important}
.projectcomments .authorbadge{background:color-mix(in srgb,var(--user-color,#69727d) 26%,#20242a)!important;border:1px solid color-mix(in srgb,var(--user-color,#69727d) 72%,transparent)!important;color:#fff!important;box-shadow:inset 3px 0 0 var(--user-color,#69727d)}
.projectcomments [data-comment-toggle-button]:disabled{opacity:.55;cursor:wait}


/* v0.15.58 — media metadata, unmistakable reviewer colours, selectable frontend comments */
.projectcomments .authorbadge{
 background:var(--user-color,#e31b23)!important;
 border:1px solid var(--user-color,#e31b23)!important;
 color:#fff!important;
 box-shadow:0 0 0 1px rgba(255,255,255,.12),0 2px 8px rgba(0,0,0,.22)!important;
 text-shadow:0 1px 2px rgba(0,0,0,.75);
}
.partfilemeta{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px;max-width:100%}
.partfilemeta span{display:inline-flex;align-items:center;min-width:0;max-width:100%;padding:3px 6px;border:1px solid #313a46;border-radius:6px;background:#0c1117;color:#aeb8c4;font-size:7.3px;font-weight:750;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.partfilemeta span:first-child{max-width:165px;color:#dce2e8;border-color:#3a4654}
.commentseek{cursor:pointer}
.commentseek .commentbody{-webkit-user-select:text!important;user-select:text!important;cursor:text!important;white-space:normal!important;line-height:1.4}
.commentseek:focus-visible{outline:1px solid color-mix(in srgb,var(--user-color,#e31b23) 65%,#fff);outline-offset:-2px}
@media(max-width:680px){.partfilemeta span:first-child{max-width:210px}}

/* v0.15.68: Backend-only layout. Review frontend remains from v0.15.60. */
.adminbody .adminworkflow,.adminbody .projectsetupwizard{display:none!important}
.adminbody .adminprojecthero{display:grid;grid-template-columns:220px minmax(0,1fr) auto;gap:20px;align-items:center;margin:0 0 20px;padding:18px;border:1px solid #30353e;border-radius:18px;background:linear-gradient(145deg,#14181e,#0d1014);box-shadow:0 18px 50px #0004}
.adminbody .adminprojecthero-media{height:124px;border-radius:13px;overflow:hidden;background:#07090c;border:1px solid #262d35;display:grid;place-items:center}.adminbody .adminprojecthero-media video{width:100%;height:100%;object-fit:cover;display:block}.adminbody .adminprojecthero-audio{font-size:38px;color:#9da7b2}.adminbody .adminprojecthero-empty{font-size:12px;color:#7f8994}
.adminbody .adminprojecthero-copy h2{font-size:30px;margin:3px 0 5px}.adminbody .adminprojecthero-copy p{margin:0;color:#a4acb6}.adminbody .adminprojecthero-stats{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.adminbody .adminprojecthero-stats span{padding:6px 9px;border:1px solid #303944;border-radius:8px;background:#0b1016;color:#d6dde5;font-size:11px;font-weight:800}.adminbody .adminprojecthero-actions{display:flex;gap:8px;align-items:center}
.adminbody .partshub>.sectionhead{align-items:flex-start}.adminbody .partshub>.sectionhead .eyebrow{color:#818b96}.adminbody .adminpartgrid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}.adminbody .adminpartcard{display:flex!important;flex-direction:column!important;min-width:0!important;border-radius:15px!important;overflow:hidden!important}.adminbody .adminpartcard>.partpreview{width:100%!important;margin:0!important;aspect-ratio:16/9!important;max-height:none!important}.adminbody .partpreviewbtn,.adminbody .partpreviewbtn video{width:100%;height:100%;object-fit:cover}.adminbody .partcardcontent{padding:13px!important;display:flex!important;flex-direction:column!important;gap:9px!important}.adminbody .partcardtop h3{font-size:17px!important}.adminbody .partfilemeta{display:none!important}.adminbody .partchips{min-height:44px}.adminbody .partcorrectionform{grid-template-columns:1fr 70px 70px auto!important}.adminbody .partactions{margin-top:auto}.adminbody .partsettings:not([open]){border-radius:10px}.adminbody .addpartsbox>summary{min-height:46px;border:1px dashed #46515d;border-radius:12px;background:#0b0f14;display:flex;align-items:center;padding:0 14px;font-weight:800;cursor:pointer}.adminbody .reviewerrow{padding:9px 10px!important}.adminbody .reviewernamefield input{max-width:180px}
@media(max-width:1150px){.adminbody .adminpartgrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.adminbody .adminprojecthero{grid-template-columns:180px minmax(0,1fr)}.adminbody .adminprojecthero-actions{grid-column:2}}
@media(max-width:720px){.adminbody .adminpartgrid{grid-template-columns:1fr!important}.adminbody .adminprojecthero{grid-template-columns:1fr}.adminbody .adminprojecthero-media{height:auto;aspect-ratio:16/9}.adminbody .adminprojecthero-actions{grid-column:1}.adminbody .partcorrectionform{grid-template-columns:1fr!important}}


/* v0.15.70 — backend readability / contrast / open-editor workspace
   Backend only. Review frontend intentionally untouched. */
.adminbody{
  --admin-bg:#070b10;
  --admin-panel:#111821;
  --admin-panel-2:#0d131b;
  --admin-border:#36414e;
  --admin-border-soft:#29333f;
  --admin-text:#f2f5f8;
  --admin-muted:#a6b0bc;
  --admin-dim:#7f8b99;
  background:var(--admin-bg)!important;
  color:var(--admin-text)!important;
  font-size:15px!important;
  line-height:1.45!important;
}
.adminbody:not(.adminloginview) .adminshell{padding:0 32px 44px!important}

/* Navigation: larger and easier to scan. */
.adminbody .adminrail{background:#070b11!important;border-right-color:#303846!important}
.adminbody .adminrailbrand{height:72px!important;border-bottom-color:#303846!important}
.adminbody .adminrailitem,.adminbody .adminrailsettings{
  min-height:46px!important;padding:10px 12px!important;font-size:14px!important;font-weight:760!important;
  color:#b7c0cb!important;border-radius:9px!important
}
.adminbody .adminrailitem:hover,.adminbody .adminrailsettings:hover{background:#171e29!important;color:#fff!important;border-color:#364252!important}
.adminbody .adminrailitem.active{background:#1a2230!important;border-color:#3a4656!important;color:#fff!important}
.adminbody .railglyph{font-size:14px!important;color:#a5afbc!important}
.adminbody .adminrailproject{padding:14px 12px!important;background:#0d131c!important;border-color:#303846!important}
.adminbody .adminrailproject small{font-size:9px!important;color:#8d98a6!important}
.adminbody .adminrailproject strong{font-size:14px!important;color:#fff!important}
.adminbody .adminrailproject span{font-size:11px!important;color:#9aa5b2!important}

/* Top bar / breadcrumbs. */
.adminbody .admintopbar{height:72px!important;background:rgba(7,11,16,.96)!important;border-bottom-color:#303846!important}
.adminbody .admincrumbs{font-size:13px!important;color:#8d98a6!important}
.adminbody .admincrumbs a{color:#b7c0cb!important}.adminbody .admincrumbs strong{color:#fff!important;font-size:13px!important}
.adminbody .adminversion{font-size:10px!important;color:#9ba6b3!important;border-color:#394452!important;padding:5px 8px!important}
.adminbody .admintopactions .linkbtn{font-size:12px!important;color:#aeb7c2!important}

/* Global backend typography and controls. */
.adminbody .eyebrow{font-size:10px!important;letter-spacing:.11em!important;font-weight:900!important;color:#9ca7b4!important}
.adminbody .muted{color:var(--admin-muted)!important}
.adminbody .sectionhead h2{font-size:24px!important;line-height:1.18!important;color:#fff!important;letter-spacing:-.015em!important}
.adminbody .sectionhead p{font-size:13px!important;line-height:1.5!important;color:#a7b1bd!important;max-width:920px!important}
.adminbody label{font-size:12px!important;color:#c4ccd5!important;font-weight:760!important}
.adminbody input,.adminbody select,.adminbody textarea{
  min-height:42px!important;font-size:14px!important;color:#f5f7f9!important;background:#0b1119!important;
  border-color:#3a4655!important;border-radius:8px!important
}
.adminbody input::placeholder,.adminbody textarea::placeholder{color:#74808e!important}
.adminbody input:focus,.adminbody select:focus,.adminbody textarea:focus{border-color:#6c7b8d!important;box-shadow:0 0 0 3px rgba(108,123,141,.16)!important;outline:none!important}
.adminbody button,.adminbody .pill,.adminbody .ghostbtn,.adminbody .dangerbtn{font-size:13px!important;font-weight:800!important;min-height:40px!important}
.adminbody .ghostbtn{background:#161e28!important;border-color:#3a4655!important;color:#e0e5eb!important}
.adminbody .ghostbtn:hover{background:#202a36!important;border-color:#556476!important;color:#fff!important}
.adminbody .pill{box-shadow:none!important}

/* Overview cards: stop using micro typography. */
.adminbody .adminoverviewhead h1{font-size:31px!important;color:#fff!important}
.adminbody .adminoverviewhead .muted{font-size:13px!important}
.adminbody .adminoverviewhead .eyebrow{font-size:10px!important}
.adminbody .v015projectcards{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))!important;gap:18px!important}
.adminbody .v015projectcards .projectcard{background:#121923!important;border-color:#35404d!important}
.adminbody .v015projectcards .projectcard:hover{background:#17202b!important;border-color:#536172!important}
.adminbody .v015projectcards .projecttitle h3{font-size:17px!important;color:#fff!important}
.adminbody .v015projectcards .projecttitle small{font-size:11px!important;color:#a3adba!important}
.adminbody .v015projectcards .commentstat{font-size:10px!important;padding:5px 8px!important}
.adminbody .v015projectcards .projectpartpreview span{font-size:9.5px!important;padding:5px 7px!important}
.adminbody .v015projectcards .projectpartpreview small{font-size:9px!important}
.adminbody .v015projectcards .projectmeta span{font-size:9.5px!important;padding:5px 7px!important;color:#a1acb9!important}
.adminbody .v015projectcards .projectactions .pill,.adminbody .v015projectcards .ghostlink{font-size:11px!important}

/* Project hero: more contrast without getting taller. */
.adminbody .adminprojecthero{
  border-color:#3a4654!important;background:linear-gradient(145deg,#151d27,#0d131b)!important;
  box-shadow:0 14px 38px rgba(0,0,0,.28)!important
}
.adminbody .adminprojecthero-media{border-color:#394451!important}
.adminbody .adminprojecthero-copy h2{font-size:32px!important;color:#fff!important;line-height:1.12!important}
.adminbody .adminprojecthero-copy p{font-size:13px!important;color:#b1bac5!important}
.adminbody .adminprojecthero-stats span{font-size:11px!important;color:#e5e9ee!important;background:#111923!important;border-color:#3b4653!important}

/* Main workflow sections: visually separated, stronger borders, more breathing room. */
.adminprojectview .partshub,.adminprojectview #participants,.adminprojectview .projectidentitypanel,.adminprojectview .projectaccesspanel,.adminprojectview .projectcomments,.adminprojectview .projectdanger{
  background:var(--admin-panel)!important;border-color:var(--admin-border)!important;border-radius:13px!important
}
.adminprojectview .partshub{padding:20px!important;margin-bottom:22px!important}
.adminprojectview .partshub>.sectionhead{padding-bottom:16px!important;margin-bottom:16px!important;border-bottom:1px solid #35404d!important}
.adminprojectview .partshub>.sectionhead .eyebrow{color:#ff7a7f!important}
.adminbody .parttotalbadge{font-size:11px!important;background:#18212c!important;border-color:#3a4654!important;color:#dce2e8!important}
.adminbody .addpartsbox>summary{
  min-height:50px!important;margin-bottom:16px!important;padding:0 16px!important;font-size:14px!important;
  color:#eef2f6!important;background:#0d141d!important;border-color:#4a5665!important
}
.adminbody .addpartsbox>summary:hover{background:#131d29!important;border-color:#647386!important}
.adminbody .addpartsform{padding:18px!important;border:1px solid #384553!important;border-radius:11px!important;background:#0b1118!important}

/* Media overview: larger cards, no tiny 3-column layout. */
.adminbody .adminpartgrid{
  grid-template-columns:repeat(auto-fit,minmax(390px,540px))!important;
  justify-content:start!important;gap:18px!important;align-items:start!important
}
.adminbody .adminpartcard{
  border-color:#3c4856!important;background:#131a24!important;border-radius:13px!important;
  box-shadow:0 10px 28px rgba(0,0,0,.22)!important
}
.adminbody .adminpartcard:hover{border-color:#59687a!important}
.adminbody .adminpartcard>.partpreview{border-bottom-color:#384452!important}
.adminbody .partcardcontent{padding:16px!important;gap:12px!important}
.adminbody .partindex{font-size:9px!important;color:#9ca8b6!important;letter-spacing:.11em!important}
.adminbody .partcardtop h3{font-size:19px!important;line-height:1.22!important;color:#fff!important;margin-top:3px!important}
.adminbody .partcardtop small{font-size:11px!important;color:#aeb8c4!important}
.adminbody .partcomments{font-size:10px!important;padding:5px 8px!important;color:#d2d9e1!important;background:#19222d!important;border-color:#3b4755!important}
.adminbody .partchips{min-height:0!important;gap:6px!important}
.adminbody .partchips span{font-size:10px!important;line-height:1.25!important;padding:6px 8px!important;background:#0e151e!important;border-color:#364250!important;color:#b9c3ce!important}
.adminbody .partcorrectionform{
  grid-template-columns:minmax(130px,1fr) 92px 92px auto!important;gap:9px!important;
  padding:11px!important;background:#0c121a!important;border:1px solid #313d4a!important;border-radius:9px!important
}
.adminbody .partcorrectiontitle span{font-size:9px!important;color:#9ea9b6!important}.adminbody .partcorrectiontitle small{font-size:9px!important;color:#788594!important}
.adminbody .partcorrectionform label{font-size:10px!important}.adminbody .partcorrectionform input{min-height:38px!important}
.adminbody .partactions{gap:9px!important;align-items:stretch!important}
.adminbody .partactions>.pill,.adminbody .partsettings>summary{min-height:42px!important;font-size:12px!important}
.adminbody .partsettings>summary{display:flex!important;align-items:center!important;padding:0 13px!important;color:#e7ebef!important;background:#161f2a!important;border:1px solid #3d4a59!important;border-radius:8px!important;cursor:pointer!important}
.adminbody .partsettings>summary:hover{background:#202b38!important;border-color:#5b6b7d!important}

/* The screenshot problem: an opened editor becomes a full-width workspace. */
.adminbody .adminpartcard:has(.partsettings[open]){
  grid-column:1/-1!important;width:100%!important;max-width:none!important;background:#111923!important;border-color:#566576!important
}
.adminbody .adminpartcard:has(.partsettings[open])>.partpreview{
  width:min(620px,100%)!important;aspect-ratio:16/9!important;max-height:300px!important;border-right:1px solid #394553!important
}
.adminbody .adminpartcard:has(.partsettings[open]) .partcardcontent{width:100%!important}
.adminbody .partsettings[open]{
  margin-top:4px!important;border:1px solid #435163!important;border-radius:11px!important;background:#0a1017!important;overflow:visible!important
}
.adminbody .partsettings[open]>summary{
  min-height:48px!important;border:0!important;border-bottom:1px solid #3b4755!important;border-radius:10px 10px 0 0!important;
  background:#182330!important;color:#fff!important;font-size:14px!important;padding:0 16px!important
}
.adminbody .partsettings[open]>.parteditform{
  display:grid!important;grid-template-columns:repeat(4,minmax(150px,1fr))!important;gap:13px!important;
  margin:0!important;padding:18px!important;background:#0d141d!important;border:0!important;border-bottom:1px solid #354150!important;border-radius:0!important
}
.adminbody .partsettings[open]>.parteditform label{font-size:12px!important;color:#d0d7df!important}
.adminbody .partsettings[open]>.parteditform input,.adminbody .partsettings[open]>.parteditform select{min-height:44px!important;font-size:14px!important}
.adminbody .partsettings[open]>.parteditform .wide{grid-column:1/-1!important}
.adminbody .partsettings[open]>.parteditform>button{justify-self:start!important;min-width:180px!important;min-height:44px!important}
.adminbody .partscope{padding:15px!important;border:1px solid #394655!important;border-radius:9px!important;background:#0a1017!important}
.adminbody .partscope>span{font-size:14px!important;color:#fff!important;font-weight:850!important}
.adminbody .partscopechoices{gap:8px!important;margin-top:9px!important}
.adminbody .partscopechoices label{min-height:44px!important;padding:9px 11px!important;background:#141d28!important;border-color:#3d4a59!important;color:#d8dee5!important}
.adminbody .partscopechoices label span{font-size:11px!important}

/* Replacement is a clearly separated full-width block. */
.adminbody .partsettings[open]>.replacePartForm{
  position:relative!important;display:grid!important;grid-template-columns:minmax(280px,1.7fr) minmax(130px,.55fr) minmax(130px,.45fr) auto!important;
  gap:12px!important;align-items:end!important;margin:16px!important;padding:18px!important;
  border:1px solid #526174!important;border-radius:10px!important;background:#111a24!important
}
.adminbody .partsettings[open]>.replacePartForm:before{
  content:'Mediendatei austauschen';grid-column:1/-1;display:block;margin-bottom:1px;color:#fff;font-size:15px;font-weight:850
}
.adminbody .replacefilepick>span{min-height:44px!important;background:#0b121a!important;border-color:#617084!important;color:#e2e7ec!important;font-size:13px!important}
.adminbody .replaceMediaButton{min-width:130px!important;min-height:44px!important;padding:0 18px!important;white-space:nowrap!important}

/* Reviewer assignment inside media editor. */
.adminbody .partsettings[open]>.partreviewersform{margin:16px!important;padding:16px!important;border:1px solid #374453!important;border-radius:10px!important;background:#0c131c!important}
.adminbody .partreviewershead strong{font-size:14px!important;color:#fff!important}.adminbody .partreviewershead small{font-size:11px!important;color:#a3aeba!important}
.adminbody .partreviewerchoices label{font-size:12px!important;background:#141c27!important;border-color:#394655!important}
.adminbody .partsettings[open]>p.muted{margin:16px!important;font-size:12px!important;line-height:1.55!important;color:#9da8b5!important}
.adminbody .partsettings[open]>.partdeleteactions{margin:16px!important;padding-top:16px!important;border-top:1px solid #34404d!important}

/* Users: larger and higher contrast. */
.adminprojectview #participants{padding:20px!important;background:linear-gradient(180deg,rgba(47,128,237,.10),#111821 150px)!important;border-color:#37516e!important}
.adminprojectview #participants>.sectionhead{padding-bottom:16px!important;border-bottom-color:#38516d!important}
.adminprojectview #participants>.sectionhead h2{font-size:24px!important}.adminprojectview #participants>.sectionhead p{font-size:13px!important;color:#aab4c0!important}
.adminprojectview .masterlink{padding:14px!important;background:#0b1521!important;border-color:#3f5e82!important}.adminprojectview .masterlink>span{font-size:10px!important;color:#9cc5ff!important}
.adminprojectview .reviewerlist{gap:11px!important}
.adminprojectview .reviewerrow{padding:13px!important;background:#141c27!important;border-color:#3a4655!important;gap:12px!important}
.adminprojectview .reviewerrow:hover{background:#182331!important;border-color:#52647a!important}
.adminprojectview .reviewernamefield{font-size:10px!important;color:#a5b0bd!important}.adminprojectview .reviewernamefield input{min-height:40px!important;font-size:14px!important;max-width:none!important}
.adminprojectview .reviewerlink input{font-size:12px!important;color:#b3becb!important;background:#0a1119!important;border-color:#394655!important}
.adminprojectview .revieweractivity small{font-size:10px!important;color:#9ca7b4!important}
.adminprojectview .activitypill{font-size:10px!important;padding:5px 8px!important}
.adminprojectview .addreviewer{padding:15px!important;border-color:#47709e!important;background:rgba(47,128,237,.08)!important}

/* Secondary sections stay readable instead of fading into the background. */
.adminprojectview .projectidentitytitle strong{font-size:15px!important;color:#fff!important}.adminprojectview .projectidentitytitle small{font-size:11px!important;color:#9faab7!important}
.adminprojectview .projectcomments{opacity:1!important}

@media(max-width:1250px){
  .adminbody .adminpartgrid{grid-template-columns:repeat(2,minmax(360px,1fr))!important}
  .adminbody .partsettings[open]>.parteditform{grid-template-columns:repeat(2,minmax(180px,1fr))!important}
}
@media(max-width:900px){
  .adminbody:not(.adminloginview) .adminshell{padding-left:22px!important;padding-right:22px!important}
  .adminbody .adminpartgrid{grid-template-columns:1fr!important}
  .adminbody .adminpartcard:has(.partsettings[open])>.partpreview{width:100%!important;max-height:none!important;border-right:0!important}
  .adminbody .partsettings[open]>.replacePartForm{grid-template-columns:1fr 1fr!important}
  .adminbody .replacefilepick,.adminbody .replaceMediaButton{grid-column:1/-1!important}
}
@media(max-width:680px){
  .adminbody{font-size:14px!important}
  .adminbody .partsettings[open]>.parteditform,.adminbody .partsettings[open]>.replacePartForm{grid-template-columns:1fr!important}
  .adminbody .partsettings[open]>.parteditform .wide,.adminbody .replacefilepick,.adminbody .replaceMediaButton{grid-column:1!important}
  .adminbody .sectionhead h2,.adminprojectview #participants>.sectionhead h2{font-size:21px!important}
}

/* v0.15.71 — Media actions: delete is always visible and the editor stays readable. */
.adminbody .partactions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:stretch!important}
.adminbody .partactions>.pill{display:inline-flex!important;align-items:center!important;justify-content:center!important}
.adminbody .partactions>.partsettings{flex:1 1 210px!important;min-width:210px!important}
.adminbody .quickpartdelete{margin:0!important;display:flex!important;flex:0 0 auto!important}
.adminbody .quickdeletebtn{
  min-height:42px!important;padding:0 15px!important;border:1px solid #81363b!important;border-radius:8px!important;
  background:#291317!important;color:#ffb8bd!important;font-size:12px!important;font-weight:850!important;cursor:pointer!important
}
.adminbody .quickdeletebtn:hover{background:#3a171d!important;border-color:#b84b53!important;color:#fff!important}
.adminbody .partdeleteactions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important}
.adminbody .partdeleteactions form{margin:0!important}
.adminbody .partdeleteactions .dangerbtn,.adminbody .partdeleteactions .dangerjump{min-height:42px!important;font-size:12px!important}
.adminbody .replacePartForm .replaceProgressBox,.adminbody .replacePartForm .replaceMediaMessage{grid-column:1/-1!important;margin-top:2px!important}
.adminbody .replacePartForm .progressbox{padding:15px!important}
@media(max-width:760px){
  .adminbody .partactions>.partsettings{flex-basis:100%!important;min-width:0!important}
  .adminbody .quickpartdelete{flex:1 1 auto!important}.adminbody .quickdeletebtn{width:100%!important}
}

/* v0.16.0 — guest review links, unmistakable comment dots and roomier desktop UI. */
.review-join-page{min-height:100vh;background:radial-gradient(ellipse 110% 75% at 50% 0%,#19232f 0%,#0a0e14 60%,#07090c 100%);color:#f5f7fa}
.review-join-layout{width:min(100% - 32px,530px);min-height:100vh;display:flex;flex-direction:column;justify-content:center;gap:22px;margin:0 auto;padding:38px 0}
.review-join-brand{display:flex;align-items:center;justify-content:center;gap:16px}
.review-join-brand .brandrow{margin-bottom:0}
.review-join-card{padding:32px;border:1px solid #3d4a5c;border-radius:18px;background:linear-gradient(165deg,#17212d,#0d131b);box-shadow:0 24px 70px #0006}
.review-join-card .eyebrow{color:#a9bfda;font-size:12px!important;letter-spacing:.12em;font-weight:800}
.review-join-card h1{font-size:clamp(26px,4vw,36px)!important;line-height:1.12;margin:10px 0 12px;letter-spacing:-.02em;overflow-wrap:anywhere}
.review-join-card p{font-size:15px!important;line-height:1.6!important;color:#c4d0dc!important;margin:12px 0 18px}
.review-join-card .review-join-client{font-size:14px!important;color:#a9bbcb!important;margin:-4px 0 18px}
.review-join-form{display:grid;gap:16px;margin:25px 0 0}
.review-join-form label{display:grid;gap:8px;font-size:14px!important;color:#eef3f9!important;font-weight:700}
.review-join-form input{width:100%;min-height:52px;font-size:17px!important;border:1px solid #67798e;border-radius:10px;background:#0a1018;color:white;padding:12px 14px}
.review-join-form input:focus{border-color:var(--brand-accent,#e31b23)!important;outline:2px solid color-mix(in srgb,var(--brand-accent,#e31b23) 26%,transparent)}
.review-join-form button{display:flex;justify-content:space-between;align-items:center;min-height:53px;padding:0 20px;font-size:16px!important;font-weight:800;border-radius:10px}
.review-join-card .review-join-hint{font-size:12px!important;margin:15px 0 0!important;color:#9fadb9!important}
.review-join-foot{font-size:12px!important;text-align:center;color:#93a3b5;line-height:1.5}
.review-switch-form{margin:0;display:flex;align-items:center;flex:0 0 auto}
.review-switch-btn{border:1px solid #4b5969!important;background:#161d25!important;color:#cdd7e1!important;border-radius:8px!important;font-size:11px!important;font-weight:700!important;padding:9px 10px!important;min-height:35px!important;white-space:nowrap;cursor:pointer}
.review-switch-btn:hover,.review-switch-btn:focus-visible{border-color:#94a6bc!important;color:#fff!important}
.adminprojectview .guest-access-settings{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0;padding:16px;background:#13202c;border:1px solid #4b6686;border-radius:12px}
.adminprojectview .guest-access-heading{display:flex;align-items:center;gap:12px;flex:1 1 100%;min-width:0}
.adminprojectview .guest-access-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#213c55;color:#a6d2ff;font-size:23px}
.adminprojectview .guest-access-heading strong{display:block;color:#f2f7ff!important;font-size:16px!important;line-height:1.3}
.adminprojectview .guest-access-heading small{display:block;color:#b2c0d0!important;font-size:12px!important;line-height:1.5;max-width:780px;margin-top:3px}
.adminprojectview .guest-access-switch{display:flex;flex:1 1 260px;align-items:center;gap:9px;font-size:14px!important;font-weight:700;color:#fff!important;margin:0}
.adminprojectview .guest-access-switch input{width:20px;height:20px;accent-color:var(--brand-accent,#e31b23);cursor:pointer}
.adminprojectview .guest-access-settings button{min-height:41px!important}
.adminprojectview .guest-access-help{display:block;flex:1 1 100%;font-size:11px!important;line-height:1.5;color:#b4c1ce!important}
.adminprojectview .optional-reviewer-label{margin:19px 0 9px;padding-top:13px;border-top:1px solid #38495d;font-size:13px;color:#c4ceda;font-weight:700}
/* Circular annotation markers: larger hit area, visible status and color. */
.reviewshell .reviewtimeline{height:38px!important;min-height:38px!important}
.reviewshell .reviewtimeline .timelinebase{top:17px!important;height:5px!important;background:#384350!important}
.reviewshell .reviewtimeline .timelineplayhead{top:1px!important;bottom:1px!important;width:3px!important;background:#f6faff!important;z-index:2}
.reviewshell .reviewtimeline .timeline-marker{top:3px!important;width:32px!important;min-width:32px!important;height:32px!important;display:flex!important;align-items:center;justify-content:center;cursor:pointer;z-index:3}
.reviewshell .reviewtimeline .timeline-marker span{width:16px!important;height:16px!important;margin:0!important;border:3px solid #11171e!important;border-radius:50%!important;background:var(--user-color,var(--brand-accent,#e31b23))!important;box-shadow:0 0 0 2px var(--user-color,var(--brand-accent,#e31b23)),0 2px 9px #000a!important;transition:transform .12s ease}
.reviewshell .reviewtimeline .timeline-marker.done span{background:#778696!important;box-shadow:0 0 0 2px #778696!important;opacity:.62!important}
.reviewshell .reviewtimeline .timeline-marker:hover span,.reviewshell .reviewtimeline .timeline-marker:focus-visible span{transform:scale(1.32);box-shadow:0 0 0 3px #fff,0 2px 12px #0009!important}
.reviewshell .timelinelabel span,.reviewshell .timelinelabel small{font-size:11px!important;letter-spacing:.03em!important;color:#bdc7d3!important}
@media(min-width:1101px){
  .shell.reviewshell{width:100%!important;max-width:none!important;padding-left:clamp(12px,1.2vw,26px)!important;padding-right:clamp(12px,1.2vw,26px)!important}
  .multipartshell .reviewgrid,.reviewgrid{grid-template-columns:minmax(0,1fr) clamp(355px,25vw,440px)!important;gap:clamp(14px,1.3vw,24px)!important}
  .reviewgrid>div:first-child{--review-player-width:min(100%,calc((100vh - 185px) * 16 / 9))!important}
}
@media(max-width:720px){
  .review-join-card{padding:22px 18px}
  .review-join-layout{padding:26px 0}
  .review-switch-form{width:100%}
  .review-switch-btn{width:100%}
}

.review-personal-copy{border:1px solid #566a7d!important;background:#1d2935!important;color:#e5eef8!important;border-radius:8px!important;font-size:11px!important;font-weight:750!important;padding:9px 12px!important;min-height:35px!important;white-space:nowrap;cursor:pointer}
.review-personal-copy:hover,.review-personal-copy:focus-visible{border-color:#a1b9d6!important;background:#26394b!important}
.reviewshell .reviewtimeline .timeline-marker.clustered span{width:23px!important;height:23px!important;background:var(--brand-accent,#e31b23)!important;color:white!important;font-size:11px!important;font-weight:850!important;line-height:1!important;display:grid!important;place-items:center!important}
.reviewshell .reviewtimeline .timeline-marker.clustered.done span{background:#778696!important}
@media(max-width:720px){.review-personal-copy{width:100%}}

@media(min-width:1101px){
 .reviewshell .reviewside>.comments{max-height:calc(100vh - 80px)!important;overflow-y:auto}
 .reviewshell .reviewside .comment{font-size:14px!important;line-height:1.45!important}
}

.adminprojectview .manual-reviewer-add{margin-top:16px;border:1px solid #33465a;border-radius:10px;overflow:hidden}
.adminprojectview .manual-reviewer-add>summary{cursor:pointer;font-size:13px!important;font-weight:750!important;padding:14px 16px;color:#bcd0e5!important;background:#121d29}
.adminprojectview .manual-reviewer-add>summary:hover{background:#1b2b3d;color:#fff!important}
.adminprojectview .manual-reviewer-add>.addreviewer{margin:0!important;border-radius:0!important}


/* v0.16.1 — balanced project heading and viewport-aware review workspace.
   Keep these corrections at the end to supersede legacy v0.14 / v0.15 breakpoints. */
.reviewshell .reviewhero-title{min-width:0!important;overflow:hidden}
.reviewshell .reviewhero-title h1{
  font-size:clamp(17px,1.15vw,20px)!important;
  font-weight:760!important;
  line-height:1.23!important;
  letter-spacing:-.018em!important;
  text-overflow:ellipsis!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  max-width:100%!important;
}
.reviewshell .reviewhero-title .eyebrow{
  font-size:9px!important;
  letter-spacing:.09em!important;
  line-height:1.35!important;
  margin-bottom:3px!important;
  color:#b3c0cf!important;
}
.reviewshell .reviewcontextitem small{font-size:8px!important;letter-spacing:.035em!important;color:#adb9c8!important}
.reviewshell .reviewcontextitem strong{font-size:12px!important}
.reviewshell .roundcontext strong{font-size:13px!important}
.reviewshell .media-card-label{font-size:8px!important;color:#b4bfce!important;letter-spacing:.07em!important}
.reviewshell .staticmedia-text strong{font-size:11px!important}
.reviewshell .projectmediaswitch.reviewmedia-card select{font-size:11px!important}
.reviewshell .hero-identity small{font-size:8px!important;letter-spacing:.03em!important;color:#bac6d5!important}
.reviewshell .hero-identity strong{font-size:11px!important}
.reviewshell .reviewherohead{min-width:0!important}
.reviewshell .reviewhero-actions{min-width:0!important;max-width:100%;gap:7px!important}
.reviewshell .herohelp>summary,.reviewshell .hero-pdf,.reviewshell .hero-reviewcomplete{
  font-size:11px!important;
}
/* A wide browser shouldn't pack seven unlike controls into five narrow columns. */
@media(min-width:1101px) and (max-width:1749px){
 .reviewshell .reviewherohead{
   grid-template-columns:minmax(85px,max-content) minmax(205px,1fr) minmax(205px,max-content) minmax(225px,340px)!important;
   grid-template-areas:'brand title context media' 'actions actions actions actions'!important;
   align-items:center!important;
   gap:6px 14px!important;
   min-height:0!important;
   padding:8px 12px!important;
 }
 .reviewshell .reviewhero-brand{grid-area:brand!important;align-self:center!important}
 .reviewshell .reviewhero-title{grid-area:title!important}
 .reviewshell .reviewcontextcard{grid-area:context!important;justify-self:end!important}
 .reviewshell .reviewmedia-card{grid-area:media!important;width:100%!important;justify-self:stretch!important}
 .reviewshell .reviewhero-actions{
   grid-area:actions!important;justify-self:end!important;
   justify-content:flex-end!important;flex-wrap:wrap!important;
   width:auto!important;gap:7px!important;
 }
 .reviewshell .reviewhero-actions>*{flex-shrink:0}
}
@media(min-width:1750px){
 .reviewshell .reviewherohead{
   grid-template-columns:minmax(90px,max-content) minmax(200px,1fr) minmax(210px,max-content) minmax(215px,300px) minmax(0,max-content)!important;
   grid-template-areas:'brand title context media actions'!important;
   gap:12px!important;
 }
 .reviewshell .reviewhero-brand{grid-area:brand!important}
 .reviewshell .reviewhero-title{grid-area:title!important}
 .reviewshell .reviewcontextcard{grid-area:context!important}
 .reviewshell .reviewmedia-card{grid-area:media!important}
 .reviewshell .reviewhero-actions{grid-area:actions!important;flex-wrap:wrap!important}
}
/* Reserve room for playback, timecode, drawing buttons and feedback markers. */
@media(min-width:1101px){
 .reviewshell .reviewgrid>div:first-child{
   --review-player-width:min(100%,max(320px,calc((100dvh - 355px) * 16 / 9)))!important;
   display:flex;
   flex-direction:column;
 }
 .reviewshell .reviewgrid>div:first-child>.videoWrap{order:0}
 .reviewshell .reviewgrid>div:first-child>.playerbar{order:1}
 .reviewshell .reviewgrid>div:first-child>.transport{order:2}
 .reviewshell .reviewgrid>div:first-child>.annotationtools{order:3}
 .reviewshell .reviewgrid>div:first-child>.reviewtimeline{order:4}
 .reviewshell .reviewgrid>div:first-child>.timelinelabel{order:5}
 .reviewshell .reviewgrid>div:first-child>.annotationtools:not(.hidden){
   margin-top:3px!important;margin-bottom:3px!important;
   padding:7px 9px!important;
   gap:6px!important;
 }
 .reviewshell .annotationtools .toolbtn{min-height:34px!important;padding:6px 10px!important;font-size:12px!important}
 .reviewshell .annotationtools .tooltitle{font-size:10px!important}
}
@media(min-width:1101px) and (max-height:680px){
 .reviewshell .reviewgrid>div:first-child{
   --review-player-width:min(100%,max(280px,calc((100dvh - 320px) * 16 / 9)))!important;
 }
}
/* Tablet and narrow browser: wrap controls instead of clipping them. */
@media(max-width:1100px){
 .reviewshell .reviewherohead{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:'brand' 'title' 'context' 'media' 'actions'!important;gap:8px!important}
 .reviewshell .reviewhero-brand,.reviewshell .reviewhero-title,.reviewshell .reviewcontextcard,.reviewshell .reviewmedia-card,.reviewshell .reviewhero-actions{grid-area:auto!important;width:100%!important;justify-self:stretch!important}
 .reviewshell .reviewhero-actions{display:flex!important;justify-content:flex-start!important;flex-wrap:wrap!important;max-width:100%!important}
 .reviewshell .reviewcontextcard{justify-self:stretch!important}
 .reviewshell .reviewmedia-card{min-width:0!important}
 .reviewshell .reviewhero-title h1{font-size:19px!important}
}

/* Landscape tablets / smaller browser windows: retain the same two-row hierarchy. */
@media(min-width:901px) and (max-width:1100px){
 .reviewshell .reviewherohead{
  grid-template-columns:minmax(80px,max-content) minmax(160px,1fr) minmax(205px,max-content) minmax(200px,1fr)!important;
  grid-template-areas:'brand title context media' 'actions actions actions actions'!important;
  align-items:center!important;
  gap:7px 11px!important;
  padding:8px 12px!important;
 }
 .reviewshell .reviewhero-brand{grid-area:brand!important;width:auto!important}
 .reviewshell .reviewhero-title{grid-area:title!important;width:auto!important}
 .reviewshell .reviewcontextcard{grid-area:context!important;width:auto!important}
 .reviewshell .reviewmedia-card{grid-area:media!important;width:100%!important}
 .reviewshell .reviewhero-actions{grid-area:actions!important;justify-self:end!important;justify-content:flex-end!important;width:auto!important}
 .reviewshell .reviewgrid>div:first-child{
  --review-player-width:min(100%,max(300px,calc((100dvh - 350px) * 16 / 9)))!important;
  display:flex;flex-direction:column;
 }
 .reviewshell .reviewgrid>div:first-child>.videoWrap:not(.audioWrap),
 .reviewshell .reviewgrid>div:first-child>.playerbar,
 .reviewshell .reviewgrid>div:first-child>.transport,
 .reviewshell .reviewgrid>div:first-child>.reviewtimeline,
 .reviewshell .reviewgrid>div:first-child>.timelinelabel,
 .reviewshell .reviewgrid>div:first-child>.annotationtools{width:var(--review-player-width)!important;margin-left:auto!important;margin-right:auto!important}
 .reviewshell .reviewgrid>div:first-child>.videoWrap{order:0}
 .reviewshell .reviewgrid>div:first-child>.playerbar{order:1}
 .reviewshell .reviewgrid>div:first-child>.transport{order:2}
 .reviewshell .reviewgrid>div:first-child>.annotationtools{order:3}
 .reviewshell .reviewgrid>div:first-child>.reviewtimeline{order:4}
 .reviewshell .reviewgrid>div:first-child>.timelinelabel{order:5}
 .reviewshell .reviewgrid>div:first-child>.annotationtools:not(.hidden){margin-top:3px!important;margin-bottom:3px!important;padding:7px 9px!important}
}

/* v0.16.2 — in-place comment saving (no white flash, no reloading player). */
.comment-save-status{margin-top:-7px;font-size:12px;line-height:1.4;color:#b9e6c3;min-height:18px}
.comment-save-status[hidden]{display:none!important}
.comment-save-status.iserror{color:#ffb6b6}
.commentform .commentsave:disabled{opacity:.67;cursor:wait}


/* v0.16.3 — strong hover/focus marker highlighting and readable comment cards. */
.reviewshell .reviewtimeline{overflow:visible!important;isolation:isolate}
.reviewshell .reviewtimeline .timeline-marker:hover,
.reviewshell .reviewtimeline .timeline-marker:focus-visible,
.reviewshell .reviewtimeline .timeline-marker.is-previewed{z-index:15!important}
.reviewshell .reviewtimeline .timeline-marker:is(:hover,:focus-visible,.is-previewed) span{
 transform:scale(1.34)!important;
 box-shadow:0 0 0 3px #fff,0 0 0 7px rgba(227,27,35,.5),0 5px 16px #000!important;
}
.reviewshell .reviewtimeline .timeline-marker.is-selected span{
 box-shadow:0 0 0 3px #fff,0 0 0 6px var(--user-color,#e31b23),0 0 15px #000!important;
}
.reviewshell .reviewtimeline .timeline-marker:focus-visible{outline:2px solid white!important;outline-offset:2px}
.reviewshell .reviewtimeline .timeline-comment-preview{
 position:absolute;bottom:calc(100% + 12px);left:50%;width:min(350px,calc(100vw - 28px));
 max-width:none;box-sizing:border-box;z-index:60;
 background:#182330;border:2px solid #73889e;border-radius:13px;
 padding:13px 15px;color:#f8fbff;text-align:left;
 box-shadow:0 14px 38px #000e,0 0 0 1px #0009;
 transform:translateX(-50%) translateY(5px);opacity:0;visibility:hidden;
 pointer-events:none;transition:opacity .10s ease,transform .10s ease,visibility .10s;
}
.reviewshell .reviewtimeline .timeline-comment-preview.is-visible{
 opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);
}
.timeline-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px;padding-bottom:9px;border-bottom:1px solid #405065}
.timeline-preview-title{font-size:14px;font-weight:850;letter-spacing:.01em;color:#fff}
.timeline-preview-status{white-space:nowrap;font-size:11px;font-weight:850;color:#ffb1b4;background:#52232c;border:1px solid #9b434b;border-radius:99px;padding:4px 9px}
.timeline-preview-status.is-done{color:#bae6cb;background:#17372a;border-color:#367b59}
.timeline-preview-entry+.timeline-preview-entry{border-top:1px solid #405065;margin-top:9px;padding-top:9px}
.timeline-preview-meta{font-size:12px;font-weight:800;letter-spacing:.015em;color:#ffc4c7;margin-bottom:5px;overflow-wrap:anywhere}
.timeline-preview-body{font-size:13px;font-weight:500;color:#f4f7fd;line-height:1.45;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
.timeline-preview-more{margin-top:9px;color:#c7d5e4;font-size:12px;font-weight:700}
@media(max-width:640px){
 .reviewshell .reviewtimeline .timeline-comment-preview{padding:11px 12px;width:min(300px,calc(100vw - 24px))}
 .timeline-preview-body{font-size:13px}
}
@media(prefers-reduced-motion:reduce){
 .reviewshell .reviewtimeline .timeline-comment-preview{transition:none!important}
}


/* v0.16.4 — slim, SINGLE-row desktop review navigation.
   Project/status/media/actions use one level; secondary access actions go into a popover. */
.reviewshell .reviewherohead{
  min-height:0!important;
  margin:0 0 8px!important;
  padding:6px 10px!important;
  border-radius:10px!important;
  gap:8px!important;
  position:relative;
  overflow:visible;
}
.reviewshell .reviewhero-brand{min-height:0!important;align-self:center!important;padding-right:9px!important;gap:6px!important}
.reviewshell .reviewhero-brand .fourklogo{width:34px!important;max-width:34px!important;height:auto!important}
.reviewshell .reviewhero-brand .reviewtag{font-size:8px!important;padding-left:7px!important;letter-spacing:.09em!important}
.reviewshell .reviewhero-brand .hero-client{display:none!important}
.reviewshell .reviewhero-title .eyebrow{font-size:8px!important;margin:0 0 2px!important;line-height:1.1!important}
.reviewshell .reviewhero-title h1{font-size:16px!important;line-height:1.2!important;max-width:100%!important}
.reviewshell .reviewcontextcard{min-height:36px!important;height:36px!important;align-items:center!important;border-radius:8px!important;min-width:0!important}
.reviewshell .reviewcontextitem{min-height:35px!important;min-width:0!important;padding:3px 7px!important;gap:5px!important;flex:0 1 auto!important}
.reviewshell .reviewcontextitem .contexticon{width:18px!important;height:18px!important;flex:0 0 18px!important;font-size:12px!important}
.reviewshell .reviewcontextitem small{display:none!important}
.reviewshell .reviewcontextitem strong{max-width:105px!important;font-size:10px!important;line-height:1.15!important;text-overflow:ellipsis!important}
.reviewshell .reviewcontextitem.roundcontext strong{font-size:11px!important}
.reviewshell .projectmediaswitch.reviewmedia-card,.reviewshell .reviewmedia-card{
  height:38px!important;min-height:38px!important;max-height:38px!important;
  padding:3px 9px!important;gap:2px!important;border-radius:8px!important;min-width:0!important;
}
.reviewshell .reviewmedia-card .media-card-heading{height:8px!important}
.reviewshell .reviewmedia-card .media-card-label{font-size:7px!important;line-height:1!important}
.reviewshell .reviewmedia-card .media-card-count{font-size:7px!important}
.reviewshell .reviewmedia-card .media-select-row{min-height:20px!important}
.reviewshell .reviewmedia-card select{height:20px!important;font-size:11px!important;line-height:20px!important}
.reviewshell .reviewmedia-card .media-card-control{gap:6px!important}
.reviewshell .reviewmedia-card .media-card-play{height:23px!important;width:23px!important;flex-basis:23px!important}
.reviewshell .reviewmedia-card .staticmedia-text{gap:1px!important}
.reviewshell .reviewmedia-card .staticmedia-text strong{font-size:10px!important}
.reviewshell .reviewmedia-card .staticmedia-text small{font-size:7px!important}
.reviewshell .reviewhero-actions{display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:nowrap!important;min-width:0!important;width:auto!important;justify-self:end!important;justify-content:flex-end!important}
.reviewshell .reviewhero-actions>*{flex-shrink:0!important}
.reviewshell .herohelp>summary,.reviewshell .hero-pdf,.reviewshell .hero-reviewcomplete{height:34px!important;min-height:34px!important;font-size:10px!important;padding:0 9px!important;border-radius:8px!important}
.reviewshell .herohelp-icon{height:15px;width:15px;font-size:9px}
.reviewshell .hero-identity{min-width:92px!important;min-height:34px!important;height:34px!important;padding:3px 6px!important;gap:6px!important;border-radius:8px!important}
.reviewshell .hero-identity .avatar{width:25px!important;height:25px!important;flex:0 0 25px!important}
.reviewshell .hero-identity small{font-size:7px!important;margin-bottom:1px!important}
.reviewshell .hero-identity strong{font-size:10px!important;max-width:86px!important}
.reviewshell .reviewaccessmenu{position:relative;z-index:95}
.reviewshell .reviewaccessmenu>summary{display:grid;place-items:center;list-style:none;width:34px;height:34px;padding:0;border:1px solid #43566b;border-radius:8px;color:#e2edf8;background:#17212e;font-size:21px;font-weight:850;line-height:1;cursor:pointer}
.reviewshell .reviewaccessmenu>summary::-webkit-details-marker{display:none}
.reviewshell .reviewaccessmenu>summary:hover,.reviewshell .reviewaccessmenu[open]>summary{background:#26374a;border-color:#8195ac}
.reviewshell .reviewaccesspanel{position:absolute;right:0;top:calc(100% + 8px);width:220px;z-index:100;display:flex;flex-direction:column;gap:9px;padding:12px;border:1px solid #52667d;border-radius:11px;background:#172330;box-shadow:0 18px 36px #000c}
.reviewshell .reviewaccesspanel .accessmenu-title{font-size:11px;font-weight:800;color:#e6edf5;margin-bottom:2px}
.reviewshell .reviewaccesspanel .review-personal-copy,.reviewshell .reviewaccesspanel .review-switch-btn{display:block;width:100%!important;min-height:38px!important;padding:8px 10px!important;text-align:center;font-size:11px!important}
.reviewshell .reviewaccesspanel .review-switch-form{width:100%!important}
.reviewshell .reviewaccessmenu>summary:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media(min-width:1181px){
 .reviewshell .reviewherohead{
   grid-template-columns:max-content minmax(125px,1fr) minmax(190px,250px) minmax(145px,max-content) max-content!important;
   grid-template-areas:'brand title media context actions'!important;
   align-items:center!important;
 }
 .reviewshell .reviewhero-brand{grid-area:brand!important;width:auto!important}
 .reviewshell .reviewhero-title{grid-area:title!important;width:auto!important}
 .reviewshell .reviewmedia-card{grid-area:media!important;width:100%!important}
 .reviewshell .reviewcontextcard{grid-area:context!important;width:auto!important;justify-self:end!important}
 .reviewshell .reviewhero-actions{grid-area:actions!important;flex-wrap:nowrap!important}
}
@media(min-width:901px) and (max-width:1180px){
 .reviewshell .reviewherohead{
   grid-template-columns:max-content minmax(135px,1fr) minmax(180px,250px) max-content!important;
   grid-template-areas:'brand title media actions' 'context context context context'!important;
   gap:4px 9px!important;
 }
 .reviewshell .reviewhero-brand{grid-area:brand!important;width:auto!important}
 .reviewshell .reviewhero-title{grid-area:title!important;width:auto!important}
 .reviewshell .reviewmedia-card{grid-area:media!important;width:100%!important;min-width:0!important}
 .reviewshell .reviewcontextcard{grid-area:context!important;justify-self:start!important;width:auto!important;height:24px!important;min-height:24px!important;border:0!important;background:transparent!important}
 .reviewshell .reviewcontextitem{min-height:24px!important;height:24px!important}
 .reviewshell .reviewhero-actions{grid-area:actions!important;justify-self:end!important;width:auto!important}
}
@media(max-width:900px){
 .reviewshell .reviewherohead{grid-template-columns:max-content minmax(0,1fr)!important;grid-template-areas:'brand title' 'media media' 'context actions'!important;gap:7px!important;padding:8px!important}
 .reviewshell .reviewhero-brand{grid-area:brand!important;width:auto!important}
 .reviewshell .reviewhero-title{grid-area:title!important;width:auto!important}
 .reviewshell .reviewmedia-card{grid-area:media!important;width:100%!important;min-width:0!important}
 .reviewshell .reviewcontextcard{grid-area:context!important;justify-self:start!important;width:auto!important;min-height:34px!important}
 .reviewshell .reviewhero-actions{grid-area:actions!important;width:auto!important;justify-self:end!important;flex-wrap:wrap!important;justify-content:flex-end!important}
 .reviewshell .hero-identity{min-width:0!important}
 .reviewshell .herohelp-panel{top:calc(100% + 8px)}
}
@media(max-width:620px){
 .reviewshell .reviewherohead{grid-template-columns:1fr!important;grid-template-areas:'brand' 'title' 'media' 'actions' 'context'!important;gap:6px!important}
 .reviewshell .reviewhero-brand,.reviewshell .reviewhero-title{width:100%!important}
 .reviewshell .reviewhero-title h1{font-size:15px!important}
 .reviewshell .reviewhero-title .eyebrow{display:none!important}
 .reviewshell .reviewhero-actions{flex-wrap:wrap!important;justify-self:stretch!important;justify-content:flex-start!important;width:100%!important;gap:5px!important}
 .reviewshell .hero-identity{width:auto!important;min-width:0!important}
 .reviewshell .reviewcontextcard{width:100%!important;justify-self:stretch!important;height:29px!important;min-height:29px!important}
 .reviewshell .reviewcontextitem{min-height:28px!important}
 .reviewshell .herohelp>summary,.reviewshell .hero-pdf,.reviewshell .hero-reviewcomplete{min-height:34px!important}
}
@media(max-width:400px){.reviewshell .reviewhero-actions{gap:4px!important}.reviewshell .hero-reviewcomplete{min-width:0!important;padding:0 7px!important}.reviewshell .herohelp>summary,.reviewshell .hero-pdf{padding:0 7px!important}.reviewshell .hero-identity small{display:none!important}}

/* 621–900px: keep all actions together instead of forcing the reviewer controls to a third action line. */
@media(min-width:621px) and (max-width:900px){
 .reviewshell .reviewherohead{grid-template-areas:'brand title' 'media media' 'actions actions' 'context context'!important}
 .reviewshell .reviewhero-actions{justify-self:end!important;width:auto!important;flex-wrap:nowrap!important}
 .reviewshell .reviewcontextcard{height:25px!important;min-height:25px!important;border:0!important;background:transparent!important}
 .reviewshell .reviewcontextitem{height:25px!important;min-height:25px!important}
}

/* v0.16.5: Name only when participating; view remains immediately usable. */
.guest-name-overlay[hidden]{display:none!important}
.guest-name-overlay{position:fixed;z-index:3000;inset:0;display:grid;place-items:center;padding:18px;isolation:isolate}
.guest-name-backdrop{position:absolute;inset:0;background:rgba(2,5,10,.83);backdrop-filter:blur(6px)}
.guest-name-dialog{position:relative;width:min(100%,440px);background:#131921;border:1px solid #3e4958;box-shadow:0 25px 70px #000b;border-radius:17px;padding:27px;color:#f2f5f9}
.guest-name-dialog h2{font-size:24px;margin:9px 0 10px}.guest-name-dialog p{color:#b4becb;font-size:13px;line-height:1.55;margin:0 0 19px}
.guest-name-dialog label{font-size:12px;font-weight:700}.guest-name-dialog input{margin-top:7px;font-size:15px;min-height:48px}
.guest-name-dialog>small{display:block;color:#8d9bac;font-size:11px;margin-top:13px;line-height:1.5}
.guest-name-close{position:absolute;top:13px;right:13px;background:transparent;color:#c5d1de;border:0;padding:5px 12px;font-size:25px}
.guest-name-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.guest-name-actions button{font-size:12px}
.guest-name-feedback{font-size:12px;color:#ff9c9c;margin-top:9px}.guest-name-feedback[hidden]{display:none!important}
.guest-comment-note{color:#b6c0ce;font-size:11px;line-height:1.4}

/* v0.16.7: unaufdringliche Gastoption direkt in der bisherigen Benutzerwahl. */
.guest-join-choice{position:relative;align-self:center;flex:0 0 auto;min-width:175px;z-index:4}
.guest-join-trigger{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;border:1px solid var(--brand-accent,#66738a);border-radius:9px;padding:10px 13px;color:#fff;font-size:12px;font-weight:800;background:#16202a;white-space:nowrap}
.guest-join-trigger::-webkit-details-marker{display:none}
.guest-join-trigger span{display:grid;place-items:center;background:var(--brand-accent,#657992);border-radius:50%;width:20px;height:20px;color:#10141c;font-size:16px}
.guest-join-choice[open] .guest-join-trigger{border-color:var(--brand-accent,#657992);background:#243240}
.guest-join-form{position:absolute;top:calc(100% + 9px);right:0;width:min(340px,calc(100vw - 44px));display:grid;gap:10px;padding:17px;border:1px solid #586574;border-radius:12px;background:#131b25;box-shadow:0 20px 55px #000c;z-index:15}
.guest-join-form label{font-size:12px!important;color:#f4f6fb!important;font-weight:750}
.guest-join-form input{font-size:15px!important;min-height:44px}
.guest-join-form .guest-join-submit{color:#071018;background:var(--brand-accent,#86a1bf);font-size:12px!important;min-height:41px}
.guest-join-form small{color:#bdcad9!important;font-size:11px!important;line-height:1.45!important}
.guest-join-form .guest-join-error{color:#ff9999!important;font-weight:750}
@media (max-width:820px){.guest-join-choice{align-self:stretch;width:100%}.guest-join-form{left:0;right:auto;position:relative;top:8px;width:100%;margin-bottom:8px}}
