#vidaa-player-back { display:none; position:absolute; top:24px; left:24px; z-index:20; padding:12px 20px; background:#071522ef; border:1px solid #7395a7; border-radius:14px; color:#f4fbff; font-size:20px; }
body.fullscreen.vod-active #vidaa-player-back { display:block; visibility:visible; pointer-events:auto; }
#vidaa-player-back:focus { outline:3px solid #8cddd8; }
body.fullscreen.vod-active #playing-title { left:180px; top:38px; }
#tv-subtitle { unicode-bidi:plaintext; overflow-wrap:break-word; }
#msx-exit { font-size:1.2vw; }
html.anytv-native-video,html.anytv-native-video body{background:transparent}
#tv-compatibility{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483647;background:#071522;color:white;padding:12vh 10vw;font:2vw Arial,sans-serif}

/* TV details and instant focus navigation. */
#entries .poster{transition:none}#details .details-card{max-height:92vh;overflow-y:auto}#details .cast-section h2{font-size:1.5vw}.cast-rail{display:flex;overflow-x:auto;gap:1vw;padding:.5vw}.cast-person{flex:0 0 9vw;width:9vw;padding:.5vw;white-space:normal}.cast-person img{width:100%;height:10vw;object-fit:cover;border-radius:.5vw}.cast-person strong,.cast-person small{display:block;font-size:1vw}.cast-person small{color:#aec2d3;font-size:.85vw}.actor-title{display:block;width:100%;text-align:left;margin:.5vw 0}.cast-person:focus,.actor-title:focus{outline:3px solid #74e1ed;background:#134252}
/* Live TV: focus is a white frame; selection is white with black labels. */
#live #live-groups button,
#live #channels .channel { border:2px solid transparent; border-radius:.8vw; box-shadow:none; }
#live #live-groups button:focus,
#live #channels .channel:focus { outline:none; border-color:#fff; box-shadow:none; background:transparent; }
#live #live-groups button.selected,
#live #channels .channel.selected { background:#fff; color:#000; }
#live #live-groups button.selected span,
#live #live-groups button.selected small,
#live #channels .channel.selected strong,
#live #channels .channel.selected .number { color:#000; }
#live #live-groups button.selected:focus,
#live #channels .channel.selected:focus { background:#fff; color:#000; border-color:#fff; }
/* Remote-first channel reorder workspace. Normal Live TV keeps its existing layout. */
#reorder-title,#reorder-summary,#reorder-remote-hint,.channel .channel-grip,.channel .move-badge{display:none}
#live.reordering{grid-template-columns:14vw 35vw minmax(0,1fr);grid-template-rows:5vw minmax(0,1fr)3.6vw 4.3vw;gap:.85vw 1vw;padding:1.5vw 1.7vw 1.4vw 0;background:transparent}
#live.reordering #reorder-title{display:block;grid-column:1/4;grid-row:1;padding-left:.2vw;background:#030b15}
#reorder-title h1{margin:0;font-size:2.6vw;line-height:1.15}
#reorder-category{margin:.45vw 0 0;color:#aebdcb;font-size:1.25vw}
#live.reordering .live-categories{grid-column:1;grid-row:2;padding:.15vw 0;background:#06111d;overflow:hidden}
#live.reordering .live-categories>.rail-heading,#live.reordering #channel-search{display:none}
#live.reordering .live-categories .group-list{height:100%;margin:0;padding:0 .15vw}
#live.reordering #live-groups button{padding:.55vw .8vw;min-height:3.2vw;border:1px solid #5e7182;margin:0 0 .2vw;font-size:1.25vw;opacity:1}
#live.reordering #live-groups button small{font-size:1vw}
#live.reordering #live-groups button:not(.selected){color:#b6c0cc;background:#06111d}
#live.reordering .channel-panel{grid-column:2;grid-row:2;min-height:0;padding:.15vw .2vw;background:#03101b}
#live.reordering .channel-panel>.rail-heading{display:none}
#live.reordering #channels{padding:.15vw .2vw;scrollbar-width:none}
#live.reordering #channels .channel{border:1px solid #617586;background:#06131f;min-height:3.7vw;margin:0 0 .22vw;padding:.2vw .8vw;border-radius:.85vw;color:#fff;gap:.8vw}
#live.reordering #channels .channel .number{font-size:1.45vw;font-weight:bold;color:inherit;width:2.1vw;flex:none}
#live.reordering #channels .channel img{width:3.1vw;height:3.1vw;border-radius:.4vw}
#live.reordering #channels .channel strong{font-size:1.4vw;color:inherit;font-weight:bold;white-space:nowrap}
#live.reordering #channels .channel .channel-grip{display:block;color:#8fa4b5;font-size:1.8vw;line-height:1;flex:none}
#live.reordering #channels .channel.selected{color:#fff;background:#102334;border-color:#7b8e9d}
#live.reordering #channels .channel:focus{border-color:white;box-shadow:0 0 0 1px white;outline:none}
#live.reordering #channels .channel.grabbed{color:#07121c;background:#fff;border-color:white;box-shadow:0 0 0 2px #03101b,0 0 0 4px #fff}
#live.reordering #channels .channel.grabbed .number,#live.reordering #channels .channel.grabbed strong,#live.reordering #channels .channel.grabbed .channel-grip{color:#07121c}
#live.reordering #channels .channel.grabbed .move-badge{display:block;flex:none;background:#0879f5;color:white;padding:.2vw .4vw;font-size:.8vw;font-weight:bold;border-radius:.3vw}
#live.reordering #channels .channel.grabbed .channel-grip{font-size:1.35vw}
#live.reordering .live-detail{grid-column:3;grid-row:2;min-height:0;gap:.65vw;background:transparent}
#live.reordering #preview{height:21.5vw;border-radius:.9vw;pointer-events:none}
#live.reordering #preview-hint{font-size:1.15vw}
#live.reordering .live-badge{left:1vw;top:1vw;padding:.4vw .7vw;border-radius:.5vw;font-size:1.1vw}
#live.reordering .channel-info{min-height:3.4vw;max-height:3.4vw;padding:.4vw 1vw;background:#06131f;border-color:#617586}
#live.reordering .channel-info h2{font-size:1.4vw;margin:0}
#live.reordering .channel-info h2:before{content:'Now playing · ';font-weight:normal;color:#bcc7d1}
#live.reordering #channel-group,#live.reordering #favorite,#live.reordering #fullscreen,#live.reordering .epg{display:none}
#live.reordering #reorder-summary{display:flex;flex-direction:column;justify-content:center;min-height:0;flex:1;padding:1vw 1.3vw;background:#071522;border:1px solid #617586;border-radius:.9vw}
#reorder-name{font-size:1.5vw;margin:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
#reorder-position{font-size:1.2vw;color:#b7c4d0;margin:.4vw 0 .8vw}
#move-position{width:100%;padding:.7vw;font-size:1.25vw;font-weight:bold;background:transparent;border-color:#c4d0da}
#live.reordering #reorder-hint{background:transparent;border:0;margin:0;padding:0}
#live.reordering #reorder-hint strong{display:none}
#live.reordering #reorder-hint p{font-size:.85vw;line-height:1.15;margin:.4vw 0 0;color:#aabcca}
#live.reordering #reorder-remote-hint{display:flex;align-items:center;justify-content:center;grid-column:1/4;grid-row:3;border:1px solid #617586;border-radius:.8vw;background:#071522;font-size:1.3vw;font-weight:600;white-space:pre-wrap;padding:0 .8vw}
#live.reordering #reorder-actions{display:flex;align-items:center;justify-content:space-between;grid-column:1/4;grid-row:4;border:1px solid #617586;border-radius:.8vw;background:#071522;padding:.55vw .8vw;min-width:0}
#order-status{margin:0 .7vw;color:#b8c5d2;font-size:1.15vw;flex:1;min-width:0}
#live.reordering #reorder-actions .actions{margin:0;gap:.7vw;flex:none}
#live.reordering #reorder-actions button{padding:.65vw 1.35vw;min-width:12vw;font-size:1.3vw;font-weight:bold}
#live.reordering #save-order,#position-apply{background:#0879f5;color:#fff;border-color:#248bfd}
#live.reordering #cancel-order{background:transparent;border-color:#b6c5d0}
#live.reordering button:focus,#position-dialog button:focus,#position-dialog input:focus{outline:2px solid #fff;outline-offset:2px;border-color:#fff;box-shadow:none}
#position-dialog{z-index:50;background:rgba(0,6,13,.88);position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}
#position-dialog .position-card{width:37vw;border:2px solid #6a8193;background:#071522;border-radius:1.3vw;padding:2vw;box-shadow:0 1vw 4vw #000}
#position-dialog .eyebrow{font-size:.95vw;color:#6ab1ff;margin:0 0 .6vw}
#position-dialog h2{font-size:2vw;margin:.3vw 0 1.5vw}
#position-dialog label{display:block;font-size:1.15vw;color:#b4c6d5;margin-bottom:.7vw}
#position-value{display:block;width:100%;font-size:2.3vw;text-align:center;border-radius:.8vw;background:#03101b;color:#fff;border:2px solid #738c9f;padding:.7vw;appearance:textfield}
#position-value::-webkit-inner-spin-button,#position-value::-webkit-outer-spin-button{appearance:none;margin:0}
#position-error{min-height:1.5vw;color:#ffb6b6;font-size:1.1vw;margin:.6vw 0 0}
#position-dialog .actions{margin:1vw 0;justify-content:flex-end}
#position-dialog .actions button{flex:1;font-size:1.2vw;font-weight:bold}
#position-dialog .position-note{font-size:1vw;color:#aabcca;text-align:center;margin:1vw 0 0}

/* On-screen keypad works with arrow-only television remotes. */
#position-dialog .position-card{width:34vw;padding:1.4vw 1.8vw;max-height:94vh;overflow-y:auto}
#position-dialog h2{margin:.25vw 0 .8vw;font-size:1.8vw}
#position-dialog label{margin-bottom:.4vw}
#position-value{font-size:2vw;padding:.45vw}
#position-error{margin:.35vw 0;min-height:1.25vw;font-size:1vw}
#position-keypad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5vw;margin:.6vw 0 1vw}
#position-keypad button{height:3.1vw;padding:.3vw;font-size:1.5vw;background:#14283a;border-color:#5d778c;font-weight:bold}
#position-keypad button[data-position-action]{font-size:1.1vw}
#position-keypad button[data-position-action="delete"]{font-size:1.6vw}
#position-dialog .actions{margin:.6vw 0}
#position-dialog .position-note{margin:.6vw 0 0;font-size:.9vw}

#live.reordering #channels .channel.grabbed strong:before{content:none}

/* Compact live categories retain their readable labels and remote focus frame. */
#live:not(.reordering) #live-groups button{padding:.65vw .6vw;min-height:3.4vw;margin:0 0 .2vw;line-height:1.25}

/* Denser channel rows keep original logo and label sizes. */
#live:not(.reordering) #channels .channel{min-height:3.6vw;padding:.15vw .4vw;margin:0 0 .12vw}
#live #channels .channel img,#live #channels .channel .number{flex-shrink:0}

/* Clear playlist actions and stable focus for TV remote controls. */
#playlist header .actions{margin:0;flex-shrink:0;gap:.8vw}
#playlist header button{min-height:3.8vw;padding:.8vw 1.4vw;font-size:1.3vw;font-weight:700}
#playlist button:focus,#playlist summary:focus{outline:.18vw solid #fff;outline-offset:.18vw;box-shadow:none}
#playlist #cloud-refresh{background:#fff;color:#07121e;border-color:#fff}
#playlist #cloud-refresh[aria-busy="true"]{border-color:#88dedc}
#playlist .playlist-card{display:flex;align-items:center;justify-content:space-between;gap:1.5vw;padding:1.4vw 1.5vw;border:1px solid #263c52;border-radius:1vw;margin:.7vw 0}
#playlist .playlist-card.selected{border-color:#5da8ac;background:#102635}
#playlist .playlist-copy{min-width:0;flex:1}
#playlist .playlist-copy h2{font-size:1.55vw;margin:.55vw 0;overflow-wrap:break-word}
#playlist .playlist-copy p{margin:.35vw 0;font-size:1.05vw}
#playlist .playlist-card .actions{margin:0;gap:.65vw;flex-shrink:0}
#playlist .playlist-card button{min-height:3.5vw;padding:.7vw 1.05vw;font-size:1.15vw;font-weight:700;white-space:nowrap}
#playlist .playlist-delete{background:#231e2b;border-color:#655164;color:#ffced4}
#playlist .playlist-empty{align-items:flex-start}
#playlist #device-state{min-height:1.5vw;margin:1vw 0}
#playlist #manual-import{margin-top:1.2vw}
#playlist #manual-import summary{padding:.8vw;border-radius:.6vw}

/* Movies and series use the same selection colors as Live TV. */
#library #groups button{border:1px solid transparent;border-radius:.8vw;box-shadow:none}
#library #groups button:focus{outline:none;border-color:#fff;box-shadow:none;background:transparent}
#library #groups button.selected,#library #groups button.selected:focus{background:#fff;color:#000}
#library #groups button.selected span,#library #groups button.selected small{color:#000}

/* Keep actor focus tight to the portrait, with no outer card glow. */
#details .cast-person,#details .cast-person:focus{border-color:transparent;background:transparent;outline:none;box-shadow:none}
#details .cast-person img:not([hidden]){display:block;border:1px solid transparent;border-radius:.6vw;margin-bottom:.45vw}
#details .cast-person:focus img:not([hidden]){border-color:#fff}
#details .cast-person:focus>strong:first-child,#details .cast-person:focus img[hidden]+strong{outline:1px solid #fff;outline-offset:.15vw;border-radius:.3vw}

/* Actor filmography: roomy poster cards, with the same remote focus treatment. */
#details.actor-results .details-card{padding:2.2vw 2.4vw;background:linear-gradient(145deg,#10283a,#07121e 45%);min-height:34vw}
#details.actor-results #details-poster{left:2.4vw;top:2.2vw;width:6.4vw;height:9vw;object-fit:cover;border-radius:.7vw}
#details.actor-results .details-card>.eyebrow,#details.actor-results #details-title,#details.actor-results #details-meta,#details.actor-results #details-description{margin-left:8.2vw;margin-right:8vw}
#details.actor-results .details-card>.eyebrow{margin-top:.2vw;font-size:.9vw}
#details.actor-results #details-title{font-size:2.5vw;line-height:1.2;margin-top:.6vw;margin-bottom:.5vw}
#details.actor-results #details-meta{font-size:.9vw;letter-spacing:.08em;color:#8dd8d4}
#details.actor-results #details-description{font-size:1.1vw;margin-top:.8vw;margin-bottom:0;min-height:2.6vw}
#details.actor-results #details-watch{display:none}
#details.actor-results .details-card>.actions{position:absolute;top:2.2vw;right:2.4vw;margin:0}
#details.actor-results #details-close{font-size:1.05vw;border:1px solid #587081;border-radius:.6vw}
#details.actor-results #details-close:focus{border-color:#fff;box-shadow:none}
#details.actor-results #details-cast{margin-top:2vw}
#details.actor-results #details-cast h2{font-size:1.25vw;margin:0 0 1vw}
#details .actor-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.15vw;padding:.15vw}
#details .actor-title{display:block;width:100%;min-width:0;margin:0;padding:0;text-align:left;white-space:normal;background:#102332;border:1px solid #2a4354;border-radius:.8vw;overflow:hidden;outline:none;box-shadow:none}
#details .actor-title .art{height:24vw;border-radius:.7vw .7vw 0 0}
#details .actor-title .actor-caption{padding:.75vw .8vw .85vw}
#details .actor-title strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:1.15vw;line-height:1.4;min-height:3.22vw;color:#f4f8fc}
#details .actor-title small{display:block;margin-top:.35vw;font-size:.9vw;color:#a9bdcd}
#details .actor-title:focus{border-color:#fff;background:#18384a;outline:none;box-shadow:none}
#details .actor-more{display:block;margin:1.4vw auto .3vw;font-size:1.1vw;padding:.85vw 2vw;border:1px solid #466174}
#details .actor-more[hidden]{display:none}
#details .actor-more:focus{border-color:#fff;box-shadow:none}
