:root{color-scheme:dark;--bg:#080d19;--panel:#111827cc;--line:#253047;--text:#f4f7fb;--muted:#98a5b9;--blue:#4f7cff;--cyan:#29c3ff;--danger:#ff5e6b}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% -20%,#17284d 0,#080d19 45%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;overflow-x:hidden}.ambient{position:fixed;border-radius:50%;filter:blur(110px);opacity:.16;pointer-events:none}.ambient-one{width:460px;height:460px;background:#315dff;top:-180px;left:-130px}.ambient-two{width:400px;height:400px;background:#00c8ff;right:-190px;bottom:-190px}.shell{position:relative;width:min(1100px,calc(100% - 32px));margin:auto;padding:34px 0 56px}.brand{display:flex;align-items:center;gap:12px;margin-bottom:54px}.brand-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#5e72ff,#2ac7ff);box-shadow:0 10px 30px #326fff44}.brand-icon svg{width:23px;fill:none;stroke:#fff;stroke-width:1.8}.brand div:last-child{display:flex;flex-direction:column}.brand strong{font-size:17px}.brand span{font-size:11px;color:var(--muted);margin-top:2px}.panel{width:min(650px,100%);margin:8vh auto 0;padding:48px;border:1px solid #26314a;background:linear-gradient(145deg,#111827e8,#0e1525d9);border-radius:26px;box-shadow:0 30px 90px #0006;backdrop-filter:blur(16px)}.hero{text-align:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid #263653;border-radius:30px;color:#b8c6dc;font-size:12px;background:#111a2b}.eyebrow i,.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#37d896;box-shadow:0 0 12px #37d896}.hero h1{font-size:clamp(38px,6vw,62px);line-height:1.02;letter-spacing:-3px;margin:25px 0 20px}.hero h1 em{font-style:normal;background:linear-gradient(90deg,#6d7fff,#40c7ff);color:transparent;background-clip:text}.hero>p,.form-panel>p{color:var(--muted);line-height:1.7;margin:0 auto 32px;max-width:510px}.actions{display:flex;justify-content:center;gap:12px}.button{border:0;border-radius:12px;padding:15px 20px;color:#fff;font-weight:700;font-size:14px;cursor:pointer;transition:.2s;display:flex;justify-content:center;align-items:center;gap:24px}.button:hover{transform:translateY(-1px);filter:brightness(1.08)}.button:disabled{opacity:.55;cursor:wait;transform:none}.primary{background:linear-gradient(110deg,#5369f6,#309eea);box-shadow:0 10px 30px #315fee38}.secondary{background:#161f31;border:1px solid #2b3850;color:#d8e0ec}.features{display:flex;justify-content:center;gap:24px;border-top:1px solid var(--line);margin-top:38px;padding-top:25px;color:#8290a4;font-size:11px}.hidden{display:none!important}.form-panel{width:min(520px,100%);margin-top:4vh}.back{border:0;background:none;color:#8c9ab0;cursor:pointer;padding:0;margin-bottom:30px}.section-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#263659;color:#6acbff;font-size:23px}.form-panel h2{font-size:30px;margin:18px 0 8px;letter-spacing:-1px}.form-panel>p{font-size:14px;margin-bottom:28px}.form-panel label{display:block;color:#cad3e1;font-size:13px;font-weight:700;margin:17px 0 8px}.form-panel label small{color:#66758b;font-weight:500;margin-left:5px}.form-panel input{width:100%;padding:15px;border-radius:11px;background:#0b1220;border:1px solid #293650;color:#fff;outline:none;font-size:15px}.form-panel input:focus{border-color:#5778fc;box-shadow:0 0 0 3px #5578ff1c}.input-wrap{position:relative}.input-wrap input{padding-right:48px}.peek{position:absolute;right:7px;top:7px;width:36px;height:36px;border:0;background:none;color:#75839a;cursor:pointer}.check{display:flex!important;align-items:flex-start;gap:11px;padding:14px;border:1px solid #26344c;border-radius:12px;background:#0d1524}.check input{width:17px!important;margin-top:2px;accent-color:#5a78ff}.check span{display:flex;flex-direction:column;gap:4px}.check small{margin:0!important}.full{width:100%;margin-top:20px}.error{color:#ff939c;background:#391b24;border:1px solid #702d3a;border-radius:10px;padding:11px;margin-top:14px;font-size:13px}.code-input{text-transform:uppercase;letter-spacing:7px;text-align:center;font-size:22px!important;font-weight:800}.room,.viewer{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:20px}.room-top{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:13px 17px;background:#111827;border:1px solid var(--line);border-radius:14px}.room-top>div{display:flex;align-items:center;gap:9px;font-size:13px}.danger-button{border:1px solid #723441;background:#321924;color:#ff8c96;border-radius:9px;padding:9px 13px;cursor:pointer;font-weight:700}.video-frame{position:relative;background:#02040a;border:1px solid var(--line);border-radius:18px;overflow:hidden;min-height:440px;display:grid;place-items:center;box-shadow:0 20px 60px #0005}.video-frame video{width:100%;height:100%;max-height:72vh;object-fit:contain}.video-label{position:absolute;left:12px;bottom:12px;background:#050910cc;border:1px solid #27334a;padding:7px 10px;border-radius:8px;font-size:11px}.share-card{background:#111827;border:1px solid var(--line);border-radius:18px;padding:23px;height:max-content}.share-card>span{display:block;color:var(--muted);font-size:12px}.share-card>strong{display:block;font-size:30px;letter-spacing:5px;margin:8px 0 5px}.viewer-count{display:flex;gap:11px;border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.viewer-count i{font-style:normal;color:#4da8ff}.viewer-count span{display:flex;flex-direction:column}.viewer-count b{font-size:13px}.viewer-count small{font-size:11px;color:var(--muted);margin-top:3px}.viewer{display:block}.viewer .room-top{margin-bottom:18px}.viewer-frame{min-height:70vh}.waiting{position:absolute;display:flex;align-items:center;flex-direction:column;color:var(--muted)}.waiting b{color:#dce4ef;margin:20px 0 5px}.waiting span{font-size:12px}.pulse{width:48px;height:48px;border:2px solid #4c77ff;border-radius:50%;box-shadow:0 0 0 0 #4c77ff66;animation:pulse 1.6s infinite}@keyframes pulse{70%{box-shadow:0 0 0 20px #4c77ff00}}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;background:#f2f6ff;color:#111827;padding:12px 18px;border-radius:10px;font-weight:700;font-size:13px;transition:.25s;pointer-events:none}.toast.show{transform:translate(-50%,0);opacity:1}@media(max-width:760px){.shell{padding-top:20px}.brand{margin-bottom:25px}.panel{padding:28px 20px;margin-top:3vh}.hero h1{letter-spacing:-2px}.actions{flex-direction:column}.features{gap:12px;flex-wrap:wrap}.room{grid-template-columns:1fr}.share-card{grid-row:2}.video-frame{min-height:260px}.viewer-frame{min-height:60vh}}
:root{}
.settings-button{margin-left:auto;border:1px solid #2b3850;background:#111827;color:#cbd5e4;border-radius:10px;padding:10px 13px;cursor:pointer;font-weight:700}
.form-panel select{width:100%;padding:15px;border-radius:11px;background:#0b1220;border:1px solid #293650;color:#fff;outline:none;font-size:15px}
.server-status{display:flex;flex-direction:column;gap:5px;margin-top:18px;padding:14px;border:1px solid #26344c;border-radius:12px;background:#0d1524}.server-status b{font-size:13px}.server-status span{color:var(--muted);font-size:12px}
@media(max-width:520px){.settings-button{font-size:0;padding:10px}.settings-button::first-letter{font-size:16px}}
/* O quadro acompanha a proporção da transmissão e não deixa uma área preta enorme. */
body .video-frame{min-height:0;aspect-ratio:16/9;background:linear-gradient(145deg,#0a1220,#111b2e)}
body .viewer-frame{min-height:0;max-height:none}
body .video-frame video{display:block;width:100%;height:100%;max-height:none;object-fit:contain;background:#0b1322}
body .waiting{z-index:1;text-align:center;padding:24px;max-width:360px}body .waiting b{font-size:16px}
@media(max-width:760px){body .video-frame,body .viewer-frame{min-height:0;aspect-ratio:16/9}body .video-frame video{max-height:none}}
/* Protótipo do painel compacto que será reaproveitado no aplicativo Windows. */
body #hostRoom.room{display:block;padding-right:0}
.host-workspace{width:min(100%,920px);margin:0 auto}.workspace-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding:12px 15px;border:1px solid var(--line);border-radius:13px;background:#101827}.workspace-bar>div{display:flex;align-items:center;gap:9px;font-size:13px}.mini-button{border:1px solid #2b3850;border-radius:8px;padding:8px 11px;background:#151f31;color:#cbd5e4;cursor:pointer}.host-preview{width:100%}
.host-dock{position:fixed;z-index:20;top:18px;right:18px;width:260px;padding:12px;border:1px solid #33415e;border-radius:16px;background:#0d1525f2;box-shadow:0 18px 55px #0009;backdrop-filter:blur(18px);transition:width .2s ease}.dock-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.dock-status{display:flex;align-items:center;gap:9px;min-width:0}.dock-status>span:last-child{display:flex;min-width:0;flex-direction:column}.dock-status b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dock-status small{margin-top:2px;color:var(--muted);font-size:11px}.dock-toggle{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid #33415e;border-radius:9px;background:#182338;color:#dce6f6;font-size:18px;cursor:pointer}.dock-body{display:grid;gap:8px;margin-top:13px;padding-top:13px;border-top:1px solid #27334a}.dock-room{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px}.dock-room span{color:var(--muted);font-size:11px}.dock-room strong{letter-spacing:3px;font-size:18px}.dock-action{width:100%;border:1px solid #31405b;border-radius:10px;padding:10px 12px;background:#172238;color:#dae4f3;font-weight:700;cursor:pointer}.dock-action:hover{filter:brightness(1.12)}.primary-action{border-color:#4374ef;background:linear-gradient(110deg,#526cf5,#309eea);color:#fff}.danger-action{border-color:#703442;background:#341a25;color:#ff98a1}.host-dock .viewer-count{margin-top:5px;padding-top:12px}.host-dock.compact{width:205px}.host-dock.compact .dock-body{display:none}
.dock-quality{display:grid;gap:11px;padding:13px;border:1px solid #30415f;border-radius:12px;background:linear-gradient(145deg,#111d32,#0d1729)}.dock-quality-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.dock-quality-title b{font-size:13px}.dock-quality-title small{color:#71d5ff;font-size:10px;font-weight:700}.quality-choice{display:grid;gap:6px}.quality-choice>span{color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.quality-buttons{display:grid;grid-template-columns:1fr 1fr;gap:6px}.quality-buttons button{padding:9px 5px;border:1px solid #354665;border-radius:8px;background:#101a2b;color:#aebdd1;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.quality-buttons button:hover{border-color:#5575aa;color:#fff}.quality-buttons button.active{border-color:#5684ff;background:linear-gradient(120deg,#4968ef,#258ed9);color:#fff;box-shadow:0 6px 18px #245ed43d}.dock-quality .quality-apply{padding:9px;border-color:#42577b;background:#1a2942;color:#e8f1ff}.dock-quality .quality-apply:disabled{opacity:.65;cursor:wait}
body.native-fullscreen{overflow:hidden;background:#000}body.native-fullscreen .shell{width:100%;max-width:none;padding:0}body.native-fullscreen .brand,body.native-fullscreen .connection-bar,body.native-fullscreen #viewerRoom .room-top{display:none}body.native-fullscreen #viewerRoom{position:fixed;inset:0;margin:0;background:#000}body.native-fullscreen #viewerRoom .viewer-frame{width:100vw;height:100vh;max-height:none;border:0;border-radius:0}body.native-fullscreen #viewerRoom .viewer-frame video{width:100%;height:100%;object-fit:contain}body.native-fullscreen #viewerRoom .viewer-controls{position:fixed;z-index:40;top:14px;right:14px;margin:0;padding:8px;background:#0b1323e8;border:1px solid #32415e;border-radius:12px}
@media(max-width:760px){.host-dock{top:auto;right:12px;bottom:12px;left:12px;width:auto}.host-dock.compact{right:12px;left:auto;width:205px}.host-workspace{padding-bottom:115px}.workspace-bar{align-items:flex-start}.mini-button{white-space:nowrap}}
/* Acesso privado e painel Master */
.account-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.account-actions .settings-button{margin-left:0}.account-actions>span{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aebbd1;font-size:13px}.auth-panel{max-width:520px}.auth-panel input{width:100%}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;margin-bottom:28px;border:1px solid #263754;border-radius:12px;background:#0a1222}.auth-tabs button{padding:11px;border:0;border-radius:8px;background:transparent;color:#93a2bb;font-weight:700;cursor:pointer}.auth-tabs button.active{color:#fff;background:#1b2a45}.status-panel{text-align:center}.status-panel .section-icon{margin-inline:auto}.admin-panel{max-width:720px}.user-list{display:grid;gap:10px;margin-top:22px}.user-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 16px;border:1px solid #2a3a57;border-radius:12px;background:#0c1527}.user-card>div:first-child{display:grid;gap:4px;min-width:0}.user-card b{color:#f2f6ff}.user-card span{color:#8fa0bb;font-size:13px;overflow-wrap:anywhere}.user-card.status-pending{border-color:#735b27}.user-card.status-blocked{opacity:.72}.user-actions{display:flex;gap:7px}.user-actions button{border:1px solid #30415f;border-radius:8px;padding:8px 11px;color:#dce7fa;background:#17233a;font-weight:700;cursor:pointer}.user-actions .approve:not(:disabled){border-color:#24795f;color:#65e5b3}.user-actions .block:not(:disabled){border-color:#763b4b;color:#ff91a7}.user-actions button:disabled{opacity:.4;cursor:default}
@media(max-width:720px){.brand{align-items:flex-start;flex-wrap:wrap}.account-actions{width:100%;margin-top:8px;flex-wrap:wrap}.account-actions>span{margin-right:auto}.account-actions .settings-button{padding:8px 10px;font-size:12px}.user-card{align-items:flex-start;flex-direction:column}}
/* Painel principal: transmissões por pessoa, sem códigos. */
.brand .brand-copy{display:flex;flex-direction:column}.brand .account-actions{display:flex;flex-direction:row;align-items:center}.brand .account-actions>span{margin-top:0;font-size:13px}.dashboard{width:100%;margin:24px auto 0}.welcome-row{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:28px}.welcome-row h1{margin:15px 0 5px;font-size:clamp(32px,5vw,48px);letter-spacing:-2px}.welcome-row p{margin:0;color:var(--muted)}.welcome-row>.button{flex:0 0 auto}.share-list-panel{padding:25px;border:1px solid #26314a;border-radius:22px;background:linear-gradient(145deg,#111827e8,#0e1525d9);box-shadow:0 24px 70px #0004}.list-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:19px;border-bottom:1px solid var(--line)}.list-heading h2{margin:0 0 5px;font-size:20px}.list-heading span{color:var(--muted);font-size:12px}.active-share-list{display:grid;gap:11px;margin-top:18px}.active-share-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:15px;padding:15px;border:1px solid #293852;border-radius:14px;background:#0b1425}.share-avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#5369f6,#2cbcf2);color:#fff;font-size:20px;font-weight:800}.active-share-card>div:nth-child(2){display:flex;flex-direction:column;gap:4px}.active-share-card>div:nth-child(2) span{color:#7f91ab;font-size:12px}.watch-button{padding:11px 16px}.empty-shares{display:flex;align-items:center;flex-direction:column;padding:48px 20px;text-align:center;color:#dce5f4}.empty-shares:before{content:'▣';display:grid;place-items:center;width:54px;height:54px;margin-bottom:15px;border-radius:16px;background:#17243b;color:#57bafc;font-size:25px}.empty-shares span{margin-top:6px;color:var(--muted);font-size:13px}.dock-room strong{max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:0}
@media(max-width:720px){.brand .account-actions{width:auto;margin-left:auto;margin-top:0}.account-actions>span{display:none}.welcome-row{align-items:stretch;flex-direction:column}.welcome-row>.button{width:100%}.active-share-card{grid-template-columns:44px minmax(0,1fr)}.share-avatar{width:44px;height:44px}.active-share-card .watch-button{grid-column:1/-1;width:100%}.share-list-panel{padding:18px}}
/* Controles e diagnóstico de áudio. */
.audio-help{margin-top:9px;padding:12px 13px;border:1px solid #2a3b58;border-radius:10px;background:#0c1525;color:#93a4bd;font-size:12px;line-height:1.55}.audio-help[data-mode="tab"]{border-color:#285d58;color:#8ddaca}.audio-help[data-mode="system"]{border-color:#72582a;color:#edca82}.workspace-title{display:flex;flex-direction:column;gap:3px}.workspace-title small{color:#8fa0ba;font-size:11px;font-weight:500}.workspace-title small.warning{color:#f1c46f}.enable-audio{position:absolute;z-index:4;right:16px;top:16px;padding:11px 15px;border:1px solid #6d8cff;border-radius:11px;background:linear-gradient(110deg,#526cf5,#309eea);box-shadow:0 9px 28px #315fee55;color:#fff;font-weight:800;cursor:pointer}.audio-notice{position:absolute;z-index:3;left:16px;bottom:58px;padding:8px 11px;border:1px solid #34435e;border-radius:9px;background:#08101ddd;color:#b7c4d8;font-size:11px;pointer-events:none}
.live-list-status{display:inline-flex;align-items:center;gap:7px;color:#8fa1bd;font-size:12px}.live-list-status i{width:7px;height:7px;border-radius:50%;background:#35e6a1;box-shadow:0 0 10px #35e6a1;animation:pulse-live 1.8s ease-in-out infinite}@keyframes pulse-live{50%{opacity:.45}}
