:root {
  /* TRACKFAST dark theme. Surfaces are near-black with a faint magenta bias so
     they sit under the accent rather than fighting it; --blue and --cyan keep
     their names (too many rules reference them) but now hold the brand pink.
     Green, amber and red stay semantic — they mean state, not brand. */
  --ink: #ffffff;
  --muted: #b3a4ab;
  --line: rgba(255, 255, 255, .10);
  --surface: #150e12;
  --soft: #0a0609;
  --navy: #070406;
  --blue: #fc0271;
  --cyan: #fc0271;
  --green: #2ecc71;
  --amber: #e8a33d;
  --red: #ff5a5a;
  --shadow: 0 16px 45px rgba(0, 0, 0, .55);
  font-family: Roboto, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--soft);
}
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: var(--soft); }
a { color: var(--blue); text-decoration: none; }
h1, h2, h3, p { margin-top: 0; }
h1 { font-size: clamp(1.8rem, 3vw, 2.55rem); letter-spacing: -.04em; margin-bottom: .35rem; }
h2 { font-size: 1.15rem; letter-spacing: -.015em; }
h3 { font-size: 1rem; margin-bottom: .35rem; }
small { display: block; color: var(--muted); margin-top: .25rem; }
button, input, select, textarea { font: inherit; }
input, select, textarea { width: 100%; border: 1px solid #31262b; border-radius: 8px; padding: .72rem .8rem; color: var(--ink); background: #090608; }
select[multiple] { min-height: 15rem; padding: .35rem; }
select[multiple] option { padding: .55rem .6rem; border-radius: 5px; }
input:focus, select:focus, textarea:focus { outline: 3px solid rgba(212, 44, 120, .2); border-color: var(--cyan); }
label { display: grid; gap: .42rem; font-size: .83rem; font-weight: 700; color: #a98796; }
fieldset { border: 1px solid var(--line); border-radius: 10px; padding: 1rem; }
legend { padding: 0 .45rem; font-weight: 800; }
hr { width: 100%; border: 0; border-top: 1px solid var(--line); margin: .5rem 0; }
.app-shell { display: grid; grid-template-columns: 230px minmax(0, 1fr); min-height: 100vh; }
.sidebar { position: sticky; top: 0; height: 100vh; display: flex; flex-direction: column; background: var(--navy); color: #fff; padding: 1.4rem 1rem; }
.brand { display: flex; align-items: center; gap: .7rem; color: #fff; padding: 0 .4rem 1.5rem; letter-spacing: .06em; }
.brand span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 9px; background: linear-gradient(135deg, var(--cyan), #c41463); font-weight: 900; }
.sidebar nav { display: grid; gap: .22rem; }
.sidebar nav a { color: #e4a3c0; padding: .72rem .8rem; border-radius: 8px; font-size: .9rem; }
.sidebar nav a:hover, .sidebar nav a.active { background: #40182a; color: #fff; }
.sidebar-account { margin-top: auto; padding: 1rem .45rem 0; border-top: 1px solid #613448; display: grid; gap: .6rem; }
.sidebar-account span { font-size: .85rem; }
.sidebar-account small { color: #d6709e; text-transform: uppercase; font-size: .67rem; letter-spacing: .08em; }
.link-button { color: #e299ba; padding: 0; border: 0; background: transparent; text-align: left; cursor: pointer; font-size: .8rem; }
.link-button.table-action { color: var(--red); }
.content { min-width: 0; padding: 2.1rem clamp(1.2rem, 3vw, 3rem) 4rem; }
.page-header { display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin-bottom: 1.5rem; }
.eyebrow { color: #c55f8d; text-transform: uppercase; letter-spacing: .14em; font-size: .7rem; font-weight: 900; margin-bottom: .4rem; }
.lede, .muted { color: var(--muted); }
.button { display: inline-flex; justify-content: center; align-items: center; border: 1px solid #31262b; color: #a7758c; background: #090608; border-radius: 8px; padding: .7rem 1rem; font-weight: 800; cursor: pointer; }
.button:hover { border-color: #31262b; }
.button.primary { background: var(--blue); border-color: var(--blue); color: #fff; }
.button.small { padding: .5rem .75rem; font-size: .78rem; }
.button:disabled { opacity: .42; cursor: not-allowed; }
.danger-button { color: #fff; background: var(--red); border-color: var(--red); }
.panel, .channel-card, .empty { background: var(--surface); border: 1px solid var(--line); border-radius: 12px; padding: 1.25rem; box-shadow: var(--shadow); }
.stack { display: grid; gap: 1rem; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
.form-grid .wide { grid-column: 1 / -1; }
.split-layout { display: grid; grid-template-columns: minmax(260px, .65fr) minmax(400px, 1.35fr); gap: 1.2rem; align-items: start; }
.wide-panel { min-width: 0; }
.channel-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(310px, 1fr)); gap: 1rem; }
.card-title, .card-title > div, .section-title { display: flex; align-items: center; justify-content: space-between; gap: .65rem; }
.card-title h2 { margin: 0; }
.status-dot { width: 10px; height: 10px; border-radius: 50%; display: inline-block; background: #412f37; }
.status-dot.healthy { background: var(--green); box-shadow: 0 0 0 4px rgba(22, 132, 91, .12); }
.status-dot.warning { background: var(--amber); }
.status-dot.critical { background: var(--red); box-shadow: 0 0 0 4px rgba(181, 59, 53, .12); }
.status-dot.unknown { background: #44313a; }
.status-list { display: grid; gap: 0; margin: 1rem 0; }
.status-list div { display: grid; grid-template-columns: 110px 1fr; gap: .7rem; padding: .55rem 0; border-top: 1px solid #31262b; }
.status-list dt { font-size: .72rem; color: var(--muted); text-transform: uppercase; letter-spacing: .05em; }
.status-list dd { margin: 0; font-size: .86rem; font-weight: 700; }
.pill { display: inline-flex; border-radius: 99px; background: #100c0e; color: #a48995; padding: .25rem .55rem; font-size: .68rem; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; white-space: nowrap; }
.pill.pass, .pill.accepted, .pill.confirmed { color: var(--green); background: #140b0f; }
.pill.healthy, .pill.ready, .pill.sent, .pill.completed { color: var(--green); background: #140b0f; }
.pill.blocked, .pill.failed, .pill.dispatch_failed { color: var(--red); background: #11090d; }
.pill.critical { color: var(--red); background: #11090d; }
.pill.warning, .pill.not_configured { color: var(--amber); background: #160c10; }
.pill.incomplete, .pill.unknown, .pill.building { color: #ce578d; background: #100c0e; }
.pill.degraded, .pill.connecting, .pill.requested, .pill.failover { color: var(--amber); background: #160c10; }
.list-card { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 0; border-top: 1px solid var(--line); }
.list-card p { margin-bottom: .3rem; font-size: .85rem; }
.inline-form { display: flex; align-items: end; gap: .6rem; flex-wrap: wrap; }
.inline-form label { min-width: 140px; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; font-size: .82rem; }
th { text-align: left; font-size: .68rem; color: var(--muted); text-transform: uppercase; letter-spacing: .06em; padding: .7rem; border-bottom: 1px solid var(--line); }
td { padding: .8rem .7rem; border-bottom: 1px solid #31262b; vertical-align: top; }
.truncate { max-width: 260px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.toolbar { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: .8rem; box-shadow: none; }
.validation-summary { display: grid; gap: .2rem; border-left: 3px solid; padding-left: .8rem; min-width: 180px; }
.validation-summary.valid { border-color: var(--green); color: var(--green); }
.validation-summary.invalid { border-color: var(--red); color: var(--red); }
.validation-summary span { color: var(--muted); font-size: .72rem; }
.issue-strip { display: flex; gap: .5rem; overflow-x: auto; margin-bottom: .8rem; }
.issue-strip span { white-space: nowrap; background: #11090d; color: #a08b95; border-radius: 6px; padding: .45rem .65rem; font-size: .72rem; }
.schedule-layout { display: grid; grid-template-columns: minmax(260px, 320px) minmax(0, 1fr); gap: 1rem; align-items: start; }
.rundown .section-title { margin-bottom: .8rem; }
.rundown .section-title p { margin: 0; color: var(--muted); font-size: .8rem; }
#reorder-form { display: flex; justify-content: flex-end; margin-bottom: .7rem; }
.rundown-list { display: grid; gap: .35rem; }
.rundown-event { display: grid; grid-template-columns: 24px 150px minmax(0, 1fr) 34px; align-items: center; gap: .7rem; padding: .65rem .55rem; border: 1px solid var(--line); border-radius: 8px; background: #090608; }
.rundown-event.dragging { opacity: .45; border-color: var(--cyan); }
.rundown-event time { font-size: .73rem; color: var(--muted); font-variant-numeric: tabular-nums; }
.rundown-event strong { font-size: .84rem; }
.drag-handle { color: #d673a0; cursor: grab; }
.icon-button { border: 0; background: transparent; color: #b58482; font-size: 1.3rem; cursor: pointer; }
.feed-panel { margin-top: 1rem; display: flex; justify-content: space-between; align-items: center; }
.feed-panel p { margin: 0; color: var(--muted); font-size: .8rem; }
.feed-panel > div:last-child { display: flex; gap: 1rem; }
.alert { border-radius: 8px; padding: .8rem 1rem; margin-bottom: 1rem; font-size: .85rem; border: 1px solid; }
.alert.success { color: #89707c; border-color: #31262b; background: #120a0e; }
.alert.warning { color: #fc0072; border-color: #31262b; background: #11090d; }
.alert.danger { color: #a08b95; border-color: #31262b; background: #10090c; }
.empty { text-align: center; padding: 4rem 1.5rem; }
.empty-inline { color: var(--muted); text-align: center; padding: 2rem; }
.warning-copy { color: #a08b95; background: #10090c; border-radius: 8px; padding: .8rem; font-size: .82rem; }
.state-cluster, .endpoint-actions { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; }
.phase2-grid { display: grid; grid-template-columns: minmax(280px, .72fr) minmax(460px, 1.28fr); gap: 1rem; align-items: start; }
.phase3-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; align-items: start; margin-top: 1rem; }
.distribution-layout { display: grid; grid-template-columns: minmax(300px, .62fr) minmax(520px, 1.38fr); gap: 1rem; align-items: start; }
.metadata-form { margin-top: 1rem; }
.compact-form { padding-bottom: 1rem; margin-bottom: .2rem; border-bottom: 1px solid var(--line); }
.paired-input { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; }
.checkbox-line { display: flex; align-items: center; gap: .55rem; }
.checkbox-line input { width: auto; }
.metadata-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .8rem 0; border-bottom: 1px solid #31262b; }
.metadata-row strong { font-size: .84rem; }
.metadata-row small { max-width: 620px; overflow-wrap: anywhere; }
.delete-related { flex: 0 0 auto; }
.profile-card { padding: .95rem 0; border-top: 1px solid var(--line); }
.profile-card h3 { display: flex; align-items: center; gap: .55rem; flex-wrap: wrap; }
.profile-card p { margin-bottom: .25rem; color: var(--muted); font-size: .84rem; }
.acceptance-notice { margin-top: 1rem; border-left: 4px solid var(--amber); box-shadow: none; }
.acceptance-notice p { margin: 0; color: #a08b95; }
.endpoint-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 1rem; }
.endpoint-card { display: flex; justify-content: space-between; align-items: center; gap: 1rem; border-top: 1px solid var(--line); padding: .9rem 0; }
.endpoint-card h3 { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; }
.endpoint-card p, .section-title p { color: var(--muted); font-size: .8rem; margin: 0; }
.check-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .7rem; }
.check-grid label { display: flex; align-items: center; gap: .5rem; padding: .65rem; border: 1px solid var(--line); border-radius: 8px; font-weight: 700; }
.check-grid input { width: auto; }
.form-grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.setup-panel { margin-top: 1rem; }
.setup-panel summary { cursor: pointer; font-weight: 800; }
.details-body { margin-top: 1.2rem; }
.live-schedule-section, .settings-rule-section { margin-top: 1rem; }
.sub-header { display: flex; justify-content: space-between; align-items: end; margin: 2rem 0 1rem; }
.sub-header h2 { font-size: 1.55rem; margin: 0; }
.incident-panel { margin-top: 1rem; }
.incident-row { display: grid; grid-template-columns: 8px minmax(0, 1fr) auto; align-items: center; gap: .85rem; padding: .9rem 0; border-top: 1px solid var(--line); }
.incident-row .severity-marker { width: 8px; height: 100%; min-height: 48px; border-radius: 8px; background: var(--amber); }
.incident-row.critical .severity-marker { background: var(--red); }
.incident-row p { color: var(--muted); font-size: .83rem; margin: 0; }
.incident-layout { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(300px, .6fr); gap: 1rem; align-items: start; }
.timeline { display: grid; }
.timeline article { display: grid; grid-template-columns: 16px 1fr; gap: .8rem; position: relative; padding-bottom: 1.25rem; }
.timeline article > span { width: 12px; height: 12px; border: 3px solid var(--cyan); background: #090608; border-radius: 50%; margin-top: .18rem; z-index: 1; }
.timeline article:not(:last-child)::before { content: ""; position: absolute; left: 5px; top: 12px; bottom: 0; width: 2px; background: var(--line); }
.timeline p { margin: .25rem 0; color: #a98796; font-size: .86rem; }
.metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin-bottom: 1rem; }
.metric-grid article { display: grid; gap: .3rem; box-shadow: none; }
.metric-grid span { color: var(--muted); font-size: .72rem; text-transform: uppercase; letter-spacing: .05em; }
.metric-grid strong { font-size: 1.8rem; }
.report-section { margin-top: 1rem; }
.header-actions { display: flex; align-items: center; gap: .65rem; flex-wrap: wrap; }
.header-actions form { margin: 0; }
progress { width: 100%; height: 8px; border: 0; border-radius: 99px; overflow: hidden; accent-color: #ed3a8b; }
progress::-webkit-progress-bar { background: #120d0f; border-radius: 99px; }
progress::-webkit-progress-value { background: linear-gradient(90deg, #492736, #d40663); border-radius: 99px; }

/* Phase 4: visual content studio */
.studio-header { padding: 1.1rem 1.25rem; border: 1px solid #31262b; border-radius: 18px; background: radial-gradient(circle at 88% -40%, rgba(237, 58, 139, .19), transparent 42%), linear-gradient(135deg, #090608 0%, #0c0709 100%); }
.studio-scoreboard { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .8rem; margin-bottom: 1rem; }
.studio-scoreboard article { position: relative; overflow: hidden; display: grid; gap: .2rem; min-height: 100px; padding: 1.1rem 1.2rem; color: #fff; border-radius: 14px; background: linear-gradient(145deg, #331724, #4b2536); box-shadow: 0 13px 32px rgba(51, 22, 35, .16); }
.studio-scoreboard article:nth-child(2) { background: linear-gradient(145deg, #ce3278, #3c202d); }
.studio-scoreboard article:nth-child(3) { background: linear-gradient(145deg, #ca4f17, #f97316); }
.studio-scoreboard article:nth-child(4) { background: linear-gradient(145deg, #7b083c, #d40663); }
.studio-scoreboard article::after { content: "✦"; position: absolute; right: 13px; bottom: -13px; color: rgba(255,255,255,.16); font-size: 4.5rem; }
.studio-scoreboard strong { font-size: 2rem; line-height: 1; }
.studio-scoreboard span { color: rgba(255,255,255,.76); font-size: .75rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.content-studio-layout { display: grid; grid-template-columns: minmax(230px, 285px) minmax(0, 1fr); gap: 1rem; align-items: start; }
.studio-sidebar { position: sticky; top: 1rem; max-height: calc(100vh - 2rem); overflow-y: auto; padding: 1rem; box-shadow: 0 10px 32px rgba(55, 26, 39, .08); }
.studio-nav-title { display: flex; justify-content: space-between; align-items: center; gap: .5rem; margin: .3rem .2rem .55rem; }
.studio-nav-title h2, .studio-nav-title h3 { margin: 0; }
.studio-nav-title h3 { color: #ce578d; font-size: .67rem; letter-spacing: .08em; text-transform: uppercase; }
.studio-nav { display: grid; gap: .22rem; margin-bottom: .9rem; }
.studio-nav a { display: grid; grid-template-columns: 20px minmax(0, 1fr) auto; align-items: center; gap: .45rem; padding: .55rem .6rem; color: #a88796; border-radius: 8px; font-size: .79rem; font-weight: 750; }
.studio-nav a:hover, .studio-nav a.active { color: #da2f7c; background: #10080c; }
.studio-nav a.nested { margin-left: .9rem; border-left: 2px solid #31262b; border-radius: 0 8px 8px 0; }
.studio-nav a small { margin: 0; font-size: .67rem; }
.studio-create { border-top: 1px solid #31262b; padding: .6rem .2rem .7rem; }
.studio-create summary { color: #d5528d; cursor: pointer; font-size: .75rem; font-weight: 850; }
.studio-create[open] summary { margin-bottom: .8rem; }
.compact-stack { gap: .65rem; }
.tag-cloud { display: flex; flex-wrap: wrap; gap: .35rem; margin: 0 0 .7rem; }
.tag-cloud a { display: inline-flex; align-items: center; gap: .3rem; padding: .34rem .48rem; color: #bb668c; background: #11090c; border-radius: 99px; font-size: .7rem; font-weight: 800; }
.tag-cloud a.active { color: #fff; background: #91144c; }
.tag-cloud small { display: inline; margin: 0; color: inherit; }
.studio-empty-note { color: var(--muted); font-size: .75rem; padding: .5rem; }
.studio-main { min-width: 0; }
.studio-toolbar { margin-bottom: .75rem; padding: .85rem; box-shadow: none; }
.studio-search { display: grid; grid-template-columns: minmax(220px, 1fr) 180px auto; align-items: end; gap: .65rem; }
.studio-search label span { font-size: .72rem; }
.organizer-bar { position: sticky; z-index: 4; top: .5rem; display: grid; grid-template-columns: minmax(150px, 1fr) repeat(3, minmax(120px, .7fr) auto); align-items: end; gap: .45rem; margin-bottom: .9rem; padding: .75rem; border-color: #31262b; background: rgba(29, 22, 25, .96); box-shadow: 0 12px 35px rgba(129, 45, 83, .12); backdrop-filter: blur(12px); }
.organizer-bar label { font-size: .68rem; }
.organizer-bar .selection-count { color: #d5528d; }
.asset-poster-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: .85rem; }
.asset-poster-card { position: relative; min-width: 0; overflow: hidden; border: 1px solid #31262b; border-radius: 14px; background: #090608; box-shadow: 0 8px 24px rgba(55, 22, 37, .08); transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.asset-poster-card:hover { transform: translateY(-3px); border-color: #31262b; box-shadow: 0 17px 35px rgba(78, 28, 50, .14); }
.asset-poster-card.selected { border-color: #31262b; box-shadow: 0 0 0 3px rgba(237, 58, 139, .14), 0 17px 35px rgba(78, 28, 50, .14); }
.asset-select { position: absolute; z-index: 2; top: .55rem; left: .55rem; display: flex; grid-auto-flow: column; align-items: center; gap: .3rem; padding: .32rem .48rem; color: #fff; background: rgba(29, 11, 19, .76); border-radius: 99px; font-size: .64rem; cursor: pointer; backdrop-filter: blur(8px); }
.asset-select input { width: auto; }
.asset-art { position: relative; display: grid; place-items: center; aspect-ratio: 16/10; overflow: hidden; color: #fff; background: radial-gradient(circle at 75% 20%, #492736, transparent 35%), linear-gradient(145deg, #2e131f, #54263b); }
.asset-art img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.asset-poster-card:hover .asset-art img { transform: scale(1.04); }
.asset-art > span { font-size: 3rem; font-weight: 950; color: rgba(255,255,255,.8); }
.asset-art em { position: absolute; right: .55rem; bottom: .5rem; padding: .24rem .4rem; color: #fff; background: rgba(27, 10, 18, .72); border-radius: 5px; font-size: .59rem; font-style: normal; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.asset-card-copy { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .5rem; padding: .75rem .75rem .3rem; }
.asset-card-copy strong { display: block; overflow: hidden; color: #c987a5; text-overflow: ellipsis; white-space: nowrap; }
.favorite-button { border: 0; color: #df8fb3; background: transparent; cursor: pointer; font-size: 1.15rem; }
.favorite-button.active { color: #f43f5e; filter: drop-shadow(0 2px 5px rgba(244,63,94,.28)); }
.asset-badges { display: flex; gap: .3rem; padding: .25rem .75rem; }
.asset-tags { overflow: hidden; margin: 0; padding: .1rem .75rem; text-overflow: ellipsis; white-space: nowrap; }
.completion-meter { padding: .55rem .75rem .8rem; }
.completion-meter > span { display: flex; justify-content: space-between; color: #ce578d; font-size: .67rem; }
.completion-meter progress { height: 6px; }
.register-title { margin-top: 1rem; }
.register-title summary { cursor: pointer; font-weight: 850; }
.studio-empty { grid-column: 1 / -1; }

/* Phase 4: playlists and channel identity */
.playlist-hero { display: flex; align-items: center; gap: 1rem; margin-bottom: 1rem; color: #fff; border: 0; background: radial-gradient(circle at 85% 20%, rgba(249,115,22,.5), transparent 34%), linear-gradient(135deg, #3f1025, #d92878); }
.playlist-mark { display: grid; place-items: center; flex: 0 0 64px; width: 64px; height: 64px; border-radius: 20px; background: rgba(255,255,255,.16); font-size: 1.45rem; }
.playlist-hero h2 { margin: .5rem 0 .25rem; font-size: 1.5rem; }
.playlist-hero p { margin: 0; color: rgba(255,255,255,.74); }
.playlist-hero .pill { color: #dd498c; background: #090608; }
.playlist-workspace { margin-top: 1rem; }
.playlist-sequence { display: grid; gap: .45rem; }
.playlist-order-form { display: flex; justify-content: flex-end; }
#playlist-order-list { display: grid; gap: .45rem; }
.playlist-item { display: grid; grid-template-columns: 34px 58px minmax(0, 1fr) 32px; align-items: center; gap: .65rem; padding: .5rem; border: 1px solid #31262b; border-radius: 11px; background: #0b0609; }
.playlist-item[draggable="true"] { cursor: grab; }
.playlist-item.dragging { opacity: .45; border-color: #31262b; }
.sequence-number { display: grid; place-items: center; width: 30px; height: 30px; color: #d5528d; background: #11090d; border-radius: 9px; font-size: .72rem; font-weight: 900; }
.mini-art { display: grid; place-items: center; width: 58px; aspect-ratio: 16/10; overflow: hidden; color: #fff; background: linear-gradient(135deg, #dd3480, #ef7c26); border-radius: 8px; font-weight: 900; }
.mini-art img { width: 100%; height: 100%; object-fit: cover; }
.channel-list-identity { display: flex; align-items: center; gap: .8rem; }
.channel-list-identity > img, .channel-list-identity > span { display: grid; place-items: center; width: 58px; height: 58px; object-fit: contain; color: #fff; background: linear-gradient(135deg, #ce3278, #bd115e); border-radius: 13px; font-weight: 950; }
.dashboard-channel-brand { position: relative; isolation: isolate; overflow: hidden; min-height: 108px; margin: -1.25rem -1.25rem 1rem; padding: 1rem; color: #fff; background: radial-gradient(circle at 78% 0, #4d2939, transparent 38%), linear-gradient(135deg, #381424, #5e2d43); border-radius: 12px 12px 0 0; }
.dashboard-channel-brand > img { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .6; }
.dashboard-channel-brand::after { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(29, 11, 19, .9), rgba(29, 11, 19, .3)); }
.dashboard-channel-brand > div { display: flex; flex-direction: column; align-items: flex-start; gap: .5rem; }
.dashboard-channel-brand div > img, .dashboard-channel-brand div > span { display: grid; place-items: center; max-width: 150px; width: auto; height: 42px; object-fit: contain; object-position: left; color: #fff; border-radius: 9px; font-weight: 950; }
.dashboard-channel-brand div > span { width: 42px; background: linear-gradient(135deg, #432432, #c51162); }
.dashboard-channel-brand p { margin: 0; color: rgba(255,255,255,.75); font-size: .74rem; }
.channel-card-actions { display: flex; justify-content: space-between; gap: .7rem; font-size: .8rem; font-weight: 800; }
.channel-brand-hero { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0, 1fr) 220px; align-items: end; min-height: 300px; overflow: hidden; margin-bottom: 1rem; padding: clamp(1.2rem, 3vw, 2.1rem); color: #fff; border-radius: 20px; background: radial-gradient(circle at 74% 18%, #4a2837, transparent 35%), linear-gradient(135deg, #2f121f, #57263c); box-shadow: 0 20px 50px rgba(39, 13, 25, .2); }
.channel-hero-art, .channel-hero-shade { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.channel-hero-shade { z-index: -1; background: linear-gradient(90deg, rgba(24, 8, 15, .93), rgba(24, 8, 15, .58) 55%, rgba(24, 8, 15, .8)); }
.channel-hero-copy { max-width: 710px; }
.channel-hero-copy h2 { margin: .4rem 0; font-size: clamp(2rem, 5vw, 4.2rem); letter-spacing: -.05em; }
.channel-hero-copy > p:not(.eyebrow) { max-width: 600px; color: rgba(255,255,255,.78); font-size: 1.05rem; }
.channel-logo { max-width: 220px; max-height: 72px; object-fit: contain; object-position: left bottom; }
.channel-logo-placeholder { display: grid; place-items: center; width: 68px; height: 68px; color: #fff; background: linear-gradient(135deg, #492736, #d40663); border-radius: 17px; font-size: 1.4rem; font-weight: 950; }
.hero-readiness { display: grid; gap: .45rem; align-self: center; padding: 1rem; background: rgba(24, 8, 15, .62); border: 1px solid rgba(255,255,255,.18); border-radius: 15px; backdrop-filter: blur(12px); }
.hero-readiness strong { font-size: 2.3rem; line-height: 1; }
.hero-readiness span, .hero-readiness small { color: rgba(255,255,255,.72); }
.hero-readiness progress::-webkit-progress-bar { background: rgba(255,255,255,.17); }
.channel-workspace-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr); gap: 1rem; align-items: start; margin-bottom: 1rem; }
.readiness-panel .section-title > strong { color: #d5528d; font-size: 2rem; }
.readiness-checks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .45rem; margin-top: 1rem; }
.readiness-checks article { display: flex; align-items: center; gap: .55rem; padding: .6rem; color: #ce588d; border: 1px dashed #31262b; border-radius: 10px; }
.readiness-checks article > span { display: grid; place-items: center; flex: 0 0 27px; width: 27px; height: 27px; background: #100c0e; border-radius: 50%; font-weight: 900; }
.readiness-checks article.complete { color: #f02b84; border-style: solid; border-color: #31262b; background: #10090c; }
.readiness-checks article.complete > span { color: #fff; background: #16a36e; }
.rail-form { margin: .9rem 0; }
.rail-row { display: grid; grid-template-columns: 36px minmax(0, 1fr) auto; align-items: center; gap: .65rem; padding: .65rem 0; border-top: 1px solid var(--line); }
.rail-row > span { display: grid; place-items: center; width: 34px; height: 34px; color: #d5528d; background: #10090c; border-radius: 9px; }
.feed-hub article { display: grid; grid-template-columns: 46px minmax(0, 1fr) auto; align-items: center; gap: .7rem; padding: .75rem 0; border-top: 1px solid var(--line); }
.feed-hub article > span { display: grid; place-items: center; width: 42px; height: 32px; color: #ce578d; background: #11090c; border-radius: 8px; font-size: .65rem; font-weight: 950; }
.feed-hub article.ready-feed > span { color: #f22783; background: #140b0f; }
.feed-hub code { display: block; overflow: hidden; margin-top: .25rem; color: #ce578d; font-size: .66rem; text-overflow: ellipsis; white-space: nowrap; }
.live-dot { color: #f32581; font-size: .65rem; font-weight: 950; letter-spacing: .07em; }
.live-dot::before { content: ""; display: inline-block; width: 7px; height: 7px; margin-right: .35rem; background: #14b87c; border-radius: 50%; box-shadow: 0 0 0 4px rgba(20,184,124,.13); }
.platform-launchpad { margin-top: 1rem; overflow: hidden; background: radial-gradient(circle at 100% 0, rgba(237, 58, 139, .08), transparent 35%), #090608; }
.platform-tile-grid, .distribution-platform-grid { display: grid; grid-template-columns: repeat(5, minmax(145px, 1fr)); gap: .65rem; margin-top: 1rem; }
.platform-tile-grid article, .distribution-platform-grid article { display: grid; align-content: start; min-height: 170px; padding: .85rem; border: 1px solid #31262b; border-radius: 13px; background: rgba(29, 22, 25, .82); transition: transform .18s ease, box-shadow .18s ease; }
.platform-tile-grid article:hover, .distribution-platform-grid article:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(76, 31, 51, .13); }
.platform-monogram { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: .7rem; color: #fff; background: linear-gradient(135deg, #d4367d, #c10a5c); border-radius: 11px; font-size: .72rem; font-weight: 950; letter-spacing: .05em; }
.platform-tile-grid h3, .distribution-platform-grid h2 { margin-bottom: .3rem; }
.platform-tile-grid p, .distribution-platform-grid p { min-height: 34px; margin: 0 0 .6rem; color: var(--muted); font-size: .73rem; }
.acceptance-footnote { margin: .8rem 0 0; color: #ce578d; font-size: .72rem; }

/* Phase 4: schedule canvas */
.canvas-header { padding-bottom: .35rem; }
.canvas-celebration { display: flex; justify-content: center; align-items: center; gap: 1.2rem; overflow: hidden; margin-bottom: 1rem; padding: .85rem 1rem; color: #fff; background: linear-gradient(100deg, #d74084, #c43a78 52%, #3c202d); border-radius: 14px; box-shadow: 0 12px 28px rgba(208, 55, 124, .2); }
.canvas-celebration > span { color: #ff8bbf; font-size: 1.5rem; }
.canvas-celebration p { margin: .15rem 0 0; color: rgba(255,255,255,.78); font-size: .78rem; }
.canvas-celebration.celebrate > span { animation: sparkle .9s ease-in-out 2; }
@keyframes sparkle { 50% { transform: rotate(45deg) scale(1.5); filter: drop-shadow(0 0 8px #ffa3cc); } }
.canvas-panel { margin-bottom: 1rem; background: linear-gradient(180deg, #090608, #0c0609); }
.canvas-board { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: .6rem; margin-top: .9rem; overflow-x: auto; }
.canvas-day { min-width: 180px; overflow: hidden; border: 1px solid #31262b; border-radius: 13px; background: #0e080a; }
.canvas-day > header { display: flex; justify-content: space-between; align-items: center; padding: .65rem .7rem .5rem; }
.canvas-day > header div { display: grid; }
.canvas-day > header strong { font-size: .9rem; }
.canvas-day > header span { color: var(--muted); font-size: .67rem; }
.canvas-day > header b { color: #d4538d; font-size: .78rem; }
.canvas-day > progress { display: block; height: 5px; border-radius: 0; }
.canvas-lane { display: grid; gap: .35rem; padding: .45rem; }
.canvas-event { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: .5rem; overflow: hidden; min-height: 56px; padding: .4rem; border: 1px solid #31262b; border-radius: 9px; background: #090608; box-shadow: 0 3px 10px rgba(55, 27, 40, .06); }
.canvas-event img, .canvas-art-placeholder { display: grid; place-items: center; width: 48px; height: 48px; object-fit: cover; color: #fff; background: linear-gradient(135deg, #d4357d, #bd0e5d); border-radius: 7px; font-size: .72rem; font-weight: 950; }
.canvas-event div { min-width: 0; }
.canvas-event time, .canvas-event small { display: block; color: #ce588d; font-size: .59rem; white-space: nowrap; }
.canvas-event strong { display: block; overflow: hidden; margin: .15rem 0; font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.canvas-gap { display: flex; align-items: center; gap: .45rem; min-height: 52px; padding: .45rem; color: #c6645e; border: 1px dashed #31262b; border-radius: 9px; background: repeating-linear-gradient(-45deg, #0d0709, #0d0709 8px, #11090c 8px, #11090c 16px); }
.canvas-gap > span { display: grid; place-items: center; width: 28px; height: 28px; background: #090608; border-radius: 50%; font-weight: 900; }
.canvas-gap strong, .canvas-gap small { display: block; font-size: .64rem; }
.content-tray { margin-bottom: 1rem; color: #fff; border: 0; background: radial-gradient(circle at 8% -40%, #432432, transparent 38%), linear-gradient(135deg, #311421, #53263a); }
.content-tray .section-title p, .content-tray .section-title a { color: #e299ba; }
.content-tray .eyebrow { color: #e1629b; }
.tray-scroll { display: flex; gap: .6rem; overflow-x: auto; padding: .8rem 0 .15rem; scrollbar-color: #7c5365 #3e1b2b; }
.tray-card { display: grid; grid-template-rows: 88px auto auto; flex: 0 0 150px; gap: .35rem; overflow: hidden; padding: .45rem; color: #fff; text-align: left; border: 1px solid #77455c; border-radius: 11px; background: #452031; cursor: grab; }
.tray-card:hover, .tray-card.active { border-color: #31262b; background: #57293e; transform: translateY(-2px); }
.tray-card img, .tray-card > span { display: grid; place-items: center; width: 100%; height: 88px; object-fit: cover; color: #fff; background: linear-gradient(135deg, #dc3a83, #4b2838); border-radius: 7px; font-size: 1.5rem; font-weight: 950; }
.tray-card strong { overflow: hidden; font-size: .72rem; text-overflow: ellipsis; white-space: nowrap; }
.tray-card small { overflow: hidden; margin: 0; color: #d97da6; font-size: .61rem; text-overflow: ellipsis; white-space: nowrap; }
.canvas-composer { border-color: #31262b; box-shadow: 0 14px 38px rgba(111, 40, 72, .12); }
.composer-heading { display: flex; gap: .65rem; align-items: center; margin-bottom: .8rem; }
.composer-heading > span { display: grid; place-items: center; width: 38px; height: 38px; color: #fff; background: linear-gradient(135deg, #d6387f, #c44980); border-radius: 11px; font-size: 1.2rem; }
.composer-heading h2, .composer-heading p { margin: 0; }
.composer-dropzone { padding: .65rem; border: 2px dashed #31262b; border-radius: 11px; transition: border-color .18s ease, background .18s ease; }
.composer-dropzone.drop-active { border-color: #31262b; background: #0e080b; }
.drop-hint { margin: -.2rem 0 0; padding: .45rem; color: #ce578d; background: #10090c; border-radius: 7px; font-size: .68rem; font-weight: 800; text-align: center; }
.playlist-drop-form { padding: .7rem; background: #0e080b; border: 1px solid #31262b; border-radius: 11px; }
.playlist-button { color: #fff; border-color: #e36b21; background: linear-gradient(135deg, #e6631c, #4c2939); }
.publish-button { color: #fff; border-color: #d84f8c; background: linear-gradient(100deg, #c63073, #b93c74); box-shadow: 0 8px 18px rgba(201, 51, 118, .22); }
.publish-button:disabled { color: #ce578d; border-color: #31262b; background: #100c0e; box-shadow: none; }

/* Phase 4: distribution launchpad */
.distribution-hero { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: .75rem; padding: 1.1rem 1.25rem; color: #fff; background: radial-gradient(circle at 10% 0, rgba(238, 68, 144, .75), transparent 30%), linear-gradient(110deg, #2c111d, #56273c); border-radius: 16px; box-shadow: 0 16px 38px rgba(45, 18, 30, .16); }
.distribution-hero > div { display: flex; align-items: center; gap: .75rem; }
.distribution-orbit { display: grid; place-items: center; width: 52px; height: 52px; background: linear-gradient(135deg, #432432, #c71263); border: 4px solid rgba(255,255,255,.14); border-radius: 50%; font-weight: 950; }
.distribution-hero p { margin: .2rem 0 0; color: #e29dbc; font-size: .77rem; }
.distribution-path span { color: #e6a8c4; font-size: .63rem; font-weight: 900; letter-spacing: .07em; }
.distribution-path i { width: 34px; height: 1px; background: linear-gradient(90deg, #462635, #ca256f); }
.distribution-platform-grid { margin: 0 0 1rem; }
.distribution-platform-grid article { min-height: 155px; background: #090608; box-shadow: 0 7px 20px rgba(52, 26, 38, .06); }

/* Cinematic Phase 4 workspace: editorial and entertainment, not back-office clinical. */
.page-library, .page-playlist, .page-channel, .page-schedule, .page-distribution { color-scheme: dark; background: #1a0911; }
.page-library .content, .page-playlist .content, .page-channel .content, .page-schedule .content, .page-distribution .content { min-height: 100vh; color: #fbeaf2; background: radial-gradient(circle at 78% -10%, rgba(210, 55, 125, .18), transparent 30%), radial-gradient(circle at 15% 18%, rgba(189, 8, 89, .08), transparent 24%), #1a0911; }
.page-library .page-header h1, .page-playlist .page-header h1, .page-channel .page-header h1, .page-schedule .page-header h1, .page-distribution .page-header h1 { color: #fff8fb; }
.page-library .lede, .page-playlist .lede, .page-channel .lede, .page-schedule .lede, .page-distribution .lede { color: #d97ca6; }
.page-library a, .page-playlist a, .page-channel a, .page-schedule a, .page-distribution a { color: #e65797; }
.page-library .panel, .page-playlist .panel, .page-channel .panel, .page-schedule .panel, .page-distribution .panel { color: #f9e8f0; border-color: #5f3146; background: linear-gradient(155deg, rgba(50, 22, 35, .98), rgba(38, 14, 25, .98)); box-shadow: 0 18px 45px rgba(0,0,0,.24); }
.page-library .panel h2, .page-library .panel h3, .page-playlist .panel h2, .page-channel .panel h2, .page-channel .panel h3, .page-schedule .panel h2, .page-schedule .panel h3, .page-distribution .panel h2, .page-distribution .panel h3 { color: #fcf5f8; }
.page-library .muted, .page-library small, .page-library .section-title p, .page-playlist .muted, .page-playlist small, .page-playlist .section-title p, .page-channel .muted, .page-channel small, .page-channel .section-title p, .page-schedule .muted, .page-schedule small, .page-schedule .section-title p, .page-distribution .muted, .page-distribution small, .page-distribution .section-title p { color: #d26697; }
.page-library input, .page-library select, .page-library textarea, .page-playlist input, .page-playlist select, .page-playlist textarea, .page-channel input, .page-channel select, .page-channel textarea, .page-schedule input, .page-schedule select, .page-schedule textarea, .page-distribution input, .page-distribution select, .page-distribution textarea { color: #ffedf5; border-color: #704056; background: #250c17; }
.page-library input::placeholder, .page-playlist input::placeholder, .page-channel input::placeholder, .page-schedule input::placeholder, .page-distribution input::placeholder, .page-distribution textarea::placeholder { color: #ce578d; }
.page-library label, .page-playlist label, .page-channel label, .page-schedule label, .page-distribution label { color: #e6aac5; }
input[type="color"] { min-height: 46px; padding: .28rem; cursor: pointer; }
.page-library hr, .page-playlist hr, .page-channel hr, .page-schedule hr, .page-distribution hr { border-color: #64364a; }
.page-library .button, .page-playlist .button, .page-channel .button, .page-schedule .button, .page-distribution .button { color: #f6dfe9; border-color: #7e4b62; background: #3a1928; }
.page-library .button:hover, .page-playlist .button:hover, .page-channel .button:hover, .page-schedule .button:hover, .page-distribution .button:hover { border-color: #ae8296; background: #4a2234; }
.page-library .button.primary, .page-playlist .button.primary, .page-channel .button.primary, .page-schedule .button.primary, .page-distribution .button.primary { color: #fff; border-color: #31262b; background: linear-gradient(110deg, #d0357b, #cf4583); box-shadow: 0 9px 23px rgba(198, 50, 117, .27); }
.page-library .button:disabled, .page-playlist .button:disabled, .page-channel .button:disabled, .page-schedule .button:disabled, .page-distribution .button:disabled { color: #ce578d; border-color: #633a4d; background: #2c111d; box-shadow: none; }
.page-library .pill, .page-playlist .pill, .page-channel .pill, .page-schedule .pill, .page-distribution .pill { color: #e6abc6; background: #492636; }
.page-library .pill.pass, .page-library .pill.ready, .page-library .pill.healthy, .page-playlist .pill.pass, .page-channel .pill.pass, .page-channel .pill.ready, .page-schedule .pill.pass, .page-distribution .pill.pass, .page-distribution .pill.ready { color: #72e1b5; background: rgba(20,132,91,.22); }
.page-library .pill.warning, .page-library .pill.incomplete, .page-channel .pill.warning, .page-channel .pill.incomplete, .page-schedule .pill.warning, .page-distribution .pill.warning, .page-distribution .pill.incomplete { color: #ff78b5; background: rgba(170, 0, 76, .22); }
.page-library .studio-header { border-color: #67384d; background: radial-gradient(circle at 88% -40%, rgba(242, 63, 144, .38), transparent 42%), linear-gradient(135deg, #30121f, #3b1828); }
.page-library .studio-sidebar { border-color: #67384d; background: linear-gradient(170deg, #30121f, #270e19); }
.page-library .studio-nav-title h3 { color: #c94580; }
.page-library .studio-nav a { color: #df92b5; }
.page-library .studio-nav a:hover, .page-library .studio-nav a.active { color: #fff; background: linear-gradient(90deg, rgba(221, 60, 132, .36), rgba(187, 30, 101, .16)); }
.page-library .studio-create { border-color: #5e3045; }
.page-library .studio-create summary { color: #ff95c5; }
.page-library .studio-toolbar { background: #2c101d; }
.page-library .organizer-bar { border-color: #853d5d; background: rgba(41, 15, 27, .96); box-shadow: 0 14px 36px rgba(0,0,0,.34); }
.page-library .asset-poster-card { color: #f9e8f0; border-color: #633349; background: #2d111e; box-shadow: 0 12px 30px rgba(0,0,0,.23); }
.page-library .asset-poster-card:hover { border-color: #31262b; box-shadow: 0 19px 40px rgba(0,0,0,.38); }
.page-library .asset-card-copy strong { color: #fbf3f7; }
.page-library .completion-meter > span { color: #d46c9b; }
.page-library .register-title { background: linear-gradient(145deg, #351724, #2b111d); }
.page-library .empty { color: #f5dbe7; border-color: #65384c; background: #2a101c; }
.page-playlist .playlist-hero { border-color: #c95a8c; background: radial-gradient(circle at 85% 20%, rgba(249,115,22,.58), transparent 34%), linear-gradient(135deg, #3f1025, #d92878); }
.page-playlist .playlist-item { color: #f8e6ee; border-color: #65384c; background: #2d111e; }
.page-playlist .sequence-number { color: #ffc2dd; background: #57243b; }
.page-channel .channel-workspace-grid .panel, .page-channel .platform-launchpad { background: linear-gradient(155deg, #341523, #290f1b); }
.page-channel .readiness-checks article { color: #d16193; border-color: #704659; }
.page-channel .readiness-checks article > span { background: #492636; }
.page-channel .readiness-checks article.complete { color: #80dfbc; border-color: #73284a; background: rgba(88, 13, 47, .24); }
.page-channel .rail-row, .page-channel .feed-hub article { border-color: #613549; }
.page-channel .feed-hub article > span { color: #ffb4d6; background: #53263a; }
.page-channel .feed-hub code { color: #cf5a8f; }
.page-channel .platform-tile-grid article { border-color: #65384c; background: #2b101c; }
.page-schedule .toolbar { background: linear-gradient(120deg, #311220, #3a1827); }
.page-schedule .canvas-panel { background: linear-gradient(180deg, #321421, #290f1b); }
.page-schedule .canvas-day { border-color: #64364a; background: #270d19; }
.page-schedule .canvas-event { border-color: #673b4f; background: #381726; box-shadow: 0 5px 14px rgba(0,0,0,.2); }
.page-schedule .canvas-event strong { color: #fbf1f5; }
.page-schedule .canvas-gap { color: #ffaaa2; border-color: #7e413f; background: repeating-linear-gradient(-45deg, #251a1f, #251a1f 8px, #301d26 8px, #301d26 16px); }
.page-schedule .canvas-gap > span { background: #3a232d; }
.page-schedule .composer-dropzone { border-color: #7c465e; }
.page-schedule .composer-dropzone.drop-active { border-color: #31262b; background: rgba(194, 57, 119, .16); }
.page-schedule .drop-hint { color: #fbb5d4; background: #472132; }
.page-schedule .playlist-drop-form { border-color: #744725; background: rgba(108,55,20,.2); }
.page-schedule .rundown-event { color: #f9eaf1; border-color: #66384d; background: #2f111e; }
.page-schedule .issue-strip span { color: #ffb0a9; background: #321d26; }
.page-distribution .distribution-platform-grid article { border-color: #64374b; background: linear-gradient(150deg, #381726, #29101b); box-shadow: 0 12px 28px rgba(0,0,0,.22); }
.page-distribution .profile-card, .page-distribution td, .page-distribution th { border-color: #623549; }
.page-distribution .profile-card p { color: #d46c9b; }
.page-distribution .acceptance-notice { border-color: #912656; background: linear-gradient(145deg, #211d1f, #21181c); }
.page-distribution .acceptance-notice p { color: #c7b68d; }
.install-shell, .login-shell { display: grid; place-items: center; min-height: 100vh; padding: 1.2rem; background: radial-gradient(circle at top right, #190d12, transparent 40%), var(--soft); }
.install-card, .login-card { width: min(700px, 100%); background: #090608; border: 1px solid var(--line); border-radius: 16px; padding: clamp(1.4rem, 5vw, 3rem); box-shadow: var(--shadow); }
.login-card { width: min(430px, 100%); }
@media (max-width: 900px) {
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { position: static; height: auto; }
  .sidebar nav { grid-template-columns: repeat(4, 1fr); }
  .sidebar-account { margin-top: 1rem; }
  .split-layout, .schedule-layout { grid-template-columns: 1fr; }
  .phase2-grid, .phase3-grid, .distribution-layout, .endpoint-grid, .incident-layout { grid-template-columns: 1fr; }
  .content-studio-layout, .channel-workspace-grid { grid-template-columns: 1fr; }
  .studio-sidebar { position: static; max-height: none; }
  .organizer-bar { position: static; grid-template-columns: repeat(3, minmax(120px, 1fr) auto); }
  .organizer-bar > div { grid-column: 1 / -1; }
  .platform-tile-grid, .distribution-platform-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .channel-brand-hero { grid-template-columns: 1fr; gap: 1rem; }
  .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .toolbar { align-items: stretch; flex-direction: column; }
}
@media (max-width: 600px) {
  .sidebar nav { grid-template-columns: repeat(2, 1fr); }
  .form-grid { grid-template-columns: 1fr; }
  .form-grid.three, .check-grid { grid-template-columns: 1fr; }
  .paired-input { grid-template-columns: 1fr; }
  .page-header, .feed-panel { align-items: stretch; flex-direction: column; }
  .studio-scoreboard { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .studio-search { grid-template-columns: 1fr; }
  .organizer-bar { grid-template-columns: 1fr auto; }
  .organizer-bar > div { grid-column: 1 / -1; }
  .distribution-hero { align-items: flex-start; flex-direction: column; }
  .distribution-path i { width: 18px; }
  .platform-tile-grid, .distribution-platform-grid { grid-template-columns: 1fr; }
  .readiness-checks { grid-template-columns: 1fr; }
  .rundown-event { grid-template-columns: 20px 1fr 30px; }
  .rundown-event time { grid-column: 2; }
}
