#seriesroom-app{
  display:none;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  background:#120d09;
  min-height:calc(var(--cbs-vh,1vh) * 100 - 56px);
}
#seriesroom-root{
  min-height:100%;
  overflow:visible !important;
  pointer-events:auto;
}
.sr55-shell{
  --sr55-paper: rgba(20,16,12,.92);
  --sr55-ink: #fbf2df;
  --sr55-soft: #e2d2b1;
  position:relative;
  min-height:100%;
  padding:18px 18px 34px;
  color:var(--sr55-ink);
  background:
    linear-gradient(180deg, rgba(8,7,6,.78), rgba(12,10,8,.92)),
    radial-gradient(circle at top center, rgba(255,255,255,.09), transparent 42%),
    var(--sr55-cork) center/cover fixed no-repeat;
}
.sr55-glow{ position:absolute; inset:0; pointer-events:none; background:linear-gradient(180deg, rgba(255,245,222,.04), transparent 25%); }
.sr55-shell *{ box-sizing:border-box; }
.sr55-shell .modal{ color:#2b2010; }
.sr55-hero,.sr55-card,.sr55-gate-card{
  position:relative;
  z-index:1;
  border:1px solid rgba(243,195,107,.22);
  background:linear-gradient(160deg, rgba(13,16,21,.92), rgba(38,26,14,.86));
  box-shadow:0 18px 46px rgba(0,0,0,.34);
}
.sr55-hero{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  padding:24px 22px 20px;
  border-radius:28px;
}
.sr55-kicker,.sr55-eyebrow{
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#e6c78f;
}
.sr55-hero h2{ margin:6px 0 8px; font-size:2rem; line-height:1.03; color:#fff7eb; }
.sr55-hero p,.sr55-card-head p,.sr55-list-row small,.sr55-form-card small,.sr55-mini-card small{ color:#e1d0af; }
.sr55-pill-row{ display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.sr55-pill-row span{ padding:6px 10px; border-radius:999px; background:rgba(243,195,107,.1); border:1px solid rgba(243,195,107,.15); font-size:.82rem; }
.sr55-hero-actions,.sr55-actions{ display:flex; flex-wrap:wrap; gap:10px; }
.sr55-actions.compact{ gap:8px; }
.sr55-btn,.sr55-mini-btn,.sr55-tab,.sr55-episode-tab,.sr55-bridge-card,.sr55-chip{ cursor:pointer; touch-action:manipulation; }
.sr55-btn,.sr55-mini-btn{
  appearance:none; border:1px solid rgba(243,195,107,.32); color:#2a1a08; font-weight:900;
  background:linear-gradient(180deg,#f5d490,#e7bb63); box-shadow:0 6px 18px rgba(0,0,0,.22);
  border-radius:14px; padding:10px 14px;
}
.sr55-btn.ghost,.sr55-mini-btn.ghost,.sr55-chip{ background:rgba(255,248,233,.08); color:#f8ebd2; }
.sr55-mini-btn{ padding:7px 10px; border-radius:11px; font-size:.82rem; }
.sr55-nav{ position:relative; z-index:1; display:grid; gap:12px; margin-top:16px; }
.sr55-tab-row{ display:flex; gap:10px; overflow:auto; padding-bottom:4px; }
.sr55-tab{ border:none; padding:12px 16px; border-radius:14px; background:rgba(255,247,234,.08); color:#f7ead0; font-weight:900; flex:0 0 auto; }
.sr55-tab.active{ background:linear-gradient(180deg,#f5d490,#e7bb63); color:#2a1a08; }
.sr55-meta-row{ display:grid; grid-template-columns:minmax(220px,1.2fr) minmax(280px,2fr) 180px auto; gap:10px; }
.sr55-meta-row input,.sr55-meta-row select,.sr55-card input,.sr55-card select,.sr55-card textarea{
  width:100%; min-height:42px; padding:10px 12px; border-radius:12px;
  border:1px solid rgba(0,0,0,.12); background:rgba(255,250,240,.96); color:#24190d; font:inherit;
}
.sr55-card textarea{ min-height:96px; resize:vertical; }
.sr55-graph-card{ margin-top:16px; }
.sr55-card{ position:relative; z-index:1; padding:18px; border-radius:24px; margin-top:16px; }
.sr55-card.sr55-wide{ grid-column:1/-1; }
.sr55-card-head{ display:flex; justify-content:space-between; align-items:flex-start; gap:14px; margin-bottom:14px; }
.sr55-card-head h3{ margin:5px 0 6px; font-size:1.26rem; color:#fff7ea; }
.sr55-body{ position:relative; z-index:1; padding-bottom:20px; }
.sr55-grid{ display:grid; gap:16px; }
.sr55-grid.two{ grid-template-columns:repeat(2, minmax(0,1fr)); }
.sr55-grid.planner{ grid-template-columns:290px minmax(0,1fr); }
.sr55-mini-grid,.sr55-preview-grid,.sr55-kpi-grid,.sr55-bridge-grid,.sr55-budget-grid,.sr55-ledger,.sr55-stack,.sr55-list,.sr55-script-rack{ display:grid; gap:12px; }
.sr55-mini-grid,.sr55-preview-grid,.sr55-budget-grid,.sr55-bridge-grid{ grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); }
.sr55-kpi-grid{ grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); }
.sr55-kpi-grid.tight{ grid-template-columns:repeat(3,minmax(120px,1fr)); }
.sr55-kpi,.sr55-mini-card,.sr55-budget-tile,.sr55-form-card,.sr55-bridge-card{
  border-radius:18px; padding:14px; background:rgba(255,255,255,.055); border:1px solid rgba(243,195,107,.1);
}
.sr55-kpi span{ display:block; font-size:.78rem; color:#e6c78f; text-transform:uppercase; letter-spacing:.08em; }
.sr55-kpi strong{ font-size:1.25rem; color:#fff5e2; }
.sr55-preview-grid .sr55-mini-card p,.sr55-mini-card p{ margin:.3rem 0 0; color:#ead9b8; }
.sr55-binder{ position:sticky; top:12px; align-self:start; max-height:calc(var(--cbs-vh,1vh) * 100 - 96px); overflow:auto; }
.sr55-binder-list{ display:grid; gap:10px; }
.sr55-episode-tab{
  appearance:none; border:1px solid rgba(243,195,107,.12); background:rgba(255,255,255,.05);
  padding:12px; border-radius:16px; text-align:left; color:#f7ead0; display:grid; gap:5px;
}
.sr55-episode-tab strong{ font-size:.92rem; }
.sr55-episode-tab small{ color:#ceb98f; }
.sr55-episode-tab.active,.sr55-list-row.active{ outline:2px solid rgba(243,195,107,.78); background:linear-gradient(180deg, rgba(243,195,107,.16), rgba(255,255,255,.04)); }
.sr55-guide-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
.sr55-guide-grid > div{ border-radius:16px; padding:12px; background:rgba(255,255,255,.045); border:1px solid rgba(243,195,107,.12); }
.sr55-guide-grid strong{ display:block; color:#fff7ea; margin-bottom:6px; }
.sr55-planner-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.sr55-planner-grid .wide{ grid-column:1/-1; }
.sr55-planner-grid label,.sr55-form-grid label,.sr55-weight-grid label,.sr55-arc-points label{ display:grid; gap:6px; color:#f2ddba; font-weight:700; }
.sr55-form-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.sr55-form-grid.slim{ grid-template-columns:repeat(4,minmax(0,1fr)); }
.sr55-form-grid .wide{ grid-column:1/-1; }
.sr55-weight-grid,.sr55-arc-points{ display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; margin-top:14px; }
.sr55-weight-grid input[type=range],.sr55-arc-points input[type=range]{ background:transparent; min-height:auto; padding:0; }
.sr55-linked-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:14px; }
.sr55-list-row{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:start; padding:12px 14px; border-radius:16px; background:rgba(255,255,255,.045); border:1px solid rgba(243,195,107,.08); }
.sr55-list-row strong{ color:#fff7eb; }
.sr55-list-row span{ font-weight:800; color:#f7d48e; }
.sr55-warning-list{ display:grid; gap:10px; }
.sr55-warning{ border-radius:14px; padding:10px 12px; background:rgba(255,183,77,.09); border:1px solid rgba(255,183,77,.2); color:#ffebb8; }
.sr55-empty{ border-radius:16px; padding:16px; background:rgba(255,255,255,.04); border:1px dashed rgba(243,195,107,.18); color:#d9c5a0; }
.sr55-ledger-row{ display:grid; grid-template-columns:160px 1fr; gap:12px; }
.sr55-ledger-kind{ font-weight:900; color:#fff7ea; }
.sr55-ledger-pills,.sr55-ledger-skim{ display:flex; flex-wrap:wrap; gap:8px; }
.sr55-ledger-pill,.sr55-ledger-block span,.sr55-chip,.sr55-note-badge,.sr55-tl-badge{ border-radius:999px; padding:4px 8px; font-size:.74rem; background:rgba(255,255,255,.08); border:1px solid rgba(243,195,107,.14); }
.sr55-ledger-block{ border-radius:14px; padding:10px 12px; background:rgba(255,255,255,.045); display:grid; gap:8px; }
.sr55-bridge-card{ appearance:none; text-align:left; color:#f6e8cf; display:grid; gap:8px; }
.sr55-side-preview{ min-height:220px; max-height:360px; overflow:auto; white-space:pre-wrap; border-radius:16px; padding:14px; background:rgba(255,255,255,.04); border:1px solid rgba(243,195,107,.12); color:#f3e1c1; }
.sr55-web-wrap{ border-radius:18px; padding:10px; background:rgba(255,255,255,.035); border:1px solid rgba(243,195,107,.1); }
.sr55-svg,.sr55-web{ width:100%; height:auto; display:block; }
.sr55-gate-card{ max-width:760px; margin:10vh auto 0; border-radius:24px; padding:28px; }
#sr55-beat-lens{
  position:sticky; top:0; z-index:9; margin:8px 12px 0; padding:10px 12px; border-radius:16px;
  background:linear-gradient(150deg, rgba(19,14,10,.94), rgba(38,24,13,.88)); border:1px solid rgba(243,195,107,.18);
  box-shadow:0 10px 28px rgba(0,0,0,.26);
}
.sr55-beat-lens-inner{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; color:#f2ddba; }
.sr55-beat-lens-inner label{ display:flex; align-items:center; gap:6px; font-size:.82rem; }
.sr55-beat-lens-inner select{ min-height:32px; border-radius:10px; }
.sr55-note-badge{ position:absolute; right:10px; top:10px; font-weight:800; color:#24180d; background:rgba(255,250,240,.94); }
.sr55-tl-badge{ align-self:flex-start; font-weight:800; color:#24180d; background:rgba(255,250,240,.94); margin-top:6px; }
.sr55-modal-backdrop{ position:fixed; inset:0; background:rgba(0,0,0,.54); }
.sr55-modal{ position:fixed; top:10vh; left:50%; transform:translateX(-50%); width:min(92vw,560px); background:#fff8ea; color:#2b2010; border-radius:20px; border:1px solid rgba(80,44,11,.18); box-shadow:0 28px 80px rgba(0,0,0,.38); }
.vhot{ background:rgba(239,68,68,.18)!important; color:#ffdada!important; }
.hot{ background:rgba(249,115,22,.18)!important; color:#ffe3c6!important; }
.warm{ background:rgba(250,204,21,.16)!important; color:#fff2b9!important; }
.cool{ background:rgba(56,189,248,.14)!important; color:#dbf6ff!important; }
.cold{ background:rgba(125,211,252,.1)!important; color:#dff6ff!important; }

/* Corkboard readability */
#corkboard-app{ background:linear-gradient(180deg, rgba(31,22,14,.18), rgba(17,12,8,.14)); }
#corkboard-app .sticky-note,
#corkboard-app .tl-card{
  box-shadow:0 10px 24px rgba(0,0,0,.22), inset 0 0 0 1px rgba(255,255,255,.12) !important;
}
#corkboard-app .sticky-title,
#corkboard-app .tl-card-title{ color:rgba(0,0,0,.82) !important; font-weight:900 !important; }
#corkboard-app .sticky-body,
#corkboard-app .tl-card-body{ color:rgba(0,0,0,.72) !important; line-height:1.35 !important; }
#corkboard-app .sticky-footer,
#corkboard-app .tl-card-footer{ color:rgba(0,0,0,.76) !important; }
#corkboard-app .sticky-act-badge,
#corkboard-app .sticky-type-badge{ box-shadow:inset 0 0 0 1px rgba(0,0,0,.1); }

@media (max-width: 1100px){
  .sr55-grid.two,.sr55-grid.planner,.sr55-linked-grid,.sr55-guide-grid,.sr55-form-grid,.sr55-form-grid.slim{ grid-template-columns:1fr; }
  .sr55-binder{ position:static; max-height:none; }
  .sr55-meta-row{ grid-template-columns:1fr; }
  .sr55-weight-grid,.sr55-arc-points{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sr55-hero{ flex-direction:column; }
}
@media (max-width: 720px){
  .sr55-shell{ padding:12px 12px 24px; }
  .sr55-hero{ padding:18px 16px; border-radius:20px; }
  .sr55-hero h2{ font-size:1.55rem; }
  .sr55-card{ padding:14px; border-radius:18px; }
  .sr55-mini-grid,.sr55-preview-grid,.sr55-budget-grid,.sr55-bridge-grid,.sr55-kpi-grid,.sr55-kpi-grid.tight,.sr55-linked-grid,.sr55-weight-grid,.sr55-arc-points{ grid-template-columns:1fr; }
  .sr55-btn,.sr55-mini-btn,.sr55-tab,.sr55-episode-tab{ min-height:44px; }
  #seriesroom-app{ padding-bottom:calc(env(safe-area-inset-bottom,0px) + 88px); }
}
