:root {
  --rt-cyan: #0dcaf0;
  --rt-cyan-hi: #66dbf9;
  --rt-bg: #05070a;
  --rt-surface: #0b0f14;
  --rt-surface-2: #141922;
  --rt-text: #eef1f6;
  --rt-muted: #8a94a6;
  --rt-border: rgba(255,255,255,.10);
  --rt-shadow: 0 24px 56px -24px rgba(0,0,0,.72);
}

html { scroll-behavior: smooth; background: var(--rt-bg); }
body { min-height: 100vh; background: var(--rt-bg); color: var(--rt-text); }
body.rt-modal-open { overflow: hidden; }
button, input, select { font: inherit; }

.rt-app-shell { min-height: 100vh; background: var(--rt-bg); }
.rt-site-header { position: absolute; left: 0; right: 0; top: 0; z-index: 40; pointer-events: none; }
.rt-site-header.rt-solid { position: sticky; background: rgba(5,7,10,.82); backdrop-filter: blur(18px); border-bottom: 1px solid rgba(255,255,255,.06); }
.rt-header-shade { position: absolute; inset: -24px 0 auto; height: 144px; background: linear-gradient(to bottom, rgba(5,7,10,.82), rgba(5,7,10,.24), transparent); pointer-events: none; }
.rt-site-header .layout-container { pointer-events: auto; }
.rt-nav-link { display:flex; align-items:center; gap:6px; padding:7px 9px; border-radius:9px; color:#fff; font-size:14px; font-weight:500; transition:.2s ease; }
.rt-nav-link:hover { color: var(--rt-cyan); background: rgba(255,255,255,.08); }
.rt-nav-link svg, .rt-header-icon svg, .rt-dock-item svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.rt-header-icon { width:40px; height:40px; display:flex; align-items:center; justify-content:center; border-radius:999px; color:white; transition:.2s ease; }
.rt-header-icon:hover { background: rgba(255,255,255,.09); color:var(--rt-cyan); }

.rt-search-overlay { position:fixed; inset:0; z-index:100; display:grid; place-items:start center; padding:96px 16px 24px; opacity:0; visibility:hidden; transition:opacity .2s ease, visibility .2s ease; }
.rt-search-overlay.is-open { opacity:1; visibility:visible; }
.rt-search-backdrop { position:absolute; inset:0; width:100%; height:100%; background:rgba(0,0,0,.72); backdrop-filter:blur(10px); }
.rt-search-dialog { position:relative; z-index:1; width:min(720px,100%); border-radius:22px; border:1px solid rgba(255,255,255,.12); background:rgba(8,11,16,.94); box-shadow:var(--rt-shadow); padding:24px; }
.rt-search-head { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:22px; }
.rt-search-head h2 { font-size:24px; font-weight:650; letter-spacing:-.02em; }
.rt-kicker { color:var(--rt-cyan); font-size:11px; font-weight:800; letter-spacing:.16em; margin-bottom:5px; }
.rt-round-button { width:40px; height:40px; border-radius:999px; display:grid; place-items:center; color:white; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.06); font-size:25px; line-height:1; }
.rt-search-form { display:grid; grid-template-columns:1fr auto auto; gap:12px; align-items:center; }
.rt-search-input-wrap { min-height:48px; display:flex; align-items:center; gap:10px; border:1px solid rgba(255,255,255,.12); background:#0b0f14; border-radius:14px; padding:0 14px; }
.rt-search-input-wrap:focus-within { border-color:rgba(13,202,240,.7); box-shadow:0 0 0 3px rgba(13,202,240,.12); }
.rt-search-input-wrap svg { width:20px; height:20px; fill:none; stroke:var(--rt-muted); stroke-width:2; }
.rt-search-input-wrap input { width:100%; background:transparent; outline:none; color:white; }
.rt-primary-button { min-height:48px; padding:0 20px; border-radius:999px; background:var(--rt-cyan); color:#05070a; font-weight:700; transition:.2s; }
.rt-primary-button:hover { background:#66dbf9; box-shadow:0 0 26px rgba(13,202,240,.25); transform:translateY(-1px); }

/* Home hero */
.rt-hero { position:relative; min-height:85vh; display:flex; align-items:flex-end; background:var(--rt-bg); overflow:hidden; }
.rt-hero-slides { position:absolute; inset:0; }
.rt-hero-slide { position:absolute; inset:0; display:flex; align-items:flex-end; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .7s ease, visibility .7s step-end; }
.rt-hero-slide.is-active { opacity:1; visibility:visible; pointer-events:auto; transition:opacity .7s ease, visibility 0s step-start; }
.rt-hero-backdrop { position:absolute; inset:0; overflow:hidden; background:var(--rt-bg); }
.rt-hero-backdrop img { position:absolute; top:50%; right:0; width:60vw; max-width:none; height:112%; transform:translateY(-50%); object-fit:cover; object-position:center center; opacity:.92; }
.rt-hero-backdrop:before { content:""; position:absolute; z-index:1; inset:0; pointer-events:none; background:linear-gradient(90deg,var(--rt-bg) 0%,var(--rt-bg) 27%,color-mix(in srgb,var(--rt-bg) 98%,transparent) 36%,color-mix(in srgb,var(--rt-bg) 82%,transparent) 45%,color-mix(in srgb,var(--rt-bg) 46%,transparent) 56%,color-mix(in srgb,var(--rt-bg) 14%,transparent) 67%,transparent 78%); }
.rt-hero-backdrop:after { content:""; position:absolute; z-index:2; inset:0; pointer-events:none; background:linear-gradient(180deg,color-mix(in srgb,var(--rt-bg) 28%,transparent) 0%,transparent 13%,transparent 72%,color-mix(in srgb,var(--rt-bg) 78%,transparent) 93%,var(--rt-bg) 100%),linear-gradient(270deg,color-mix(in srgb,var(--rt-bg) 20%,transparent) 0%,transparent 12%); }
.rt-hero-glow { position:absolute; z-index:1; width:540px; height:540px; right:-140px; top:-170px; border-radius:50%; background:color-mix(in srgb,var(--rt-cyan) 13%,transparent); filter:blur(120px); pointer-events:none; }
.rt-hero-content { position:relative; z-index:3; width:100%; padding:150px 0 112px; }
.rt-hero-copy { max-width:680px; }
.rt-hero-slide:not(.is-active) .rt-hero-copy { transform:translateY(8px); }
.rt-hero-slide .rt-hero-copy { transition:transform .7s ease; }
.rt-hero-selector-wrap { position:absolute; z-index:8; left:0; right:0; bottom:54px; pointer-events:none; }
.rt-hero-selector { display:flex; align-items:center; gap:9px; width:max-content; max-width:min(680px,100%); pointer-events:auto; }
.rt-hero-selector-button { position:relative; width:52px; height:22px; display:flex; align-items:flex-end; justify-content:flex-start; padding:0 0 3px; color:#717b89; background:transparent; overflow:hidden; }
.rt-hero-selector-button:before { content:""; position:absolute; left:0; right:0; top:2px; height:2px; border-radius:999px; background:rgba(255,255,255,.19); }
.rt-hero-selector-progress { position:absolute; left:0; top:2px; width:0; height:2px; border-radius:999px; background:var(--rt-cyan); }
.rt-hero-selector-number { font-size:9px; line-height:1; font-weight:800; letter-spacing:.08em; }
.rt-hero-selector-button.is-active { color:#eef1f6; }
.rt-hero-selector-button.is-active .rt-hero-selector-progress { animation:rtHeroProgress var(--hero-interval,5000ms) linear forwards; }
.rt-hero-carousel.is-paused .rt-hero-selector-button.is-active .rt-hero-selector-progress { animation-play-state:paused; }
@keyframes rtHeroProgress { from { width:0; } to { width:100%; } }
@media (prefers-reduced-motion: reduce) { .rt-hero-slide { transition:none; } .rt-hero-selector-progress { animation:none!important; } }
.rt-hero-title { font-size:clamp(2.1rem,5vw,4.9rem); line-height:.94; letter-spacing:-.045em; font-weight:900; text-transform:uppercase; text-shadow:0 8px 24px rgba(0,0,0,.55); }
.rt-hero-meta { display:flex; flex-wrap:wrap; gap:9px 13px; align-items:center; margin:18px 0 15px; font-size:13px; font-weight:600; color:#d8dde5; }
.rt-hero-meta .rating { display:inline-flex; gap:5px; align-items:center; color:var(--rt-cyan); }
.rt-hero-meta .dot { width:3px; height:3px; border-radius:50%; background:rgba(255,255,255,.3); }
.rt-hero-description { max-width:620px; color:#c2c9d3; line-height:1.68; font-size:14px; text-shadow:0 2px 12px rgba(0,0,0,.6); }
.rt-hero-actions { display:flex; gap:11px; margin-top:24px; align-items:center; }
.rt-play-button, .rt-secondary-button { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:44px; border-radius:999px; padding:0 22px; font-size:14px; font-weight:650; transition:.2s ease; }
.rt-play-button { background:#eef1f6; color:#05070a; }
.rt-play-button:hover { background:white; box-shadow:0 0 28px rgba(13,202,240,.20); transform:translateY(-1px); }
.rt-secondary-button { color:#eef1f6; border:1px solid rgba(255,255,255,.12); background:rgba(12,16,22,.52); backdrop-filter:blur(14px); }
.rt-secondary-button:hover { border-color:rgba(13,202,240,.45); box-shadow:0 0 22px rgba(13,202,240,.10); }
.rt-play-button svg, .rt-secondary-button svg { width:18px; height:18px; }
.rt-play-button svg { fill:currentColor; }
.rt-secondary-button svg { fill:none; stroke:currentColor; stroke-width:2; }

.rt-home-content { position:relative; z-index:4; margin-top:-20px; padding-bottom:42px; }
.rt-section { margin:24px 0 38px; }
.rt-section-header { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:15px; }
.rt-section-title { font-size:clamp(1.25rem,2vw,1.55rem); font-weight:650; color:#eef1f6; min-width:0; }
.rt-section-title:after { content:""; display:inline-block; width:44px; height:2px; margin-left:11px; vertical-align:middle; background:linear-gradient(90deg,var(--rt-cyan),transparent); border-radius:2px; }
.rt-row-shell { position:relative; }
.rt-row-scroll { display:flex; gap:12px; overflow-x:auto; scroll-behavior:smooth; scrollbar-width:none; padding:2px 1px 8px; scroll-snap-type:x proximity; }
.rt-row-scroll::-webkit-scrollbar { display:none; }
.rt-card-slot { flex:0 0 140px; scroll-snap-align:start; min-width:0; }
.rt-card-slot .movieCard_movieCardImage__RH4ma { width:100%; aspect-ratio:2/3; position:relative; overflow:hidden; border-radius:10px; background:#0b0f14; }
.rt-card-slot .movieCard_movieCardPoster__hkU1W,
.rt-card-slot .movieCard_movieCardImage__RH4ma > img { width:100%; height:100%; object-fit:cover; transition:transform .32s ease, filter .32s ease; }
.rt-card-slot:hover .movieCard_movieCardPoster__hkU1W,
.rt-card-slot:hover .movieCard_movieCardImage__RH4ma > img { transform:scale(1.055); }
.rt-card-slot .movieCard_movieCardFilter__EZTIk { position:absolute; inset:0; z-index:2; background:linear-gradient(to top,rgba(5,7,10,.22),transparent 38%); pointer-events:none; }
.rt-poster-placeholder { width:100%; height:100%; display:grid; place-items:center; font-size:34px; color:#526070; background:linear-gradient(145deg,#141922,#080b10); }
.rt-rank-badge { position:absolute; left:0; top:0; z-index:5; width:30px; height:40px; display:flex; flex-direction:column; align-items:center; justify-content:center; color:white; font-weight:800; clip-path:polygon(0 0,100% 0,100% 100%,50% 85%,0 100%); background:var(--rt-cyan); box-shadow:0 4px 10px rgba(13,202,240,.35); }
.rt-rank-badge span { font-size:8px; line-height:1; text-transform:uppercase; letter-spacing:.08em; }
.rt-rank-badge strong { font-size:11px; line-height:1; margin-top:2px; }
.rt-progress-badge, .rt-live-badge { position:absolute; z-index:5; left:8px; bottom:8px; padding:4px 7px; border-radius:6px; font-size:10px; font-weight:700; border:1px solid rgba(255,255,255,.12); background:rgba(5,7,10,.78); backdrop-filter:blur(10px); }
.rt-live-badge { left:auto; right:8px; color:var(--rt-cyan); }
.rt-rating-mini { color:var(--rt-cyan); }
.rt-row-nav { position:absolute; top:0; bottom:31px; z-index:10; width:42px; display:flex; align-items:center; justify-content:center; opacity:0; transition:.2s; color:white; font-size:20px; }
.rt-row-shell:hover .rt-row-nav { opacity:1; }
.rt-row-nav.left { left:-4px; background:linear-gradient(90deg,#05070a 15%,transparent); justify-content:flex-start; padding-left:4px; }
.rt-row-nav.right { right:-4px; background:linear-gradient(270deg,#05070a 15%,transparent); justify-content:flex-end; padding-right:4px; }
.rt-team-poster { width:100%; height:100%; display:flex; align-items:center; justify-content:center; gap:6px; padding:20px; background:radial-gradient(circle at 50% 35%,rgba(13,202,240,.14),transparent 52%),#0b0f14; }
.rt-team-poster img { width:46%; max-height:46%; object-fit:contain; filter:drop-shadow(0 8px 18px rgba(0,0,0,.45)); }
.rt-empty-state { border:1px dashed rgba(255,255,255,.12); color:var(--rt-muted); border-radius:14px; padding:22px; min-width:280px; }

/* Detail pages */
.rt-detail-hero { position:relative; min-height:72vh; display:flex; align-items:flex-end; overflow:hidden; background:#05070a; }
.rt-detail-backdrop { position:absolute; inset:0; }
.rt-detail-backdrop img { width:100%; height:100%; object-fit:cover; opacity:.48; filter:saturate(.86); }
.rt-detail-backdrop:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(5,7,10,.18),#05070a 96%),linear-gradient(90deg,#05070a 2%,rgba(5,7,10,.7) 38%,rgba(5,7,10,.12)); }
.rt-detail-inner { position:relative; z-index:2; width:100%; padding:145px 0 58px; }
.rt-detail-layout { display:grid; grid-template-columns:210px minmax(0,1fr); gap:34px; align-items:end; }
.rt-detail-poster { width:210px; aspect-ratio:2/3; border-radius:13px; overflow:hidden; background:#0b0f14; border:1px solid rgba(255,255,255,.09); box-shadow:0 22px 42px rgba(0,0,0,.44); }
.rt-detail-poster img { width:100%; height:100%; object-fit:cover; }
.rt-detail-copy { max-width:780px; padding-bottom:2px; }
.rt-detail-title { font-size:clamp(2.2rem,5vw,4.4rem); font-weight:850; line-height:.98; letter-spacing:-.045em; }
.rt-tagline { color:#aab4c2; margin-top:8px; font-size:16px; font-style:italic; }
.rt-chip-row { display:flex; flex-wrap:wrap; gap:8px; margin-top:15px; }
.rt-chip { display:inline-flex; align-items:center; gap:5px; padding:6px 10px; border-radius:999px; font-size:12px; color:#d4d9e1; border:1px solid rgba(255,255,255,.10); background:rgba(10,14,20,.62); backdrop-filter:blur(12px); }
.rt-chip.primary { color:var(--rt-cyan); border-color:rgba(13,202,240,.28); }
.rt-detail-overview { color:#b8c0cb; max-width:760px; line-height:1.72; margin-top:17px; font-size:14px; }
.rt-detail-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:23px; }
.rt-detail-content { padding:6px 0 60px; }
.rt-cast-row { display:flex; gap:12px; overflow-x:auto; scrollbar-width:none; padding-bottom:8px; }
.rt-cast-row::-webkit-scrollbar { display:none; }
.rt-cast-card { flex:0 0 130px; min-width:0; }
.rt-cast-photo { aspect-ratio:1/1.15; border-radius:11px; overflow:hidden; background:#0b0f14; border:1px solid rgba(255,255,255,.07); }
.rt-cast-photo img { width:100%; height:100%; object-fit:cover; }
.rt-cast-name { margin-top:8px; color:#eef1f6; font-size:13px; font-weight:650; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.rt-cast-role { color:#8a94a6; font-size:11px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin-top:2px; }
.rt-crew-box { border:1px solid rgba(255,255,255,.08); background:#0b0f14; border-radius:14px; padding:16px 18px; color:#aeb6c2; line-height:1.8; font-size:13px; }
.rt-crew-box strong { color:#eef1f6; }
.rt-crew-box a { color:var(--rt-cyan); }
.rt-select-panel { display:flex; flex-wrap:wrap; align-items:end; gap:12px; margin-top:20px; }
.rt-field label { display:block; color:#8a94a6; font-size:11px; text-transform:uppercase; letter-spacing:.1em; margin:0 0 6px 2px; font-weight:700; }
.rt-field select { min-width:120px; height:44px; padding:0 38px 0 13px; border-radius:11px; border:1px solid rgba(255,255,255,.10); background:#0b0f14; color:white; outline:none; }
.rt-field select:focus { border-color:rgba(13,202,240,.55); }

/* Person */
.rt-page-spacer { padding:112px 0 55px; }
.rt-person-head { display:grid; grid-template-columns:190px 1fr; gap:30px; align-items:start; margin-bottom:40px; }
.rt-person-photo { width:190px; aspect-ratio:1/1.32; border-radius:14px; overflow:hidden; background:#0b0f14; border:1px solid rgba(255,255,255,.08); }
.rt-person-photo img { width:100%; height:100%; object-fit:cover; }
.rt-person-name { font-size:clamp(2rem,4vw,3.6rem); line-height:1; font-weight:850; letter-spacing:-.04em; }
.rt-person-dept { color:var(--rt-cyan); margin-top:10px; font-size:13px; font-weight:650; }
.rt-person-bio { max-width:760px; color:#aeb6c2; line-height:1.75; margin-top:17px; }

/* Player */
.rt-player-page { position:relative; width:100vw; height:100vh; background:#000; overflow:hidden; }
.rt-player-frame { width:100%; height:100%; border:0; display:block; }
.rt-player-controls { position:absolute; inset:0; z-index:12; pointer-events:none; opacity:1; transition:opacity .32s ease; }
.rt-player-controls.dimmed { opacity:.14; }
.rt-player-topbar { position:absolute; top:0; left:0; right:0; min-height:98px; padding:18px; display:flex; align-items:flex-start; justify-content:space-between; background:linear-gradient(to bottom,rgba(0,0,0,.72),transparent); }
.rt-player-title { color:white; font-weight:650; font-size:15px; text-shadow:0 2px 8px #000; padding:10px 12px; }
.rt-player-action { pointer-events:auto; min-width:46px; height:46px; padding:0 14px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; gap:7px; background:rgba(5,7,10,.55); border:1px solid rgba(255,255,255,.13); color:white; backdrop-filter:blur(14px); box-shadow:0 8px 20px rgba(0,0,0,.3); font-weight:650; font-size:13px; transition:.2s; }
.rt-player-action:hover { background:rgba(13,202,240,.18); border-color:rgba(13,202,240,.42); transform:scale(1.03); }
.rt-player-bottom { position:absolute; left:0; right:0; bottom:0; padding:34px 18px 18px; display:flex; align-items:center; justify-content:space-between; gap:12px; background:linear-gradient(to top,rgba(0,0,0,.66),transparent); }
.rt-player-label { color:#dce2e9; font-size:13px; padding:9px 12px; border-radius:999px; background:rgba(5,7,10,.5); border:1px solid rgba(255,255,255,.10); backdrop-filter:blur(12px); }

.rt-footer { border-top:1px solid rgba(255,255,255,.06); padding:30px 0 96px; color:#7e8999; background:#05070a; }
.rt-footer-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; font-size:12px; }
.rt-footer strong { color:#d9dfe7; }

.rt-mobile-dock { position:fixed; bottom:calc(env(safe-area-inset-bottom) + 14px); left:50%; transform:translateX(-50%); z-index:70; min-width:224px; height:62px; padding:7px 9px; display:flex; align-items:center; justify-content:space-around; gap:2px; border-radius:22px; background:rgba(5,7,10,.86); border:1px solid rgba(255,255,255,.11); backdrop-filter:blur(20px); box-shadow:0 20px 42px rgba(0,0,0,.48); }
.rt-dock-item { width:46px; height:46px; display:grid; place-items:center; border-radius:14px; color:#eef1f6; }
.rt-dock-item:hover, .rt-dock-item:focus { color:var(--rt-cyan); background:rgba(255,255,255,.06); }

@media (min-width:640px) { .rt-card-slot { flex-basis:150px; } .rt-row-scroll { gap:14px; } }
@media (min-width:768px) { .rt-card-slot { flex-basis:180px; } .rt-row-scroll { gap:16px; } .rt-footer { padding-bottom:30px; } }
@media (min-width:1100px) { .rt-card-slot { flex-basis:200px; } }

@media (max-width:767px) {
  .rt-search-overlay { padding-top:70px; align-items:start; }
  .rt-search-dialog { padding:18px; border-radius:18px; }
  .rt-search-form { grid-template-columns:1fr; }
  .rt-hero { min-height:78vh; }
  .rt-hero-backdrop img { width:100%; height:100%; object-fit:cover; object-position:center 28%; opacity:.66; }
  .rt-hero-backdrop:before { background:linear-gradient(90deg,rgba(5,7,10,.65),rgba(5,7,10,.12)); }
  .rt-hero-backdrop:after { background:linear-gradient(180deg,rgba(5,7,10,.28) 10%,rgba(5,7,10,.18) 38%,var(--rt-bg) 95%); }
  .rt-hero-content { padding:122px 0 94px; }
  .rt-hero-selector-wrap { bottom:43px; }
  .rt-hero-selector-button { width:38px; }
  .rt-hero-description { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
  .rt-row-nav { display:none; }
  .rt-detail-hero { min-height:auto; }
  .rt-detail-inner { padding:118px 0 42px; }
  .rt-detail-layout { grid-template-columns:104px minmax(0,1fr); gap:18px; align-items:end; }
  .rt-detail-poster { width:104px; border-radius:9px; }
  .rt-detail-title { font-size:clamp(1.8rem,8vw,2.8rem); }
  .rt-tagline { font-size:13px; }
  .rt-detail-overview { grid-column:1/-1; }
  .rt-detail-actions, .rt-select-panel { grid-column:1/-1; }
  .rt-person-head { grid-template-columns:104px 1fr; gap:17px; }
  .rt-person-photo { width:104px; border-radius:10px; }
  .rt-person-bio { grid-column:1/-1; }
  .rt-footer-inner { align-items:flex-start; flex-direction:column; }
}
.rt-view-all { color:#8a94a6; font-size:12px; font-weight:650; transition:.2s; }
.rt-view-all:hover { color:var(--rt-cyan); }
.rt-browse-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:10px; justify-content:space-between; margin:20px 0 22px; }
.rt-browse-filters { display:flex; flex-wrap:wrap; gap:8px; }
.rt-filter-pill { padding:8px 12px; border-radius:999px; border:1px solid rgba(255,255,255,.09); background:#0b0f14; color:#aeb6c2; font-size:12px; }
.rt-filter-pill.active, .rt-filter-pill:hover { color:var(--rt-cyan); border-color:rgba(13,202,240,.32); }
.rt-browse-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 12px; }
.rt-browse-grid .rt-card-slot { min-width:0; width:100%; }
.rt-pagination { display:flex; align-items:center; justify-content:center; gap:8px; margin:38px 0 10px; }
.rt-page-link { min-width:40px; height:40px; padding:0 12px; border-radius:11px; display:grid; place-items:center; color:#aeb6c2; border:1px solid rgba(255,255,255,.09); background:#0b0f14; font-size:12px; }
.rt-page-link:hover, .rt-page-link.active { color:#05070a; background:var(--rt-cyan); border-color:var(--rt-cyan); }
@media(min-width:640px){.rt-browse-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 14px}}
@media(min-width:900px){.rt-browse-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px 16px}}
@media(min-width:1250px){.rt-browse-grid{grid-template-columns:repeat(6,minmax(0,1fr));}}

/* Loading feedback */
.rt-page-loader{position:fixed;inset:0 0 auto 0;height:3px;z-index:9999;pointer-events:none;opacity:0;transition:opacity .15s ease;background:transparent}.rt-page-loader.is-active{opacity:1}.rt-page-loader span{display:block;height:100%;width:32%;background:linear-gradient(90deg,transparent,var(--rt-cyan),var(--rt-cyan-hi));transform:translateX(-120%)}.rt-page-loader.is-active span{animation:rt-loader 1.05s ease-in-out infinite}@keyframes rt-loader{0%{transform:translateX(-120%)}100%{transform:translateX(430%)}}
.rt-card-skeleton{flex:0 0 142px;aspect-ratio:2/3;border-radius:12px;background:linear-gradient(105deg,#0b0f14 20%,#151b24 38%,#0b0f14 56%);background-size:220% 100%;animation:rt-shimmer 1.35s linear infinite;border:1px solid rgba(255,255,255,.05)}@keyframes rt-shimmer{to{background-position:-220% 0}}.rt-skeleton-row{min-height:230px}.rt-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.16);border-top-color:var(--rt-cyan);border-radius:50%;animation:rt-spin .7s linear infinite}@keyframes rt-spin{to{transform:rotate(360deg)}}.rt-lazy-sentinel{min-height:88px;display:flex;align-items:center;justify-content:center;gap:10px;color:#7f8998;font-size:12px}.rt-inline-loader{padding:10px}

/* Advertisement integration slots */
.rt-ad-slot{width:100%;display:flex;align-items:center;justify-content:center;margin:26px 0;border:1px dashed rgba(255,255,255,.12);background:linear-gradient(145deg,rgba(11,15,20,.84),rgba(7,9,13,.7));border-radius:14px;overflow:hidden;color:#6f7988}.rt-ad-slot--leaderboard{min-height:96px}.rt-ad-slot--rectangle{width:min(100%,336px);min-height:280px;margin-left:auto;margin-right:auto}.rt-ad-slot-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center}.rt-ad-slot-inner span,.rt-player-ad-slot span{text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:750;color:#7f8998}.rt-ad-slot-inner small,.rt-player-ad-slot small{font-size:10px;color:#515a67}.rt-player-ad-slot{position:absolute;right:18px;bottom:18px;z-index:9;width:180px;height:150px;border:1px dashed rgba(255,255,255,.16);border-radius:12px;background:rgba(5,7,10,.82);backdrop-filter:blur(12px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;pointer-events:none}

/* Asynchronously loaded detail sections */
.rt-extras-shell{min-height:240px}.rt-poster-placeholder{width:100%;height:100%;min-height:190px;display:grid;place-items:center;background:linear-gradient(145deg,#10151d,#080b10);font-size:32px}.rt-clear-recent{background:transparent;border:0;cursor:pointer}.rt-clear-recent:hover{color:var(--rt-cyan)}

@media(min-width:640px){.rt-card-skeleton{flex-basis:150px}}
@media(min-width:768px){.rt-card-skeleton{flex-basis:180px}.rt-player-ad-slot{width:240px;height:200px}}
@media(min-width:1100px){.rt-card-skeleton{flex-basis:200px}.rt-player-ad-slot{width:300px;height:250px}}
@media(max-width:767px){.rt-ad-slot--leaderboard{min-height:84px}.rt-player-ad-slot{right:10px;bottom:82px;width:130px;height:110px;opacity:.82}}


/* V7: soft anti-adblock UX */
.rt-adblock-notice {
  position: fixed; right: 22px; bottom: 22px; z-index: 10050;
  width: min(420px, calc(100vw - 28px)); display: flex; gap: 14px; align-items: flex-start;
  padding: 16px; border: 1px solid rgba(255,255,255,.13); border-radius: 16px;
  background: rgba(10,14,18,.96); box-shadow: 0 22px 70px rgba(0,0,0,.48); backdrop-filter: blur(18px);
}
.rt-adblock-icon { color: var(--suite-accent, #0dcaf0); font-size: 24px; line-height: 1; font-weight: 800; }
.rt-adblock-icon.large { font-size: 40px; margin-bottom: 8px; }
.rt-adblock-copy { display: grid; gap: 7px; min-width: 0; }
.rt-adblock-copy strong, .rt-adblock-gate-panel h2 { color: #fff; }
.rt-adblock-copy span, .rt-adblock-gate-panel p { color: rgba(255,255,255,.68); line-height: 1.5; }
.rt-adblock-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 3px; }
.rt-adblock-actions button { border: 1px solid rgba(255,255,255,.14); border-radius: 999px; padding: 8px 12px; color: #fff; background: rgba(255,255,255,.06); cursor: pointer; }
.rt-adblock-actions button:first-child { border-color: color-mix(in srgb, var(--suite-accent, #0dcaf0) 50%, transparent); color: var(--suite-accent, #0dcaf0); }
.rt-adblock-gate { position: fixed; inset: 0; z-index: 20000; display: grid; place-items: center; padding: 24px; background: rgba(0,0,0,.86); backdrop-filter: blur(12px); }
.rt-adblock-gate-panel { width: min(520px, 100%); text-align: center; padding: 34px; border-radius: 22px; border: 1px solid rgba(255,255,255,.13); background: #0c1014; box-shadow: 0 30px 100px rgba(0,0,0,.6); }
.rt-adblock-gate-panel h2 { font-size: clamp(25px, 4vw, 36px); margin: 0 0 10px; }
.rt-adblock-gate-panel p { margin: 0 auto 20px; max-width: 420px; }
.rt-adblock-countdown { color: rgba(255,255,255,.72); margin: 18px 0; font-size: 15px; }
.rt-adblock-countdown strong { color: #fff; font-size: 22px; }
.rt-adblock-gate-panel .rt-primary-button, .rt-adblock-gate-panel .rt-secondary-button { display: inline-flex; margin: 6px; }
@media (max-width: 640px) { .rt-adblock-notice { right: 14px; bottom: 86px; } .rt-adblock-gate-panel { padding: 26px 18px; } }
