/* Claude pass — Oct 29 2026.
   One additive layer on top of the approved Writer system. Every rule here is
   scoped so removing this file restores the previous look exactly. */

/* ---------- Cast: one answer shared by every Production tool ---------- */
.castVoiceTag {display:inline-block;margin-right:2px;padding:0 4px;border-radius:3px;background:rgba(169,160,200,.18);color:#c9c0e6;font:600 9px/14px var(--sans);letter-spacing:.04em;vertical-align:1px;}
.sceneCastEditor {display:grid;gap:8px;margin:0 0 12px;}
.sceneCastHead {display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;}
.sceneCastHead b {font:600 12px/18px var(--sans);color:var(--text);}
.sceneCastHead small {font:400 11px/16px var(--sans);color:var(--dim);}
.castChips {display:flex;flex-wrap:wrap;gap:6px;align-items:center;}
body.studio-refined #iBody .castChip {display:inline-flex;align-items:center;gap:6px;box-sizing:border-box;height:28px;min-height:0;margin:0;padding:0 8px 0 10px;border:1px solid var(--line);border-radius:5px;background:var(--surface-2);color:var(--text);font:500 11px/18px var(--sans);cursor:pointer;transition:background .15s,border-color .15s,opacity .15s;}
body.studio-refined #iBody .castChip:hover {border-color:#5a6166;background:var(--surface-3);}
.castChip .castChipName {font-weight:600;letter-spacing:.02em;}
.castChip .castChipState {padding:0 5px;border-radius:3px;font:500 10px/16px var(--sans);}
.castChip.is-set .castChipState {background:rgba(168,201,188,.18);color:var(--icon-mint);}
.castChip.is-voice .castChipState {background:rgba(169,160,200,.2);color:#c9c0e6;}
.castChip.is-mentioned {opacity:.7;}
.castChip.is-mentioned .castChipState {background:rgba(255,255,255,.06);color:var(--dim);}
.castChip.is-out {opacity:.55;}
.castChip.is-out .castChipName {text-decoration:line-through;text-decoration-color:rgba(255,255,255,.35);}
.castChip.is-out .castChipState {background:rgba(215,164,156,.14);color:var(--icon-coral);}
.castChip.is-override::after {content:'';width:5px;height:5px;border-radius:50%;background:var(--accent);margin-left:-2px;}
.castAdd select {height:28px;padding:0 24px 0 8px;border:1px dashed var(--line);border-radius:5px;background:transparent;color:var(--dim);font:500 11px/18px var(--sans);}
.castEmpty {font:400 11px/18px var(--sans);color:var(--dim);}
.srOnly {position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}

/* ---------- Table Read cue extensions ---------- */
#script .cue .cueExtension {font-weight:400;opacity:.85;}

/* ---------- Today: one next step, the board tucked away ---------- */
#iBody .todayNext {display:flex;align-items:center;justify-content:space-between;gap:24px;box-sizing:border-box;max-width:880px;margin:8px auto 12px;padding:24px 28px;border:1px solid var(--line-soft);border-radius:10px;background:linear-gradient(135deg,rgba(218,192,132,.08),rgba(168,201,188,.05) 60%,transparent),var(--surface-1);}
#iBody .todayNextCopy {min-width:0;}
#iBody .todayNextCopy>span {display:block;margin:0 0 8px;color:var(--accent);font:500 11px/16px var(--sans);letter-spacing:1.1px;text-transform:uppercase;}
#iBody .todayNextCopy h2 {margin:0;color:var(--text);font:400 26px/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.4px;}
#iBody .todayNextCopy p {max-width:560px;margin:8px 0 0;color:var(--dim);font:400 13px/20px var(--sans);}
body.studio-refined #iBody .todayNextAction {flex:none;height:32px;min-height:0;margin:0;padding:0 14px;border:1px solid #c9ad6e;border-radius:6px;background:var(--accent);color:#1b1a16;font:600 12px/18px var(--sans);cursor:pointer;}
body.studio-refined #iBody .todayNextAction:hover {filter:brightness(1.06);}
#iBody .todayStages {display:flex;align-items:center;gap:0;max-width:880px;margin:0 auto 20px;padding:0 4px;}
body.studio-refined #iBody .todayStage {display:flex;align-items:center;gap:6px;flex:none;height:28px;min-height:0;margin:0;padding:0 8px;border:0;border-radius:5px;background:transparent;color:var(--dim);font:500 11px/18px var(--sans);cursor:pointer;}
body.studio-refined #iBody .todayStage:hover {background:var(--surface-2);color:var(--text);}
#iBody .todayStage i {display:grid;place-items:center;width:16px;height:16px;border:1.5px solid #4a5156;border-radius:50%;color:#14181a;font:700 10px/1 var(--sans);font-style:normal;}
#iBody .todayStage.isReady i {border-color:var(--icon-mint);background:var(--icon-mint);}
#iBody .todayStage.isNext {color:var(--text);}
#iBody .todayStage.isNext i {border-color:var(--accent);box-shadow:0 0 0 3px rgba(218,192,132,.16);}
#iBody .todayStageRule {flex:1;min-width:12px;height:1px;background:var(--line-soft);}
#iBody .todayBoard {max-width:880px;margin:0 auto 24px;border:1px solid var(--line-soft);border-radius:8px;background:var(--surface-1);}
#iBody .todayBoard>summary {display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;list-style:none;}
#iBody .todayBoard>summary::-webkit-details-marker {display:none;}
#iBody .todayBoard>summary>span {font:600 12px/18px var(--sans);color:var(--text);}
#iBody .todayBoard>summary>small {flex:1;font:400 11px/16px var(--sans);color:var(--dim);}
#iBody .todayBoard[open]>summary .productionChevron {transform:rotate(90deg);}
#iBody .todayBoard>.todayProjectOverview {padding:0 12px 12px;}
#iBody .todayHeader~.todayBoard {margin-top:16px;}

/* ---------- Schedule ---------- */
#iBody .scheduleSetup .scheduleSetupHint {flex:1 1 220px;min-width:0;color:var(--dim);font:400 11px/16px var(--sans);}

/* ---------- Breakdown: review first, budget folded, bulk confirm ---------- */
body.studio-refined #iBody .bdHeader p.bdIntro {max-width:560px;margin:4px 0 0;color:var(--dim);font:400 12px/18px var(--sans);}
#iBody .bdBudgetFold {margin:0 0 16px;border:1px solid var(--line-soft);border-radius:8px;background:var(--surface-1);}
#iBody .bdBudgetFold>summary {display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;list-style:none;}
#iBody .bdBudgetFold>summary::-webkit-details-marker {display:none;}
#iBody .bdBudgetFold>summary>span {font:600 12px/18px var(--sans);color:var(--text);}
#iBody .bdBudgetFold>summary>small {flex:1;font:400 11px/16px var(--sans);color:var(--dim);}
#iBody .bdBudgetFold>summary .bdChevron {width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform .2s;}
#iBody .bdBudgetFold[open]>summary .bdChevron {transform:rotate(90deg);}
#iBody .bdBudgetFold>.bdBudget {grid-template-columns:minmax(0,1fr) auto 110px;align-items:end;margin:0 14px;padding:12px 0 14px;border-bottom:0;}
#iBody .bdBudgetFold>[data-bd-finance-summary] {padding:0 14px 14px;}
#iBody .bdGroup {display:grid;gap:8px;}
#iBody .bdGroup+.bdGroup {margin-top:12px;}
#iBody .bdGroupHead {display:flex;align-items:center;gap:8px;padding:0 2px;}
#iBody .bdGroupHead b {font:600 12px/18px var(--sans);color:var(--text);letter-spacing:.02em;}
#iBody .bdGroupHead>span {min-width:18px;padding:0 5px;border-radius:9px;background:var(--surface-2);color:var(--dim);font:500 10px/16px var(--sans);text-align:center;}
body.studio-refined #iBody .bdWorkspace .bdConfirmAll {margin-left:auto;min-height:0;height:26px;padding:0 10px;border-color:color-mix(in srgb,var(--accent) 35%,var(--line));color:var(--accent);font:500 11px/18px var(--sans);}
body.studio-refined #iBody p.bdSnippet {margin:2px 0 0;color:#b7bdbb;font:400 12px/18px var(--mono);overflow-wrap:anywhere;}
#iBody p.bdSnippet mark {padding:0 2px;border-radius:2px;background:rgba(218,192,132,.22);color:var(--text);}
#iBody p.bdSnippet span {margin-left:6px;color:var(--dim);font:500 10px/16px var(--sans);white-space:nowrap;}

/* ---------- Table Read · Script Packet ---------- */
body.read-packet #script {display:none!important;}
body.read-packet #empty {display:none!important;}
#readPacket {position:relative;box-sizing:border-box;flex:1 1 auto;min-height:0;height:100%;overflow:auto;padding:28px 48px 56px;display:flex;justify-content:center;align-items:flex-start;
  background:radial-gradient(ellipse 70% 60% at 50% 32%,#1f2326 0%,#16191b 55%,#111315 100%);scrollbar-gutter:stable;}
#readPacket[hidden] {display:none!important;}
#readPacket .pkStage {position:relative;flex:none;margin:auto;}
#readPacket .pkStage[hidden] {display:none;}
#readPacket .pkScale {position:absolute;top:0;left:0;width:816px;height:1056px;transform-origin:0 0;perspective:2600px;}
#readPacket .pkSheet,#readPacket .pkFace {position:absolute;inset:0;box-sizing:border-box;overflow:hidden;border-radius:2px;background:#f4f2eb;color:#282b27;}
#readPacket .pkSheet {box-shadow:0 18px 50px rgba(0,0,0,.45);transition:box-shadow .5s ease;cursor:default;}
#readPacket .pkContent {position:absolute;inset:0;}
#readPacket .pkLine {position:absolute;white-space:pre;font:400 16px/16px var(--mono);color:#282b27;border-radius:2px;cursor:pointer;transition:background-color .25s ease,box-shadow .25s ease,color .2s;}
#readPacket .pkLine.pkBold {font-weight:700;}
#readPacket .pkLine:hover {background:rgba(40,43,39,.06);box-shadow:0 0 0 3px rgba(40,43,39,.06);}
#readPacket .pkLine.isNow {background:rgba(250,210,95,.5);box-shadow:0 0 0 3px rgba(250,210,95,.5);}
#readPacket .pkLine.isMasked {color:transparent;background:rgba(40,43,39,.1);box-shadow:0 0 0 2px rgba(40,43,39,.1);}
#readPacket .pkLine.isMasked.isNow {background:rgba(250,210,95,.35);}
#readPacket .pkDecoration {color:#5d615b;cursor:default;}
#readPacket .pkPageNo {position:absolute;top:36px;right:96px;font:400 16px/16px var(--mono);color:#282b27;}
#readPacket .pkNoteTab {position:absolute;right:26px;width:18px;height:16px;padding:0;border:0;border-radius:2px;background:#e9c95e;box-shadow:0 1px 0 rgba(0,0,0,.18);cursor:pointer;}
#readPacket .pkNoteTab::after {content:'';position:absolute;right:0;bottom:0;border:4px solid transparent;border-right-color:#c9a843;border-bottom-color:#c9a843;}
/* Three-hole punch: brass brads top and bottom, middle hole open. */
#readPacket .pkPunch {position:absolute;top:0;bottom:0;left:30px;width:20px;pointer-events:none;z-index:2;}
#readPacket .pkHole {position:absolute;left:0;width:18px;height:18px;border-radius:50%;background:#14171a;box-shadow:inset 0 2px 3px rgba(0,0,0,.6),0 0 0 1px rgba(0,0,0,.08);}
#readPacket .pkHole:nth-child(1) {top:167px;} #readPacket .pkHole:nth-child(2) {top:519px;} #readPacket .pkHole:nth-child(3) {top:871px;}
#readPacket .pkHole.pkBrad {left:-2px;width:22px;height:22px;margin-top:-2px;background:radial-gradient(circle at 36% 32%,#fff1c2 0,#e2c27a 22%,#b48d3e 55%,#7d5c22 85%);box-shadow:0 2px 3px rgba(0,0,0,.35),inset 0 -1px 2px rgba(0,0,0,.25);}
/* Cover: plain cardstock, the way a packet arrives at the table. */
#readPacket .isCover {background:#e7dfcb;}
#readPacket .pkCover {position:absolute;inset:0;font:400 16px/1.4 var(--mono);color:#2b2a24;text-align:center;}
#readPacket .pkCoverTitle {position:absolute;top:370px;left:96px;right:96px;font-weight:700;font-size:22px;letter-spacing:.06em;text-decoration:underline;text-underline-offset:6px;}
#readPacket .pkCoverBy {position:absolute;top:440px;left:0;right:0;}
#readPacket .pkCoverAuthor {position:absolute;top:478px;left:0;right:0;}
#readPacket .pkCoverContact {position:absolute;left:112px;bottom:112px;text-align:left;font-size:14px;}
#readPacket .isCover .pkContent {cursor:pointer;}
/* The turning leaf */
#readPacket .pkLeaf {position:absolute;inset:0;transform-origin:0 50%;transform-style:preserve-3d;z-index:5;pointer-events:none;will-change:transform;}
#readPacket .pkFace {backface-visibility:hidden;-webkit-backface-visibility:hidden;}
#readPacket .pkFront {box-shadow:0 10px 30px rgba(0,0,0,.25);}
#readPacket .pkBack {transform:rotateY(180deg);background:linear-gradient(90deg,#e9e6dd,#f1eee6 30%,#ebe8df);}
#readPacket .pkBack.isCover {background:#ddd4bd;}
#readPacket .pkShade {position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.22),rgba(0,0,0,.04) 45%,transparent);opacity:0;}
#readPacket .pkFallback {margin:auto;color:var(--dim);font:400 13px/20px var(--sans);}
/* Toolbar view switch and footer page count */
body.read-layout #readerBar .readViewSwitch {display:flex;flex:none;align-items:center;gap:2px;box-sizing:border-box;height:28px;margin:0 8px 0 auto;padding:2px;border:1px solid var(--line);border-radius:5px;background:var(--surface-0);}
body.read-layout #readerBar .readViewSwitch>button {display:flex;align-items:center;justify-content:center;box-sizing:border-box;height:22px;min-height:0;margin:0;padding:0 9px;border:0;border-radius:3px;background:transparent;color:var(--dim);font:500 11px/18px var(--sans);cursor:pointer;}
body.read-layout #readerBar .readViewSwitch>button:hover {color:var(--text);}
body.read-layout #readerBar .readViewSwitch>button.active {background:var(--surface-3);color:var(--text);}
body:not(.read-layout) .readViewSwitch {display:none!important;}
#readFooterPage:not(:empty)::before {content:'·';margin:0 8px;color:var(--dim);}
#readFooterInfo {display:flex;align-items:center;justify-content:center;}
#readPacket .pkStage {transition:width .45s cubic-bezier(.3,.1,.2,1),height .45s cubic-bezier(.3,.1,.2,1);}
#readPacket .pkScale {transition:transform .45s cubic-bezier(.3,.1,.2,1);}
@media (prefers-reduced-motion: reduce) {#readPacket .pkStage,#readPacket .pkScale {transition:none;}}

/* ---------- Writer element menu: everyday elements first, the rest under More ---------- */
body.studio-refined #writerFormatRail .writerElementMore {margin:4px 0 0;padding:4px 0 0;border-top:1px solid var(--line-soft);}
body.studio-refined #writerFormatRail .writerElementMore>summary {display:flex;align-items:center;justify-content:space-between;height:32px;padding:0 12px;border-radius:6px;color:var(--dim);font:500 12px/18px var(--sans);cursor:pointer;list-style:none;}
body.studio-refined #writerFormatRail .writerElementMore>summary::-webkit-details-marker {display:none;}
body.studio-refined #writerFormatRail .writerElementMore>summary:hover {background:var(--surface-2);color:var(--text);}
body.studio-refined #writerFormatRail .writerElementMore>summary svg {width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .2s;}
body.studio-refined #writerFormatRail .writerElementMore[open]>summary svg {transform:rotate(90deg);}
body.studio-refined #writerFormatRail .writerElementMoreBody {display:grid;}

/* ---------- Home: no black flash while the photograph loads ---------- */
#homeBackdrop::before {position:absolute;inset:-24px;content:'';background:var(--home-tiny,none) 50% 56%/cover no-repeat;filter:grayscale(1) blur(16px);opacity:.48;}
#homeBackdrop>img {position:relative;transition:opacity .6s ease;}
#homeBackdrop>img:not(.isLoaded) {opacity:0!important;}
@media (prefers-reduced-motion: reduce) {#homeBackdrop>img {transition:none;}}

/* ---------- Shot List: the sticky search bar no longer lets cards show through ---------- */
body.studio-refined #iBody .shotWorkspaceToolbar {background:#121416;box-shadow:0 -12px 0 #121416,0 8px 12px -10px rgba(0,0,0,.6);}

/* ---------- Writer: keep typed spaces at the end of a line ----------
   Page view re-renders each block as fixed print lines. With collapsing
   white-space, a space typed at the end of a line was invisible to Chrome's
   editor and disappeared when the next letter arrived ("ONE TWO" became
   "ONETWO" at normal typing speed). Preserving spaces fixes it; the lines
   are already broken by the print layout, so nothing re-wraps. */
#writerPaper[data-print-layout] .writerPrintLine {white-space:pre;}

#readPacket .pkCurlLeaf {transform-style:preserve-3d;}
#readPacket .pkCurlLeaf.pkCurlCanvasLeaf {left:-816px;top:-200px;right:0;bottom:-200px;overflow:clip;transform-style:flat;}
#readPacket .pkCurlCanvas {position:absolute;left:0;top:0;width:2448px;height:1456px;pointer-events:none;}
#readPacket .pkCurlCastShadow {position:absolute;z-index:4;top:0;bottom:0;left:0;width:200px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(31,25,18,.34) 45%,rgba(31,25,18,.08) 72%,transparent);filter:blur(9px);transform-origin:left center;}

/* Bound packet on the normal workspace background. */
body.read-packet #readPacket {background:var(--bg);}
#readPacket .pkStage::before {content:'';position:absolute;inset:10% -12% -3% -5%;border-radius:28px;background:rgba(0,0,0,.18);filter:blur(32px);pointer-events:none;}
#readPacket .pkSheet {z-index:1;}
#readPacket .pkWrappedStack {position:absolute;z-index:0;left:calc(-1 * var(--wrapped-radius));right:0;top:2px;bottom:2px;pointer-events:none;border-radius:4px 2px 2px 4px;background:linear-gradient(90deg,#bdb69f,#e2dac1 45%,#d8d0b9);box-shadow:-2px 2px 5px #0004;}
#readPacket .pkWrappedStack[hidden] {display:none;}
#readPacket .pkWrappedEdge {position:absolute;inset:calc(var(--wrapped-layer) * .25px) 0 calc(var(--wrapped-layer) * .25px) calc(var(--wrapped-layer) * .65px);border-radius:4px 1px 1px 4px;border:1px solid #524e4028;background:linear-gradient(90deg,#d9d6cc 0%,#f1eee6 3%,#ebe8df 7%,#ebe8df 100%);}
#readPacket .pkWrappedStack[data-wrapped-count="1"] .pkWrappedEdge {background:linear-gradient(90deg,#b7ad91,#d9d0b5 45%,#e0d8bf);}
