/* Shared customer layout. Navigation, data and forms retain their existing behavior. */
.setup-library-toolbar { display:flex; align-items:flex-end; gap:20px; margin:28px 0 18px; }
.setup-library-search { display:grid; gap:10px; flex:1; max-width:660px; font-size:1rem; }
.setup-library-search input { width:100%; padding:14px 16px; color:var(--ink); background:var(--surface); border:1px solid var(--line); border-radius:10px; }
.setup-library-search input:focus-visible { outline:2px solid #79a6ff; outline-offset:2px; }
.setup-library-list { display:grid; gap:14px; }
.setup-library-card { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:26px; border:1px solid var(--line); border-radius:14px; background:var(--surface); }
.setup-library-identity { min-width:0; }
.setup-library-card h2 { margin:0 0 8px; font-size:1.15rem; line-height:1.4; overflow-wrap:anywhere; }
.setup-library-card p { margin:0 0 6px; font-size:1rem; color:var(--muted); overflow-wrap:anywhere; }
.setup-library-card small { font-size:.875rem; color:var(--muted); }
.setup-library-actions { display:flex; flex-shrink:0; align-items:center; gap:10px; }
.setup-library-actions button { white-space:nowrap; min-height:46px; }
.setup-library-back { margin-bottom:14px; }
#setup-library-status,#device-setup-load-status { color:var(--muted); font-size:1rem; line-height:1.5; }
#setup-library-more { margin-top:20px; }
.setup-library-help { margin-top:28px; color:var(--muted); }
.setup-catalog-prompt { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px; margin:20px 0; border:1px solid var(--line); border-radius:12px; background:var(--surface); }
.setup-catalog-prompt[hidden],#device-setup-load-status[hidden],#setup-library-more[hidden] { display:none; }
.experience-refresh #view-my-devices .panel-top { align-items:flex-start; gap:20px; flex-wrap:wrap; }
.experience-refresh #view-my-devices .panel-actions { flex:1; flex-wrap:wrap; gap:14px; }
.experience-refresh #view-my-devices .search-field { flex:1 1 260px; }
.experience-refresh #view-my-devices .search-field input { width:100%; }
.experience-refresh .device-table .portal-table-row { padding-block:20px; }
.experience-refresh .device-table :is(strong,small,.table-action-menu > summary) { font-size:.875rem; line-height:1.5; }
.experience-refresh .device-table .table-device-cell strong { font-size:1rem; white-space:normal; overflow:visible; text-overflow:clip; }
/* Saved setups and pending codes have no platform icon. Do not place their
   names in the 28px icon column inherited from activated-device rows. */
.device-table .managed-row .table-device-cell { grid-template-columns:minmax(0,1fr); gap:8px; min-width:0; align-content:start; }
.device-table .managed-row .table-device-cell > strong { grid-column:1; grid-row:1; min-width:0; white-space:normal; overflow-wrap:anywhere; }
.device-table .managed-row .table-device-cell > .status-pill { grid-column:1; grid-row:2; justify-self:start; max-width:100%; white-space:normal; overflow-wrap:anywhere; margin:0; }
.device-table .managed-row .table-device-cell > .device-list-summary { grid-column:1; grid-row:3; min-width:0; white-space:normal; overflow-wrap:anywhere; }
.experience-refresh .device-table .device-identity-detail { display:none; }
.experience-refresh .device-table .table-action-menu > summary { min-height:44px; }
.experience-refresh .device-table .portal-table-head { font-size:.8rem; }
.experience-refresh #view-my-devices .view-heading > .eyebrow,
.experience-refresh #view-my-devices .panel-top > div:first-child { display:none; }
.experience-refresh #view-my-devices .device-page-toolbar p { font-size:.875rem; line-height:1.5; }
@media(max-width:1000px) {
  .setup-library-card { align-items:flex-start; flex-direction:column; gap:18px; }
}
@media(max-width:600px) {
  .setup-library-toolbar { align-items:stretch; flex-direction:column; gap:12px; }
  .setup-library-card { padding:20px; }
  .setup-library-actions { display:grid; grid-template-columns:1fr 1fr; width:100%; }
  .setup-library-actions .button { grid-column:1 / -1; }
  .setup-catalog-prompt { align-items:stretch; flex-direction:column; }
  .experience-refresh #view-my-devices .panel-actions { display:grid; grid-template-columns:minmax(0,1fr) 44px; align-items:stretch; }
  .experience-refresh #view-my-devices .search-field { flex-basis:auto; }
  .experience-refresh #view-my-devices .panel-actions .search-field { grid-column:1; grid-row:1; }
  .experience-refresh #view-my-devices .panel-actions .button { grid-column:2; grid-row:1; width:44px; }
  .experience-refresh #view-my-devices .panel-actions .device-filter-select { grid-column:1 / -1; grid-row:2; }
  .experience-refresh #view-my-devices .panel-actions .device-sort-select { grid-column:1 / -1; grid-row:3; }
  .experience-refresh .device-table .table-action-menu > summary { width:44px; min-width:44px; min-height:44px; padding:0; font-size:0; color:var(--ink); }
  .experience-refresh .device-table .table-action-menu > summary::before { content:none; }
  .experience-refresh .device-table .table-action-menu > summary::after { content:'•••'; display:block; color:var(--ink); font-size:16px; line-height:1; }
  .experience-refresh .portal-mobile-nav button.is-active { color:#dfeaff; background:#1c3763; }
}
.public-page .site-nav a { min-height:44px; display:inline-flex; align-items:center; }
.public-page .comparison-intro { grid-template-columns:1fr; max-width:900px; }
.public-page .comparison-callout { display:none; }
.public-page .comparison-details > summary { padding:20px; min-height:60px; }
.public-page :is(.feature-grid,.features-grid,.platform-grid) { gap:24px; }
.auth-page :is(input,select,button) { font-size:16px; min-height:48px; }
.auth-page .auth-card { border-radius:16px; }
.admin-page .admin-nav a { min-height:46px; font-size:15px; }
.admin-page .toolbar { gap:16px; margin-bottom:20px; }
.admin-page :is(.toolbar__group,.row-actions,.table-actions) { gap:10px; }
.admin-page :is(input:not([type=checkbox]),select,.button) { min-height:44px; font-size:14px; }
.admin-page .data-table :is(th,td) { font-size:14px; padding:14px 16px; }
.admin-page .table-wrap { overscroll-behavior-x:contain; }
.admin-page .content { padding-bottom:40px; }
body.console-page.experience-refresh { font-size:16px; }
.experience-refresh .console-shell { grid-template-columns:232px minmax(0,1fr); }
.experience-refresh .console-content { min-width:0; grid-column:2; }
.experience-refresh .console-view.is-active { width:calc(100% - 64px); max-width:1440px; padding-top:28px; }
.experience-refresh .view-heading { margin-bottom:24px; }
.experience-refresh .view-heading h1 { font-size:clamp(26px,3vw,34px); line-height:1.2; letter-spacing:-.025em; }
.experience-refresh .view-heading p { max-width:65ch; line-height:1.6; }
.experience-refresh .console-nav button { min-height:46px; padding:12px 16px; font-size:15px; }
.experience-refresh .sidebar-help-card { display:none; }
.experience-refresh .portal-panel { padding:24px; border-radius:12px; box-shadow:none; }
.experience-refresh :is(.console-grid,.overview-direct-grid,.overview-shortcut-grid) { gap:20px; }
.experience-refresh .console-grid.two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.experience-refresh .overview-command-panel { display:flex; flex-wrap:wrap; gap:24px; padding:24px; }
.experience-refresh .overview-command-message { flex:1 1 360px; min-width:0; }
.experience-refresh .overview-command-detail { display:none; }
.experience-refresh .overview-command-actions { display:flex; flex-wrap:wrap; gap:12px; }
.experience-refresh .overview-direct-panel { margin-block:24px; }
.experience-refresh .overview-direct-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.experience-refresh .overview-direct-grid button { padding:20px; min-height:92px; }
.experience-refresh :is(.console-form,.shared-epg-form) label { font-size:15px; line-height:1.5; gap:8px; }
.experience-refresh :is(input:not([type=checkbox]),select,textarea) { min-height:46px; font-size:16px; }
.experience-refresh :is(.button,.plain-button,.icon-button) { min-height:44px; }
.experience-refresh :is(.panel-copy,.panel-intro,.empty-state,.account-plan-copy) { font-size:15px; line-height:1.6; }
.experience-refresh .source-setup-fields { gap:20px; }
.experience-refresh .setup-inline-help { font-size:15px; padding:16px 20px; }
.experience-refresh .setup-inline-help strong { display:none; }
.experience-refresh .settings-form { display:block; background:none; padding:0; border:0; }
.experience-settings-group,.experience-disclosure { margin:16px 0; border:1px solid var(--line); border-radius:12px; background:var(--surface); }
.experience-settings-group summary,.experience-disclosure > summary { padding:20px; font-size:16px; font-weight:650; cursor:pointer; }
.experience-settings-group > label { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; margin:0; padding:16px 20px; border-top:1px solid var(--line-soft); }
.experience-settings-group > label select { max-width:100%; }
.experience-settings-group > .check-row { justify-content:flex-start; }
.experience-disclosure > :not(summary) { margin:0; border:0; padding:20px; }
.experience-disclosure .editor-card h3 { display:none; }
.experience-account-status { margin:20px 32px; padding:20px; border:1px solid var(--line); background:var(--surface); display:flex; gap:16px; align-items:center; justify-content:space-between; }
.experience-refresh[data-account-load=error] #view-overview > :not(.view-heading),
.experience-refresh[data-account-load=loading] #view-overview > :not(.view-heading) { visibility:hidden; }
#account-feedback { position:fixed; z-index:1000; bottom:90px; left:50%; transform:translateX(-50%); width:min(580px,calc(100% - 32px)); display:flex; gap:16px; align-items:center; justify-content:space-between; padding:18px; border-radius:12px; background:#142b46; color:white; border:1px solid #547398; box-shadow:0 12px 36px #0005; font:16px/1.5 system-ui,sans-serif; }
#account-feedback button { color:white; background:none; border:1px solid #7890ad; border-radius:6px; padding:10px; cursor:pointer; }
.experience-refresh .experience-show-groups { display:none; }
body.experience-refresh.editor-focused:has(#view-categories.is-active) .console-content { grid-column:1; }
@media(max-width:1100px) {
  .experience-refresh .console-grid.two { grid-template-columns:1fr; }
  .experience-refresh .console-view.is-active { width:calc(100% - 40px); }
}
@media(max-width:900px) {
  .experience-refresh .console-shell { grid-template-columns:minmax(0,1fr); }
  .experience-refresh .console-content { grid-column:1; }
}
@media(max-width:760px) {
  .experience-refresh #view-categories .live-organizer-panel { padding:0; }
  .experience-refresh #view-categories .editor-focus-toggle { display:none; }
  .experience-refresh .workflow-tabs { display:flex; overflow-x:auto; justify-content:flex-start; }
  body.console-page.experience-refresh .workflow-tabs button { flex:0 0 auto; font-size:14px; min-width:0; padding:12px 16px; }
  .experience-refresh .workflow-tabs button::after { content:none !important; }
  .experience-refresh .playlist-context-strip { padding:12px; }
  .experience-refresh .playlist-context-strip > strong { display:none; }
  .experience-refresh #view-categories > .selection-toolbar { background:none; border:0; padding:0; margin:12px 0; }
  .experience-refresh #view-categories .live-organizer-category-list,
  .experience-refresh #view-categories .live-organizer-channel-list { max-height:none; }
  .experience-refresh #view-categories .live-organizer-category-row { grid-template-columns:24px minmax(0,1fr) 44px 44px 44px; gap:4px; padding-inline:10px; }
  .experience-refresh #view-categories .live-organizer-category-row--system { grid-template-columns:24px minmax(0,1fr); }
  .experience-refresh #view-categories .live-organizer-channel-row { grid-template-columns:24px minmax(0,1fr) 44px 44px 44px; gap:4px; }
  .experience-refresh #view-categories .live-organizer-row-count,
  .experience-refresh #view-categories .live-organizer-channel-position,
  .experience-refresh #view-categories .live-organizer-grip { display:none; }
  .experience-refresh .console-view.is-active { width:calc(100% - 32px); padding:20px 0 100px; }
  .experience-refresh .overview-direct-grid { grid-template-columns:1fr; }
  .experience-refresh .portal-panel { padding:20px; }
  .experience-refresh .source-setup-fields,.experience-refresh .shared-epg-form { grid-template-columns:1fr; }
  .experience-refresh .portal-mobile-nav { padding-bottom:env(safe-area-inset-bottom); }
  .experience-refresh .portal-mobile-nav button { min-height:56px; }
  .experience-refresh .editor-savebar { position:static; }
  .experience-refresh .editor-field { flex-wrap:wrap; }
  .experience-refresh .editor-field select { width:100%; max-width:100%; }
  .experience-refresh #view-categories:not(.mobile-channel-detail) .live-organizer-channels { display:none; }
  .experience-refresh #view-categories.mobile-channel-detail .live-organizer-categories { display:none; }
  .experience-refresh .experience-show-groups { display:block; padding:16px 20px; text-align:left; background:none; color:var(--ink); border:0; border-bottom:1px solid var(--line); min-height:52px; }
  .experience-refresh #view-categories .live-organizer-category-list { height:65dvh; }
  .experience-refresh .experience-account-status { margin:16px; flex-wrap:wrap; }
  .experience-settings-group > label { align-items:flex-start; }
}
.console-page #device-replacement-form { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
.console-page #device-replacement-form .checkbox-field { display:grid; grid-template-columns:24px minmax(0,1fr); align-items:start; gap:12px; padding:14px; border:1px solid var(--line); border-radius:10px; font-size:16px; line-height:1.5; font-weight:400; }
.console-page #device-replacement-form input[type="checkbox"] { width:20px; height:20px; min-height:20px; margin:2px 0 0; padding:0; }
.console-page #device-replacement-form .button.danger { color:#fff; background:#b42318; border-color:#b42318; min-height:48px; white-space:normal; }
#device-replacement-modal p { font-size:16px; line-height:1.55; overflow-wrap:anywhere; }
#device-replacement-form[hidden] { display:none !important; }
.console-page details.code-recovery-actions { display:block; }
.console-page details.code-recovery-actions > summary { cursor:pointer; min-height:44px; font-size:14px; }
.console-page details.code-recovery-actions > button { margin:6px 6px 0 0; }
.console-page .code-editor-note { font-size:14px; line-height:1.5; }
.console-page .code-editor-note a { color:var(--ink); text-decoration:underline; }
.account-capacity-stats > div:last-child { grid-column: 1 / -1; }
.account-capacity-stats #account-billing { white-space: normal; overflow-wrap: anywhere; }
.account-capacity-breakdown { margin: 0 0 20px; font-size: 1rem; line-height: 1.6; color: var(--muted); overflow-wrap: anywhere; }
.account-capacity-breakdown:empty { display: none; }
