/* Isolated MSX additions; original LG stylesheet is preserved. */
.auth-card{width:min(580px,90vw);text-align:left;background:#0b263b;padding:24px;border-radius:18px;max-height:73vh;overflow:auto}
.auth-card label{display:block;font-size:18px;margin:10px 0}.auth-card input:not([type=checkbox]){display:block;width:100%;background:#06131d;border:1px solid #66889f;border-radius:8px;padding:12px;color:white;font:inherit;margin-top:5px}.auth-card button{margin:5px;padding:12px;font-size:16px}.auth-card .remember{font-size:16px}.auth-card input:focus{outline:3px solid white}.sidebar{overflow-y:auto}.sidebar nav{flex-shrink:0}.sidebar .nav-item{font-size:1.1vw;padding:1vh .6vw}.catalog-search input{font-size:20px}.action-card button{margin:8px;display:block}.settings-card{overflow:auto}#login-message{font-size:17px;color:#ffd392;min-height:24px}.catalog-grid .notice{grid-column:1/-1;white-space:pre-line;font-size:20px;padding:12px}.toast{position:fixed;bottom:25px;left:20%;right:20%;padding:18px;background:#183f5a;border:1px solid #85c9ee;border-radius:12px;text-align:center;z-index:100;font-size:22px}#player-controls{display:flex;align-items:center;gap:16px}#player-position{font-size:20px}.card-resume{display:block;font-size:14px;color:#9ee7b0}.catalog-search{min-width:280px}.list-row{padding:22px;margin:12px}.hidden{display:none!important}#player-overlay{z-index:20}#player-overlay button{font-size:18px}#player-overlay{transition:opacity .2s}.overlay-hidden{opacity:0;pointer-events:none}#player-overlay:focus-within{opacity:1;pointer-events:auto}
.sidebar .nav-item{height:5.8vh;min-height:38px;margin-bottom:.5vh}.side-brand{max-height:13vh}.side-footer{padding-top:1vh}

/* Android 1.0.33 branding and login composition, copied into MSX only. */
.screen{background:radial-gradient(circle at 80% 5%,#123c83 0,#061a55 52%,#040f30 100%)}
.sidebar{background:linear-gradient(180deg,#061a55,#040f30)}
#login.active{display:flex;flex-direction:row;gap:4vw;padding:4vh 5vw;align-items:center;justify-content:center}
.login-brand{width:38vw;max-width:480px;text-align:center;flex-shrink:0}.login-brand img{width:100%;max-height:40vh;object-fit:contain}.login-brand h2{font-size:1.65vw;font-size:clamp(20px,1.65vw,30px);line-height:1.3;margin:2vh 0 1vh}.login-brand p{color:#aabee0;font-size:1.1vw;font-size:clamp(16px,1.1vw,22px)}
.login-panel{width:46vw;max-width:650px;max-height:92vh;overflow-y:auto;text-align:left}.login-panel h1{font-size:1.6vw;font-size:clamp(22px,1.6vw,32px);margin:0 0 1.5vh;line-height:1.2}.login-panel .auth-card{width:100%;max-height:none;padding:2vh 1.5vw;overflow:visible;background:#071b42;border:1px solid #244b81}.login-panel .auth-card label{font-size:1.15vw;font-size:clamp(16px,1.15vw,22px);margin:.7vh 0}.login-panel .auth-card input:not([type=checkbox]){padding:1vh 12px;min-height:42px;margin-top:.5vh}.login-panel .auth-card button{font-size:1vw;font-size:clamp(14px,1vw,20px);padding:1.2vh .8vw;margin:.5vh .25vw}.login-panel .auth-card small{font-size:.8vw;font-size:clamp(12px,.8vw,16px);line-height:1.3;display:block;color:#acbedd}.login-panel #login-message{margin:1vh 0;min-height:1em;font-size:1vw;font-size:clamp(14px,1vw,18px)}
@media(max-width:680px){#login.active{flex-direction:column;padding:3vh 5vw;gap:1vh;overflow-y:auto;justify-content:flex-start}.login-brand{width:40vw;max-width:210px}.login-brand img{max-height:17vh}.login-brand h2,.login-brand p{display:none}.login-panel{width:90vw;max-height:none;overflow:visible}.login-panel h1{font-size:22px;text-align:center}.login-panel .auth-card{padding:16px}.login-panel .auth-card button{padding:12px}.login-panel .auth-card input:not([type=checkbox]){padding:10px}}

/* Panel-managed server selection and TV safe-area spacing. */
.login-panel select{width:100%;min-height:44px;background:#06131d;color:#fff;border:1px solid #66889f;border-radius:8px;padding:10px;font:inherit;margin-top:5px}.login-panel select:focus{outline:3px solid white}.login-panel #server-status{font-size:.9vw;font-size:clamp(13px,.9vw,17px);line-height:1.3;color:#acbedd;margin:.6vh 0 1vh}
#login.active{padding:5vh 6vw;gap:4vw}.login-brand{width:33vw;max-width:420px}.login-brand img{width:90%;max-height:32vh;object-fit:contain}.login-panel{width:46vw;max-width:640px;max-height:88vh}.login-panel .auth-card{padding:2vh 1.5vw}.login-brand h2{font-size:1.4vw;font-size:clamp(18px,1.4vw,27px)}
#pair .brand.small{width:180px;max-width:22vw;max-height:16vh;object-fit:contain}#pair h1{font-size:2.2vw;font-size:clamp(24px,2.2vw,40px)}#pair .url{font-size:1.8vw;font-size:clamp(18px,1.8vw,30px)}#pair .pair-code{font-size:6vw;font-size:clamp(42px,6vw,90px);letter-spacing:.7vw}
@media(max-width:680px){#login.active{padding:3vh 5vw}.login-brand{width:40vw;max-width:200px}.login-panel{width:90vw;max-height:none}.login-brand img{max-height:17vh}}
#pair.active{padding:3vh 5vw;gap:0;overflow-y:auto}#pair .brand.small{max-height:12vh;margin:0}#pair h1{margin:1vh 0;font-size:2vw;font-size:clamp(24px,2vw,36px)}#pair p{margin:.7vh 0;font-size:1.5vw;font-size:clamp(16px,1.5vw,24px)}#pair .url{font-size:1.8vw;font-size:clamp(18px,1.8vw,28px)}#pair .pair-code{margin:1vh 0;padding:1vh 2vw}#pair button{padding:1vh 1.5vw;margin:.4vh 0;font-size:1.25vw;font-size:clamp(16px,1.25vw,22px)}

/* 0.1.4: fixed geometry for long names, TV navigation and settings. */
.sidebar{flex:0 0 var(--sidebar);min-width:0}.sidebar .nav-item{font-size:1.05vw;font-size:clamp(12px,1.05vw,22px);line-height:1.2;overflow:hidden;flex-shrink:0}
.page{flex:1;min-width:0}.catalog-header{gap:1vw}.catalog-tools{min-width:0;max-width:62%;gap:.5vw}.catalog-search{min-width:0;width:20vw}.catalog-search input{font-size:1.1vw;font-size:clamp(14px,1.1vw,23px)}#catalog-count{font-size:.9vw;font-size:clamp(12px,.9vw,19px);white-space:nowrap}
.category-list{width:17vw;min-width:17vw;padding:.7vh .5vw 4vh}.category-list button.category{flex:0 0 auto;min-height:7vh;height:auto;margin-bottom:.8vh;padding:1.2vh .8vw!important;font-size:1.05vw;font-size:clamp(13px,1.05vw,23px);line-height:1.3;overflow-wrap:anywhere;white-space:normal}.category-list button.category:focus{transform:none;box-shadow:inset 0 0 0 3px #fff}
.catalog-grid{padding:.6vh .4vw 5vh}.catalog-grid button.card{width:calc(20% - .7vw);height:31vh;padding:1vh .65vw;flex-shrink:0}.catalog-grid button.card.card-live{width:calc(25% - .7vw);height:22vh}.catalog-grid .card span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;font-size:1vw;font-size:clamp(12px,1vw,22px);line-height:1.25;max-height:2.5em;min-height:0;text-overflow:ellipsis}.catalog-grid .card-live span{width:100%;margin:0;padding:.5vh .3vw;background:rgba(6,19,29,0.910);border-radius:5px;white-space:normal;max-height:3em;min-height:2.5em}.catalog-grid .card-live .card-image{height:48%;width:64%;left:18%;top:4%}.card-resume{font-size:.75vw;font-size:clamp(10px,.75vw,16px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:2}
.settings-page{overflow-y:auto;overflow-x:hidden}.settings-header{height:auto;min-height:16vh;padding-bottom:2vh}.settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.4vw;padding:4px}.settings-grid .settings-card{width:auto;margin:0;min-width:0;overflow:visible}.settings-grid .action-card,.settings-grid .speed-card{grid-column:1/-1;display:block}.settings-actions{display:flex;flex-wrap:wrap;gap:1vw}.settings-actions button.focusable{margin:0;flex:1 1 11vw;min-width:0;min-height:7vh;font-size:.95vw;font-size:clamp(12px,.95vw,20px);line-height:1.3;padding:1.4vh .9vw;white-space:normal}.settings-grid .action-card h3{margin:0 0 1.5vh}.speed-card p{font-size:1vw;font-size:clamp(13px,1vw,20px);line-height:1.5;color:#bdd0da;overflow-wrap:anywhere}.speed-card button{font-size:1vw;font-size:clamp(13px,1vw,20px);padding:1.4vh 1.2vw}.info-row strong{font-size:1vw;font-size:clamp(12px,1vw,21px)}
#player-overlay{flex-wrap:wrap;max-width:94vw}#player-title{font-size:1.5vw;font-size:clamp(16px,1.5vw,30px);overflow-wrap:anywhere}#player-controls{flex-wrap:wrap}
@media(max-width:800px){.catalog-grid button.card{width:calc(33.333% - .7vw)}.catalog-grid button.card.card-live{width:calc(50% - .7vw)}.settings-grid{grid-template-columns:minmax(0,1fr)}.settings-actions button.focusable{flex-basis:40%}.category-list button.category{font-size:12px}.sidebar .nav-item{font-size:10px}.sidebar .nav-icon{font-size:14px}.catalog-search{width:24vw}}
@supports(display:grid){.catalog-grid button.card,.catalog-grid button.card.card-live{width:auto;height:auto;margin:0}.catalog-grid[data-type="live"]{grid-auto-rows:22vh}.catalog-grid:not([data-type="live"]){grid-auto-rows:31vh}}
/* 0.1.5: Android-style top actions, bottom timeline and discoverable controls. */
.catalog-grid .catalog-more{grid-column:1/-1;align-self:start;width:100%;min-height:7vh;height:auto;margin:1vh 0;font-size:1vw;font-size:clamp(13px,1vw,22px)}
.player-screen{position:relative;overflow:hidden}.player-screen #player-overlay{position:absolute;inset:0;left:0;top:0;max-width:none;display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;flex-wrap:nowrap;pointer-events:none}.player-screen #player-overlay>*{margin:0;pointer-events:auto}.player-topbar{display:flex;align-items:center;gap:1.2vw;padding:2.5vh 2.5vw;background:linear-gradient(rgba(0,0,0,0.867),transparent)}.player-topbar #player-title{flex:1;min-width:0;font-size:1.6vw;font-size:clamp(18px,1.6vw,34px);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-screen #player-overlay button{font-size:1vw;font-size:clamp(13px,1vw,22px);line-height:1.25;padding:1.3vh 1.2vw;border-radius:9px;white-space:nowrap}.player-bottom{padding:4vh 2.5vw 2.5vh;background:linear-gradient(transparent,rgba(0,0,0,0.933) 35%)}#player-status{font-size:1.1vw;font-size:clamp(13px,1.1vw,23px);line-height:1.5;min-height:1.5em;color:#d4e8f3;margin:0 0 1vh;max-width:100%;overflow-wrap:anywhere}#player-timeline{display:flex;align-items:center;gap:1.2vw;margin-bottom:1.6vh}#player-seek{flex:1;min-width:0;accent-color:#19b6ec;height:24px;cursor:pointer;background:transparent}#player-seek:focus{transform:none;outline:3px solid white;border-radius:8px}#player-position{min-width:9em;font-size:1vw;font-size:clamp(13px,1vw,22px);text-align:right}#player-controls{display:flex;flex-wrap:wrap;gap:.8vw;align-items:center}.player-screen #player-overlay button:disabled{opacity:.35;cursor:default}.player-screen #player-overlay.overlay-hidden,.player-screen #player-overlay.overlay-hidden:focus-within{opacity:0;visibility:hidden;pointer-events:none}.player-screen #player-overlay.overlay-hidden>*{pointer-events:none}#player-live-label{font-size:1.1vw;font-size:clamp(14px,1.1vw,24px);color:#fb7373;font-weight:bold}#player-pause{min-width:11em}#player-error{background:#78472a}#player-retry{background:#126887}
.catalog-grid{scroll-behavior:auto}

.direct-banner{color:#9ee7b0;font-weight:bold;font-size:1vw;font-size:clamp(13px,1vw,22px)}

#hb-transport-status { position:fixed;right:10px;bottom:8px;z-index:9999;max-width:85vw;padding:4px 9px;border-radius:5px;font:12px Arial,sans-serif;pointer-events:none; }
.hb-transport-ok { background:#102b36;color:#d5f1f5; }
.hb-transport-warning { background:#683813;color:#fff1df; }
