@font-face{font-family:'JetBrains Mono';src:url('/fonts/JetBrainsMono-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url('/fonts/JetBrainsMono-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url('/fonts/JetBrainsMono-Italic.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url('/fonts/JetBrainsMono-BoldItalic.ttf') format('truetype');font-weight:700;font-style:italic;font-display:swap}
:root{color-scheme:dark;font:14px 'JetBrains Mono',monospace;background:#2B2D31;color:#f2f3f5;--blue:#5865f2;--panel:#202838}*{box-sizing:border-box}body{margin:0}[hidden]{display:none!important}button,input,select,summary{font:inherit}button{background:var(--blue);color:white;border:0;border-radius:6px;padding:9px 12px;cursor:pointer}button:hover{filter:brightness(1.15)}button:disabled{opacity:.45;cursor:default}input,select{background:#2a3447;border:1px solid #39455d;border-radius:6px;color:white;padding:10px;width:100%}input:focus,select:focus{outline:2px solid var(--blue)}input[type=checkbox]{width:auto}label{display:block;margin:9px 0}label input,label select{margin-top:5px}.card{background:var(--panel);border:1px solid #2a3447;border-radius:10px;padding:16px}h1{color:var(--blue);margin:0;font-size:28px}h2{margin:0 0 8px}h3{font-size:12px;color:#99a3ff;margin:20px 0 8px}p,small{color:#b5bac1}small{display:block}#login{display:grid;place-items:center;min-height:100vh}#loginForm{width:min(400px,94vw);padding:30px}#loginForm button{width:100%;margin-top:10px}.secondary{background:#2a3447}#app{display:grid;grid-template-columns:280px 1fr;height:100vh}aside{background:#2B2D31;padding:20px 14px;overflow:auto}.profile{display:flex;gap:12px;align-items:center;margin:22px 0}.profile img,.person img,.message img.avatar{width:32px;height:32px;object-fit:cover;border-radius:50%;background:#39455d}.link{padding:0;background:none;color:#b5bac1;display:block;font-size:12px;margin-top:4px}#accountMenu{display:grid;gap:4px;margin-bottom:12px}.call{padding:12px;margin-top:16px}.call>button{width:100%;margin:8px 0}.row{display:flex;gap:6px;align-items:center}.row button{flex:1;font-size:12px;padding:8px 5px}#screenControls{margin-top:10px}#screenStatus{margin-top:8px;overflow-wrap:anywhere}.person{display:flex;align-items:center;gap:8px;margin:8px 0;font-size:12px}.person.talking{color:#59d699}details{margin-top:12px}summary{cursor:pointer;color:#b5bac1}.chat{display:flex;flex-direction:column;min-width:0;padding:20px 24px;height:100vh}.chat header{border-bottom:1px solid #2a3447;padding-bottom:16px}#messages{flex:1;overflow:auto;padding:18px 0;min-height:80px}.message{display:flex;gap:10px;padding:10px 0}.message .body{min-width:0}.message strong{margin-right:8px}.message time,.message small{font-size:11px;color:#8f9eb6}.message p{color:#f2f3f5;white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0}.message .attachment{max-width:min(480px,100%);max-height:320px;border-radius:8px}.message button{background:none;color:#aeb8ca;font-size:11px;padding:0 5px}.game{display:flex;justify-content:flex-end;gap:24px;background:var(--panel);padding:12px;border-radius:8px}#board{background:#2B2D31;outline:none}#board:focus{outline:2px solid var(--blue)}#composer{display:flex;gap:8px;margin-top:18px}#message{min-width:0}#notice{font-size:12px;min-height:16px;margin:5px 0;color:#ff9090}dialog{background:#2B2D31;color:white;border:1px solid #39455d;border-radius:10px;width:min(1000px,96vw);height:min(680px,92vh);padding:12px}dialog[open]{display:flex;flex-direction:column}dialog::backdrop{background:#000b}dialog .row{flex-shrink:0}dialog .row strong{flex:2}#videoFrame{width:100%;height:100%;min-height:0;object-fit:contain;margin-top:10px}dialog:fullscreen{width:100vw;height:100vh;border:0;border-radius:0}#loginError{color:#ff9090}@media(max-width:700px){#app{grid-template-columns:210px 1fr}aside{padding:12px 8px}.chat{padding:14px 10px}.row{flex-wrap:wrap}.row button{min-width:70px}h1{font-size:23px}.game{flex-wrap:wrap}#composer{flex-wrap:wrap}#composer input{flex:1 1 100%}} 

.language-picker{position:fixed;right:12px;top:8px;z-index:30;margin:0;background:#202838;border:1px solid #39455d;border-radius:6px;font-size:12px}.language-picker summary{display:flex;align-items:center;gap:6px;padding:6px;list-style:none}.language-picker img{object-fit:contain}.language-picker #languageMenu{display:grid;padding:5px;gap:4px}.language-picker button{display:flex;align-items:center;gap:8px;background:#2a3447;text-align:left}.chat header{padding-right:180px}
.volume-dialog{width:320px;height:auto;max-width:90vw}.volume-dialog input{width:100%}.media-player{width:100%;max-height:70vh}.attachment-button{background:#202838!important;padding:10px!important;display:block;margin:8px 0;color:white!important}.game-picker{display:flex;gap:8px;align-items:center;margin:8px 0}.game-picker select{width:auto}.social-game{background:#202838;padding:10px;margin:8px 0;overflow:auto;max-height:60vh}.social-game canvas{display:block;width:100%;max-width:640px;touch-action:none}.palette{display:flex;gap:4px;margin:6px 0}.palette button{padding:4px 8px}textarea{resize:vertical;min-height:60px;max-height:160px;background:#2a3447;color:white;border:0;border-radius:5px;padding:10px;flex:1;font:inherit}.version{font-size:10px;color:#8f9eb6}
.source-dialog{width:min(460px,90vw);height:auto;gap:12px}.media-dialog{height:auto;max-height:90vh;gap:8px}.media-dialog>div{min-height:0;overflow:auto}

.call-extra{display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin:4px 0}.call-extra>small{width:100%;color:#b5bac1}.call-extra>small:last-child{color:#fbbf24}.call-preview{display:flex;align-items:center}.call-preview button{padding:1px;background:transparent}.call-preview img{width:26px;height:26px;border-radius:50%;object-fit:cover}.call-extra>button{font-size:11px;padding:4px}.streaming span{color:#ef4444!important}.gartic-guesses{font-size:15px;font-weight:bold;color:white;background:#182235;padding:10px;white-space:pre-wrap}dialog{max-height:80vh;overflow:auto}dialog .person img{width:32px;height:32px;border-radius:50%}

.call-extra input[type=search]{width:100%;font-size:12px;padding:6px;box-sizing:border-box}

.desktop-download{position:fixed;right:12px;bottom:8px;z-index:20;background:#202838;color:#c4ceff;border:1px solid #35415a;border-radius:5px;padding:6px 9px;font-size:11px;text-decoration:none}.desktop-download:hover{background:#2a3447}#typingStatus{min-height:16px;color:#b5bac1;font-size:11px;margin:0 16px}

/* 0.4: only the marked surfaces change colour; media/player rules stay intact. */
#login .card,#textChannels,.game-picker,#snake,#message{background:#383a40}
body{text-transform:lowercase}#messages .body,#messages .text,#messages p,#messages strong,.person,#myName,#roomName,select,input,textarea{ text-transform:none }
#messages button{ text-transform:lowercase }.call-connected{color:#3cdd98}.full{color:#ff656f}
#app aside{overflow:hidden;min-height:0}.people-scroll{overflow-y:auto;min-height:0;flex:1}.settings-gear{align-self:flex-start;margin-top:auto}.call-preview{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.call-preview img{width:24px;height:24px;border-radius:50%}.link{background:transparent;border:0;padding:2px;color:inherit;text-decoration:underline}

#app aside{display:flex;flex-direction:column}.game-picker button,.game-picker select,#messages .message button{background:#383a40}.ui-vector{display:inline-flex;vertical-align:middle;width:1.1em;height:1.1em}.ui-vector svg{width:100%;height:100%}

.call-controls{display:flex;flex-wrap:nowrap;gap:6px;margin:6px 0}.call-controls button.icon-control{flex:0 0 34px;width:34px;min-width:34px;height:32px;padding:5px;display:inline-flex;align-items:center;justify-content:center;border-radius:0;background:#2a3447}.call-controls button.icon-control[hidden]{display:none}#screenControls summary.icon-control{display:inline-flex;padding:5px;background:#383a40;color:#f2f3f5}#screenControls details{margin-top:4px}#screenControls{margin-top:6px}.settings-gear,#attach{background:#383a40}.person{margin-top:10px;margin-bottom:10px}.call{padding:12px}

.room-chooser{position:relative;margin:5px 0}.room-chooser>summary{display:block;padding:9px;background:#2a3447;color:#f2f3f5;border-radius:4px;list-style:none}.room-chooser>summary::after{content:'⌄';position:absolute;right:8px;top:8px}.room-option-name{display:flex;gap:7px;align-items:center;padding-right:14px;text-transform:none}.room-option-name img{width:24px;height:16px;object-fit:contain;flex:none}.room-options{position:absolute;left:0;right:0;z-index:40;background:#202838;padding:4px;max-height:240px;overflow-y:auto;box-shadow:0 3px 10px #0008}.room-options button{display:block;text-align:left;width:100%;padding:8px;background:transparent}.room-options button:hover{background:#383a40}#textChannelsChooser>summary{background:#383a40}

/* 0.41: owner-selected surfaces. Media presentation remains unchanged. */
#app aside{background:#232428}.game-picker select,.game-picker>button{background:#232428}#snake button,#gartic button,#pong button{background:#5865f2}.account-menu>summary,#myAccount,dialog input,dialog button:not(.primary){background:#383a40}#callWaveform{width:100%;height:30px;background:#383a40}#callWaveform[hidden],#call[hidden],#leaveIcon[hidden]{display:none}.settings-gear svg{width:22px;height:22px}

.social-game button{background:#5865f2}.social-game input{background:#232428}

#callPeople .person.individually-muted{color:#bb86fc}

.call-controls button#leaveIcon{background:#da373c;color:#f2f3f5}.call-controls button#leaveIcon:hover{background:#a1282c}

.game-picker[hidden]{display:none}

.radio-panel{padding:12px;background:#232428;max-height:45vh;overflow:auto}.radio-panel[hidden]{display:none}.radio-result{display:flex;justify-content:space-between;gap:12px;margin:7px 0}.discord-link{float:right;color:#b5bac1}

.sidebar-footer{display:flex;gap:8px;align-items:center;margin-top:auto}.sidebar-footer .settings-gear{margin-top:0}.sidebar-footer .discord-link{position:static;display:flex;padding:6px;background:#383a40}

img.radio-avatar{border-radius:50%;background:#383f4c;object-fit:cover;padding:0;box-sizing:border-box}
