/* UltraTV Player MSX Lite - legacy-safe CSS (no variables, no grid, no flex required) */
html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden;background:#060d24;color:#fff;
  font-family:"One UI Sans","Samsung One","SamsungOne","Samsung Sharp Sans",Tahoma,sans-serif;cursor:none;
  -webkit-user-select:none;user-select:none}
*{-webkit-box-sizing:border-box;box-sizing:border-box}
.hidden{display:none !important}
#stage{position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden;background:#060d24}
#app{position:absolute;left:0;top:0;width:1920px;height:1080px;overflow:hidden;
  -webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;
  background:#060d24;background:-webkit-linear-gradient(top,#0a1638 0%,#060d24 100%);background:linear-gradient(to bottom,#0a1638 0%,#060d24 100%)}
#bg{position:absolute;left:0;top:0;width:1920px;height:1080px;background:url(../img/bg-mosaic.jpg) center center no-repeat;background-size:cover;opacity:.12}
#screen{position:absolute;left:0;top:0;width:1920px;height:1080px}

/* header */
.hdr{position:absolute;left:0;top:0;width:1920px;height:130px;padding:28px 64px 0 64px}
.hdr .logo{position:absolute;left:64px;top:22px;height:86px}
.hdr .title{position:absolute;left:300px;top:40px;font-size:40px;font-weight:700;color:#fff}
.hdr .title small{display:block;font-size:20px;font-weight:400;color:rgba(255,255,255,.5);margin-top:4px}
.hdr .clock{position:absolute;right:64px;top:30px;text-align:right;font-size:46px;font-weight:700}
.hdr .clock small{display:block;font-size:20px;font-weight:400;color:rgba(255,255,255,.5)}
.hdr .status{position:absolute;right:330px;top:44px;font-size:20px;padding:8px 18px;border-radius:24px;background:rgba(255,255,255,.07);border:2px solid rgba(255,255,255,.1);color:rgba(255,255,255,.75)}
.hdr .status.ok{border-color:rgba(14,165,233,.6);color:#7dd3fc}
.hdr .status.bad{border-color:rgba(248,113,113,.6);color:#fca5a5}

/* focus */
.f{border:2px solid rgba(255,255,255,.08);background:rgb(14,18,36)}
.f.on{border:2px solid #0EA5E9 !important;background:rgba(14,165,233,.20) !important;box-shadow:0 0 18px rgba(14,165,233,.45)}
.sel{border-color:#0EA5E9;background:rgba(14,165,233,.12)}

/* home */
.cards{position:absolute;left:64px;top:170px;width:1792px;height:360px}
.card{position:absolute;top:0;width:428px;height:340px;border-radius:24px;text-align:center;padding-top:70px;overflow:hidden;
  background:rgba(255,255,255,.04);border:2px solid rgba(255,255,255,.10)}
.card .ic{width:110px;height:110px;margin:0 auto 26px auto;border-radius:55px;background:rgba(14,165,233,.15);border:2px solid rgba(14,165,233,.35);
  font-size:40px;line-height:106px;font-weight:800;color:#0EA5E9}
.card .lb{font-size:38px;font-weight:800}
.card .sb{font-size:21px;color:rgba(255,255,255,.5);margin-top:8px}
.card.on{-webkit-transform:scale(1.04);transform:scale(1.04)}
.card.on .ic{background:#0EA5E9;color:#06122e}
.tools{position:absolute;right:64px;top:130px}
.tool{display:inline-block;margin-left:14px;padding:8px 22px;border-radius:22px;font-size:21px;color:rgba(255,255,255,.8)}
.recent{position:absolute;left:64px;top:580px;width:1792px}
.rh{font-size:28px;font-weight:700;margin:0 0 18px 4px}
.rh span{color:#0EA5E9}
.rrow{height:330px;white-space:nowrap;overflow:hidden}
.rc{display:inline-block;vertical-align:top;width:280px;height:320px;margin-right:22px;border-radius:16px;overflow:hidden;position:relative;background:#0d1a35}
.rc img,.poster img{position:absolute;left:0;top:0;width:100%;height:100%}
.rc .cap,.poster .cap{position:absolute;left:0;bottom:0;width:100%;padding:40px 14px 12px 14px;white-space:normal;
  background:-webkit-linear-gradient(bottom,rgba(0,0,0,.92),rgba(0,0,0,0));background:linear-gradient(to top,rgba(0,0,0,.92),rgba(0,0,0,0))}
.cap b{display:block;font-size:20px;line-height:25px;max-height:50px;overflow:hidden}
.cap i{display:block;font-style:normal;font-size:14px;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:4px}
.empty{padding:50px 40px;border-radius:20px;border:2px dashed rgba(255,255,255,.14);background:rgba(255,255,255,.03);font-size:26px;color:rgba(255,255,255,.7);line-height:38px}
.empty b{display:block;color:#fff;font-size:32px;margin-bottom:8px}
.sk{display:inline-block;vertical-align:top;width:280px;height:320px;margin-right:22px;border-radius:16px;background:rgba(255,255,255,.06)}
.foot{position:absolute;left:64px;bottom:26px;font-size:19px;color:rgba(255,255,255,.4)}
.foot span{margin-right:36px}
.foot b{display:inline-block;padding:2px 10px;margin-right:8px;border-radius:6px;background:rgba(255,255,255,.1);color:#fff}

/* browse */
.colh{position:absolute;top:140px;height:56px;font-size:24px;font-weight:700;color:rgba(255,255,255,.6);text-transform:uppercase;letter-spacing:1px}
.cats{position:absolute;left:64px;top:196px;width:520px;height:830px;overflow:hidden}
.cat{position:relative;height:72px;margin-bottom:10px;border-radius:10px;padding:0 90px 0 20px;font-size:22px;font-weight:700;line-height:68px;text-transform:uppercase;white-space:nowrap;overflow:hidden;color:rgba(255,255,255,.85)}
.cat .n{position:absolute;right:14px;top:16px;height:36px;line-height:36px;min-width:50px;padding:0 10px;text-align:center;border-radius:18px;background:rgba(255,255,255,.08);font-size:18px;color:rgba(255,255,255,.6)}
.cat.sel{color:#0EA5E9}
.items{position:absolute;left:620px;top:196px;width:1236px;height:830px;overflow:hidden}
.ch{position:relative;height:90px;margin-bottom:12px;border-radius:10px;padding:0 20px 0 140px;white-space:nowrap;overflow:hidden}
.ch .num{position:absolute;left:14px;top:30px;width:40px;text-align:center;font-size:18px;font-weight:700;color:rgba(255,255,255,.5)}
.ch .lg{position:absolute;left:62px;top:12px;width:66px;height:66px;border-radius:8px;background:rgba(0,0,0,.3)}
.ch .lg img{width:66px;height:66px}
.ch .nm{font-size:22px;font-weight:700;margin-top:14px;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis}
.ch .ep{font-size:18px;color:rgba(255,255,255,.55);height:24px;line-height:24px;margin:6px 0 0;padding:0;border:0;border-radius:0;background:transparent;overflow:hidden;text-overflow:ellipsis}
.ch.on .nm,.ch.on .ep{color:#7dd3fc}
.poster{position:relative;display:inline-block;vertical-align:top;width:226px;height:330px;margin:0 20px 22px 0;border-radius:14px;overflow:hidden;background:#0d1a35}
.poster .ph,.rc .ph{position:absolute;left:0;top:110px;width:100%;text-align:center;font-size:22px;color:rgba(255,255,255,.2);font-weight:800}
.counter{position:absolute;right:64px;top:146px;font-size:22px;color:rgba(255,255,255,.5)}
.msg{font-size:24px;color:rgba(255,255,255,.65);padding:30px}
.msg .btn{margin-top:20px}
.skl{height:90px;margin-bottom:12px;border-radius:10px;background:rgba(255,255,255,.05)}

/* buttons/forms */
.btn{display:inline-block;padding:0 36px;height:70px;line-height:66px;border-radius:16px;font-size:26px;font-weight:700;margin-right:18px;text-align:center;min-width:200px}
.panel{position:absolute;left:360px;top:170px;width:1200px;padding:40px 56px;border-radius:28px;background:#0b1838;border:2px solid rgba(14,165,233,.25)}
.panel h2{margin:0 0 6px 0;font-size:40px}
.panel p.sub{margin:0 0 26px 0;font-size:22px;color:rgba(255,255,255,.55)}
.tabs{margin-bottom:24px}
.tabs .btn{min-width:300px}
.fld{position:relative;height:84px;margin-bottom:16px;border-radius:14px;padding:0 24px 0 300px}
.fld label{position:absolute;left:26px;top:0;line-height:80px;font-size:22px;color:rgba(255,255,255,.55)}
.fld input{width:100%;height:78px;border:0;background:transparent;color:#fff;font-size:28px;font-family:inherit;outline:none}
.err{color:#fca5a5;font-size:22px;min-height:34px;margin:6px 0 14px 0}
.okm{color:#7dd3fc}
.kv{font-size:24px;margin-bottom:12px;color:rgba(255,255,255,.75)}
.kv b{color:#fff}

/* detail */
.dpost{position:absolute;left:64px;top:170px;width:400px;height:590px;border-radius:20px;overflow:hidden;background:#0d1a35}
.dpost img{width:400px;height:590px}
.dinfo{position:absolute;left:520px;top:170px;width:1336px}
.dinfo h1{font-size:52px;margin:0 0 12px 0;line-height:60px;max-height:120px;overflow:hidden}
.meta{font-size:22px;color:rgba(255,255,255,.55);margin-bottom:22px}
.plot{font-size:24px;line-height:36px;color:rgba(255,255,255,.8);max-height:180px;overflow:hidden;margin-bottom:26px}
.seasons{white-space:nowrap;overflow:hidden;margin-bottom:16px}
.seasons .btn{min-width:150px;height:56px;line-height:52px;font-size:22px}
.eps{height:430px;overflow:hidden}
.ep{height:78px;margin-bottom:10px;border-radius:10px;padding:0 24px;line-height:74px;font-size:23px;white-space:nowrap;overflow:hidden}

/* modal/toast */
#modal{position:absolute;left:0;top:0;width:1920px;height:1080px;background:rgba(0,0,0,.86);z-index:50}
.mbox{position:absolute;left:620px;top:300px;width:680px;padding:50px 60px;border-radius:28px;text-align:center;
  background:#0b1c48;border:2px solid rgba(14,165,233,.35)}
.mbox h2{font-size:34px;margin:0 0 12px 0}
.mbox p{font-size:22px;color:rgba(255,255,255,.6);margin:0 0 30px 0}
.mbox .btn{display:block;margin:0 0 14px 0}
#toast{position:absolute;left:560px;bottom:60px;width:800px;padding:20px 30px;border-radius:16px;text-align:center;font-size:24px;background:#0b1c48;border:2px solid #0EA5E9;z-index:60}

/* player */
#player{position:absolute;left:0;top:0;width:100%;height:100%;background:#000;z-index:100}
#player.inline-player{overflow:hidden;cursor:pointer;outline:1px solid rgba(212,160,23,.4)}
#posd.preview-status{position:absolute;left:0;right:0;bottom:0;width:100%;padding:12px 16px;border:0;border-radius:0;background:rgba(0,0,0,.82);color:#fff;font-size:18px}
.preview-status b,.preview-status small{display:block}
.bw-pv.on{outline:3px solid #D4A017}
#h5video{position:absolute;left:0;top:0;width:100%;height:100%;background:#000}
#posd{position:absolute;left:4%;bottom:5%;width:92%;padding:22px 30px;border-radius:16px;background:rgba(6,13,36,.85);border:2px solid rgba(14,165,233,.4);font-size:26px;color:#fff}
#posd small{display:block;font-size:18px;color:rgba(255,255,255,.6);margin-top:6px}
#posd.vod-controls{position:absolute;left:0;top:0;bottom:auto;width:1920px;height:1080px;padding:0;border:0;border-radius:0;background:transparent;color:#fff;pointer-events:none;overflow:hidden}
.vod-top{position:absolute;left:0;top:0;width:1920px;height:190px;background:linear-gradient(to bottom,rgba(0,0,0,.85),transparent)}
.vod-button{position:absolute;padding:12px 18px;color:#fff;background:rgba(0,0,0,.55);border:2px solid rgba(255,255,255,.25);border-radius:16px;font-family:inherit;font-size:22px;cursor:pointer;pointer-events:auto}
.vod-button svg{vertical-align:middle}
.vod-button span{display:block;white-space:nowrap;margin-top:6px}
.vod-button.on{color:#D4A017;background:rgba(212,160,23,.18);border-color:#D4A017;box-shadow:0 0 20px rgba(212,160,23,.45)}
.vod-back{left:36px;top:32px;width:150px}
.vod-title{position:absolute;left:224px;top:46px;width:1590px}
.vod-title b{display:block;font-size:36px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#posd .vod-title small{font-size:24px}
.vod-bottom{position:absolute;left:0;bottom:0;width:1920px;height:300px;background:linear-gradient(to top,rgba(0,0,0,.92),rgba(0,0,0,.68),transparent)}
.vod-status{position:absolute;left:200px;top:8px;width:1520px;text-align:center;font-size:24px}
.vod-elapsed,.vod-duration{position:absolute;top:61px;font-size:24px;width:180px;text-align:center}
.vod-elapsed{left:24px}.vod-duration{right:24px}
.vod-progress{position:absolute;left:220px;top:69px;width:1480px;height:12px;background:rgba(255,255,255,.3);border-radius:6px;pointer-events:auto;cursor:pointer}
.vod-progress span{display:block;height:100%;background:#D4A017;border-radius:6px}
.vod-progress.on{outline:3px solid #D4A017;outline-offset:5px}
.vod-rewind,.vod-play,.vod-forward{top:112px;width:170px;height:112px}
.vod-rewind{left:635px}.vod-play{left:875px}.vod-forward{left:1115px}
.vod-help{position:absolute;left:0;bottom:24px;width:1920px;font-size:20px;text-align:center;color:rgba(255,255,255,.65)}

/* HOME - mirrors UltraTV Samsung installed app (artifacts/smart-tv home.tsx). Scoped to #app.home */
#app.home{background:#080f1e}
#app.home #bg{background:#080f1e url(../img/home/bg-home.jpg) center center no-repeat;background-size:cover;opacity:1}
.hm{position:absolute;left:0;top:0;width:1920px;height:1080px}
.hm-logo{position:absolute;left:44px;top:18px;width:280px;height:280px}
.hm-clock{position:absolute;right:270px;top:34px;text-align:right;font-size:44px;font-weight:800;line-height:44px;letter-spacing:-1px;color:#fff}
.hm-clock small{display:block;font-size:20px;line-height:24px;font-weight:500;letter-spacing:0;color:rgba(255,255,255,.65);margin-top:4px}
.hm-tool{position:absolute;top:26px;width:90px;height:90px;border-radius:45px;background:rgba(255,255,255,.10);border:2px solid rgba(255,255,255,.18)}
.hm-tool img{position:absolute;left:24px;top:24px;width:38px;height:38px}
.hm-tool.on{border-color:#0EA5E9;background:rgba(14,165,233,.18);box-shadow:0 4px 32px rgba(14,165,233,.35);-webkit-transform:scale(1.08);transform:scale(1.08)}
.hm-cards{position:absolute;left:420px;top:300px;width:1080px;height:272px}
.hm-card{position:absolute;top:0;width:255px;height:272px;border-radius:24px;overflow:hidden;text-align:center;padding-top:28px;
  background:rgba(255,255,255,.08);border:2px solid rgba(255,255,255,.15)}
.hm-card.on{border-color:#0EA5E9;background:rgba(255,255,255,.06);box-shadow:0 0 18px rgba(14,165,233,.45)}
.hm-bar{position:absolute;left:15%;top:-2px;width:70%;height:4px;border-radius:20px;background:#fff;opacity:0}
.hm-card.on .hm-bar{opacity:.8}
.hm-ic{position:relative;width:110px;height:110px;margin:0 auto 20px auto;border-radius:16px;background:rgba(14,165,233,.20);box-shadow:0 4px 32px rgba(14,165,233,.35)}
.hm-ic img{position:absolute;left:27px;top:27px;width:56px;height:56px}
.hm-lb{font-size:30px;line-height:36px;font-weight:700;color:#0EA5E9}
.hm-sb{font-size:18px;line-height:24px;color:rgba(255,255,255,.50);margin-top:4px}
.hm-rec{position:absolute;left:80px;top:610px;width:1760px;height:290px}
.hm-rh{font-size:34px;line-height:46px;font-weight:700;color:#fff;margin-bottom:14px}
.hm-rc{position:absolute;top:60px;width:280px;height:220px;border-radius:16px;overflow:hidden;background:#0d1a35;border:2px solid rgba(255,255,255,.08)}
.hm-rc.on{border-color:#0EA5E9;box-shadow:0 0 18px rgba(14,165,233,.45)}
.hm-rc .po{position:absolute;left:0;top:0;width:100%;height:100%}
.hm-rc .phi,.hm-sk img{position:absolute;left:118px;top:88px;width:40px;height:40px}
.hm-sk{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.hm-sk img{left:122px;top:92px;width:32px;height:32px}
.hm-rc .cap{position:absolute;left:0;bottom:0;width:100%;padding:48px 12px 12px 12px;white-space:normal;
  background:-webkit-linear-gradient(bottom,rgba(0,0,0,.92) 0%,rgba(0,0,0,.55) 60%,rgba(0,0,0,0) 100%);background:linear-gradient(to top,rgba(0,0,0,.92) 0%,rgba(0,0,0,.55) 60%,rgba(0,0,0,0) 100%)}
.hm-rc .cap b{font-size:19px;line-height:25px;max-height:50px}
.hm-rc .cap i{letter-spacing:1px}
.hm-rc .tag{position:absolute;left:8px;top:8px;width:26px;height:20px;border-radius:6px;background:rgba(0,0,0,.80)}
.hm-rc .tag img{position:absolute;left:7px;top:4px;width:12px;height:12px}
.hm-note{position:absolute;left:0;top:290px;font-size:20px;color:rgba(255,255,255,.5)}
.hm-msg{position:absolute;left:0;top:60px;width:1760px;height:220px;padding:56px 48px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);font-size:24px;line-height:34px;color:rgba(255,255,255,.65)}
.hm-msg b{display:block;font-size:30px;color:#fff;margin-bottom:8px}
.hm-fl,.hm-fr{position:absolute;bottom:40px;font-size:26px;line-height:40px;color:rgba(255,255,255,.68)}
.hm-fl{left:48px}
.hm-fr{right:48px;text-align:right}
.hm-fl b,.hm-fr b{color:rgba(255,255,255,.95)}

/* Keep the full legacy connection form, including the ID fallback, on screen. */
.panel.connect-panel{top:145px;padding:24px 40px}
.connect-panel h2{font-size:34px;line-height:40px}
.connect-panel p.sub{font-size:18px;line-height:24px;margin-bottom:12px}
.connect-panel .tabs{margin-bottom:12px}
.connect-panel .btn{height:56px;line-height:52px;font-size:24px}
.connect-panel .fld{height:64px;margin-bottom:10px;padding-left:240px}
.connect-panel .fld label{line-height:60px;font-size:20px}
.connect-panel .fld input{height:60px;font-size:24px}
.connect-panel .err{min-height:28px;font-size:20px;line-height:26px;margin:4px 0 10px}

/* BROWSE - mirrors UltraTV Samsung live.tsx / movies.tsx / series.tsx (gold #D4A017). Scoped to .bw */
.bw{position:absolute;left:0;top:0;width:1920px;height:1080px;background:#080f1e url(../img/bg-mosaic.jpg) center center no-repeat;background-size:cover}
.bw-svg{position:absolute;left:14px;top:11px}
.bw-back .bw-svg{left:10px;top:10px}
.bw-cat .bw-svg{left:16px;top:33px}
.bw-ttl span{display:block}
.bw-hdr{position:absolute;left:0;top:0;width:1920px;height:56px;background:rgba(0,0,0,.30);border-bottom:1px solid rgba(255,255,255,.10)}
.bw-box{position:absolute;top:6px;height:44px;border-radius:12px;background:rgb(14,18,36);border:1.5px solid rgba(212,160,23,.22);padding:0 16px 0 50px;line-height:41px;font-size:20px;font-weight:700;text-transform:uppercase;letter-spacing:1px;white-space:nowrap;overflow:hidden}
.bw-back{position:absolute;left:30px;top:6px;width:44px;height:44px;border-radius:12px;background:rgba(212,160,23,.18);border:1.5px solid rgba(212,160,23,.35)}
.bw-back.on{border:3px solid #D4A017;background:rgba(212,160,23,.3);box-shadow:0 0 18px rgba(212,160,23,.65)}
.bw-back-unused i{position:absolute;left:16px;top:14px;width:13px;height:13px;border-left:3px solid #D4A017;border-bottom:3px solid #D4A017;-webkit-transform:rotate(45deg);transform:rotate(45deg)}
.bw-ttl{left:86px;width:372px;color:#D4A017;padding-left:44px}
.bw-cbox{left:486px;width:526px;color:rgba(255,255,255,.95);padding-right:90px;padding-left:44px}
.bw-mid{position:absolute;left:474px;top:0;width:1300px;height:56px;text-align:center}
.bw-vcat{position:relative;display:inline-block;max-width:1200px;padding:0 16px;color:rgba(255,255,255,.95);letter-spacing:1.4px}
.bw-vcat .bw-cn{display:inline-block;vertical-align:top;max-width:1080px;overflow:hidden;text-overflow:ellipsis}
.bw-vcat .bw-cc{position:relative;display:inline-block;vertical-align:top;right:auto;top:9px;margin-left:12px;letter-spacing:0}
.bw-vclk{right:20px;padding:0 16px;color:rgba(255,255,255,.90);letter-spacing:0}
.bw-cbox .bw-cn{display:block;overflow:hidden;text-overflow:ellipsis}
.bw-cc{position:absolute;right:14px;top:9px;height:24px;line-height:21px;min-width:28px;padding:0 8px;border-radius:12px;font-size:13px;text-align:center;background:rgba(212,160,23,.18);border:1px solid rgba(212,160,23,.40);color:#D4A017}
.bw-time{left:1030px;width:874px;padding:0 16px;letter-spacing:.5px;text-transform:none}
.bw-dt{font-size:20px;color:rgba(255,255,255,.75)}
.bw-time b{position:absolute;right:16px;top:0;font-size:24px;color:rgba(255,255,255,.95);letter-spacing:1.5px}
.bw-ic{position:absolute;left:16px;top:12px;width:18px;height:18px}
.bw-ic-grid{border:0;background:transparent}
.bw-ic-grid:before,.bw-ic-grid:after{content:"";position:absolute;left:0;top:0;width:6px;height:6px;border:2px solid #D4A017;border-radius:2px;box-shadow:10px 0 0 -0px transparent}
.bw-ic-grid:after{left:10px}
.bw-ic-live,.bw-ic-movies,.bw-ic-series{border:2px solid #D4A017;border-radius:3px;height:14px;top:14px}
.bw-cats{position:absolute;left:28px;top:56px;width:446px;height:1024px;overflow:hidden}
.bw-items{position:absolute;left:486px;top:56px;width:526px;height:1024px;overflow:hidden}
.bw-movies .bw-items,.bw-series .bw-items{left:478px;width:1442px}
.bw-cat,.bw-ch,.bw-sk,.bw-day,.bw-er{position:absolute;left:0;width:100%;height:90px;border-radius:10px;background:rgb(14,18,36);border:2px solid rgba(255,255,255,.08);overflow:hidden;white-space:nowrap}
.bw-sk{background:rgba(255,255,255,.05)}
.bw-cat{padding:0 70px 0 48px;line-height:86px;font-size:20px;font-weight:700;text-transform:uppercase;color:rgba(255,255,255,.85)}
.bw-cat .bw-ic{top:34px}
.bw-cat .bw-ic-grid:before,.bw-cat .bw-ic-grid:after{border-color:rgba(255,255,255,.30)}
.bw-cat .bw-cn{display:block;overflow:hidden;text-overflow:ellipsis}
.bw-n{position:absolute;right:14px;top:29px;height:30px;line-height:30px;min-width:38px;padding:0 8px;border-radius:15px;text-align:center;font-size:18px;font-weight:700;background:rgba(255,255,255,.08);color:rgba(255,255,255,.50)}
.bw-cat.on,.bw-ch.on,.bw-day.on{background:rgb(22,28,50);border-color:rgba(212,160,23,.50)}
.bw-cat.sel{background:rgba(212,160,23,.18);border-color:#D4A017;color:#D4A017;box-shadow:0 0 12px rgba(212,160,23,.25)}
.bw-cat.sel .bw-n{background:rgba(212,160,23,.20);color:#D4A017}
.bw-cat.sel .bw-ic-grid:before,.bw-cat.sel .bw-ic-grid:after{border-color:#D4A017}
.bw-cat.on.sel{border-color:#D4A017}
.bw-ch{padding:0 14px 0 140px}
.bw-num{position:absolute;left:12px;top:33px;width:38px;text-align:center;font-size:18px;font-weight:700;color:rgba(255,255,255,.50)}
.bw-lg{position:absolute;left:58px;top:10px;width:65px;height:65px;border-radius:8px;overflow:hidden;background:rgba(0,0,0,.30)}
.bw-lg img{width:65px;height:65px;object-fit:contain}
.bw-lg i{position:absolute;left:16px;top:16px;width:32px;height:32px;border-radius:4px;background:rgba(255,255,255,.10)}
.bw-nm{display:block;margin-top:16px;font-size:20px;font-weight:600;text-transform:uppercase;color:rgba(255,255,255,.85);overflow:hidden;text-overflow:ellipsis}
.bw-ep{display:block;margin-top:4px;font-size:16px;color:rgba(255,255,255,.55);overflow:hidden;text-overflow:ellipsis}
.bw-ch.on .bw-nm{color:#D4A017}
.bw-ch.on .bw-ep{color:rgba(212,160,23,.80)}
.bw-pk{width:340px;height:450px;border-radius:12px}
.bw-po{position:absolute;width:340px;height:450px;border-radius:12px;background:#0d1a35;border:2px solid rgba(255,255,255,.08);box-shadow:0 4px 16px rgba(0,0,0,.50)}
.bw-po.on{z-index:10;border:2.5px solid rgba(212,160,23,.70);box-shadow:0 0 0 1px rgba(212,160,23,.50),0 0 16px rgba(212,160,23,.28);-webkit-transform:scale(1.06);transform:scale(1.06)}
.bw-clip{position:absolute;left:0;top:0;right:0;bottom:0;border-radius:10px;overflow:hidden}
.bw-clip img{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover}
.bw-ph{position:absolute;left:0;top:210px;width:100%;text-align:center;font-size:22px;font-weight:800;color:rgba(255,255,255,.15)}
.bw-cap{position:absolute;left:0;bottom:0;width:100%;padding:22px 6px 7px;text-align:center;font-size:14px;font-weight:700;line-height:18px;max-height:65px;overflow:hidden;text-transform:uppercase;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.9);
  background:-webkit-linear-gradient(bottom,rgba(0,0,0,.92) 0%,rgba(0,0,0,.60) 55%,rgba(0,0,0,0) 100%);background:linear-gradient(to top,rgba(0,0,0,.92) 0%,rgba(0,0,0,.60) 55%,rgba(0,0,0,0) 100%)}
.bw-pos{position:absolute;right:8px;bottom:8px;padding:4px 12px;border-radius:12px;background:rgba(0,0,0,.6);font-size:16px;color:rgba(255,255,255,.6);z-index:20}
.bw-st{position:absolute;left:0;top:8px;width:100%;padding:40px 32px;border-radius:10px;background:rgb(14,18,36);border:2px solid rgba(255,255,255,.08);font-size:22px;line-height:32px;color:rgba(255,255,255,.55);white-space:normal}
.bw-st b{display:block;font-size:26px;color:#fff;margin-bottom:8px}
.bw-pv{position:absolute;left:1030px;top:56px;width:789px;height:454px;overflow:hidden;background:#060c1e;
  background:-webkit-radial-gradient(center,ellipse,#0d1a3a 0%,#060c1e 100%);background:radial-gradient(ellipse at center,#0d1a3a 0%,#060c1e 100%)}
.bw-pvc{position:absolute;left:0;top:110px;width:100%;text-align:center;padding:0 30px}
.bw-pvc img{display:block;width:120px;height:120px;margin:0 auto 18px;object-fit:contain}
.bw-pvc b{display:block;font-size:30px;color:#fff;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bw-pvc span{display:block;margin-top:10px;font-size:26px;font-weight:600;color:rgba(255,255,255,.40);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bw-pvc em{display:block;margin-top:14px;font-style:normal;font-size:18px;color:#D4A017}
.bw-play{position:relative;display:block !important;width:80px;height:80px;margin:0 auto 6px !important;border-radius:16px;background:rgba(212,160,23,.10)}
.bw-play i{position:absolute;left:32px;top:24px;width:0;height:0;border-top:16px solid transparent;border-bottom:16px solid transparent;border-left:24px solid rgba(212,160,23,.4)}
.bw-epg{position:absolute;left:1030px;top:510px;width:789px;height:570px;border-top:1px solid rgba(255,255,255,.06)}
.bw-eh{position:absolute;left:0;top:0;width:100%;height:56px;line-height:56px;padding:0 16px;font-size:20px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#D4A017}
.bw-en{position:absolute;left:0;top:64px;width:100%;height:498px;line-height:498px;text-align:center;font-size:32px;font-weight:600;color:rgba(255,255,255,.40)}
.bw-er{left:8px;width:773px;padding:0 20px 0 236px;line-height:86px}
.bw-dot{position:absolute;left:18px;top:25px;width:36px;height:36px;border-radius:18px;background:rgba(255,255,255,.25)}
.bw-er.act .bw-dot{background:#4ade80}
.bw-er.act{border-color:rgba(212,160,23,.50)}
.bw-et{position:absolute;left:64px;top:0;width:170px;font-size:22px;font-weight:600;color:rgba(255,255,255,.60)}
.bw-ett{display:block;font-size:22px;font-weight:600;color:rgba(255,255,255,.85);overflow:hidden;text-overflow:ellipsis}
.bw-cal{position:absolute;left:1820px;top:56px;width:100px;height:1024px;overflow:hidden}
.bw-day{left:8px;width:84px;text-align:center;padding-top:12px}
.bw-day b{display:block;font-size:44px;line-height:44px;color:rgba(255,255,255,.75)}
.bw-day span{display:block;margin-top:4px;font-size:22px;font-weight:600;color:rgba(255,255,255,.55)}
.bw-day.sel{background:rgba(212,160,23,.18);border-color:#D4A017;box-shadow:0 0 12px rgba(212,160,23,.25)}
.bw-day.sel b,.bw-day.sel span{color:#D4A017}

/* LIVE EPG OSD - mirrors Samsung live-player.tsx 178-249 + video-player.tsx 1717-1755. Scoped to #posd.live-epg */
#posd.live-epg{left:0;top:0;bottom:auto;width:1920px;height:1080px;padding:0;border:0;border-radius:0;background:transparent;font-size:20px;color:#fff;overflow:hidden}
#posd.live-epg .le-top{position:absolute;left:0;top:0;width:100%;height:150px;padding:24px 24px 0;background:-webkit-linear-gradient(top,rgba(0,0,0,.65),rgba(0,0,0,0));background:linear-gradient(to bottom,rgba(0,0,0,.65),rgba(0,0,0,0))}
#posd.live-epg .le-back{position:absolute;left:24px;top:24px;height:52px;line-height:48px;padding:0 24px 0 46px;border-radius:12px;font-size:20px;font-weight:700;background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.25);color:#fff}
#posd.live-epg .le-arrow{position:absolute;left:22px;top:19px;width:12px;height:12px;border-left:3px solid #fff;border-bottom:3px solid #fff;-webkit-transform:rotate(45deg);transform:rotate(45deg)}
#posd.live-epg .le-badge{position:absolute;left:180px;top:32px;height:36px;line-height:36px;padding:0 14px 0 34px;border-radius:6px;background:rgba(0,0,0,.82);font-size:14px;font-weight:700;letter-spacing:2px;color:#fff}
#posd.live-epg .le-dot{position:absolute;left:12px;top:12px;width:12px;height:12px;border-radius:6px;background:#ef4444}
#posd.live-epg .le-clock{position:absolute;right:24px;top:24px;text-align:right;color:rgba(255,255,255,.8)}
#posd.live-epg .le-clock b{display:block;font-size:30px;line-height:36px}
#posd.live-epg .le-clock small{display:block;font-size:14px;color:rgba(255,255,255,.5);text-transform:capitalize}
#posd.live-epg .f.on{border-color:#D4A017 !important;background:rgba(212,160,23,.2) !important;box-shadow:none}
#posd.live-epg .le-status{position:absolute;left:50%;top:44%;width:640px;margin-left:-320px;padding:18px 26px;border-radius:14px;text-align:center;font-size:26px;font-weight:700;background:rgba(0,0,0,.78);border:2px solid rgba(255,255,255,.2)}
#posd.live-epg .le-st-buffering{border-color:rgba(212,160,23,.6);color:#D4A017}
#posd.live-epg .le-st-error{border-color:rgba(248,113,113,.7);color:#fca5a5}
#posd.live-epg .le-bot{position:absolute;left:0;bottom:0;width:100%;padding:120px 40px 32px;background:-webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,.92));background:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.92))}
#posd.live-epg .le-epg{margin-bottom:28px}
#posd.live-epg .le-pair{display:table;width:100%;table-layout:fixed}
#posd.live-epg .le-prog{display:table-cell;vertical-align:top}
#posd.live-epg .le-next{opacity:.7}
#posd.live-epg .le-div{display:table-cell;width:73px;border-right:1px solid rgba(255,255,255,.18);position:relative;left:-36px}
#posd.live-epg .le-pt{font-size:28px;font-weight:700;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#posd.live-epg .le-next .le-pt{font-weight:600}
#posd.live-epg .le-lbl{font-size:16px;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:1px;margin-right:12px}
#posd.live-epg .le-row{position:relative;height:28px;line-height:28px}
#posd.live-epg .le-ts{float:left;font-size:20px;font-weight:600;color:rgba(255,255,255,.5)}
#posd.live-epg .le-ts.le-gold{color:#D4A017;font-weight:700}
#posd.live-epg .le-te{float:right;font-size:20px;font-weight:600;color:rgba(255,255,255,.5)}
#posd.live-epg .le-trk{position:relative;margin:11px 72px 0;height:5px;border-radius:3px;background:rgba(255,255,255,.2)}
#posd.live-epg .le-next .le-trk{background:rgba(255,255,255,.12)}
#posd.live-epg .le-fill{position:absolute;left:0;top:0;height:100%;border-radius:3px;background:#D4A017}
#posd.live-epg .le-none{text-align:center;font-size:22px;color:rgba(255,255,255,.3)}
#posd.live-epg .le-id{position:relative;min-height:80px}
#posd.live-epg .le-channel{position:relative;min-height:80px;margin-right:380px;padding-left:100px}
#posd.live-epg .le-focus.on{outline:3px solid #D4A017;outline-offset:4px;border-radius:8px}
#posd.live-epg .le-logo{position:absolute;left:0;top:0;width:80px;height:80px;border-radius:12px;overflow:hidden;background:rgba(255,255,255,.08)}
#posd.live-epg .le-logo img{width:80px;height:80px;padding:8px;object-fit:contain}
#posd.live-epg .le-ph{position:absolute;left:22px;top:22px;width:36px;height:36px;border-radius:18px;border:3px solid #D4A017}
#posd.live-epg .le-name{font-size:30px;line-height:38px;font-weight:700;margin:4px 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#posd.live-epg .le-sub{font-size:20px;color:rgba(255,255,255,.65);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#posd.live-epg .le-sub span{color:#D4A017;font-weight:600}
#posd.live-epg .le-acts{position:absolute;right:0;top:14px;white-space:nowrap}
#posd.live-epg .le-btn{display:inline-block;margin-left:14px;height:52px;line-height:48px;padding:0 24px;border-radius:12px;font-size:20px;font-weight:700;background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.25)}
#posd.live-epg .le-hint{margin-top:16px;font-size:16px;color:rgba(255,255,255,.4)}
