:root{--bg:#08090c;--panel:#15171d;--line:#292d36;--muted:#9599a6;--text:#f6f4ef;--accent:#e1ff55;--pink:#f28bb5}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;min-height:100vh}.grain{position:fixed;inset:0;pointer-events:none;opacity:.05;z-index:20;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid #ffffff12;position:relative;z-index:5;background:#08090cd9;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:11px;color:var(--text);text-decoration:none;font-weight:700;letter-spacing:.13em;font-size:14px}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--accent);color:#10120c;font-family:Georgia;font-size:21px}.topbar nav{display:flex;gap:25px}.nav-link{color:var(--muted);text-decoration:none;font-size:12px}.nav-link.active,.nav-link:hover{color:var(--text)}.header-actions{display:flex;align-items:center;gap:12px}.profile,.docs-link{border:1px solid var(--line);border-radius:20px;background:#15171d;color:#c9cad0;padding:8px 14px;font:inherit;font-size:11px;text-decoration:none}.docs-link{border-radius:5px}.docs-link:hover{border-color:var(--accent);color:var(--accent)}h1,h2{font-family:'Playfair Display',serif;letter-spacing:-.04em}h1{font-size:clamp(48px,7vw,90px);line-height:.95;margin:13px 0}h1 em{font-style:normal;color:var(--pink)}.eyebrow,.section-kicker{font-size:10px;font-weight:700;letter-spacing:.19em;color:var(--accent)}.hero-sub{max-width:430px;color:var(--muted);font-size:14px;line-height:1.7}.primary,.ghost{display:inline-flex;align-items:center;border:0;border-radius:6px;padding:13px 18px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.primary{background:var(--accent);color:#151a0b}.ghost{color:var(--text);background:#1c1e25;border:1px solid #343843;text-decoration:none}.welcome{max-width:1180px;min-height:calc(100vh - 130px);margin:0 auto;padding:80px 5vw;display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden}.welcome-copy{position:relative;z-index:2;max-width:600px}.welcome-cta{gap:25px;text-decoration:none;margin-top:25px}.welcome-cta span{font-size:20px}.welcome-art{position:relative;width:410px;height:380px;transform:rotate(7deg)}.hero-card{position:absolute;right:40px;top:20px;width:205px;height:305px;border-radius:10px;padding:17px;background:linear-gradient(155deg,#d87c92,#712e48 50%,#17131e);box-shadow:0 25px 45px #0008;display:flex;flex-direction:column;justify-content:space-between}.hero-card small{font-family:'Playfair Display';font-size:24px;line-height:.92}.hero-card.back{right:185px;top:75px;transform:rotate(-15deg);background:linear-gradient(155deg,#8ab5af,#1b3a42 65%,#101419);opacity:.86;z-index:-1}.choose-main,.docs-main{max-width:1180px;margin:0 auto;padding:72px 5vw 90px}.choose-heading{max-width:680px}.choose-heading h1{font-size:clamp(44px,6vw,74px)}.provider-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:11px}.choose-grid{margin-top:48px;grid-template-columns:repeat(6,1fr)}.provider-card{display:flex;flex-direction:column;align-items:flex-start;gap:7px;background:#1b1e26;border:1px solid #30343f;color:#ddd;border-radius:7px;padding:13px 11px;min-height:100px;text-align:left;font:inherit;font-size:11px;cursor:pointer;text-transform:capitalize;text-decoration:none}.provider-card:hover{border-color:var(--accent);background:#22271e}.provider-card small{color:#808693;font-size:9px;line-height:1.35}.provider-logo{width:34px;height:34px;display:grid;place-items:center;background:#282c35;border-radius:8px;overflow:hidden;color:var(--accent);font-weight:700}.provider-logo img{width:100%;height:100%;object-fit:contain}.provider-hero{max-width:1180px;margin:0 auto;padding:70px 5vw 42px;display:flex;align-items:end;justify-content:space-between}.provider-hero h1{font-size:clamp(44px,6vw,72px);margin:12px 0}.provider-chip{display:flex;align-items:center;gap:7px;color:#cfd1d7;font-size:11px;text-transform:capitalize}.provider-chip img{width:22px;height:22px;object-fit:contain}.provider-tabs{max-width:1180px;margin:0 auto;padding:0 5vw;display:flex;gap:8px;overflow:auto;border-bottom:1px solid var(--line)}.provider-tab{background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);padding:13px 12px;font:inherit;font-size:12px;cursor:pointer;text-transform:capitalize;white-space:nowrap}.provider-tab:hover,.provider-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.toolbar{max-width:1180px;margin:0 auto;padding:30px 5vw;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.search-wrap{display:flex;align-items:center;gap:10px;width:280px;background:#121419;border:1px solid #272b34;border-radius:6px;padding:10px;color:var(--muted)}.search-wrap input{width:100%;background:none;border:0;outline:0;color:var(--text);font:inherit;font-size:12px}.content{max-width:1180px;margin:0 auto;padding:44px 5vw 80px}.status{color:var(--muted);font-size:13px;padding:30px 0}.spinner{width:15px;height:15px;display:inline-block;border:2px solid #343742;border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;vertical-align:-3px;margin-right:8px}@keyframes spin{to{transform:rotate(360deg)}}.drama-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:22px 15px}.card{cursor:pointer;min-width:0}.poster{aspect-ratio:2/2.9;border-radius:7px;overflow:hidden;background:#181a20;margin-bottom:11px;transition:.25s}.card:hover .poster{transform:translateY(-5px)}.poster img{width:100%;height:100%;object-fit:cover}.card h3{font-size:13px;margin:0 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card p{font-size:11px;color:var(--muted);margin:0}.modal{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:20px}.hidden{display:none!important}.modal-backdrop{position:absolute;inset:0;background:#000b;backdrop-filter:blur(7px)}.close,.close-player{position:absolute;right:18px;top:15px;background:#242730;color:#fff;border:0;border-radius:50%;width:31px;height:31px;font-size:22px;z-index:2;cursor:pointer}.detail-panel{width:min(860px,100%);max-height:90vh;overflow:auto;position:relative;background:var(--panel);border:1px solid #30333c;border-radius:12px;display:grid;grid-template-columns:270px 1fr}.detail-cover{min-height:410px;background:#20232a center/cover no-repeat}.detail-body{padding:36px 34px}.detail-body h2{font-size:38px}.meta{font-size:12px;color:var(--accent)}.detail-description{color:#b0b1b9;font-size:13px;line-height:1.7}.tags{display:flex;gap:6px;flex-wrap:wrap}.tags span{font-size:10px;padding:5px 8px;border:1px solid #383b45;border-radius:20px;color:#bbb}.episode-head{border-top:1px solid #30323a;padding-top:18px;margin-top:20px;display:flex;justify-content:space-between;font-size:13px}.episode-head span{color:var(--muted);font-size:11px}.episodes{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.ep{background:#22252d;color:#ddd;border:1px solid #343843;border-radius:4px;padding:8px 11px;font-size:11px;cursor:pointer}.player{position:fixed;inset:0;background:#08090c;z-index:50;overflow:auto}.player-top{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;color:#aaa;font-size:12px;border-bottom:1px solid #24262d}.back-btn,.close-player{background:none;color:#eee;border:0;font:inherit;cursor:pointer}.close-player{position:static;font-size:27px}.video-shell{width:min(1000px,92vw);margin:45px auto 0;aspect-ratio:16/9;background:#000;position:relative;display:grid;place-items:center}.video-shell video{width:100%;height:100%}.video-loading{position:absolute;text-align:center;color:#aaa;font-size:12px}.player-info{width:min(1000px,92vw);margin:20px auto}.player-nav{display:flex;gap:12px}.player-nav button{background:#1c1f27;border:1px solid #333741;color:#ddd;padding:10px 13px;border-radius:5px;font:inherit;font-size:11px}footer{display:flex;justify-content:space-between;padding:25px 5vw;color:#666;font-size:10px;border-top:1px solid #202229}.docs-layout{display:grid;grid-template-columns:225px 1fr;gap:20px;margin-top:23px}.docs-page-layout{max-width:1180px;margin-top:50px}.module-list{border-right:1px solid #2a2d35;padding-right:14px;max-height:500px;overflow:auto}.module-item{display:flex;align-items:center;gap:8px;width:100%;background:none;border:0;border-radius:4px;color:#9b9ea8;padding:9px 8px;text-align:left;text-transform:capitalize;font:inherit;font-size:11px;cursor:pointer}.module-item img{width:21px;height:21px;object-fit:contain}.module-item:hover,.module-item.active{background:#242832;color:var(--accent)}.endpoint-list{max-height:500px;overflow:auto}.endpoint-head{display:flex;justify-content:space-between;padding:8px 0 13px;border-bottom:1px solid #30333c;font-size:13px}.endpoint-head span{font-size:10px;color:#888d9a}.endpoint{padding:13px 0;border-bottom:1px solid #262932}.endpoint div{display:flex;justify-content:space-between;gap:10px}.endpoint b{font-size:12px}.endpoint code{font-family:monospace;font-size:9px;color:var(--accent);border:1px solid #48512c;padding:3px 5px}.endpoint a{display:block;color:#8b91a0;font-family:monospace;font-size:10px;word-break:break-all;margin-top:7px;text-decoration:none}.empty-docs{color:var(--muted);font-size:12px;padding:30px 0}@media(max-width:800px){.topbar{padding:0 20px}.topbar nav{gap:13px}.welcome{padding:55px 20px;min-height:calc(100vh - 130px)}.welcome-art{position:absolute;right:-100px;opacity:.4}.choose-main,.docs-main{padding:55px 20px}.choose-grid{grid-template-columns:repeat(3,1fr);margin-top:35px}.provider-hero{padding:50px 20px 30px;align-items:flex-start;gap:20px;flex-direction:column}.provider-tabs{padding:0 20px}.provider-chip{display:none}.toolbar,.content{padding-left:20px;padding-right:20px}.drama-grid{grid-template-columns:repeat(3,1fr)}.detail-panel{grid-template-columns:1fr}.detail-cover{min-height:190px}.detail-body{padding:27px 22px}.docs-layout{grid-template-columns:1fr}.module-list{border-right:0;border-bottom:1px solid #2a2d35;padding:0 0 12px;display:flex;gap:5px;max-height:none}.module-item{min-width:max-content;width:auto}}@media(max-width:450px){.choose-grid,.provider-grid{grid-template-columns:repeat(2,1fr)}.drama-grid{grid-template-columns:repeat(2,1fr)}.docs-link{display:none}}
.player-layout{width:min(1180px,94vw);margin:30px auto 70px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.player-main{min-width:0}.video-shell{width:min(520px,100%);aspect-ratio:9/16;margin:0 auto;background:#000;border-radius:8px;overflow:hidden}.video-shell video{object-fit:contain;background:#000}.player-info{width:min(520px,100%);margin:18px auto}.player-episodes{background:#121419;border:1px solid #292d36;border-radius:8px;max-height:calc(100vh - 140px);overflow:auto;padding:14px}.playlist-head{display:flex;justify-content:space-between;padding:2px 2px 12px;border-bottom:1px solid #2b2e37;color:#eee;font-size:13px}.playlist-head span{color:#888e9b;font-size:10px}.playlist-ep{width:100%;text-align:left;background:#1b1e25;color:#bfc2ca;border:1px solid transparent;border-radius:5px;padding:10px 12px;margin-top:7px;font:inherit;font-size:12px;cursor:pointer}.playlist-ep:hover{border-color:#555c6c;color:#fff}.playlist-ep.active{background:var(--accent);color:#151a0b;font-weight:700}.player-info h2{font-size:22px;margin:0 0 12px}.player-nav{flex-wrap:wrap}@media(max-width:800px){.player-layout{grid-template-columns:1fr;width:min(560px,94vw);margin-top:18px}.player-episodes{max-height:260px}.video-shell{width:min(390px,100%)}}.player-layout{grid-template-columns:minmax(280px,360px) 320px;justify-content:center;gap:18px}.video-shell{width:min(360px,100%);max-height:calc(100vh - 150px)}.player-episodes{padding:12px;max-height:calc(100vh - 140px)}.player-episodes #playerEpisodeList{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.playlist-ep{margin:0;padding:8px 3px;text-align:center;font-size:11px;line-height:1.1}.player-info{width:min(360px,100%)}@media(max-width:800px){.player-layout{grid-template-columns:minmax(250px,330px) 1fr;gap:12px}.player-episodes #playerEpisodeList{grid-template-columns:repeat(5,minmax(0,1fr))}.video-shell{width:min(330px,100%)}}@media(max-width:600px){.player-layout{grid-template-columns:1fr;width:min(360px,94vw)}.video-shell{width:min(300px,100%)}.player-episodes{max-height:240px}.player-episodes #playerEpisodeList{grid-template-columns:repeat(8,minmax(0,1fr))}}.player-episodes{padding:20px 18px}.player-side-title{margin:0 0 16px;padding:0 2px 15px;border-bottom:1px solid #2b2e37}.player-side-title h2{font-size:20px;line-height:1.25;margin:0;color:#f4f2ed}.player-episodes .playlist-head{padding:0 2px 12px}.player-episodes #playerEpisodeList{padding:4px 0 2px;gap:8px}.player-episodes .player-nav{margin-top:18px;padding-top:16px;border-top:1px solid #2b2e37;display:grid;grid-template-columns:1fr 1fr;gap:8px}.player-episodes .player-nav button{min-width:0;padding:10px 6px;line-height:1.25}.player-info{display:none!important}@media(max-width:600px){.player-episodes{padding:16px}.player-side-title h2{font-size:18px}.player-episodes .player-nav{grid-template-columns:1fr 1fr}}.player-layout{grid-template-columns:minmax(280px,360px) minmax(420px,460px);gap:28px}.player-episodes{max-height:none;overflow:visible;padding:22px 20px}.player-episodes #playerEpisodeList{grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;padding:6px 0 4px}.playlist-ep{padding:11px 4px;min-height:38px}.player{overflow:auto}@media(max-width:1000px){.player-layout{grid-template-columns:minmax(270px,340px) minmax(360px,1fr);gap:18px}.player-episodes #playerEpisodeList{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}}@media(max-width:600px){.player-layout{grid-template-columns:1fr;width:min(360px,94vw);gap:14px}.player-episodes{max-height:270px;overflow:auto;padding:16px}.player-episodes #playerEpisodeList{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.playlist-ep{padding:9px 3px;min-height:34px}}.load-more{display:block;margin:34px auto 0;background:#1c1f27;border:1px solid #3a3f4b;color:#e4e5e8;border-radius:6px;padding:12px 24px;font:inherit;font-size:12px;cursor:pointer}.load-more:hover{border-color:var(--accent);color:var(--accent)}.provider-tabs{display:none!important}
/* Subtitle sizing for portrait drama playback */
video::cue,
::cue {
  font-size: clamp(13px, 2.0vh, 18px);
  color: #fff;
  background-color: rgba(0, 0, 0, 0.7);
  text-shadow: 0 1px 2px #000;
}
@media (max-width: 600px) {
  video::cue,
  ::cue {
    font-size: clamp(12px, 3.8vw, 16px);
  }
}

/* Maintenance status indicators & banners */
.status-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 9px;
  line-height: 1.35;
}
.dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
}
.dot-online {
  background: #84cc16;
  box-shadow: 0 0 6px rgba(132, 204, 22, 0.6);
}
.dot-maint {
  background: #f97316;
  box-shadow: 0 0 6px rgba(249, 115, 22, 0.6);
}
.status-online {
  color: #a3e635 !important;
}
.status-maint {
  color: #fb923c !important;
}
.card-maint {
  border-color: #4a2b1b !important;
  background: #181517 !important;
}
.card-maint:hover {
  border-color: #f97316 !important;
  background: #241915 !important;
}
.maint-banner {
  max-width: 1180px;
  margin: 20px auto 0;
  padding: 14px 20px;
  border-radius: 8px;
  background: rgba(249, 115, 22, 0.12);
  border: 1px solid rgba(249, 115, 22, 0.45);
  color: #fed7aa;
  font-size: 12px;
  display: flex;
  align-items: center;
  gap: 10px;
  line-height: 1.5;
}
.maint-banner strong {
  color: #ffedd5;
}
@media (max-width: 800px) {
  .maint-banner {
    margin: 15px 20px 0;
  }
}

