:root{--bg: #061014;--bg-2: #081723;--panel: rgba(15,27,39,.88);--panel-strong: #0b1722;--panel-hover: rgba(15,32,46,.95);--line: rgba(149,184,216,.18);--line-strong: rgba(149,184,216,.32);--text: #f4f7fb;--text-2: #c8dff4;--muted: #7b9dbf;--accent: #47b7ff;--accent-2: #59f0c5;--accent-glow: rgba(71,183,255,.22);--accent-2-glow: rgba(89,240,197,.18);--danger: #f0526b;--danger-dark: #c93650;--shadow: 0 22px 70px rgba(0,0,0,.44);--shadow-sm: 0 6px 24px rgba(0,0,0,.32);--input-bg: #060e16;--badge-bg: rgba(71,183,255,.1);--body-grad-1: rgba(71,183,255,.14);--body-grad-2: rgba(89,240,197,.09);--nav-bg: rgba(6,14,20,.82);--surface-1: rgba(6,16,20,.6);--surface-2: rgba(4,11,16,.5);--surface-3: rgba(8,18,26,.55);--surface-overlay: rgba(7,16,24,.94);--surface-card: rgba(7,16,24,.65);--surface-tint: rgba(255,255,255,.025);--surface-dropzone: rgba(4,11,16,.6);--surface-video: #020608;--modal-backdrop: rgba(0,0,0,.68);--btn-ghost-bg: rgba(255,255,255,.04);--btn-ghost-hover: rgba(255,255,255,.08);--inset-glow: inset 0 1px 0 rgba(255,255,255,.06);--avatar-badge-bg: rgba(4,11,16,.84);--radius-sm: 12px;--radius: 18px;--radius-lg: 26px;--radius-xl: 32px;color-scheme:dark;font-family:Inter,DM Sans,Segoe UI,sans-serif;line-height:1.55;color:var(--text);background:var(--bg)}[data-theme=light]{color-scheme:light}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(ellipse 60% 40% at 10% 0%,var(--body-grad-1),transparent),radial-gradient(ellipse 40% 30% at 90% 5%,var(--body-grad-2),transparent),var(--bg);transition:background .2s ease,color .2s ease}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.2rem,5.5vw,4.4rem);font-weight:900;line-height:.96;letter-spacing:-.07em;margin-bottom:.75rem}h2{font-size:clamp(1.5rem,2.8vw,2rem);font-weight:800;letter-spacing:-.04em}h3{font-size:1.15rem;font-weight:700}.eyebrow{margin-bottom:.6rem;color:var(--accent-2);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.muted{color:var(--muted)}.error-text{color:#ff7088;font-weight:700}.success-text{color:var(--accent-2);font-weight:700}.page-message{margin:0;padding:0 .35rem}button,.button-link,input,select,textarea{font:inherit}button,.button-link{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:0;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--accent),#2278d4);color:#fff;cursor:pointer;font-weight:700;font-size:.9rem;letter-spacing:.01em;padding:.72rem 1.15rem;transition:transform .18s cubic-bezier(.34,1.56,.64,1),opacity .16s ease,box-shadow .16s ease;box-shadow:0 4px 16px var(--accent-glow);white-space:nowrap}button:hover,.button-link:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 28px var(--accent-glow)}button:active,.button-link:active{transform:translateY(0) scale(.98)}button:disabled{cursor:not-allowed;opacity:.45;transform:none;box-shadow:none}.ghost-btn,.button-link.ghost-btn{border:1px solid var(--line-strong);background:var(--btn-ghost-bg);color:var(--text-2);box-shadow:none}.ghost-btn:hover,.button-link.ghost-btn:hover{background:var(--btn-ghost-hover);border-color:var(--accent);color:var(--text);box-shadow:0 4px 16px var(--accent-glow)}.danger-btn{background:linear-gradient(135deg,#ff6478,var(--danger-dark));box-shadow:0 4px 16px #f0526b47}.danger-btn:hover{box-shadow:0 8px 28px #f0526b61}.tiny-btn{border-radius:8px;padding:.28rem .6rem;font-size:.78rem}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text);padding:.82rem 1rem;outline:none;transition:border-color .16s ease,box-shadow .16s ease}input:focus,select:focus,textarea:focus{border-color:var(--accent-2);box-shadow:0 0 0 3px var(--accent-2-glow)}textarea{min-height:130px;resize:vertical}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;background-color:var(--input-bg);padding-right:2.5rem}label{display:grid;gap:.42rem;color:var(--text-2);font-size:.875rem;font-weight:600}.app-shell{width:min(1520px,calc(100% - 2rem));margin:0 auto;padding:1rem 0 5rem}.content-shell{display:grid;gap:1rem}.top-nav{position:sticky;top:.65rem;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--nav-bg);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);box-shadow:var(--shadow-sm),var(--inset-glow);padding:.85rem 1.25rem;transition:background .3s ease,border-color .3s ease}.brand{font-size:1.35rem;font-weight:900;letter-spacing:-.05em;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;flex-shrink:0}.top-nav-links{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}.profile-nav-link{display:inline-flex;align-items:center;gap:.55rem;max-width:min(320px,100%);border:1px solid var(--line-strong);border-radius:999px;background:var(--badge-bg);color:var(--text);padding:.3rem .8rem .3rem .3rem;transition:border-color .18s ease,background .18s ease;font-size:.88rem;font-weight:600}.profile-nav-link:hover{border-color:var(--accent-2);background:var(--accent-2-glow);transform:translateY(-1px);box-shadow:0 4px 16px var(--accent-2-glow)}.profile-nav-link img,.profile-nav-link>span.avatar-letter{width:34px;height:34px;border-radius:50%;object-fit:cover;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent-2-glow),var(--accent-glow)),var(--panel-strong);color:var(--text);font-weight:800;font-size:.85rem;flex-shrink:0}.profile-nav-link strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-btn{position:relative}.notification-modal{display:grid;grid-template-rows:auto minmax(0,1fr);gap:.85rem;width:min(1120px,calc(100vw - 2rem));height:min(720px,calc(100vh - 3rem));max-height:85vh;overflow:hidden;padding:1rem}.notification-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:.65rem}.notification-modal-head h2,.notification-modal-head p{margin-bottom:0}.notification-panel{display:grid;grid-template-columns:240px minmax(0,1fr);gap:.75rem;min-height:300px;height:100%}.notification-list,.notification-reader,.notification-messages{display:grid;gap:.5rem;min-width:0}.notification-list{align-content:start;height:100%;overflow:auto;border-right:1px solid var(--line);padding-right:.75rem}.notification-reader{display:flex;flex-direction:column;gap:.5rem;height:100%;overflow:hidden}.notification-thread{display:grid;gap:.18rem;text-align:left;border:1px solid var(--line);background:var(--surface-2);box-shadow:none;padding:.65rem .75rem;white-space:normal}.notification-thread.active{border-color:var(--accent-2);background:var(--accent-2-glow)}.notification-thread span,.notification-reader p,.notification-reader small{color:var(--muted);overflow-wrap:anywhere}.notification-thread small{color:var(--accent-2);font-weight:800}.notification-reader textarea,.admin-message-box textarea{resize:vertical;min-height:68px}.notification-messages{flex:1;min-height:0;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:.55rem;align-content:start}.notification-messages article{display:grid;gap:.2rem;border-bottom:1px solid var(--line);padding-bottom:.45rem}.notification-messages article:last-child{border-bottom:0;padding-bottom:0}.panel,.hero-panel,.auth-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow);padding:clamp(1rem,2.5vw,1.5rem);transition:background .2s ease,border-color .2s ease}.hero-panel{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;min-height:220px;background:linear-gradient(135deg,var(--accent-glow),transparent 40%),linear-gradient(145deg,var(--panel),var(--surface-1))}.user-pill{border:1px solid var(--line);border-radius:999px;background:var(--badge-bg);color:var(--text-2);font-weight:700;font-size:.82rem;padding:.3rem .7rem}.compact-stat{border:1px solid var(--line);border-radius:999px;background:var(--surface-tint);color:var(--text-2);font-weight:700;font-size:.82rem;padding:.3rem .75rem}.section-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.action-row,.source-panel,.player-footer{display:flex;align-items:center;gap:.65rem}.dashboard-strip{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.4rem;background:linear-gradient(135deg,var(--accent-glow),transparent 45%),var(--panel)}.dashboard-strip h1{font-size:clamp(1.8rem,3.5vw,2.8rem);margin-bottom:.25rem}.dashboard-strip p{margin-bottom:0;color:var(--muted);font-size:.9rem}.dashboard-strip-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.55rem}.upload-panel{padding:1rem 1.25rem}.upload-head{align-items:flex-start;margin-bottom:.65rem}.upload-head h2,.upload-head p{margin-bottom:0}.upload-controls{display:flex;flex-wrap:wrap;align-items:end;gap:.75rem}.upload-controls label{flex:1 1 220px}.upload-controls button{flex:0 0 auto;min-width:130px}.upload-form{display:grid;gap:.9rem}.library-upload-form{grid-template-columns:1fr}.stack{display:grid;gap:.9rem}.file-dropzone{position:relative;display:grid;place-items:center;gap:.35rem;min-height:108px;border:1.5px dashed rgba(89,240,197,.35);border-radius:var(--radius);background:linear-gradient(135deg,var(--accent-2-glow),var(--accent-glow)),var(--surface-dropzone);color:var(--text);cursor:pointer;padding:1rem;text-align:center;transition:border-color .18s ease,background .18s ease,transform .18s ease}.file-dropzone:hover{border-color:var(--accent-2);background:linear-gradient(135deg,var(--accent-2-glow),var(--accent-glow)),var(--surface-dropzone);transform:translateY(-2px);box-shadow:0 8px 28px var(--accent-2-glow)}.file-input-hidden{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.dropzone-title{font-size:1.05rem;font-weight:800}.dropzone-copy{max-width:700px;color:var(--muted);overflow-wrap:anywhere;font-size:.88rem}.upload-progress-card{margin-top:.85rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-1);padding:.9rem}.upload-queue{display:grid;gap:.75rem}.upload-status-line{margin:.45rem 0 0;font-size:.85rem}.upload-progress-head{display:flex;justify-content:space-between;color:var(--text-2);font-weight:700;margin-bottom:.55rem;font-size:.88rem}.upload-progress-track{overflow:hidden;height:8px;border-radius:999px;background:#ffffff12}.upload-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent-2),var(--accent));transition:width .18s ease;box-shadow:0 0 8px var(--accent-2-glow)}.metric-grid,.compat-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:.7rem}.mini-card{display:grid;gap:.3rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-1);padding:.8rem}.mini-card strong,.mini-card span{overflow-wrap:anywhere}.danger-card{border-color:#f0526b66;background:#f0526b14}.card-list{display:grid;gap:.7rem}.folder-list,.video-list{display:grid;gap:.65rem;min-width:0}.category-stack{display:grid;gap:1.1rem;min-width:0}.category-group{display:grid;gap:.7rem;min-width:0}.category-title-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.category-title-row h3{margin:0}.folder-group{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-3);padding:.5rem;overflow:hidden;transition:border-color .18s ease}.folder-group:hover{border-color:var(--line-strong)}.folder-group>summary{display:flex;align-items:center;justify-content:space-between;gap:.85rem;cursor:pointer;color:var(--text);font-size:.95rem;font-weight:700;list-style:none;min-height:48px;padding:.25rem .5rem;overflow-wrap:anywhere}.folder-group>summary::-webkit-details-marker{display:none}.folder-group>summary:before{content:"";flex:0 0 auto;width:.5rem;height:.5rem;border-right:2px solid var(--accent-2);border-bottom:2px solid var(--accent-2);transform:rotate(-45deg);transition:transform .18s ease}.folder-group[open]>summary:before{transform:rotate(45deg)}.folder-group>summary span:first-of-type{min-width:0;flex:1}.folder-group[open]>.video-list{margin-top:.75rem}.video-list-row{display:grid;grid-template-columns:88px minmax(0,1fr) minmax(200px,260px);align-items:center;gap:.8rem;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);padding:.6rem;transition:border-color .18s ease,background .18s ease,transform .18s ease}.video-list-row:hover{border-color:var(--line-strong);background:var(--panel-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.video-list-row>*{min-width:0}.video-thumb{display:block;width:88px;aspect-ratio:16/9;border:1px solid var(--line);border-radius:10px;background:var(--surface-video);object-fit:cover;pointer-events:none}.video-thumb-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,var(--accent-2-glow),var(--accent-glow)),var(--surface-video);color:var(--text);font-size:1.25rem;font-weight:900}.media-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-card);padding:1rem}.library-card{align-items:flex-start;min-width:0}.library-main{display:grid;gap:.4rem;min-width:0}.library-main strong,.library-main p{overflow-wrap:anywhere}.library-actions{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:.5rem;width:100%}.library-actions button,.library-actions input{width:100%}.inline-new-folder{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.4rem}.status-pill{justify-self:start;border:1px solid var(--line);border-radius:999px;background:#95b8d812;color:var(--muted);font-size:.76rem;font-weight:700;padding:.18rem .5rem;text-transform:capitalize}.status-failed{border-color:#f0526b59;background:#f0526b17;color:#ffb0be}.row-details{max-width:100%}.row-details>summary{cursor:pointer;color:var(--muted);font-size:.86rem;font-weight:700;list-style:none}.row-details>summary::-webkit-details-marker{display:none}.row-details>summary:after{content:" +";color:var(--accent-2)}.row-details[open]>summary:after{content:" −"}.failure-box{display:grid;gap:.25rem;border:1px solid rgba(240,82,107,.42);border-radius:10px;background:#f0526b17;color:#ffd5db;padding:.7rem}.subtitle-panel{display:grid;gap:.6rem;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);padding:.8rem}.subtitle-list{display:flex;flex-wrap:wrap;gap:.45rem}.subtitle-chip{display:inline-flex;align-items:center;gap:.4rem;max-width:100%;border:1px solid var(--line);border-radius:999px;background:var(--accent-2-glow);color:var(--text-2);padding:.3rem .4rem .3rem .65rem;font-size:.84rem;overflow-wrap:anywhere}.subtitle-form{display:grid;grid-template-columns:minmax(120px,1fr) minmax(60px,.32fr) minmax(160px,1fr) auto;align-items:center;gap:.5rem;min-width:0}.subtitle-search-form{grid-template-columns:minmax(160px,1fr) minmax(60px,.25fr) auto}.subtitle-internet-panel{display:grid;gap:.55rem;border-top:1px solid var(--line);padding-top:.6rem}.subtitle-search-results{display:grid;gap:.45rem}.subtitle-result-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid var(--line);border-radius:10px;padding:.55rem;background:#ffffff08}.subtitle-result-row span{display:grid;min-width:0}.subtitle-result-row strong,.subtitle-result-row small{overflow-wrap:anywhere}.subtitle-result-row small{color:var(--muted)}.auth-wrap{display:grid;min-height:calc(100vh - 120px);place-items:center}.auth-card{width:min(640px,100%);background:var(--panel);position:relative;overflow:hidden}.auth-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 50% at 30% 0%,var(--accent-glow),transparent);pointer-events:none}.auth-foot{margin:.9rem 0 0;color:var(--muted);font-size:.9rem}.auth-foot a{color:var(--accent-2);font-weight:700}.auth-foot a:hover{text-decoration:underline}.room-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.compact-room-header{padding:.9rem 1.2rem}.compact-room-header h1{font-size:clamp(1.55rem,3.5vw,2.6rem);line-height:1.05;margin-bottom:.3rem}.compact-room-header .eyebrow{margin-bottom:.4rem}.room-id-line{margin-bottom:0;font-size:.88rem;color:var(--muted)}.source-panel{justify-content:space-between}.compact-source-panel{padding:.8rem 1.1rem}.compact-source-panel strong{font-size:1rem;font-weight:700}.guest-entry-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,400px);align-items:end;gap:1rem}.guest-entry-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.65rem}.watch-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:1rem}.participants-sidebar{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-card);padding:1rem;display:flex;flex-direction:column;gap:0}.participants-list{display:grid;gap:.5rem;list-style:none;margin:0;padding:0}.participants-row{display:flex;justify-content:space-between;align-items:center;gap:.65rem;border:1px solid var(--line);border-radius:12px;background:var(--badge-bg);padding:.6rem .8rem;font-size:.88rem;transition:border-color .16s ease}.participants-row:hover{border-color:var(--line-strong)}.participants-row small{color:var(--accent-2);font-weight:700;font-size:.76rem;white-space:nowrap}.queue-panel{display:grid;gap:.7rem;margin-top:1rem}.queue-list{display:grid;gap:.5rem}.queue-item{display:grid;gap:.45rem;border:1px solid var(--line);border-radius:12px;background:var(--surface-tint);padding:.7rem .8rem;font-size:.88rem;transition:border-color .16s ease}.queue-item.active{border-color:#59f0c580;background:var(--accent-2-glow)}.queue-item span{overflow-wrap:anywhere}.queue-actions,.picker-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.player-stage{min-width:0}.room-video-wrap{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-video);box-shadow:var(--shadow)}.native-room-player{display:block;width:100%;max-height:76vh;aspect-ratio:16/9;background:var(--surface-video)}.native-room-player::cue{font-size:var(--subtitle-font-size, 24px);background-color:rgba(0,0,0,var(--subtitle-bg-opacity,.65))}.empty-player{display:grid;min-height:400px;place-items:center;text-align:center;border:1.5px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface-card);padding:2rem;gap:.5rem}.empty-player-icon{font-size:3rem}.empty-player h2{margin:0;font-size:1.4rem}.empty-player p{color:var(--muted);margin:0}.play-blocked-overlay{position:absolute;inset:auto 1rem 1rem 1rem;border:1px solid rgba(255,255,255,.14);background:var(--surface-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-sm);font-weight:700}.sync-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:grid;place-items:center;gap:.35rem;background:radial-gradient(circle at center,var(--accent-2-glow),transparent 40%),#02060abf;color:var(--text);text-align:center;pointer-events:none;padding:1rem;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sync-overlay span{color:var(--accent-2);font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.sync-overlay strong{max-width:80%;font-size:clamp(1.1rem,2.5vw,1.75rem);line-height:1.15}.audio-unlock-overlay{position:absolute;right:1rem;bottom:1rem;z-index:4;max-width:min(420px,calc(100% - 2rem));border:1px solid var(--accent-2);background:linear-gradient(135deg,var(--accent-2-glow),var(--accent-glow)),var(--surface-overlay);box-shadow:0 14px 40px var(--accent-2-glow)}.player-footer{justify-content:space-between;flex-wrap:wrap;margin-top:.75rem}.subtitle-select{min-width:min(240px,100%)}.subtitle-controls{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;color:var(--muted);font-size:.86rem}.subtitle-controls label{display:inline-flex;align-items:center;gap:.4rem}.subtitle-controls input[type=range]{width:120px}.global-toast{position:fixed;right:1.25rem;bottom:3.5rem;z-index:60;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--panel-strong);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow);color:var(--text);padding:.9rem 1.1rem;font-size:.92rem;font-weight:600;animation:toastIn .24s cubic-bezier(.34,1.56,.64,1)}@keyframes toastIn{0%{opacity:0;transform:translateY(12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.app-version-badge{position:fixed;right:1rem;bottom:.75rem;z-index:50;border:1px solid var(--line);border-radius:999px;background:var(--surface-overlay);color:var(--muted);font-size:.75rem;padding:.28rem .6rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:240;display:grid;place-items:center;background:var(--modal-backdrop);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:1rem;animation:fadeIn .18s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-card{width:min(540px,100%);min-width:0;max-width:calc(100vw - 2rem);max-height:88vh;overflow:auto;overflow-x:hidden;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--panel-strong);box-shadow:var(--shadow);padding:1.25rem;animation:modalIn .24s cubic-bezier(.34,1.56,.64,1)}@keyframes modalIn{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.wide-modal{width:min(1160px,100%)}.modal-actions{display:flex;justify-content:flex-end;gap:.65rem;margin-top:1rem}.simple-backdrop{background:#0f1e3270;-webkit-backdrop-filter:none;backdrop-filter:none;animation:none}.simple-backdrop .modal-card{animation:none}.compose-modal{display:grid;gap:.65rem;width:min(720px,100%);max-height:min(720px,calc(100vh - 2rem));padding:0;overflow:hidden}.compose-modal-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;background:var(--panel);border-bottom:1px solid var(--line);padding:.65rem .85rem}.compose-modal>input,.compose-modal>textarea,.compose-recipient,.compose-modal .modal-actions{width:auto;margin-right:.85rem;margin-left:.85rem}.compose-modal>textarea{min-height:220px;resize:vertical}.compose-recipient{display:flex;align-items:center;gap:.55rem;border-bottom:1px solid var(--line);color:var(--muted);font-size:.88rem;padding:.35rem 0 .65rem}.compose-recipient strong{color:var(--text)}.compose-recipient small{margin-left:auto;color:var(--muted);font-weight:800}.compose-modal .modal-actions{margin-bottom:.85rem}.picker-list-row{grid-template-columns:72px minmax(0,1fr) auto}.picker-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-shell{gap:1rem}.profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(220px,.45fr);align-items:center;gap:clamp(1rem,3vw,1.6rem);overflow:hidden;background:radial-gradient(ellipse 50% 60% at 8% 20%,var(--accent-2-glow),transparent),radial-gradient(ellipse 40% 50% at 90% 10%,var(--accent-glow),transparent),linear-gradient(145deg,var(--panel),var(--surface-1))}.profile-avatar-stage{display:grid;justify-items:center;gap:.8rem}.profile-avatar-button{position:relative;display:grid;place-items:center;width:clamp(120px,14vw,176px);aspect-ratio:1;overflow:hidden;border:2px solid var(--line-strong);border-radius:36px;background:linear-gradient(135deg,var(--accent-2-glow),var(--accent-glow)),var(--input-bg);box-shadow:var(--inset-glow),var(--shadow);padding:0;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.profile-avatar-button:hover{border-color:var(--accent-2);transform:scale(1.03);box-shadow:0 0 0 4px var(--accent-2-glow),0 20px 50px #0000004d}.profile-avatar-button img,.profile-avatar-button>span{width:100%;height:100%}.profile-avatar-button img{object-fit:cover}.profile-avatar-button>span{display:grid;place-items:center;color:var(--text);font-size:clamp(2.8rem,7vw,5.2rem);font-weight:900}.profile-avatar-button small{position:absolute;right:.65rem;bottom:.65rem;left:.65rem;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:var(--avatar-badge-bg);color:var(--text);font-size:.75rem;font-weight:700;padding:.28rem .45rem;text-align:center}.profile-hero-copy h1{margin-bottom:.25rem}.profile-hero-copy .muted{font-size:.9rem}.profile-meter{overflow:hidden;width:min(380px,100%);height:8px;margin:.9rem 0 .3rem;border-radius:999px;background:var(--line)}.profile-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent-2),var(--accent));transition:width .3s ease}.profile-facts{display:grid;gap:.65rem}.profile-facts div{display:grid;gap:.2rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);padding:.8rem .95rem;transition:border-color .16s ease}.profile-facts div:hover{border-color:var(--line-strong)}.profile-facts strong{overflow-wrap:anywhere;font-size:1.1rem;font-weight:800}.profile-facts span{color:var(--muted);font-size:.8rem;font-weight:700}.profile-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.6fr);gap:1rem}.profile-card{align-self:start}.profile-form-card .section-head{align-items:flex-start}.profile-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.profile-wide-field{grid-column:1 / -1}.password-card{display:grid;gap:.9rem}.password-card h2,.password-card p{margin-bottom:0}.theme-picker{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:.25rem}.theme-btn{display:flex;align-items:center;gap:.5rem;border:1.5px solid var(--line);border-radius:12px;background:var(--btn-ghost-bg);color:var(--text-2);font-size:.84rem;font-weight:600;padding:.55rem .9rem;cursor:pointer;transition:border-color .16s ease,background .16s ease;box-shadow:none}.theme-btn:hover{border-color:var(--accent);background:var(--accent-glow);color:var(--text);transform:translateY(-1px)}.theme-btn.active{border-color:var(--accent-2);background:var(--accent-2-glow);color:var(--text);box-shadow:0 0 0 2px var(--accent-2-glow)}.admin-metrics{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr))}.admin-section-head h2,.admin-section-head p{margin-bottom:0}.admin-table{display:grid;gap:.6rem;min-width:0}.admin-row{display:grid;grid-template-columns:minmax(150px,1.2fr) repeat(4,minmax(90px,.8fr)) auto;align-items:center;gap:.65rem;min-width:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-3);padding:.8rem;transition:border-color .16s ease}.admin-row:hover{border-color:var(--line-strong)}.video-admin-row{grid-template-columns:minmax(170px,1.2fr) repeat(6,minmax(80px,.75fr)) auto}.admin-row>*{min-width:0;overflow-wrap:anywhere}.admin-inline-actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.admin-user-list{display:grid;gap:.55rem;min-width:0}.admin-user-card{display:grid;gap:.55rem;min-width:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-3);padding:.7rem .8rem;transition:border-color .12s ease}.admin-user-card:hover{border-color:var(--line-strong)}.admin-user-card.inactive{border-color:#f0526b42;background:#f0526b0f}.admin-user-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-width:0}.admin-user-identity{display:grid;gap:.45rem;min-width:0}.admin-user-identity>strong{overflow-wrap:anywhere;color:var(--text);font-size:.98rem;line-height:1.2}.admin-user-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;color:var(--muted);font-size:.78rem;font-weight:700}.admin-user-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.4rem;min-width:min(100%,520px)}.admin-user-actions select{min-width:140px;padding-top:.62rem;padding-bottom:.62rem}.admin-user-actions button{padding:.62rem .8rem}.admin-lock-note{border:1px solid var(--line);border-radius:999px;padding:.35rem .65rem;font-size:.8rem;font-weight:800}.admin-user-section{display:grid;gap:.45rem;min-width:0;border-top:1px solid var(--line);padding-top:.55rem}.admin-user-section-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.admin-user-section-head strong{color:var(--text);font-size:.86rem}.admin-user-section-head span,.admin-section-note{margin-bottom:0;font-size:.76rem;font-weight:700}.permission-summary-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-width:0}.permission-chip-list{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;min-width:0}.permission-chip{border:1px solid var(--line);border-radius:999px;background:var(--badge-bg);color:var(--text-2);font-size:.72rem;font-weight:800;padding:.2rem .48rem}.permission-modal{display:grid;gap:.75rem;width:min(980px,100%);box-shadow:var(--shadow-sm)}.permission-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;border-bottom:1px solid var(--line);padding-bottom:.65rem}.permission-modal-head h2,.permission-modal-head p{margin-bottom:0}.permission-modal-grid{column-width:300px;column-gap:.8rem}.permission-group-card{break-inside:avoid;margin-bottom:.8rem;display:grid;gap:.45rem;min-width:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-3);padding:.6rem}.permission-group-card h3{margin:0;color:var(--text);font-size:.92rem}.permission-detail-list{display:grid;gap:.4rem}.permission-detail-toggle{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:.5rem;min-width:0;border:1px solid var(--line);border-radius:10px;background:var(--btn-ghost-bg);color:var(--text-2);cursor:pointer;padding:.5rem .55rem;transition:border-color .12s ease,background .12s ease,color .12s ease}.permission-detail-toggle:hover{border-color:var(--line-strong);background:var(--btn-ghost-hover)}.permission-detail-toggle.active{border-color:#59f0c58c;background:var(--accent-2-glow);color:var(--text)}.permission-detail-toggle input{width:auto;margin-top:.2rem}.permission-detail-toggle span{display:grid;gap:.18rem;min-width:0}.permission-detail-toggle strong{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;color:inherit;font-size:.84rem;line-height:1.2}.permission-detail-toggle em{border:1px solid var(--line);border-radius:999px;color:var(--accent-2);font-size:.66rem;font-style:normal;padding:.08rem .35rem}.permission-detail-toggle small{color:var(--muted);font-size:.74rem;font-weight:650;line-height:1.3}.admin-message-box{display:grid;grid-template-columns:minmax(160px,.42fr) minmax(260px,1fr) auto;align-items:stretch;gap:.55rem}.admin-message-box textarea{min-height:58px;resize:vertical}.admin-message-box button{min-width:110px}.status-active{border-color:#59f0c566;background:#59f0c51a;color:var(--accent-2)}@media (max-width: 900px){.hero-panel,.dashboard-strip,.room-header,.source-panel,.guest-entry-panel,.media-card{align-items:stretch;flex-direction:column}.guest-entry-panel,.guest-entry-form,.upload-form{grid-template-columns:1fr}.upload-controls{align-items:stretch;flex-direction:column}.upload-controls button{width:100%}.library-actions{grid-template-columns:1fr;width:100%}.video-list-row{grid-template-columns:88px minmax(0,1fr)}.video-list-row .library-actions,.video-list-row .picker-actions{grid-column:1 / -1}.subtitle-form,.watch-layout{grid-template-columns:1fr}.participants-sidebar{order:2}.player-stage{order:1}.profile-hero,.profile-grid,.profile-form-grid{grid-template-columns:1fr}.profile-avatar-stage{justify-items:stretch}.profile-avatar-button{width:min(200px,100%);justify-self:center}.notification-panel{grid-template-columns:1fr;min-height:300px}.notification-list{border-right:0;border-bottom:1px solid var(--line);padding-right:0;padding-bottom:.75rem;height:180px}.compose-modal{align-self:center;justify-self:center}.admin-user-head,.admin-user-actions{align-items:stretch;flex-direction:column}.admin-user-actions{min-width:0}.permission-summary-row,.permission-modal-head{align-items:stretch;flex-direction:column}.admin-message-box{grid-template-columns:1fr}}@media (max-width: 560px){.app-shell{width:min(100% - 1rem,1520px)}.top-nav,.top-nav-links,.action-row,.player-footer{align-items:stretch;flex-direction:column}.top-nav{position:static}.native-room-player{max-height:60vh}button,.button-link{width:100%}.metric-panel,.admin-row,.video-admin-row,.queue-actions,.picker-actions{grid-template-columns:1fr}.folder-group>summary{align-items:flex-start;flex-direction:column}.video-list-row{grid-template-columns:1fr}.video-thumb{width:min(160px,100%)}.global-toast{right:.75rem;left:.75rem;bottom:3.2rem}.theme-picker{flex-direction:column}.theme-btn{width:100%}}
