/* Focused TV setup and Playback workspaces. */
.tv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:20px;margin:24px 0}.tv-card,.playback-tv{min-width:0}.tv-card-heading,.tv-selected-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.tv-card h2,.playback-tv h2{font-size:19px;overflow-wrap:anywhere}.tv-number{display:block;font-size:36px;font-weight:700;letter-spacing:-1.5px;line-height:1.25;color:var(--green);margin-bottom:6px}.tv-card-status{display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:var(--muted);font-size:12px;margin:16px 0 22px}.tv-card-actions{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 12px}.tv-card-actions .button{min-height:44px}.screen-outline{display:flex;align-items:center;justify-content:center;border:3px solid #6c7c70;border-radius:6px;background:#edf2e5;color:#556852;font-size:11px;font-weight:700;flex-shrink:0}.screen-outline.landscape{width:80px;height:45px}.screen-outline.portrait{width:45px;height:80px}.screen-bottom{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;margin-top:18px}.phone-callout{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:26px}.phone-callout p{max-width:650px;margin-top:8px;color:var(--muted)}.phone-callout .button{flex-shrink:0}.phone-setup-guide{display:grid;grid-template-columns:180px minmax(0,1fr);gap:26px;align-items:start}.phone-setup-guide h3{margin:6px 0 12px}.phone-setup-guide p{margin-bottom:18px}.setup-qr{background:white;border:1px solid var(--line);border-radius:10px;padding:8px;max-width:220px}.setup-qr svg{display:block;width:100%;height:auto}.tv-name-preview{background:#eef3e6;border-radius:8px;padding:16px;margin:16px 0}.tv-name-preview strong{font-size:24px;color:var(--green)}.mobile-tv-picker,.setup-selected{margin-bottom:20px}.tv-selected-heading{justify-content:flex-start;border-bottom:1px solid var(--line);padding-bottom:22px}.tv-selected-heading>strong{font-size:46px;letter-spacing:-2px;color:var(--green)}.setup-selected h3{margin:18px 0 10px}.setup-selected p{margin-bottom:18px}.tv-pair-code{font-size:24px;letter-spacing:3px;text-transform:uppercase}.tv-form-error,.play-form-error{background:#fff0ec;color:#9b2c26;border:1px solid #e9b6af;border-radius:6px;padding:12px;margin:16px 0;overflow-wrap:anywhere}.tv-empty p{max-width:630px;margin:12px 0 20px}.tv-address input{font-size:12px}
.playback-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:10px 0 20px}.playback-toolbar .admin-tabs{margin:0}.playback-toolbar .button{font-size:12px}.calendar-first{max-width:750px;padding:34px}.calendar-first h2{font-size:30px;margin:15px 0}.calendar-first p{max-width:550px;margin-bottom:24px;color:var(--muted)}.week-options{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:20px 0}.week-options label{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:18px;font-size:16px;margin:0}.week-options input[type=radio]{width:20px;min-height:20px;margin:0;accent-color:var(--green)}.playback-now{background:#f0f4e9;padding:18px;border-radius:8px;margin:20px 0}.playback-now>span{display:block;text-transform:uppercase;font-size:10px;letter-spacing:1.3px;color:#65775d}.playback-now>strong{display:block;font-size:20px;margin:5px 0}.playback-now p{color:var(--muted);font-size:13px}.playback-tv>.section-heading{align-items:flex-start}.playback-tv .badge{flex-shrink:0}.campaign-card{margin-bottom:20px}.campaign-card .section-heading h2{font-size:22px;overflow-wrap:anywhere}.campaign-card .section-heading p{color:var(--muted);font-size:13px;margin-top:6px}.campaign-card>.billing-note{margin-top:8px}.campaign-targets{display:flex;flex-wrap:wrap;gap:7px;margin-top:17px}.calendar-tv-filter{max-width:330px}.campaign-calendar{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:white;margin:16px 0}.calendar-monthline{display:flex;align-items:center;justify-content:space-between;padding:12px;background:#f6f8f1;border-bottom:1px solid var(--line);gap:10px}.calendar-monthline h3{font-size:20px}.calendar-monthline button{min-width:44px;font-size:24px;min-height:44px;padding:0 12px}.campaign-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekday{text-align:center;font-size:11px;letter-spacing:.5px;text-transform:uppercase;font-weight:700;padding:12px 0;background:#fafbf7;color:#667360;border-bottom:1px solid var(--line)}.calendar-empty,.calendar-day{min-width:0;min-height:72px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#f7f8f4}.calendar-day{background:white}.calendar-day:nth-child(7n){border-right:0}.calendar-day>button{display:flex;flex-direction:column;align-items:flex-start;gap:5px;width:100%;height:100%;min-height:72px;padding:9px;overflow:hidden;text-align:left;position:relative}.calendar-day time{font-size:13px;font-weight:600;display:grid;place-items:center;min-width:25px;height:25px;border-radius:50%}.calendar-day.is-today time{box-shadow:0 0 0 2px var(--red);color:#b6151b}.calendar-day.is-selected{background:#e8efdc}.calendar-day.is-selected time{background:var(--green);color:white}.calendar-day>button:hover{background:#f0f4e9}.calendar-event{display:block;background:#e2ead8;color:#344a30;border-radius:3px;padding:3px 5px;font-size:10px;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-day small{font-size:10px}.playback-calendar-panel .calendar-day,.playback-calendar-panel .calendar-day>button{min-height:112px}.calendar-selection{padding:12px;border-radius:6px;background:#f3f6ec;font-size:12px;overflow-wrap:anywhere;margin:12px 0 20px}.calendar-pick-hint{margin:14px 0}.campaign-tv-options,.campaign-days,.campaign-time-field{border:1px solid var(--line);border-radius:8px;padding:15px;margin:18px 0;min-width:0}.campaign-tv-options legend,.campaign-days legend,.campaign-time-field legend{font-size:12px;font-weight:700;padding:0 6px}.campaign-tv-options{display:flex;gap:12px;flex-wrap:wrap}.campaign-tv-options label,.campaign-days label{display:flex;align-items:center;gap:9px;margin:0;font-weight:400;border:1px solid var(--line);padding:10px;border-radius:6px;min-height:44px}.campaign-days{display:flex;gap:8px;flex-wrap:wrap}.campaign-days label{padding:9px;font-size:12px}.campaign-all-day{display:flex;align-items:center;gap:10px;margin:20px 0}.campaign-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.campaign-time-field{margin:0 0 12px;padding:12px}.campaign-time-controls{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:7px}.campaign-time-controls label{font-size:10px;margin:0}.campaign-time-controls select{padding:8px 5px;font-size:13px;min-width:0}.playback-calendar-panel{margin:24px 0}.section-heading{gap:16px;flex-wrap:wrap}#campaign-form .schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}#campaign-form .schedule-grid input{min-width:0}
@media(max-width:700px){.phone-callout{display:block}.phone-callout .button{margin-top:18px}.phone-setup-guide{grid-template-columns:1fr}.phone-setup-guide .setup-qr{width:170px;margin:auto}.tv-grid{grid-template-columns:1fr}.tv-card-actions .button{flex-grow:1}.calendar-first{padding:25px}.calendar-first h2{font-size:26px}.playback-toolbar{display:block}.playback-toolbar>.button{margin-top:12px}.playback-toolbar .admin-tabs{display:flex;gap:5px}.playback-toolbar .admin-tabs button{padding:10px 12px;min-height:44px}.calendar-monthline{padding:9px}.calendar-monthline h3{font-size:18px}.calendar-day>button{padding:4px;min-height:53px}.calendar-day,.calendar-empty{min-height:53px}.calendar-day time{font-size:11px;min-width:22px;height:22px}.calendar-weekday{font-size:10px;padding:10px 0}.calendar-event{font-size:9px;padding:2px}.playback-calendar-panel .calendar-day,.playback-calendar-panel .calendar-day>button{min-height:86px}.campaign-time-grid{grid-template-columns:1fr}.campaign-card .section-heading h2{font-size:20px}.tv-selected-heading>strong{font-size:38px}#campaign-form .schedule-grid{grid-template-columns:1fr}.campaign-days{gap:6px}.campaign-days label{padding:8px}.week-options label{padding:16px}.mobile-tv-picker .section-heading h2{font-size:20px}}
.setup-picker{margin-bottom:20px}.setup-picker-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:18px}.setup-picker-fields label{min-width:0}.setup-selected #setup-player-link{font-size:22px;font-weight:700;color:var(--green);background:#eef3e6;min-height:58px}.setup-selected .tv-selected-heading{gap:16px;margin-bottom:12px;padding-bottom:14px}.setup-selected .tv-selected-heading>div{min-width:0;flex:1}.setup-selected .tv-selected-heading p{margin:6px 0 0;overflow-wrap:anywhere}.setup-selected .tv-selected-heading .screen-outline{width:48px;height:27px}.setup-selected .tv-selected-heading .screen-outline.portrait{width:27px;height:48px}.setup-address-label{margin:12px 0}.setup-advanced{border-top:1px solid var(--line);padding-top:14px;margin-top:16px}.setup-advanced summary{cursor:pointer;font-size:13px;font-weight:600}.setup-advanced p{margin:14px 0}.setup-empty p{margin-top:10px}.setup-picker .section-heading{margin-bottom:14px}@media(max-width:700px){.setup-picker-fields{grid-template-columns:1fr;gap:12px}.setup-picker{padding:18px;margin-bottom:14px}.setup-picker h2{font-size:18px}.setup-picker .section-heading{gap:10px}.setup-picker .button{padding:10px 12px;white-space:nowrap}.setup-selected{padding:18px}.setup-selected #setup-player-link{font-size:18px}.setup-selected .tv-selected-heading h2{font-size:18px}.setup-selected .tv-selected-heading p{font-size:12px}.setup-selected .tv-selected-heading>strong{font-size:34px}.setup-selected h3{font-size:17px}.setup-selected p{font-size:13px}}
.setup-picker .section-heading{flex-wrap:nowrap;align-items:center}.setup-picker .section-heading h2{min-width:0;margin-bottom:0}.setup-picker .section-heading .button{flex-shrink:0}.setup-picker-fields label{margin-bottom:0}
.setup-play-status{font-size:14px;font-weight:600;color:var(--green);margin:14px 0}.setup-selected~.panel .button:disabled{opacity:.5;cursor:not-allowed}

.alternating-sources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}
.topbar-left{display:flex;align-items:center;gap:12px;min-width:0}
.topbar-left .breadcrumbs{min-width:0;overflow-wrap:anywhere}
.workspace-back{width:44px;height:44px;flex:0 0 44px}
.workspace-back svg{width:20px;height:20px}
.workspace-back:disabled{opacity:.35;cursor:default}
@media(max-width:640px){.topbar-left{gap:6px}}
.alternating-source{border:1px solid var(--line);border-radius:8px;min-width:0;padding:10px 14px}
.alternating-source legend{font-weight:700;padding:0 4px}
.alternating-check{display:flex;align-items:center;gap:8px}
.playback-orientation{margin-bottom:24px}
.playback-orientation .playback-all{margin-bottom:12px}
.playback-orientation .playback-all p{margin-bottom:0}
.playback-all-disclosure{margin-bottom:12px}
.playback-all-disclosure summary{font-weight:700;cursor:pointer}
.playback-all-disclosure[open] summary{margin-bottom:12px}
#alternating-rotation-form .campaign-tv-options{margin:0 0 8px}
#alternating-rotation-form .schedule-grid{margin-top:16px}
#alternating-rotation-form + .tv-card-actions{margin-top:16px}
.hosting-gauges{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,205px),1fr));gap:12px}
.hosting-gauge{display:grid;align-content:start;gap:6px;border:1px solid var(--line);border-radius:9px;padding:16px;min-width:0;background:#f8faf5}
.hosting-gauge p,.hosting-gauge>small{color:var(--muted)}
.hosting-gauge strong{font-size:20px}
.hosting-gauge strong small{font-weight:400}
.hosting-gauge meter{width:100%;height:14px;--gauge-color:#26705a}
.hosting-gauge.elevated meter{--gauge-color:#ba7815}
.hosting-gauge.critical meter{--gauge-color:#bc322d}
.hosting-gauge meter::-webkit-meter-optimum-value{background:var(--gauge-color)}
.hosting-gauge meter::-moz-meter-bar{background:var(--gauge-color)}
.hosting-gauge.stale meter{opacity:.55}
@media(max-width:760px){.alternating-sources{grid-template-columns:1fr}}
.transition-controls-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:18px 0}.transition-controls-grid form{min-width:0}.transition-controls-grid h3{margin-bottom:12px}@media(max-width:700px){.transition-controls-grid{grid-template-columns:minmax(0,1fr)}}

/* Use a neutral state for pending or unavailable actions, including inert forms. */
.button:disabled,.button.primary:disabled:hover,.button[aria-busy="true"],[inert] .button,[inert] .button.primary:hover{
 background:#e1e4e0;color:#4d554f;border-color:#cbd1ca;box-shadow:none;opacity:1;cursor:wait;
}
.button:disabled:not([aria-busy="true"]){cursor:not-allowed}
[inert] .button{cursor:wait}
.playback-schedule-settings{margin-top:12px}
.playback-schedule-settings>summary{cursor:pointer;font-weight:600}
.playback-schedule-settings>label{margin-top:12px}
