
:root{color-scheme:dark;font-family:system-ui,-apple-system,sans-serif;background:#111217;color:#eceef5;font-size:14px;--app-height:100dvh;--line:#2c2f3a;--accent:#8187ff}
*{box-sizing:border-box;min-width:0}html{width:100%;height:100%;overflow:hidden;-webkit-text-size-adjust:100%}body{margin:0;width:100%;height:var(--app-height);min-height:0;overflow:hidden;display:flex;flex-direction:column}button,input,textarea,select{font:inherit}button{border:0;cursor:pointer;touch-action:manipulation;background:#2b2e3a;color:inherit;border-radius:12px;padding:12px;min-height:44px;overflow-wrap:anywhere}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button[aria-pressed=true]{background:#5158a4}img{max-width:100%}[hidden],button[hidden],label[hidden],textarea[hidden]{display:none!important}
#app-header{flex:none;display:flex;align-items:center;gap:10px;padding:10px 16px;height:64px;background:#1a1b23;border-bottom:1px solid var(--line);overflow:hidden}#app-header>img{width:38px;height:38px;flex:none;border-radius:11px}.brand-copy{flex:1;overflow:hidden}.brand-copy strong{display:block;font-size:20px;line-height:1.2;letter-spacing:-.5px}.brand-copy small{display:block;font-size:11px;color:#969db2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}#settings{flex:none;width:44px;height:44px;padding:6px;font-size:24px;background:transparent;border-radius:50%}
main{flex:1 1 0;min-height:0;width:100%;max-width:960px;margin:0 auto;padding:22px 16px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.intro{padding:5px 0 20px}.eyebrow{font-size:10px;letter-spacing:1.8px;color:#b0b4ff;font-weight:700}h1{font-size:clamp(24px,6vw,34px);line-height:1.15;letter-spacing:-.7px;margin:10px 0}.intro p{color:#9ea5b9;line-height:1.6;font-size:13px;max-width:36em;margin:10px 0 0}#rooms{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}#rooms button{display:flex;align-items:center;gap:12px;text-align:left;background:#1e202a;border:1px solid #313541;padding:14px;min-height:76px}.symbol{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:12px;font-size:17px;background:#30334d;color:#adb2ff}#rooms button>div{flex:1;overflow:hidden}#rooms strong{display:block;font-size:15px}#rooms small{display:block;font-size:11px;color:#969fb5;margin-top:4px}.arrow{margin-left:auto;color:#929bb0;font-size:24px;flex:none}#rooms button.connected{border-color:#65b99b;background:#203830}#rooms button.connected .symbol{background:#2b5141;color:#8fe7bf}
#call-dock{flex:none;width:100%;padding:10px 12px;background:#1a1c25;border-top:1px solid var(--line)}body:not(.in-call) #call-dock{display:none}#status{font-size:12px;line-height:1.4;margin:0 0 8px;color:#bac8e1;max-height:2.8em;overflow:auto;overflow-wrap:anywhere}.controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.controls button{width:100%;font-weight:650;font-size:12px;min-height:46px;padding:8px 4px;line-height:1.2}#leave{background:#74323f;color:#ffdae0}#call-dock>small{display:none}
#mobile-nav{flex:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#181a22;border-top:1px solid var(--line);padding:5px 10px;gap:6px;min-height:62px}#mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10px;padding:4px;min-height:50px;background:transparent;color:#969db1;border-radius:12px}#mobile-nav button>span{font-size:20px;line-height:22px}#mobile-nav button[aria-current]{color:#d5d8ff;background:#2c2f46}
body.in-call main{display:flex;flex-direction:column;padding:10px 12px;gap:8px;overflow:hidden}body.in-call .intro{display:none}body.in-call #rooms{flex:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}body.in-call #rooms button{gap:5px;min-height:44px;padding:7px 6px;border-radius:12px}body.in-call #rooms strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.in-call #rooms small,body.in-call .arrow{display:none}body.in-call .symbol{width:24px;height:24px;font-size:11px;border-radius:7px}
#call-view{flex:1 1 0;min-height:0;display:flex;flex-direction:column;gap:6px}.call-heading{flex:none;display:flex;align-items:center;gap:8px;min-height:40px}.call-heading h2{font-size:17px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-heading #count{margin-left:auto;font-size:10px;color:#a0a9be;white-space:nowrap}.call-heading #fullscreen{flex:none;padding:6px;width:40px;min-height:40px;font-size:22px;background:#272b3a}.hint{flex:none;color:#8993aa;font-size:10px;line-height:1.4;margin:0 0 3px}#participants{flex:1 1 0;min-height:0;display:grid;grid-template-columns:repeat(var(--tile-columns,2),minmax(0,1fr));grid-template-rows:repeat(var(--tile-rows,1),minmax(0,1fr));gap:8px}.tile{position:relative;min-height:0;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#403b59,#252937);border-radius:14px}.tile .avatar{display:grid;place-items:center;width:clamp(32px,12vw,70px);height:clamp(32px,12vw,70px);max-width:50%;max-height:60%;aspect-ratio:1;border-radius:50%;font-size:26px;font-weight:700;color:#d7daff}.avatar img,.tile-avatar img,.participant-photo img{width:100%;height:100%;object-fit:cover;border-radius:50%}.tile label{position:absolute;bottom:7px;left:7px;max-width:calc(100% - 14px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 7px;border-radius:6px;background:#11131bbf;font-size:10px;pointer-events:none}.tile video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}.tile audio{display:none}.participant-actions{position:absolute;top:6px;right:6px;z-index:2;min-height:36px;min-width:36px;padding:3px 8px;font-size:20px;background:#171922d9;border-radius:10px}.speaking .avatar,.speaking .tile-avatar{outline:3px solid #43d995;box-shadow:0 0 16px #43d99555}.user-video-hidden video{visibility:hidden}.user-muted>label:after{content:' · sem áudio'}#participants.focused{display:flex}#participants.focused>.tile{display:none}#participants.focused>.tile.active{display:grid;width:100%;height:100%;flex:1}
body.call-fullscreen #app-header,body.call-fullscreen #mobile-nav,body.call-fullscreen #call-dock,body.call-fullscreen #rooms,body.call-fullscreen .hint{display:none}body.call-fullscreen main{position:relative;inset:auto;max-width:none;padding:4px 8px;background:#000;width:100%;height:100%;flex:1}body.call-fullscreen #call-view{height:100%}body.call-fullscreen #participants{padding:0}body.call-fullscreen .call-heading{min-height:40px}
dialog{color:#eee;background:#20222d;border:1px solid #3b4054;border-radius:22px;padding:20px;width:min(480px,calc(100% - 20px));max-width:calc(100% - 20px);max-height:calc(var(--app-height) - 20px);margin:auto;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scroll-padding:16px;box-shadow:0 20px 70px #0007}dialog::backdrop{background:#05060bb8}dialog h2{font-size:21px;line-height:1.25;margin:0 0 18px;overflow-wrap:anywhere}dialog h3{font-size:16px}dialog p{font-size:12px;line-height:1.6;color:#aeb8ce;overflow-wrap:anywhere}dialog label{display:block;font-size:13px;margin:16px 0}dialog input[type=text],dialog input[type=password],dialog input:not([type]),dialog textarea,dialog select{display:block;width:100%;background:#11141e;border:1px solid #414a60;border-radius:10px;color:#eee;padding:12px;margin-top:8px;font-size:16px}dialog textarea{min-height:76px;resize:vertical;max-height:160px}input[type=checkbox]{width:24px;height:24px;flex:none;accent-color:#858aff;vertical-align:middle}input[type=range]{width:100%;accent-color:#858aff;min-height:36px}.toggle{display:flex;align-items:center;justify-content:space-between;gap:16px}dialog button{max-width:100%;margin:4px 0}dialog output{color:#babfff}.sheet-heading{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:12px}.sheet-heading h2{margin:0}.sheet-heading button{width:40px;min-height:40px;font-size:24px;flex:none;background:#303441}.participant-photo{display:grid;place-items:center;width:64px;height:64px;background:#565b9e;border-radius:50%;font-size:26px;margin:12px 0}.private-history{max-height:min(240px,30dvh);overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}.participant-menu label{margin:18px 0}.participant-toast{position:fixed;z-index:2000;top:72px;left:10px;right:10px;width:calc(100% - 20px);transform:none;max-width:600px;margin:0 auto;background:#4e55ad;border:1px solid #9299fa;color:white;padding:12px;box-shadow:0 8px 32px #0008}.local-inbox-button{font-size:14px;text-align:left;padding:14px;background:#30364b;border:1px solid #464f6a;width:100%;margin:0}#mobile-actions{display:grid;gap:10px}#mobile-moderation-actions{border-top:1px solid var(--line);margin-top:20px;padding-top:12px}#mobile-moderation-actions>button{width:100%;font-size:13px}#close-settings{width:100%;background:#696ff0;margin-top:16px}#mobile-mic-test{border-top:1px solid #3e4458;margin:24px 0;padding-top:12px}#mobile-mic-test meter{display:block;width:100%;height:22px;margin:7px 0 18px}
@media(min-width:600px){body:not(.in-call) #rooms{grid-template-columns:repeat(3,minmax(0,1fr))}body:not(.in-call) #rooms button{flex-wrap:wrap}.intro{padding-top:22px}dialog{width:min(520px,calc(100% - 32px))}}
@media(orientation:landscape) and (max-height:540px){#app-header{height:48px;padding:4px 12px}#app-header>img{width:32px;height:32px}.brand-copy strong{font-size:17px}.brand-copy small{display:none}#mobile-nav{min-height:44px;padding:2px 10px}#mobile-nav button{min-height:38px;flex-direction:row;gap:8px;font-size:11px}#mobile-nav button>span{font-size:17px}body.in-call main{position:relative;padding:6px 12px;gap:4px}body.in-call #rooms{position:absolute;right:12px;top:6px;width:min(48%,330px);z-index:2}body.in-call #rooms button{min-height:36px;padding:4px 6px}body.in-call #rooms .symbol{display:none}body.in-call .call-heading{padding-right:calc(min(48vw,330px) + 12px);min-height:36px}body.in-call .call-heading #count{display:none}body.in-call .call-heading #fullscreen{margin-left:auto;min-height:32px;width:36px}body.in-call .hint{display:none}#call-dock{display:flex;align-items:center;gap:12px;padding:6px 12px}#status{flex:1;margin:0;font-size:11px}.controls{width:min(58%,400px);flex:none}.controls button{min-height:38px;font-size:11px}body.call-fullscreen .call-heading{padding-right:0}body.call-fullscreen .call-heading #count{display:block}}
@media(max-width:359px){#app-header{padding-inline:12px}.brand-copy small{font-size:10px}main{padding:18px 12px}.intro p{font-size:12px}.call-heading #count{font-size:9px}.controls button{font-size:11px}dialog{padding:16px}}

.tile .participant-avatar-button{pointer-events:auto;cursor:pointer}.tile .participant-avatar-button:focus-visible{outline:2px solid #a7adff;outline-offset:3px}
