
.app:is(
  [data-screen="workbench-script-graph"],
  [data-screen="workbench-script-materials"],
  [data-screen="workbench-video"],
  [data-screen="exports-trash"],
  [data-screen="settings"]
) :focus-visible{
  outline:2px solid rgba(179,74,60,.4);
  outline-offset:2px;
}
.app:is(
  [data-screen="workbench-script-graph"],
  [data-screen="workbench-script-materials"],
  [data-screen="workbench-video"],
  [data-screen="exports-trash"],
  [data-screen="settings"]
) input{accent-color:#b34a3c}
.app:is(
  [data-screen="workbench-script-graph"],
  [data-screen="workbench-script-materials"],
  [data-screen="workbench-video"],
  [data-screen="exports-trash"],
  [data-screen="settings"]
) :is(.btn-dark,.btn-line,.fld,select,textarea){
  border-radius:0;
  box-shadow:none;
}
.app:is(
  [data-screen="workbench-script-graph"],
  [data-screen="workbench-script-materials"],
  [data-screen="workbench-video"],
  [data-screen="settings"]
) .btn-dark{
  border:1px solid #b34a3c!important;
  border-radius:0!important;
  background:#b34a3c!important;
  color:#fff!important;
  box-shadow:none!important;
  transform:none!important;
}
.app:is(
  [data-screen="workbench-script-graph"],
  [data-screen="workbench-script-materials"],
  [data-screen="workbench-video"],
  [data-screen="settings"]
) .btn-dark:hover{
  border-color:#9f3c31!important;
  background:#9f3c31!important;
}
.app:is(
  [data-screen="workbench-script-graph"],
  [data-screen="workbench-script-materials"],
  [data-screen="workbench-video"],
  [data-screen="settings"]
) .btn-dark:disabled{
  border-color:#d9d9d6!important;
  background:#d9d9d6!important;
  color:#777!important;
}

/* Graph + video share the approved editorial workbench masthead. */
.app:is([data-screen="workbench-script-graph"],[data-screen="workbench-script-materials"],[data-screen="workbench-video"]) .wb-top{
  min-height:72px;
  height:72px;
  padding:0 28px;
  border-bottom:1px solid #d9d9d6;
  background:#fff;
  box-shadow:none;
}
.app:is([data-screen="workbench-script-graph"],[data-screen="workbench-script-materials"],[data-screen="workbench-video"]) .wb-work{
  color:#151516;
  font:600 18px/1.2 var(--sc);
  letter-spacing:-.02em;
}
.app:is([data-screen="workbench-script-graph"],[data-screen="workbench-script-materials"],[data-screen="workbench-video"]) .back{color:#777}
.app:is([data-screen="workbench-script-graph"],[data-screen="workbench-script-materials"],[data-screen="workbench-video"]) .vrule{background:#d9d9d6}
.app:is([data-screen="workbench-script-graph"],[data-screen="workbench-script-materials"],[data-screen="workbench-video"]) .chip{
  border:1px solid #cfcfcb;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
.app:is([data-screen="workbench-script-graph"],[data-screen="workbench-script-materials"],[data-screen="workbench-video"]) .wb-tab{
  color:#898987;
  border-bottom:2px solid transparent;
  border-radius:0;
}
.app:is([data-screen="workbench-script-graph"],[data-screen="workbench-script-materials"],[data-screen="workbench-video"]) .wb-tab.active{
  color:#151516;
  border-bottom-color:#b34a3c;
}

/* World graph — retain the real three-column graph and semantic relations. */
.app:is([data-screen="workbench-script-graph"],[data-screen="workbench-script-materials"]) .subtabs{
  min-height:49px;
  height:49px;
  padding:0 28px;
  border-bottom:1px solid #d9d9d6;
  background:#fff;
}
.app:is([data-screen="workbench-script-graph"],[data-screen="workbench-script-materials"]) .subtab{
  height:49px;
  border-bottom:2px solid transparent;
  color:#777;
}
.app:is([data-screen="workbench-script-graph"],[data-screen="workbench-script-materials"]) .subtab.active{
  color:#151516;
  border-bottom-color:#b34a3c;
}
.app[data-screen="workbench-script-graph"] .graph-wrap{
  min-height:560px;
  border-top:0;
  background:#fff;
}
.app[data-screen="workbench-script-graph"] .legend{
  width:210px;
  padding:26px 22px;
  border-right:1px solid #d9d9d6;
  background:#fff;
}
.app[data-screen="workbench-script-graph"] .legend::before{
  content:"RELATION MAP / 01";
  display:block;
  margin-bottom:24px;
  color:#b34a3c;
  font:500 9px/1 var(--mono);
  letter-spacing:.17em;
}
.app[data-screen="workbench-script-graph"] .graph{
  background-color:#f8f8f7;
  background-image:
    linear-gradient(rgba(21,21,22,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(21,21,22,.045) 1px,transparent 1px);
  background-size:24px 24px;
}
.app[data-screen="workbench-script-graph"] .graph::before{
  content:"WORLD / RELATIONS";
  position:absolute;
  top:20px;
  left:22px;
  z-index:4;
  color:#aaa9a7;
  font:500 9px/1 var(--mono);
  letter-spacing:.16em;
  pointer-events:none;
}
.app[data-screen="workbench-script-graph"] .node .pill{
  position:relative;
  overflow:hidden;
  border:1px solid #bdbdb9;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
.app[data-screen="workbench-script-graph"] .node:hover .pill{border-color:#151516}
.app[data-screen="workbench-script-graph"] .node.lead .pill{
  border-color:#151516;
  background:#151516;
  color:#fff;
  box-shadow:none;
}
.app[data-screen="workbench-script-graph"] .node.lead .pill::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:#b34a3c;
}
.app[data-screen="workbench-script-graph"] .node.active .pill{
  border-color:#b34a3c;
  outline:2px solid rgba(179,74,60,.22);
  outline-offset:2px;
}
.app[data-screen="workbench-script-graph"] .rel-tag{
  border:1px solid rgba(217,217,214,.8);
  border-radius:0;
  background:#f8f8f7;
}
.app[data-screen="workbench-script-graph"] .char-detail{
  width:300px;
  padding:26px 24px;
  border-left:1px solid #d9d9d6;
  background:#fff;
}
.app[data-screen="workbench-script-graph"] .char-detail::before{
  content:"SELECTED / PROFILE";
  display:block;
  margin-bottom:22px;
  color:#b34a3c;
  font:500 9px/1 var(--mono);
  letter-spacing:.17em;
}
.app[data-screen="workbench-script-graph"] .kv{border-bottom-color:#e7e7e5}

/* Video generation — keep real references, versions, readiness and queue. */
.app[data-screen="workbench-video"] .vg-body{background:#fff}
.app[data-screen="workbench-video"] .vg-shotlist{
  width:236px;
  border-right:1px solid #d9d9d6;
  background:#fff;
}
.app[data-screen="workbench-video"] .vg-shotlist select{
  border-color:#cfcfcb!important;
  background:#fff!important;
}
.app[data-screen="workbench-video"] .vg-shot{
  position:relative;
  margin:0;
  padding:10px 18px;
  border-left:3px solid transparent;
  border-radius:0;
  background:#fff;
  color:#151516;
}
.app[data-screen="workbench-video"] .vg-shot:hover{background:#f7f7f5}
.app[data-screen="workbench-video"] .vg-shot.sel{
  border-left-color:#b34a3c;
  background:#f2f1ef;
  color:#151516;
}
.app[data-screen="workbench-video"] .vg-shot.sel .cbox{
  border-color:#151516;
  background:#151516;
}
.app[data-screen="workbench-video"] .vg-thumb{
  border:1px solid #e0e0dd;
  background-color:#f5f5f3;
}
.app[data-screen="workbench-video"] .vg-center{
  padding:26px 30px 22px;
  border-right:0;
  background:#fff;
}
.app[data-screen="workbench-video"] .vg-center::before{
  content:"VIDEO ASSEMBLY / GENERATE";
  display:block;
  margin-bottom:16px;
  color:#b34a3c;
  font:500 9px/1 var(--mono);
  letter-spacing:.17em;
}
.app[data-screen="workbench-video"] .prompt{
  border:1px solid #151516;
  border-top:3px solid #b34a3c;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
.app[data-screen="workbench-video"] .vbox{
  overflow:hidden;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
.app[data-screen="workbench-video"] video{box-shadow:none!important}
.app[data-screen="workbench-video"] .vg-right{
  width:280px;
  border-left:1px solid #d9d9d6;
  background:#fff;
}
.app[data-screen="workbench-video"] .vg-settings-scroll{padding:25px 24px 18px}
.app[data-screen="workbench-video"] .vg-settings-scroll>.col-label:first-child{
  color:#b34a3c;
  letter-spacing:.16em;
}
.app[data-screen="workbench-video"] .setrow{border-bottom-color:#e7e7e5}
.app[data-screen="workbench-video"] .setrow>span:first-child{color:#666}
.app[data-screen="workbench-video"] .dd-menu{
  border:1px solid #151516;
  border-radius:0;
  background:#fff;
  box-shadow:0 16px 34px -26px rgba(0,0,0,.58);
}
.app[data-screen="workbench-video"] .dd-item{
  border-radius:0;
  background:#fff;
}
.app[data-screen="workbench-video"] .dd-item:hover{background:#f5f5f3}
.app[data-screen="workbench-video"] .dd-item.on{
  color:#fff;
  background:#151516;
  box-shadow:inset 3px 0 #b34a3c;
}
.app[data-screen="workbench-video"] .vgq-panel{
  border-top:1px solid #d9d9d6;
  background:#f7f7f5;
  box-shadow:none;
}
.app[data-screen="workbench-video"] .vgq-toggle,
.app[data-screen="workbench-video"] .vgq-list,
.app[data-screen="workbench-video"] .vgq-job-card,
.app[data-screen="workbench-video"] .vgq-cancel{
  border-radius:0;
  box-shadow:none;
}
.app[data-screen="workbench-video"] .vgq-toggle{
  border-color:#d9d9d6;
  background:#fff;
}
.app[data-screen="workbench-video"] .vgq-toggle[aria-expanded="true"]{
  border-color:#151516;
  box-shadow:inset 3px 0 #b34a3c;
}
.app[data-screen="workbench-video"] .vgq-list{border-color:#d9d9d6}
.app[data-screen="workbench-video"] .vgq-job-card.active{
  border-color:#151516;
  background:#f2f1ef;
}
.app[data-screen="workbench-video"] .vgq-progress>span{background:#b34a3c}
.app[data-screen="workbench-video"] .vg-shot span[style*="#332a63"]{background:#151516!important}
.app[data-screen="workbench-video"] [data-act="shots-episode"][style*="#332a63"]{
  color:#b34a3c!important;
  border-bottom-color:#b34a3c!important;
}
.app[data-screen="workbench-video"] .thumb[style*="#332a63"]{border-color:#b34a3c!important}
.app[data-screen="workbench-video"] .thumb span[style*="#332a63"]{background:#b34a3c!important}

/* Shared editorial left rail for settings and recycle bin. */
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .side{
  width:252px;
  padding:34px 26px 28px;
  border-right:1px solid #dededb;
  background:#fff;
  box-shadow:none;
}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .side .brand-wrap{margin-bottom:52px}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .side .brandmark{
  width:23px;
  height:23px;
  border-radius:50%;
  background:#151516;
  box-shadow:none;
}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .side .brandmark::after{display:none}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .side .brand-name{
  color:#151516;
  font:500 18px/1.1 var(--serif);
  letter-spacing:.01em;
}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .side .brand-sub{
  margin-top:5px;
  color:#8a8a87;
  letter-spacing:.1em;
}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .nav{gap:7px}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .nav-item{
  position:relative;
  display:grid;
  grid-template-columns:7px minmax(0,1fr) auto;
  gap:10px;
  min-height:46px;
  padding:8px 12px;
  border:0;
  border-radius:0;
  color:#666;
  background:#fff;
  box-shadow:none;
}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .nav-item::after{
  content:attr(data-en);
  color:#aaa9a7;
  font:500 8px/1 var(--mono);
  letter-spacing:.11em;
}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .nav-item.active{
  color:#fff;
  background:#151516;
  box-shadow:inset 3px 0 #b34a3c;
}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .nav-item.active::after{color:#aaa}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .nav-item .dot{
  width:4px;
  height:4px;
  border-radius:50%;
  background:#c7c7c3;
}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .nav-item.active .dot{background:#fff}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .conn{
  padding-bottom:18px;
  border-bottom:1px solid #e2e2df;
  color:#777;
}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .side-foot{
  padding-top:18px;
  border-top:0;
}
.app:is([data-screen="settings"],[data-screen="exports-trash"]) .avatar{
  border-radius:50%;
  background:linear-gradient(145deg,#1e3241 0 48%,#b34a3c 49% 52%,#d9d9d5 53%);
}

/* Recycle bin — real rows and destructive semantics stay intact. */
.app[data-screen="exports-trash"] .main{
  position:relative;
  background:#fff;
}
.app[data-screen="exports-trash"] .main::before{
  content:"ARCHIVE";
  position:absolute;
  top:82px;
  right:36px;
  color:#f3f2f0;
  font:400 clamp(72px,9vw,150px)/.8 var(--serif);
  letter-spacing:-.05em;
  pointer-events:none;
}
.app[data-screen="exports-trash"] .main>.pad{
  position:relative;
  z-index:1;
  padding:40px 44px 52px!important;
}
.app[data-screen="exports-trash"] .page-head{
  min-height:110px;
  margin-bottom:24px;
  padding:0 0 24px 18px;
  border-bottom:1px solid #d9d9d6;
  border-left:3px solid #b34a3c;
}
.app[data-screen="exports-trash"] .page-head .eyebrow{color:#b34a3c}
.app[data-screen="exports-trash"] .page-head .h-title{
  color:#151516;
  font-size:40px!important;
  letter-spacing:-.03em;
}
.app[data-screen="exports-trash"] .page-head button{
  border-radius:0;
  box-shadow:none;
}
.app[data-screen="exports-trash"] .trash-batch{
  min-height:52px;
  padding:11px 14px!important;
  border:1px solid #d9d9d6!important;
  border-left:3px solid #151516!important;
  background:rgba(255,255,255,.96);
}
.app[data-screen="exports-trash"] .trash-row{
  min-height:86px;
  padding:15px 14px!important;
  border-bottom:1px solid #e3e3e0!important;
  background:rgba(255,255,255,.97);
  transition:background .15s;
}
.app[data-screen="exports-trash"] .trash-row:hover{background:#f7f7f5}
.app[data-screen="exports-trash"] .trash-thumb{
  overflow:hidden;
  border:1px solid #d9d9d6!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.app[data-screen="exports-trash"] .trash-check{border-radius:0!important}
.app[data-screen="exports-trash"] .trash-actions button{border-radius:0}

/* Settings — editorial index rail + dense, real configuration panels. */
.app[data-screen="settings"] .main{
  position:relative;
  background:#fff;
}
.app[data-screen="settings"] .main::before{
  content:"SETTINGS";
  position:absolute;
  top:28px;
  right:38px;
  z-index:0;
  color:#f4f3f1;
  font:400 clamp(72px,8vw,130px)/.8 var(--serif);
  letter-spacing:-.05em;
  pointer-events:none;
}
.app[data-screen="settings"] .set-shell{
  position:relative;
  z-index:1;
  background:transparent;
}
.app[data-screen="settings"] .set-side{
  width:204px;
  padding:38px 16px;
  border-right:1px solid #d9d9d6;
  background:#f7f7f5;
}
.app[data-screen="settings"] .set-side::before{
  content:"STUDIO / 06";
  display:block;
  margin:0 12px 24px;
  color:#b34a3c;
  font:500 9px/1 var(--mono);
  letter-spacing:.17em;
}
.app[data-screen="settings"] .set-link{
  min-height:42px;
  margin:0;
  padding:10px 14px;
  border-left:3px solid transparent;
  border-radius:0;
  color:#71716f;
  background:transparent;
  box-shadow:none;
}
.app[data-screen="settings"] .set-link:hover{
  color:#151516;
  background:#f1f0ee;
}
.app[data-screen="settings"] .set-link.active{
  border-left-color:#b34a3c;
  color:#fff;
  background:#151516;
  box-shadow:none;
  font-weight:500;
}
.app[data-screen="settings"] .set-main{
  max-width:none;
  padding:46px clamp(34px,4vw,64px) 70px;
  background:rgba(255,255,255,.94);
}
.app[data-screen="settings"] .set-main>.h-title{
  padding-left:17px;
  border-left:3px solid #b34a3c;
  color:#151516;
  font-size:36px!important;
  letter-spacing:-.025em;
}
.app[data-screen="settings"] .set-row{border-bottom-color:#e3e3e0}
.app[data-screen="settings"] .plan{
  position:relative;
  overflow:hidden;
  border:1px solid #151516;
  border-top:3px solid #b34a3c;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
.app[data-screen="settings"] .plan::after{
  content:"PRO";
  position:absolute;
  right:18px;
  bottom:-15px;
  color:#f2f1ef;
  font:400 70px/1 var(--serif);
  pointer-events:none;
}
.app[data-screen="settings"] .plan>*{position:relative;z-index:1}
.app[data-screen="settings"] .settings-card,
.app[data-screen="settings"] .token-card,
.app[data-screen="settings"] .usage-table-wrap{
  border:1px solid #d9d9d6;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
.app[data-screen="settings"] .settings-card{position:relative}
.app[data-screen="settings"] .settings-card::before{
  content:"";
  position:absolute;
  top:-1px;
  left:-1px;
  width:34px;
  height:2px;
  background:#b34a3c;
}
.app[data-screen="settings"] .usage-meter{
  height:5px;
  border-radius:0;
  background:#e7e7e5;
}
.app[data-screen="settings"] .usage-meter>span{
  border-radius:0;
  background:#b34a3c;
}
.app[data-screen="settings"] .usage-table th{background:#f7f7f5}
.app[data-screen="settings"] .token-badge{border-radius:2px}
.app[data-screen="settings"] .fld{
  border:1px solid #cfcfcb;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
.app[data-screen="settings"] .fld:focus{
  border-color:#151516;
  box-shadow:0 0 0 2px rgba(179,74,60,.16);
}
.app[data-screen="settings"] .switch.on{background:#b34a3c}

/* Workspace overlays: visual-only change; auth keeps its separately approved treatment. */
.app[data-mode="workspace"] .ovl{
  padding:22px;
  z-index:220;
  background:rgba(15,15,16,.62);
  backdrop-filter:blur(5px);
}
/* Confirmation dialogs are rendered beside workspace full-screen overlays.
   Keep this selector at workspace specificity so the generic .ovl rule above
   cannot place confirmations below scriptParseOverlay (z-index:255). */
.app[data-mode="workspace"] .ovl.modal-overlay{
  z-index:1000;
}
.app[data-mode="workspace"] .ovl-card{
  max-height:calc(100dvh - 44px);
  overflow:auto;
  border:1px solid #bdbdb9;
  border-top:4px solid #b34a3c;
  border-radius:0;
  background:#fff;
  box-shadow:0 30px 76px -42px rgba(0,0,0,.68);
}
.app[data-mode="workspace"] .ovl-card :is(.fld,textarea,select){
  border-radius:0;
  box-shadow:none;
}
.app[data-mode="workspace"] .ovl-card .fld:focus,
.app[data-mode="workspace"] .ovl-card textarea:focus{
  border-color:#151516;
  box-shadow:0 0 0 2px rgba(179,74,60,.16);
}
.app[data-mode="workspace"] .ovl-card .btn-dark{
  border-color:#b34a3c!important;
  border-radius:0!important;
  background:#b34a3c!important;
  box-shadow:none!important;
}
.app[data-mode="workspace"] .lb-card{
  padding:0;
  overflow:hidden;
}
.app[data-mode="workspace"] .lb-img{background-color:#f3f3f1}
.app[data-mode="workspace"] .lb-side{border-left-color:#d9d9d6}
.app[data-mode="workspace"] .lb-prompt{
  border-radius:0;
  background:#fff;
}

/* Full-screen review desks keep their production layouts and independent scroll areas. */
#scriptParseOverlay,
.episode-compare-overlay,
.asset-history-overlay,
.source-review-overlay{
  background:rgba(15,15,16,.68)!important;
  backdrop-filter:blur(4px);
}
#scriptParseOverlay>div,
.editorial-fullscreen-panel{
  border:1px solid #bdbdb9;
  border-top:4px solid #b34a3c;
  border-radius:0;
  background:#fff!important;
  box-shadow:0 32px 84px -42px rgba(0,0,0,.72)!important;
}
#scriptParseOverlay header,
.episode-compare-overlay header,
.source-review-overlay .editorial-fullscreen-panel>div:first-child,
.asset-history-overlay .editorial-fullscreen-panel>div:first-child{
  background:#fff;
}
#scriptParseOverlay :is(button,input,select,textarea),
.episode-compare-overlay :is(button,input,select,textarea),
.asset-history-overlay :is(button,input,select,textarea),
.source-review-overlay :is(button,input,select,textarea){
  border-radius:0!important;
  box-shadow:none!important;
}
#scriptParseOverlay [style*="background:#f8f7f2"],
.episode-compare-overlay [style*="background:#f8f7f2"],
.asset-history-overlay [style*="background:#f8f7f2"],
.source-review-overlay [style*="background:#f8f7f2"]{background:#fff!important}
#scriptParseOverlay [style*="background:#f1f0eb"],
.episode-compare-overlay [style*="background:#f1f0eb"],
.asset-history-overlay [style*="background:#f1f0eb"],
.source-review-overlay [style*="background:#f1f0eb"]{background:#f5f5f3!important}
.source-review-overlay textarea{background:#fff!important}

/* System feedback follows the same surface language without changing status semantics. */
.toast{
  border-radius:0;
  border-left:3px solid #b34a3c;
  background:#151516;
  box-shadow:0 20px 42px -28px rgba(0,0,0,.72);
}
.aiprog{border-radius:0;box-shadow:none}
.aiprog-toggle,
.aiprog-item{
  border-radius:0;
  background:#151516;
  box-shadow:none;
}
.aiprog-toggle{border-left:3px solid #b34a3c}
.aiprog-toggle .arrow{border-radius:0}

/* Responsive pass: reassert mobile rules after the late confirmed desktop cascade. */
@media(max-width:880px){
  .app[data-screen="exports"] .export-band{grid-template-columns:1fr!important}
  .app[data-screen="exports"] .exp-panel{
    padding:20px 0 0!important;
    border-top:1px solid #d9d9d6;
    border-left:0!important;
  }
}