:root{color-scheme:light;--ink:#222722;--muted:#767c73;--paper:#f4f1e9;--surface:#fffefa;--line:#e6e2d8;--green:#246d4c;--green-dark:#194e38;--lime:#d7f078;--soft-green:#e9f1e6;--radius:18px;font-family:"DM Sans",sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--paper);color:var(--ink)}button,input,select{font:inherit}button{color:inherit}.app-shell{max-width:1600px;margin:auto;padding:0 5.25vw}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e4e0d7}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);font:800 22px/1 Manrope,sans-serif;letter-spacing:-1.2px}.brand-mark{width:27px;height:27px;position:relative;display:inline-flex;align-items:center;justify-content:center}.brand-mark i{display:block;width:10px;height:10px;border:2px solid var(--green);border-radius:50%;position:absolute;background:var(--paper)}.brand-mark i:nth-child(1){left:1px;top:4px}.brand-mark i:nth-child(2){right:1px;top:4px}.brand-mark i:nth-child(3){left:8px;bottom:1px;background:#d6ef9b}.topbar-note{display:flex;align-items:center;gap:9px;color:#5c655b;font-size:13px;letter-spacing:.01em}.note-dot{width:7px;height:7px;border-radius:50%;background:#6a9b5d}.icon-button{border:0;background:transparent;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;cursor:pointer}.icon-button:hover{background:#e8e5dc}.icon-button svg,.stage-action svg,.control-icon svg,.primary-button svg,.next-button svg,.message-form svg,.select-wrap>svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:34px;padding:30px 0 20px}.video-column{min-width:0}.video-stage{background:#e6e3d9;border:1px solid #ddd9cf;border-radius:22px;padding:11px;box-shadow:0 2px 6px #24272008}.remote-video{position:relative;aspect-ratio:16/9;min-height:360px;max-height:calc(100vh - 315px);border-radius:15px;overflow:hidden;background:#d7d9c9;isolation:isolate}.remote-art{position:absolute;inset:0;background:#d9e0d1;overflow:hidden}.art-sun{position:absolute;right:18%;top:12%;width:115px;height:115px;border-radius:50%;background:#e7bd71;opacity:.82}.art-window{position:absolute;left:8%;top:8%;width:37%;height:58%;border:10px solid #f4f1e6;background:#c1d5c5;box-shadow:inset 0 0 0 2px #bdc7ba}.art-window:before,.art-window:after{content:"";position:absolute;background:#f3f0e7}.art-window:before{width:7px;top:0;bottom:0;left:51%}.art-window:after{height:7px;left:0;right:0;top:48%}.art-person{position:absolute;left:61%;bottom:8%;width:30%;height:76%}.person-hair{position:absolute;z-index:2;width:53%;height:44%;left:23%;top:2%;background:#3e3328;border-radius:48% 48% 42% 42%}.person-face{position:absolute;z-index:3;width:43%;height:45%;left:28%;top:10%;border-radius:46% 46% 44% 44%;background:#c78760}.person-face:after{content:"";position:absolute;left:29%;top:46%;width:44%;height:8%;border-bottom:2px solid #714f43;border-radius:0 0 50% 50%}.person-neck{position:absolute;z-index:2;width:21%;height:19%;left:39%;top:46%;background:#bc7956}.person-shirt{position:absolute;bottom:0;left:0;width:100%;height:44%;background:#7d9878;border-radius:45% 45% 0 0}.art-table{position:absolute;bottom:0;right:0;width:100%;height:14%;background:#ad7957}.art-mug{position:absolute;right:13%;bottom:13%;width:48px;height:50px;background:#f2ecdc;border-radius:4px 4px 12px 12px;transform:rotate(-3deg)}.art-mug:after{content:"";position:absolute;right:-12px;top:9px;width:16px;height:21px;border:5px solid #f2ecdc;border-left:0;border-radius:0 11px 11px 0}.art-plant{position:absolute;left:4%;bottom:10%;z-index:1;width:56px;height:110px}.art-plant:after{content:"";position:absolute;bottom:0;left:9px;width:40px;height:45px;border-radius:4px 4px 16px 16px;background:#c7825e}.art-plant span{position:absolute;bottom:36px;left:23px;width:17px;height:50px;border-radius:100% 0 100% 0;transform-origin:bottom;background:#678264}.art-plant span:nth-child(1){transform:rotate(-40deg);left:7px}.art-plant span:nth-child(2){transform:rotate(13deg);height:68px}.art-plant span:nth-child(3){transform:rotate(47deg);left:35px}.remote-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#17211936 0%,transparent 19%,transparent 62%,#1721195c 100%);pointer-events:none}.remote-label{position:absolute;top:17px;left:18px;display:flex;align-items:center;gap:8px;color:white;font-size:12px;font-weight:600;text-shadow:0 1px 8px #26312b80}.status-pip{width:7px;height:7px;border-radius:50%;background:#d7f078;box-shadow:0 0 0 3px #d7f07840}.remote-empty{position:absolute;z-index:2;top:50%;left:30%;width:min(360px,44%);padding:16px 18px;transform:translate(-50%,-47%);border:1px solid #fff9;border-radius:15px;background:#f4f1e9ed;text-align:left}.empty-symbol{position:relative;width:68px;height:68px;margin:0 auto 21px}.empty-symbol:before,.empty-symbol:after{content:"";position:absolute;border:1.5px solid #37664e;border-radius:50%;width:33px;height:33px;top:6px}.empty-symbol:before{left:3px}.empty-symbol:after{right:3px}.empty-symbol span{position:absolute;width:33px;height:33px;border:1.5px solid #37664e;border-radius:50%;bottom:2px;left:17px;background:#d7f07890}.empty-kicker,.eyebrow,.preference-label{font-size:9px;font-weight:700;letter-spacing:.16em;color:#486451}.remote-empty h1{font:700 clamp(27px,3vw,40px)/1.1 Manrope,sans-serif;letter-spacing:-1.6px;margin:12px 0 10px;color:#26372a}.remote-empty h1 em{font-style:normal;color:var(--green)}.empty-copy{max-width:300px;margin:0;color:#5d6a5f;font-size:13px;line-height:1.55}.match-status{position:absolute;z-index:3;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:7px;min-width:250px;padding:23px 27px;border:1px solid #ffffffa3;border-radius:18px;background:#fffefaed;box-shadow:0 14px 40px #2534291c;text-align:center}.match-status[hidden]{display:none}.status-spinner{width:23px;height:23px;border:2px solid #c9d7c7;border-top-color:var(--green);border-radius:50%;animation:spin .85s linear infinite}.match-status strong{font:700 16px Manrope,sans-serif}.match-status>span:last-child{font-size:12px;color:#687268}@keyframes spin{to{transform:rotate(360deg)}}.video-actions{position:absolute;z-index:4;top:14px;right:14px;display:flex;gap:6px}.stage-action{display:flex;align-items:center;gap:6px;border:1px solid #ffffff57;border-radius:9px;padding:8px 10px;background:#20292248;color:white;font-size:11px;cursor:pointer;backdrop-filter:blur(5px)}.stage-action:hover{background:#2029229c}.stage-action svg{width:16px;height:16px}.local-video{position:absolute;z-index:4;right:17px;bottom:17px;width:22%;aspect-ratio:4/3;border:2px solid #fff;border-radius:12px;object-fit:cover;background:#29382d;box-shadow:0 5px 18px #1b281e40}.local-video[hidden]{display:none}.local-placeholder{position:absolute;z-index:4;right:17px;bottom:17px;width:22%;aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid #ffffff60;border-radius:12px;background:#324137bd;color:#f8f6ed;font-size:10px}.local-placeholder[hidden]{display:none}.camera-glyph{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#ffffff20}.camera-glyph svg{width:17px;height:17px;stroke:#fff;stroke-width:1.6;fill:none;stroke-linejoin:round}.call-timer{position:absolute;z-index:4;bottom:19px;left:20px;color:white;font-variant-numeric:tabular-nums;font-size:11px}.call-timer[hidden]{display:none}.stage-caption{height:43px;display:flex;align-items:center;gap:9px;padding:0 10px;color:#666e65;font-size:11px}.caption-mark{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#d8edbb;color:#355a3d;font:800 10px Manrope}.stage-caption strong{color:#38463a;font-weight:600}.stage-caption button{margin-left:auto;border:0;background:none;color:var(--green);text-decoration:underline;text-underline-offset:3px;font-size:11px;cursor:pointer}.control-bar{display:flex;align-items:center;justify-content:center;gap:12px;padding:7px 0 6px}.control-button{height:47px;min-width:76px;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;border:1px solid #dfdbd1;border-radius:12px;background:#fffefa;color:#454e45;font-size:11px;cursor:pointer;transition:background .15s,border-color .15s}.control-button:hover{border-color:#9aa993;background:#f7f8f2}.control-button[aria-pressed="true"]{border-color:#d6a9a1;background:#f9ebe8;color:#9c4c3e}.control-icon{display:grid;place-items:center}.control-icon svg{width:17px;height:17px}.primary-button,.next-button{height:47px;display:flex;align-items:center;justify-content:center;gap:9px;padding:0 21px;border:0;border-radius:12px;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s,transform .15s}.primary-button{min-width:178px;background:var(--green);color:#fff}.primary-button:hover{background:var(--green-dark);transform:translateY(-1px)}.primary-button svg{width:17px}.next-button{min-width:110px;background:#dbe2d6;color:#344335}.next-button:not(:disabled):hover{background:#ccd8c6}.next-button:disabled{opacity:.52;cursor:not-allowed}.next-button svg{width:15px}.demo-notice{display:flex;align-items:center;justify-content:center;gap:7px;padding:5px 0 2px;color:#7c8178;font-size:10px}.demo-icon{display:grid;place-items:center;width:13px;height:13px;border:1px solid #9c9f95;border-radius:50%;font:600 9px Georgia}.preferences{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 7px 0}.preference-copy{display:flex;flex-direction:column;gap:4px}.preference-label{font-size:8px}.preference-copy strong{font:700 13px Manrope,sans-serif;color:#30382f}.preference-copy>span:last-child{color:#777d73;font-size:11px}.select-wrap{height:42px;min-width:200px;display:flex;align-items:center;gap:9px;padding:0 11px;border:1px solid #dedbd2;border-radius:10px;background:#fffefa;color:#4e594f}.select-wrap select{flex:1;min-width:0;appearance:none;border:0;outline:none;background:transparent;color:inherit;font-size:11px;cursor:pointer}.select-wrap>svg{width:15px;height:15px}.globe-icon{font-size:18px;color:#50725b}.chat-panel{display:flex;flex-direction:column;min-height:500px;max-height:calc(100vh - 145px);border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}.chat-header{height:74px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 19px;border-bottom:1px solid #eeece5}.chat-header .eyebrow{margin:0 0 4px;font-size:8px}.chat-header h2{margin:0;font:700 18px Manrope,sans-serif;letter-spacing:-.5px}.chat-count{min-width:25px;height:25px;display:grid;place-items:center;padding:0 6px;border-radius:8px;background:#f0f1e8;color:#5f685d;font-size:10px;font-weight:600}.chat-body{position:relative;flex:1;min-height:250px;overflow-y:auto}.chat-empty{position:absolute;top:50%;left:50%;width:min(245px,85%);transform:translate(-50%,-53%);display:flex;flex-direction:column;align-items:center;text-align:center}.chat-empty[hidden]{display:none}.chat-illustration{position:relative;width:60px;height:49px;margin-bottom:15px}.bubble{position:absolute;width:38px;height:27px;border:1.5px solid #79977a;border-radius:11px}.bubble-a{left:0;top:0;background:#e6efdb}.bubble-b{right:0;bottom:1px;background:#f4e6ce;border-color:#b99564}.bubble-tail{position:absolute;z-index:2;left:11px;top:24px;width:11px;height:11px;transform:rotate(45deg);border-right:1.5px solid #79977a;border-bottom:1.5px solid #79977a;background:#e6efdb}.chat-empty>strong{font:700 13px Manrope,sans-serif}.chat-empty>p{max-width:210px;margin:7px 0 17px;color:#82877e;font-size:11px;line-height:1.5}.suggestion-list{display:flex;flex-direction:column;gap:7px;width:100%}.suggestion{min-height:34px;border:1px solid #e7e5dc;border-radius:9px;background:#fffefa;color:#677264;font-size:10px;cursor:pointer}.suggestion:hover{border-color:#9eb79a;background:#f6f8f0}.message-list{display:flex;flex-direction:column;gap:13px;padding:17px}.message{max-width:85%;align-self:flex-end;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.message p{margin:0;padding:9px 12px;border-radius:12px 12px 3px 12px;background:#e9f1e5;color:#344434;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.message time{color:#999c93;font-size:9px}.message-form{display:flex;align-items:center;gap:8px;padding:11px 12px;border-top:1px solid #eeece5}.message-form input{flex:1;min-width:0;height:40px;padding:0 11px;border:1px solid #e5e2d9;border-radius:10px;outline:none;background:#faf9f4;color:#333b34;font-size:11px}.message-form input::placeholder{color:#a1a39b}.message-form input:focus{border-color:#71937a;box-shadow:0 0 0 3px #79977a2b}.message-form input:disabled{background:#f5f4ef;color:#aaa}.message-form button{width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:10px;background:var(--green);color:white;cursor:pointer}.message-form button:hover:not(:disabled){background:var(--green-dark)}.message-form button:disabled{background:#d4d9d0;color:#f9faf7;cursor:not-allowed}.message-form button svg{width:17px;height:17px}.chat-footnote{margin:0;padding:0 12px 12px;text-align:center;color:#969a91;font-size:9px}.footer{height:55px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e4e0d7;color:#8a8e85;font-size:10px}.footer>span:last-child{display:flex;align-items:center;gap:11px}.footer button{padding:5px;border:0;background:none;color:#777e73;font-size:10px;cursor:pointer}.footer button:hover{text-decoration:underline}.footer i{width:3px;height:3px;border-radius:50%;background:#a9aca4}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.info-dialog{width:min(410px,calc(100vw - 32px));padding:30px;border:1px solid #e3e0d7;border-radius:20px;background:#fffefa;color:var(--ink);box-shadow:0 20px 70px #1b251b30}.info-dialog::backdrop{background:#1e281f66;backdrop-filter:blur(2px)}.info-dialog form{position:absolute;right:17px;top:15px}.dialog-close{width:35px;height:35px;border:0;border-radius:50%;background:#f1f0e9;font-size:24px;line-height:1;cursor:pointer}.dialog-symbol{width:39px;height:39px;display:grid;place-items:center;margin-bottom:19px;border-radius:12px;background:#e8f1db;color:var(--green);font:800 18px Manrope}.info-dialog .eyebrow{margin:0 0 7px}.info-dialog h2{margin:0;font:700 22px Manrope,sans-serif;letter-spacing:-.7px}.info-dialog>p:last-of-type{margin:12px 0 22px;color:#697267;font-size:13px;line-height:1.65}.dialog-ok{height:42px;padding:0 17px;border:0;border-radius:10px;background:var(--green);color:#fff;font-size:12px;font-weight:700;cursor:pointer}:focus-visible{outline:3px solid #7d9f48;outline-offset:3px}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}
@media(max-width:1080px){.app-shell{padding:0 3.2vw}.workspace{grid-template-columns:minmax(0,1fr) 286px;gap:22px}.remote-video{min-height:320px}.chat-panel{max-height:calc(100vh - 130px)}.preferences{padding-left:3px;padding-right:3px}.select-wrap{min-width:185px}}
@media(max-width:820px){.app-shell{padding:0 22px}.topbar{height:65px}.workspace{grid-template-columns:minmax(0,1fr) 280px;gap:16px;padding-top:21px}.remote-video{min-height:290px;aspect-ratio:4/3}.chat-panel{min-height:470px;max-height:calc(100vh - 119px)}.control-bar{gap:8px}.control-button{min-width:62px;gap:5px}.primary-button{min-width:150px;padding:0 13px}.next-button{min-width:89px;padding:0 12px}.preferences{align-items:flex-start}.preference-copy{max-width:180px}.select-wrap{min-width:164px}.stage-caption{font-size:10px}.stage-caption button{font-size:10px}}
@media(max-width:680px){.app-shell{padding:0 16px}.topbar{height:60px}.topbar-note{font-size:11px}.workspace{display:flex;flex-direction:column;gap:14px;padding:16px 0}.video-stage{padding:7px;border-radius:17px}.remote-video{min-height:0;aspect-ratio:4/3;border-radius:12px}.art-window{border-width:7px}.art-person{left:66%;width:27%;opacity:.22}.remote-empty{top:54%;left:50%;width:88%;text-align:center}.empty-symbol{width:52px;height:52px;margin:0 auto 12px;transform:scale(.8)}.remote-empty h1{font-size:clamp(24px,7.3vw,32px);margin:8px 0}.empty-copy{max-width:260px;margin:0 auto;font-size:11px}.empty-kicker{font-size:8px}.remote-label{top:12px;left:12px;font-size:10px}.video-actions{top:8px;right:8px}.stage-action{padding:7px;border-radius:8px}.stage-action span{display:none}.stage-action svg{width:16px;height:16px}.local-video,.local-placeholder{right:10px;bottom:12px;width:27%;border-radius:9px}.local-placeholder{display:none}.remote-video.session-active .local-placeholder:not([hidden]){display:flex}.local-placeholder{font-size:9px}.camera-glyph{width:27px;height:27px}.stage-caption{height:auto;min-height:38px;padding:0 5px;gap:7px;font-size:9px}.caption-mark{width:16px;height:16px;flex:none;font-size:9px}.stage-caption button{font-size:9px;white-space:nowrap}.control-bar{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:6px 2px}.control-button{height:43px;min-width:0;border-radius:10px;font-size:10px}.primary-button{grid-column:1/2;grid-row:2;height:45px;width:100%;min-width:0;border-radius:10px}.next-button{grid-column:2/3;grid-row:2;height:45px;width:100%;min-width:0;border-radius:10px}.demo-notice{font-size:9px;padding:5px 2px 3px}.preferences{padding:9px 3px 4px;align-items:center;gap:10px}.preference-copy strong{font-size:11px}.preference-copy>span:last-child{font-size:10px}.preference-label{font-size:7px}.select-wrap{height:38px;min-width:0;width:48%;gap:6px;padding:0 8px}.select-wrap select{font-size:10px}.globe-icon{font-size:16px}.chat-panel{min-height:365px;max-height:470px;border-radius:15px}.chat-header{height:59px;padding:0 15px}.chat-header h2{font-size:16px}.chat-body{min-height:220px}.chat-empty{top:48%}.chat-illustration{transform:scale(.86);margin-bottom:10px}.chat-empty>strong{font-size:12px}.chat-empty>p{font-size:10px;margin:5px 0 12px}.suggestion-list{gap:6px}.suggestion{min-height:32px}.message-form{padding:9px 10px}.message-form input,.message-form button{height:38px}.chat-footnote{padding-bottom:10px}.footer{height:48px;font-size:9px}.footer button{font-size:9px}}
@media(min-width:681px) and (max-height:790px){.workspace{padding-top:18px}.remote-video{min-height:0;max-height:calc(100vh - 290px)}.chat-panel{min-height:440px;max-height:calc(100vh - 100px)}.topbar{height:65px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Local camera can move and resize without leaving the video stage. */
.topbar-actions{display:flex;align-items:center;gap:8px}.login-button{min-height:40px;padding:0 17px;border:1px solid #dcd9cf;border-radius:10px;background:#fffefa;color:#344335;font-size:12px;font-weight:700;cursor:pointer}.login-button:hover{border-color:#97ad93;background:#f7f8f2}.camera-tile{position:absolute;z-index:5;right:17px;bottom:17px;width:22%;aspect-ratio:4/3;min-width:112px;max-width:42%;overflow:hidden;border:2px solid #fff;border-radius:12px;background:#29382d;box-shadow:0 5px 18px #1b281e40;touch-action:none;user-select:none}.camera-tile[hidden]{display:none}.tile-drag-handle{position:absolute;z-index:3;top:0;left:0;width:100%;min-height:32px;display:flex;align-items:center;gap:6px;padding:0 8px;border:0;border-radius:0;background:#17231dcc;color:#fff;text-align:left;font:600 10px "DM Sans",sans-serif;cursor:grab;touch-action:none}.tile-drag-handle:active{cursor:grabbing}.drag-grip{font-size:14px;line-height:1;color:#e4efcf}.tile-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tile-size-controls{position:absolute;z-index:3;right:5px;bottom:5px;display:flex;gap:4px}.tile-size-controls button{width:31px;height:31px;display:grid;place-items:center;border:1px solid #ffffff70;border-radius:8px;background:#17231dcc;color:white;font-size:19px;line-height:1;cursor:pointer;touch-action:manipulation}.tile-size-controls button:hover{background:#405845}.tile-size-controls button:focus-visible,.tile-drag-handle:focus-visible{outline:3px solid #d7f078;outline-offset:-3px}.camera-tile .local-video{position:absolute;inset:0;width:100%;height:100%;max-width:none;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none;object-fit:cover}.camera-tile .local-placeholder{position:absolute;inset:0;width:auto;height:auto;aspect-ratio:auto;border:0;border-radius:0;background:#324137;color:#f8f6ed;font-size:10px}.camera-tile .local-video[hidden],.camera-tile .local-placeholder[hidden]{display:none}.camera-tile .local-placeholder{padding-top:23px}.camera-tile .tile-drag-handle{padding-right:50px}.camera-tile .camera-glyph{width:30px;height:30px}.auth-dialog{position:relative;width:min(450px,calc(100vw - 30px));max-height:min(90vh,760px);overflow-y:auto;padding:28px 30px 23px;border:1px solid #e3e0d7;border-radius:20px;background:#fffefa;color:var(--ink);box-shadow:0 20px 70px #1b251b30}.auth-dialog::backdrop{background:#1e281f66;backdrop-filter:blur(2px)}.auth-dialog>form:first-child{position:absolute;right:16px;top:14px}.auth-dialog .dialog-symbol{margin-bottom:15px}.auth-dialog .eyebrow{margin:0 0 6px}.auth-dialog h2{margin:0;font:700 23px Manrope,sans-serif;letter-spacing:-.8px}.auth-intro{margin:7px 0 18px;color:#6f766d;font-size:12px;line-height:1.5}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:11px;background:#f1f0e9}.auth-tab{height:37px;border:0;border-radius:8px;background:transparent;color:#71786f;font-size:12px;font-weight:600;cursor:pointer}.auth-tab.is-selected{background:#fffefa;color:#315c40;box-shadow:0 1px 4px #22252215}.provider-buttons{display:grid;gap:8px;margin-top:13px}.provider-button{min-height:43px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid #e1dfd7;border-radius:10px;background:#fffefa;color:#3d453d;font-size:12px;font-weight:600;cursor:pointer}.provider-button:hover:not(:disabled){border-color:#a6b7a2;background:#f9faf6}.provider-button:disabled{opacity:.55;cursor:not-allowed}.google-mark,.facebook-mark{width:19px;height:19px;display:grid;place-items:center;border-radius:50%;font:800 14px Arial,sans-serif}.google-mark{color:#4285f4}.facebook-mark{background:#1877f2;color:white;font-size:16px}.auth-divider{display:flex;align-items:center;gap:10px;margin:16px 0;color:#95998f;font-size:10px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#ebe9e1}.auth-form{display:flex;flex-direction:column;gap:7px}.auth-form label{margin-top:4px;color:#4c554b;font-size:11px;font-weight:600}.auth-form input{width:100%;height:42px;padding:0 11px;border:1px solid #e2dfd7;border-radius:9px;outline:none;background:#fffefa;color:#2f382f;font-size:12px}.auth-form input:focus{border-color:#71937a;box-shadow:0 0 0 3px #79977a2b}.auth-submit,.auth-secondary{height:43px;border:0;border-radius:10px;background:var(--green);color:#fff;font-size:12px;font-weight:700;cursor:pointer}.auth-submit{margin-top:8px}.auth-submit:hover,.auth-secondary:hover{background:var(--green-dark)}.reset-password{align-self:center;min-height:34px;padding:0 8px;border:0;background:none;color:var(--green);font-size:11px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.auth-message{min-height:17px;margin:0;color:#9b4a3e;font-size:11px;line-height:1.5}.auth-message[data-kind="success"]{color:#326747}.auth-config-note{margin:8px 0 0;color:#898e84;font-size:10px;line-height:1.5;text-align:center}.signed-in-panel{margin:17px 0 8px;padding:15px;border:1px solid #dce6d8;border-radius:12px;background:#f4f8f0}.signed-in-panel[hidden],#authFormPanel[hidden]{display:none}.signed-in-panel p{margin:0 0 12px;color:#455344;font-size:12px;overflow-wrap:anywhere}.auth-secondary{width:100%;background:#52785a}
@media(max-width:680px){.topbar-actions{gap:4px}.login-button{min-height:38px;padding:0 12px;font-size:11px}.camera-tile{right:10px;bottom:12px;width:27%;min-width:90px;border-radius:9px}.tile-drag-handle{min-height:28px;padding:0 6px;font-size:9px}.tile-size-controls{right:4px;bottom:4px;gap:3px}.tile-size-controls button{width:29px;height:29px;border-radius:7px}.camera-tile .tile-drag-handle{padding-right:48px}.auth-dialog{padding:25px 21px 19px}.auth-dialog h2{font-size:21px}}
@media(max-width:680px){.camera-tile:not(.session-active) .local-placeholder{display:none}.remote-video.session-active .camera-tile .local-placeholder:not([hidden]){display:flex}}
.camera-tile .tile-drag-handle,.camera-tile .tile-size-controls{z-index:7}
@media(max-width:680px){.tile-size-controls button{width:26px;height:26px}}

.tile-size-controls{display:none!important}.camera-tile{min-width:72px}.tile-resize-handles{position:absolute;z-index:7;inset:0;pointer-events:none}.resize-handle{position:absolute;display:block;padding:0;border:0;background:transparent;pointer-events:auto;touch-action:none;opacity:.4}.resize-handle:hover,.resize-handle:focus-visible{opacity:1;background:#d7f07824}.resize-handle:focus-visible{outline:2px solid #d7f078;outline-offset:-2px}.resize-n,.resize-s{left:24px;right:24px;height:18px;cursor:ns-resize}.resize-n{top:0}.resize-s{bottom:0}.resize-e,.resize-w{top:24px;bottom:24px;width:18px;cursor:ew-resize}.resize-e{right:0}.resize-w{left:0}.resize-ne,.resize-nw,.resize-se,.resize-sw{width:25px;height:25px;z-index:2}.resize-ne{top:0;right:0;cursor:nesw-resize}.resize-nw{top:0;left:0;cursor:nwse-resize}.resize-se{right:0;bottom:0;cursor:nwse-resize}.resize-sw{left:0;bottom:0;cursor:nesw-resize}.resize-handle:after{content:"";position:absolute;top:50%;left:50%;width:16px;height:2px;transform:translate(-50%,-50%);border-radius:2px;background:#eff7df}.resize-e:after,.resize-w:after{width:2px;height:16px}.resize-ne:after,.resize-nw:after,.resize-se:after,.resize-sw:after{width:8px;height:8px;border:1px solid #eff7df;border-radius:2px;background:transparent}.tile-reset{position:absolute;z-index:8;top:2px;right:3px;width:27px;height:27px;display:grid;place-items:center;padding:0;border:1px solid #ffffff70;border-radius:7px;background:#17231dcc;color:#fff;font-size:16px;line-height:1;cursor:pointer}.tile-reset:hover{background:#405845}.tile-reset:focus-visible{outline:2px solid #d7f078;outline-offset:1px}.camera-tile .tile-drag-handle{padding-right:37px}
@media(max-width:680px){.resize-n,.resize-s{left:25px;right:25px;height:22px}.resize-e,.resize-w{top:25px;bottom:25px;width:22px}.resize-ne,.resize-nw,.resize-se,.resize-sw{width:29px;height:29px}.tile-reset{width:26px;height:26px}.camera-tile .tile-drag-handle{padding-right:35px}}
.camera-tile{cursor:grab}.camera-tile:active{cursor:grabbing}
.camera-tile .tile-drag-handle{display:none}.camera-tile .local-placeholder{padding-top:0}.tile-reset{top:4px;right:4px}

/* Fullscreen keeps the chat and call controls inside the video workspace. */
.workspace:fullscreen{position:fixed;inset:0;z-index:50;display:block;width:100vw;height:100vh;height:100dvh;max-width:none;margin:0;padding:0;overflow:hidden;background:#111a14}
.workspace:fullscreen .video-column{position:relative;width:100%;height:100%;min-width:0}
.workspace:fullscreen .video-stage{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;border-radius:0;background:#111a14;box-shadow:none}
.workspace:fullscreen .remote-video{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:auto;border-radius:0}
.workspace:fullscreen .preferences,.workspace:fullscreen .demo-notice{display:none}
.workspace:fullscreen .stage-caption{position:absolute;z-index:8;left:22px;bottom:77px;width:auto;max-width:calc(100vw - 44px);padding:8px 11px;border-radius:10px;background:#18231ac9;color:#f5f6ef;backdrop-filter:blur(6px)}
.workspace:fullscreen .stage-caption strong{color:#fff}
.workspace:fullscreen .stage-caption button{color:#d7f078}
.workspace:fullscreen .control-bar{position:absolute;z-index:9;left:50%;bottom:17px;transform:translateX(-50%);display:flex;flex-wrap:wrap;justify-content:center;gap:8px;width:max-content;max-width:calc(100vw - 20px);padding:8px;border:1px solid #ffffff30;border-radius:14px;background:#172119d9;backdrop-filter:blur(8px)}
.workspace:fullscreen .control-button{background:#fffefa;color:#354237}
.workspace:fullscreen .primary-button{background:#2a7854;color:#fff}
.workspace:fullscreen .next-button{background:#e0e8da;color:#344335}
.workspace:fullscreen .chat-panel{position:absolute;z-index:12;top:50%;right:22px;left:auto;transform:translateY(-50%);width:min(360px,30vw);min-width:285px;min-height:300px;height:min(650px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);border:1px solid #ffffffb3;border-radius:18px;background:rgba(255,254,250,.94);box-shadow:0 18px 60px #0005;backdrop-filter:blur(12px)}
.workspace:fullscreen[data-chat-side="left"] .chat-panel{right:auto;left:22px}
.workspace:fullscreen .chat-header-actions{display:flex;align-items:center;gap:8px}
.workspace:fullscreen .chat-side-button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #d9ddd2;border-radius:9px;background:#fffefa;color:#38523d;cursor:pointer}
.workspace:fullscreen .chat-side-button:hover{background:#edf3e6}
.workspace:fullscreen .chat-side-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.workspace:fullscreen[data-chat-side="left"] .chat-side-button svg{transform:scaleX(-1)}
.remote-video.has-peer{min-height:0;max-height:none;background:#101410}
.remote-peer-video{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:cover;background:#101410}
.camera-tile.is-camera-hidden{display:none!important}
@media(max-width:680px){
  .workspace:fullscreen .chat-panel{top:10px;right:10px;left:auto;transform:none;width:min(calc(100vw - 20px),380px);min-width:0;min-height:0;height:auto;max-height:54dvh;border-radius:15px}
  .workspace:fullscreen[data-chat-side="left"] .chat-panel{right:auto;left:10px}
  .workspace:fullscreen .chat-body{min-height:120px}
  .workspace:fullscreen .chat-empty{top:45%}
  .workspace:fullscreen .chat-empty .suggestion-list{display:none}
  .workspace:fullscreen .chat-header{height:54px}
  .workspace:fullscreen .chat-footnote{padding-bottom:7px}
  .workspace:fullscreen .control-bar{bottom:9px;gap:6px;padding:6px;border-radius:12px}
  .workspace:fullscreen .control-button{min-width:62px;height:40px;padding:0 7px;gap:4px}
  .workspace:fullscreen .primary-button{min-width:126px;height:42px;padding:0 10px}
  .workspace:fullscreen .next-button{min-width:82px;height:42px;padding:0 10px}
  .workspace:fullscreen .stage-caption{left:8px;bottom:62px;max-width:calc(100vw - 16px);font-size:9px}
}

.workspace:fullscreen .video-actions,.workspace:fullscreen .control-bar,.workspace:fullscreen .stage-caption,.workspace:fullscreen .camera-tile,.workspace:fullscreen .call-timer,.workspace:fullscreen .chat-side-button,.workspace:fullscreen .chat-panel{transition:opacity .28s ease,visibility .28s ease}
.workspace:fullscreen.is-idle .video-actions,.workspace:fullscreen.is-idle .control-bar,.workspace:fullscreen.is-idle .stage-caption,.workspace:fullscreen.is-idle .camera-tile,.workspace:fullscreen.is-idle .call-timer,.workspace:fullscreen.is-idle .chat-side-button,.workspace:fullscreen.is-idle .chat-panel{opacity:0;visibility:hidden;pointer-events:none}
.workspace:fullscreen.is-idle .control-bar:focus-within,.workspace:fullscreen.is-idle .video-actions:focus-within{opacity:1;visibility:visible;pointer-events:auto}
.camera-off-mark{display:none}
.control-button.is-off .camera-off-mark{display:block}
.media-settings-trigger{min-height:40px;white-space:nowrap}
.media-settings-dialog{position:relative;width:min(410px,calc(100vw - 30px));max-height:min(90vh,640px);overflow-y:auto;padding:28px 28px 22px;border:1px solid #e3e0d7;border-radius:18px;background:#fffefa;color:var(--ink);box-shadow:0 20px 70px #1b251b30}
.media-settings-dialog::backdrop{background:#1e281f66;backdrop-filter:blur(2px)}
.media-settings-dialog>form{position:absolute;right:15px;top:12px}
.media-settings-dialog h2{margin:0;font:700 21px Manrope,sans-serif;letter-spacing:-.6px}
.media-settings-intro{margin:7px 0 17px;color:#697267;font-size:11px;line-height:1.5}
.media-settings-dialog>label{display:block;margin:12px 0 5px;color:#4c554b;font-size:10px;font-weight:700}
.media-settings-dialog>select{width:100%;height:40px;padding:0 10px;border:1px solid #e2dfd7;border-radius:9px;background:#fffefa;color:#2f382f;font-size:11px}
.media-settings-dialog>#refreshMediaDevices{margin-top:12px}
.media-settings-status{min-height:26px;margin:10px 0 0;color:#687268;font-size:10px;line-height:1.5}
:root[data-theme="dark"] .media-settings-dialog{border-color:#435044;background:#202720;color:#e8eee7}
:root[data-theme="dark"] .media-settings-intro,:root[data-theme="dark"] .media-settings-dialog>label,:root[data-theme="dark"] .media-settings-status{color:#c4d0c4}
:root[data-theme="dark"] .media-settings-dialog>select{border-color:#4b594a;background:#252e26;color:#e8eee7}
.admin-profile-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:9px;margin-top:10px}
.admin-profile-photo{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:10px;padding:9px;border:1px solid #e5e7df;border-radius:10px;background:#fbfcf8}
.admin-profile-photo img,.admin-profile-photo-placeholder{width:52px;height:52px;border-radius:8px;object-fit:cover;background:#e8eee3}
.admin-profile-photo-placeholder{display:grid;place-items:center;color:#60725b;font-size:18px}
.admin-profile-photo>div:last-child{min-width:0;display:grid;gap:4px}
.admin-profile-photo strong,.admin-profile-photo span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-profile-photo strong{font:700 10px Manrope,sans-serif}
.admin-profile-photo span{color:#6c756b;font-size:8px}
:root[data-theme="dark"] .admin-profile-photo{border-color:#435044;background:#252e26}
:root[data-theme="dark"] .admin-profile-photo span{color:#c4d0c4}
.remote-video.local-preview-active{min-height:0;max-height:none;overflow:hidden;background:#111611}
.remote-video.local-preview-active .camera-tile{inset:0!important;width:100%!important;height:100%!important;min-width:0!important;max-width:none!important;aspect-ratio:auto!important;border:0;border-radius:inherit;box-shadow:none;cursor:default}
.remote-video.local-preview-active .camera-tile .local-video{object-fit:cover}
.remote-video.local-preview-active .camera-tile .tile-resize-handles,.remote-video.local-preview-active .camera-tile .tile-reset{display:none!important}
@media(max-width:680px){.preferences{flex-wrap:wrap}.media-settings-trigger{min-height:36px;flex:1 1 100%;width:100%}.media-settings-dialog{padding:25px 20px 19px}}
.chat-toggle-button{display:none;width:42px;height:42px;place-items:center;padding:0;border:1px solid #d9ddd2;border-radius:10px;background:#fffefa;color:#38523d;cursor:pointer}
.chat-toggle-button[hidden]{display:none!important}
.chat-toggle-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.workspace:fullscreen .chat-toggle-button{display:grid;border-color:#ffffff55;background:#ffffffed;color:#354237}
.workspace:fullscreen.is-chat-minimized .chat-panel{height:58px;min-height:0;max-height:58px}
.workspace:fullscreen .chat-panel.is-dragged{right:auto}
.workspace:fullscreen .chat-header{cursor:grab;touch-action:pan-y}
.workspace:fullscreen .chat-header:active{cursor:grabbing}
.workspace:fullscreen .chat-header button{cursor:pointer}

:root[data-theme="dark"]{color-scheme:dark;--ink:#e8eee7;--muted:#a3aea4;--paper:#171c18;--surface:#222a23;--line:#39453b;--green:#79bd91;--green-dark:#3e8059;--soft-green:#27372b}
:root[data-theme="dark"] body,:root[data-theme="dark"] .app-shell{background:var(--paper);color:var(--ink)}
:root[data-theme="dark"] .topbar,:root[data-theme="dark"] .footer{border-color:#354039}
:root[data-theme="dark"] .topbar-note,:root[data-theme="dark"] .preference-copy>span:last-child,:root[data-theme="dark"] .preference-copy strong{color:#b9c4b9}
:root[data-theme="dark"] .brand-mark i{background:var(--paper)}
:root[data-theme="dark"] .icon-button:hover{background:#2a342c}
:root[data-theme="dark"] .login-button,:root[data-theme="dark"] .theme-toggle,:root[data-theme="dark"] .points-button{border-color:#465248;background:#252d26;color:#e3ece1}
:root[data-theme="dark"] .plan-badge{background:#354c3b;color:#d8f1dd}
:root[data-theme="dark"] .video-stage{background:#222a24;border-color:#354039}
:root[data-theme="dark"] .remote-empty{background:#202820ed;border-color:#657367;color:#edf2e9}
:root[data-theme="dark"] .remote-empty .empty-copy,:root[data-theme="dark"] .remote-empty p{color:#c1cbbd}
:root[data-theme="dark"] .chat-panel{background:rgba(31,38,32,.96);border-color:#566356;color:#e8eee7}
:root[data-theme="dark"] .chat-header{border-color:#3e493f}
:root[data-theme="dark"] .chat-count{background:#354137;color:#d7e1d4}
:root[data-theme="dark"] .chat-empty>p,:root[data-theme="dark"] .chat-footnote{color:#aeb9ad}
:root[data-theme="dark"] .suggestion,:root[data-theme="dark"] .message-form input{border-color:#465248;background:#283129;color:#e6ede4}
:root[data-theme="dark"] .suggestion:hover{background:#303c32}
:root[data-theme="dark"] .message-form{border-color:#3e493f}
:root[data-theme="dark"] .message-form button{background:#45634a;color:#f2f7ef}
:root[data-theme="dark"] .select-wrap{border-color:#465248;background:#252e27;color:#e4ece2}
:root[data-theme="dark"] .select-wrap select{color:#e4ece2}
:root[data-theme="dark"] .demo-notice{background:#242d26;color:#c4d0c4}
:root[data-theme="dark"] .auth-dialog,:root[data-theme="dark"] .info-dialog{border-color:#435044;background:#202720;color:#e8eee7}
:root[data-theme="dark"] .auth-intro,:root[data-theme="dark"] .info-dialog>p:last-of-type{color:#b4c0b4}
:root[data-theme="dark"] .auth-tabs{background:#2a332b}
:root[data-theme="dark"] .auth-tab.is-selected,:root[data-theme="dark"] .provider-button,:root[data-theme="dark"] .auth-form input,:root[data-theme="dark"] .dialog-close{border-color:#465248;background:#2a332b;color:#e6ede4}
:root[data-theme="dark"] .signed-in-panel{border-color:#405344;background:#263329}
:root[data-theme="dark"] .signed-in-panel p{color:#d0ddce}
:root[data-theme="dark"] .auth-config-note{color:#bac5b8}
:root[data-theme="dark"] .remote-empty h1{color:#eef3ea}
:root[data-theme="dark"] .remote-empty h1 em{color:#91d6a7}
:root[data-theme="dark"] .empty-kicker,:root[data-theme="dark"] .eyebrow,:root[data-theme="dark"] .preference-label{color:#a5c8aa}
:root[data-theme="dark"] .preference-copy>span:last-child,:root[data-theme="dark"] .preference-copy strong{color:#d1dbd0}
:root[data-theme="dark"] .auth-form label{color:#d0dbd0}
:root[data-theme="dark"] .auth-tab{color:#c0cbbf}
:root[data-theme="dark"] .auth-tab.is-selected{color:#e5efe3}
:root[data-theme="dark"] .auth-divider{color:#b2bdb1}
:root[data-theme="dark"] .auth-message{color:#ffb4a8}
:root[data-theme="dark"] .auth-message[data-kind="success"]{color:#a9dfb0}
:root[data-theme="dark"] .footer,:root[data-theme="dark"] .account-demo-tag{color:#b4c0b3}
:root[data-theme="dark"] ::placeholder{color:#9eaa9f;opacity:1}
.account-glance{display:flex;align-items:center;gap:6px}
.account-demo-tag{color:#8b9085;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.account-demo-tag[hidden]{display:none}
.plan-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border-radius:999px;background:#e8f1db;color:#315c40;font-size:9px;font-weight:800;letter-spacing:.045em;text-transform:uppercase}
.plan-badge[data-plan="premium"]{background:#e6dfb8;color:#60521a}
.points-button,.theme-toggle{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 11px;border:1px solid #dcd9cf;border-radius:10px;background:#fffefa;color:#344335;font-size:11px;font-weight:700;cursor:pointer}
.points-button:hover,.theme-toggle:hover{border-color:#97ad93;background:#f7f8f2}
.points-button svg,.theme-toggle svg{width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.points-button small{font-size:9px;font-weight:600;color:var(--muted)}
@media(max-width:680px){.topbar-note,.help-button,.account-demo-tag{display:none}.topbar-actions{gap:4px}.account-glance{gap:4px}.points-button,.theme-toggle{min-height:36px;padding:0 7px;gap:4px;font-size:10px}.points-button svg,.theme-toggle svg{width:15px;height:15px}.plan-badge{min-height:25px;padding:0 6px;font-size:8px}.theme-toggle span{display:none}.login-button{min-height:36px;padding:0 9px;font-size:10px}}
.terms-dialog{width:min(620px,calc(100vw - 28px));max-height:min(88vh,780px);overflow-y:auto;padding:28px}
.terms-dialog h2{margin:0;color:var(--ink);font:700 23px Manrope,sans-serif;letter-spacing:-.6px}
.terms-draft-note{margin:9px 0 16px;color:#70776e;font-size:11px;line-height:1.55}
.terms-copy{color:#444d44;font-size:12px;line-height:1.6}
.terms-copy h3{margin:15px 0 4px;color:#315c40;font-size:12px}
.terms-copy p{margin:4px 0 8px}
.terms-copy ul{margin:5px 0 8px;padding-left:19px}
.terms-copy li{margin:3px 0}
.terms-consent{display:flex;align-items:flex-start;gap:9px;margin:18px 0 13px;padding:12px;border:1px solid #dfe4d9;border-radius:10px;background:#f6f8f2;color:#364337;font-size:11px;line-height:1.5;cursor:pointer}
.terms-consent input{width:17px;height:17px;flex:none;margin:0;accent-color:var(--green)}
.terms-accept{width:100%}
.terms-accept:disabled{background:#c4cbc0;color:#667064;cursor:not-allowed}
:root[data-theme="dark"] .terms-dialog h2{color:#edf2ea}
:root[data-theme="dark"] .terms-draft-note{color:#bec8bc}
:root[data-theme="dark"] .terms-copy{color:#d3ddd2}
:root[data-theme="dark"] .terms-copy h3{color:#a7d2ad}
:root[data-theme="dark"] .terms-consent{border-color:#48564a;background:#283229;color:#e0e9de}
:root[data-theme="dark"] .terms-accept:disabled{background:#3d493e;color:#aeb9ad}
@media(max-width:680px){.terms-dialog{padding:24px 20px}.terms-dialog h2{font-size:21px}}
.info-dialog{max-height:calc(100dvh - 32px);overflow-y:auto}
#dialogText{white-space:pre-line}
.room-nav-button{min-height:40px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid #dcd9cf;border-radius:10px;background:#fffefa;color:#344335;font-size:11px;font-weight:700;cursor:pointer}
.room-nav-button:hover{border-color:#97ad93;background:#f7f8f2}
.room-nav-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.room-page{position:fixed;inset:0;z-index:70;overflow-y:auto;overscroll-behavior:contain;padding:clamp(20px,4vw,54px);background:#0c110e;color:#f4f6f1}
.room-page[hidden],.room-detail[hidden],.room-catalog[hidden],.room-create-panel[hidden]{display:none!important}
.room-page.is-detail{padding:0;overflow:hidden;background:#050806;color:#f4f6f1}
.room-page.is-detail .room-page-header{display:none}

.room-page-header{display:flex;align-items:flex-start;gap:28px;width:min(100%,1320px);margin:0 auto 22px}
.room-page-return{flex:none;min-height:44px;display:inline-flex;align-items:center;gap:8px;padding:0 14px;border:1px solid #364139;border-radius:999px;background:#171e19;color:#e6ebe5;font-size:12px;font-weight:700;cursor:pointer}
.room-page-return:hover{background:#222b24}
.room-heading{max-width:760px;padding-right:30px}
.room-heading .eyebrow{margin:0 0 8px;color:#9eaf9f}
.room-heading h1{margin:0;font:750 clamp(27px,3vw,40px)/1.08 Manrope,sans-serif;letter-spacing:-1.2px}
.room-heading>p:last-child{margin:10px 0 0;color:#a9b2a9;font-size:13px;line-height:1.55}
.room-create-open{min-height:42px;margin-top:16px;padding:0 16px;border:1px solid #4e6854;border-radius:999px;background:#c5f36c;color:#15200f;font-size:12px;font-weight:800;cursor:pointer}
.room-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:min(100%,1320px);margin:24px auto 18px}
.room-card{min-width:0;overflow:hidden;display:flex;flex-direction:column;padding:0;border:1px solid #303a32;border-radius:18px;background:#151c17;color:#f2f4ef;text-align:left;cursor:pointer;transition:background .16s,border-color .16s}
.room-card:hover{border-color:#738576;background:#1b241d}
.room-card-preview{border-style:dashed}
.room-card-preview .room-card-art{background:radial-gradient(ellipse at 50% 85%,#42563e,#17221a 60%,#0c120e)}
.room-rate[hidden],.room-footnote[hidden],.room-join-button[hidden]{display:none!important}
.room-card:focus-visible,.room-nav-button:focus-visible,.room-back:focus-visible,.room-viewer-action:focus-visible,.room-gift-button:focus-visible,.room-follow-button:focus-visible,.room-join-button:focus-visible{outline:3px solid #c5f36c;outline-offset:3px}
.room-card-art{height:clamp(150px,18vw,230px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#f6f7f3;background:radial-gradient(ellipse at 68% 80%,#455540,#26352a 48%,#121a15)}
.room-art-chat{background:radial-gradient(ellipse at 68% 80%,#455540,#26352a 48%,#121a15)}
.room-art-music{background:radial-gradient(ellipse at 68% 80%,#594a34,#312a21 48%,#17140f);color:#fff1ce}
.room-art-qa{background:radial-gradient(ellipse at 68% 80%,#3e5148,#23342e 48%,#101713);color:#e4f1e6}
.room-card-art>span{font:800 40px/1 Manrope,sans-serif;letter-spacing:-1px}
.room-card-art small{font-size:9px;font-weight:800;letter-spacing:.13em}
.room-card-copy{display:flex;flex-direction:column;gap:7px;padding:15px 16px 7px}
.room-card-copy strong{font:750 15px Manrope,sans-serif}
.room-card-copy>span{min-height:36px;color:#aeb8ae;font-size:11px;line-height:1.5}
.room-card-copy>.room-card-viewers{min-height:0;color:#c5f36c;font-size:10px;font-weight:700}
.room-card-copy>.room-card-viewers.is-status{color:#aeb8ae;font-weight:600}
.room-card-copy em{align-self:flex-start;padding:5px 9px;border-radius:999px;background:#263029;color:#cbd5ca;font-size:9px;font-style:normal;font-weight:700}
.room-card-action{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding:13px 16px;color:#c5f36c;font-size:11px;font-weight:800}
.room-card-action b{font-size:17px;font-weight:500}
.room-catalog-status{grid-column:1/-1;margin:0;padding:22px;border:1px solid #303a32;border-radius:14px;background:#151c17;color:#c4cec3;font-size:13px;line-height:1.5}
.room-footnote{width:min(100%,1320px);margin:14px auto 0;padding-top:14px;border-top:1px solid #283129;color:#9ca89c;font-size:11px;line-height:1.5}
.room-create-panel{width:min(100%,760px);margin:20px auto;padding:24px;border:1px solid #303a32;border-radius:18px;background:#151c17;color:#f2f4ef}
.room-name-label{display:block;margin:18px 0 7px;font-size:12px;font-weight:700}
.room-name-input{width:100%;height:46px;padding:0 13px;border:1px solid #465348;border-radius:10px;background:#0e1510;color:#f2f4ef;font:inherit}
.room-create-note,.room-create-status{color:#aab5aa;font-size:11px;line-height:1.5}
.room-detail{width:100%;height:100%;margin:0}
.room-viewer-layout{position:relative;display:block;width:100%;height:100dvh;min-height:100dvh;overflow:hidden;background:#050806}
.room-viewer-main{position:relative;display:block;width:100%;height:100%;min-height:0}
.room-stage{position:absolute;inset:0;display:flex;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:auto;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;border:0;border-radius:0;background:radial-gradient(ellipse at 50% 42%,#19231b 0,#0d130f 42%,#050806 78%);color:#f4f6f1;text-align:center;box-shadow:none}
.room-stage::before{position:absolute;inset:0;content:"";pointer-events:none;background:linear-gradient(180deg,#0508069c 0%,transparent 22%,transparent 52%,#05080658 74%,#050806e8 100%)}
.room-stage-symbol{position:relative;z-index:1;width:68px;height:68px;display:grid;place-items:center;margin-bottom:15px;border:1px solid #75837166;border-radius:50%;background:#131b15;color:#d3efae}
.room-stage-symbol svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.room-stage>strong,.room-stage>p{position:relative;z-index:1}
.room-stage>strong{font:750 clamp(17px,2vw,22px) Manrope,sans-serif;letter-spacing:-.3px}
.room-stage>p{max-width:430px;margin:8px 20px 0;color:#b4beb4;font-size:12px;line-height:1.5}
.room-stage[data-active="true"]{background:#050806}
.room-stage-tag,.room-viewer-count{position:absolute;z-index:5;top:16px;display:flex;align-items:center;min-height:36px;padding:0 12px;border:1px solid #ffffff24;border-radius:999px;background:#111812e8;color:#fff;font-size:11px;font-weight:800}
.room-stage-tag{left:136px;background:#d83f4d;color:#fff}
.room-viewer-count{right:128px;gap:6px}
.room-viewer-count strong{font-size:12px}
.room-viewer-count span{color:#d3dbd2;font-size:10px}
.room-viewer-count[hidden]{display:none!important}
.room-back{position:absolute;z-index:10;top:14px;left:16px;min-height:42px;margin:0;padding:0 14px;border:1px solid #ffffff30;border-radius:999px;background:#111812e8;color:#fff;font-size:12px;font-weight:700;cursor:pointer}
.room-stage-fullscreen{position:absolute;z-index:10;top:14px;right:14px;min-height:42px;display:flex;align-items:center;gap:7px;padding:0 13px;border:1px solid #ffffff30;border-radius:999px;background:#111812e8;color:#fff;font-size:11px;font-weight:700;cursor:pointer}
.room-stage-fullscreen svg,.room-comments-show svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.room-stage-fullscreen:hover,.room-back:hover{background:#263128}
.room-detail-copy{position:absolute;z-index:6;top:68px;left:18px;display:block;width:min(430px,calc(100% - 470px));margin:0;padding:0;color:#fff}
.room-detail-copy .eyebrow{margin:0 0 5px;color:#c5f36c;font-size:9px;font-weight:800;letter-spacing:.12em}
.room-detail-copy h3{margin:0;font:750 clamp(18px,2vw,24px)/1.15 Manrope,sans-serif;letter-spacing:-.5px}
.room-detail-copy>div:first-child>p:last-child{margin:6px 0 0;color:#d1d8d0;font-size:12px;line-height:1.45}
.room-rate{display:flex;flex-direction:row;align-items:baseline;gap:5px 9px;flex-wrap:wrap;margin-top:9px}
.room-rate strong{color:#d9f8a9;font:800 13px Manrope,sans-serif}
.room-rate span,.room-rate small{color:#c3ccc1;font-size:10px}
.room-rate small{flex-basis:100%}
.room-viewer-actions{position:absolute;z-index:11;right:18px;bottom:16px;display:flex;align-items:center;justify-content:flex-end;gap:9px;max-width:calc(100% - 36px);margin:0}
.room-viewer-action,.room-gift-button,.room-follow-button,.room-join-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:1px solid #ffffff38;border-radius:999px;background:#141c16;color:#f3f5ef;font-size:12px;font-weight:750;cursor:pointer}
.room-viewer-action:hover,.room-gift-button:hover,.room-follow-button:hover{background:#253027}
.room-viewer-action svg,.room-gift-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.room-viewer-actions .room-gift-button,.room-viewer-actions .room-follow-button{width:auto;min-height:48px;margin:0;border-color:#ffffff38;border-radius:999px;background:#141c16;color:#f3f5ef}
.room-viewer-actions .room-gift-button:hover,.room-viewer-actions .room-follow-button:hover{background:#253027}
.room-viewer-actions .room-join-button{min-width:150px;border-color:#c5f36c;background:#c5f36c;color:#15200f}
.room-viewer-actions .room-join-button:hover{background:#d4ff82}
.room-viewer-actions .room-follow-button[aria-pressed="true"]{border-color:#c5f36c;color:#d8f7ae}
.room-viewer-actions .room-invite-button[hidden],.room-viewer-actions .room-gift-button[hidden],.room-viewer-actions .room-follow-button[hidden],.room-viewer-actions .room-join-button[hidden]{display:none!important}
.room-share-status,.room-status{position:absolute;z-index:9;max-width:min(430px,calc(100% - 36px));margin:0;padding:8px 11px;border-radius:10px;background:#111812e8;color:#edf2ea;font-size:11px;line-height:1.45}
.room-share-status{right:18px;bottom:76px}
.room-status{top:172px;right:18px}
.room-share-status:empty{display:none}
.room-status[hidden]{display:none!important}
.room-comments-panel{position:absolute;z-index:8;left:18px;bottom:76px;width:min(450px,43vw);height:min(390px,43dvh);min-height:0;max-height:calc(100dvh - 250px);display:flex;flex-direction:column;overflow:hidden;border:0;border-radius:0;background:linear-gradient(0deg,#050806ee 0%,#050806b8 74%,transparent 100%);color:#f4f6f1;box-shadow:none}
.room-comments-header{min-height:36px;display:flex;align-items:center;gap:9px;padding:0 4px;border:0}
.room-comments-header h3{margin:0;color:#f4f6f1;font:750 12px Manrope,sans-serif}
.room-comments-header>span{color:#c6d0c5;font-size:10px}
.room-comments-header strong{color:#fff;font-size:11px}
.room-comments-hide,.room-comments-show{min-width:42px;min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 11px;border:1px solid #ffffff38;border-radius:999px;background:#111812e8;color:#fff;font-size:11px;font-weight:700;cursor:pointer}
.room-comments-hide{margin-left:auto;min-width:34px;min-height:34px}
.room-comments-list{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:flex-end;gap:9px;overflow-y:auto;padding:8px 2px 9px;mask-image:linear-gradient(180deg,transparent 0,#000 12%)}
.room-comments-empty{margin:auto 0 0;color:#d1d8d0;font-size:12px;line-height:1.45}
.room-comment{display:grid;gap:2px;width:fit-content;max-width:100%;padding:7px 10px;border-radius:12px;background:#111812c9}
.room-comment-meta{display:flex;align-items:center;gap:7px}
.room-comment-meta strong{color:#d9f8a9;font-size:10px}
.room-comment-meta time{color:#b9c2b8;font-size:9px}
.room-comment>p{margin:0;color:#f1f4ee;font-size:12px;line-height:1.45;overflow-wrap:anywhere}
.room-comment-form{display:flex;align-items:center;gap:8px;padding:5px 0 0;border:0}
.room-comment-form input{flex:1;min-width:0;height:44px;padding:0 15px;border:1px solid #ffffff38;border-radius:999px;background:#111812e8;color:#fff;font:inherit;font-size:12px}
.room-comment-form input::placeholder{color:#c0c9bf}
.room-comment-form button{min-width:58px;min-height:44px;padding:0 14px;border:0;border-radius:999px;background:#c5f36c;color:#15200f;font-size:11px;font-weight:800;cursor:pointer}
.room-comment-status{min-height:0;margin:0;padding:5px 3px 0;color:#c3ccc1;font-size:9px;line-height:1.4}
.room-comments-panel[hidden],.room-comments-show[hidden]{display:none!important}
.room-comments-show{position:absolute;z-index:12;top:70px;right:18px}
.room-viewer-layout:fullscreen,.room-viewer-layout.is-expanded{position:fixed;inset:0;z-index:120;width:100vw;height:100dvh;min-height:100dvh}
.room-viewer-layout:fullscreen .room-stage,.room-viewer-layout.is-expanded .room-stage{min-height:100dvh}
.room-viewer-layout.comments-hidden{display:block}
:root[data-theme="dark"] .room-page{background:#0c110e;color:#f4f6f1}
@media(max-width:900px){
  .room-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}
  .room-detail-copy{width:min(390px,calc(100% - 420px))}
  .room-comments-panel{width:min(390px,40vw)}
  .room-viewer-actions{gap:7px}
  .room-viewer-action,.room-gift-button,.room-follow-button,.room-join-button{padding-inline:13px}
}
@media(max-width:680px){
  .room-page{padding:16px 14px}
  .room-page-header{display:block;margin-bottom:18px}
  .room-page-return{min-height:42px;margin-bottom:18px}
  .room-heading{padding-right:0}
  .room-heading h1{font-size:28px}
  .room-catalog{grid-template-columns:1fr;gap:12px;margin-top:18px}
  .room-card{display:grid;grid-template-columns:104px minmax(0,1fr);grid-template-rows:auto auto;min-height:132px}
  .room-card-art{grid-row:1/3;height:100%;min-height:132px}
  .room-card-art>span{font-size:27px}
  .room-card-art small{font-size:7px}
  .room-card-copy{gap:5px;padding:12px 12px 3px}
  .room-card-copy strong{font-size:13px}
  .room-card-copy>span{min-height:0;font-size:10px}
  .room-card-action{grid-column:2;padding:7px 12px 11px}
  .room-page.is-detail .room-back{top:10px;left:10px;min-height:42px;padding-inline:12px}
  .room-page.is-detail .room-stage-tag{top:12px;left:114px;min-height:34px}
  .room-page.is-detail .room-viewer-count{top:12px;right:58px;min-height:34px;padding-inline:9px}
  .room-page.is-detail .room-viewer-count span{display:none}
  .room-page.is-detail .room-stage-fullscreen{top:10px;right:10px;width:42px;min-height:42px;justify-content:center;padding:0}
  .room-page.is-detail .room-stage-fullscreen span{display:none}
  .room-page.is-detail .room-detail-copy{top:60px;left:12px;width:auto;max-width:calc(100% - 24px);padding:0}
  .room-page.is-detail .room-detail-copy h3{font-size:17px}
  .room-page.is-detail .room-detail-copy>div:first-child>p:last-child{max-width:calc(100vw - 24px);font-size:10px}
  .room-page.is-detail .room-rate{gap:3px 7px;margin-top:6px}
  .room-page.is-detail .room-rate strong{font-size:11px}
  .room-page.is-detail .room-rate span,.room-page.is-detail .room-rate small{font-size:9px}
  .room-page.is-detail .room-rate small{max-width:calc(100vw - 24px)}
  .room-page.is-detail .room-comments-panel{right:10px;bottom:76px;left:10px;width:auto;height:min(32dvh,260px);max-height:calc(100dvh - 300px)}
  .room-page.is-detail .room-comments-header{min-height:28px}
  .room-page.is-detail .room-comments-header h3,.room-page.is-detail .room-comments-header>span{display:none}
  .room-page.is-detail .room-comments-hide{margin-left:auto}
  .room-page.is-detail .room-comment>p{font-size:11px}
  .room-page.is-detail .room-viewer-actions{right:10px;bottom:max(8px,env(safe-area-inset-bottom));left:10px;justify-content:space-between;gap:6px;max-width:none}
  .room-page.is-detail .room-viewer-action,.room-page.is-detail .room-gift-button,.room-page.is-detail .room-follow-button{min-width:46px;min-height:46px;padding-inline:11px;font-size:10px}
  .room-page.is-detail .room-viewer-actions .room-join-button{min-width:0;min-height:46px;flex:1 1 auto;padding-inline:10px;font-size:11px}
  .room-page.is-detail .room-share-status{right:12px;bottom:calc(32dvh + 86px);left:12px;max-width:none;padding:7px 9px;font-size:10px}
  .room-page.is-detail .room-status{top:158px;right:12px;left:12px;max-width:none;padding:7px 9px;font-size:10px}
  .room-page.is-detail .room-comments-show{top:auto;right:12px;bottom:calc(32dvh + 86px)}
}
@media(max-width:380px){
  .room-page.is-detail .room-viewer-actions{gap:4px}
  .room-page.is-detail .room-viewer-action,.room-page.is-detail .room-gift-button,.room-page.is-detail .room-follow-button{padding-inline:8px;font-size:9px}
  .room-page.is-detail .room-viewer-action svg,.room-page.is-detail .room-gift-button svg{width:15px;height:15px}
  .room-page.is-detail .room-viewer-actions .room-join-button{font-size:10px}
}
.friend-dialog{position:relative;width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;padding:29px;border:1px solid #e3e0d7;border-radius:20px;background:#fffefa;color:var(--ink);box-shadow:0 20px 70px #1b251b30}
.friend-dialog::backdrop{background:#1e281f78;backdrop-filter:blur(2px)}
.friend-dialog>form:first-child{position:absolute;right:17px;top:15px}
.friend-heading{padding-right:38px}
.friend-heading .eyebrow{margin:0 0 7px}
.friend-heading h2{margin:0;font:700 25px Manrope,sans-serif;letter-spacing:-.7px}
.friend-heading>p:last-child{margin:7px 0 15px;color:#6f776d;font-size:11px}
.friend-simulation-note{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-left:3px solid #859b68;border-radius:0 8px 8px 0;background:#f3f5ed}
.friend-simulation-note strong{color:#43523c;font-size:10px}
.friend-simulation-note span{color:#6d756a;font-size:9px;line-height:1.45}
.presence-legend{display:flex;flex-wrap:wrap;gap:10px 16px;margin:14px 0;color:#596255;font-size:9px}
.presence-legend>span{display:inline-flex;align-items:center;gap:6px}
.presence-dot{width:9px;height:9px;display:inline-block;border-radius:50%;flex:none}
.presence-dot.is-online{background:#2f8b57}.presence-dot.is-busy{background:#d39128}.presence-dot.is-offline{background:#8c928a}
.add-friend-form{display:flex;gap:8px;margin:14px 0 0}
.add-friend-form input,.group-message-form input{flex:1;min-width:0;height:40px;padding:0 11px;border:1px solid #e1e2d9;border-radius:9px;background:#fffefa;color:var(--ink);font-size:11px}
.add-friend-form button,.group-message-form button{min-width:78px;padding:0 12px;border:0;border-radius:9px;background:var(--green);color:white;font-size:10px;font-weight:700;cursor:pointer}
.friend-form-status{min-height:16px;margin:5px 0 0;color:#8a5944;font-size:9px}
.friend-list{display:flex;flex-direction:column;gap:8px;margin-top:6px}
.friend-card{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px;border:1px solid #e8e8df;border-radius:11px;background:#fffefa}
.friend-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#e8efe1;color:#476249;font:700 12px Manrope,sans-serif}
.friend-avatar img{display:block;width:100%;height:100%;border-radius:inherit;object-fit:cover}
.friend-card[data-state="busy"] .friend-avatar{background:#f4ecd9;color:#795e2e}
.friend-identity{min-width:0;display:flex;flex-direction:column;gap:4px}
.friend-name{overflow:hidden;color:#303a30;font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.friend-state{display:inline-flex;align-items:center;gap:5px;color:#626b60;font-size:9px}
.friend-note{margin:2px 0 0;color:#777d73;font-size:8px;line-height:1.4}
.friend-action{min-height:34px;padding:0 10px;border:1px solid #d8e0d3;border-radius:8px;background:#f5f8f1;color:#36563d;font-size:9px;font-weight:700;cursor:pointer}
.friend-action:hover:not(:disabled){border-color:#9bb298;background:#edf4e8}
.friend-action:disabled{border-color:#e4e5df;background:#f3f3ef;color:#8c9189;cursor:not-allowed}
.friend-card[hidden],.friend-request-view[hidden],.group-conversation-view[hidden]{display:none}
.friend-request-view .eyebrow{margin:2px 0 7px}
.friend-request-view h3,.group-conversation-view h3{margin:0;font:700 19px Manrope,sans-serif;letter-spacing:-.4px}
.friend-request-copy{margin:8px 0 13px;color:#6b7469;font-size:11px;line-height:1.55}
.friend-request-status{padding:11px 12px;border-radius:9px;background:#f2f4ed;color:#566253;font-size:10px;line-height:1.5}
.friend-response-label{margin-top:18px!important;color:#81877e;font-size:8px;font-weight:800;letter-spacing:.08em}
.friend-response-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.friend-response-actions button{min-height:40px;padding:7px 10px;border:1px solid #e1e3da;border-radius:9px;background:#fffefa;color:#495548;font-size:10px;font-weight:600;cursor:pointer}
.friend-response-actions button:last-child{grid-column:1/-1;border-color:#c9d8c2;background:#f0f5ec;color:#35563c;font-weight:700}
.friend-response-actions button:hover{border-color:#9fb49a}
.room-back{margin-bottom:12px}
.group-members{margin:5px 0 12px;color:#6e776b;font-size:10px}
.group-message-list{height:180px;overflow-y:auto;display:flex;flex-direction:column;gap:7px;padding:10px;border:1px solid #e8e8df;border-radius:10px;background:#f8f8f3}
.group-message{max-width:85%;align-self:flex-end;padding:8px 10px;border-radius:10px 10px 3px 10px;background:#e7f0e2;color:#354536;font-size:10px;overflow-wrap:anywhere}
.group-message-form{display:flex;gap:7px;margin-top:8px}
.group-message-form button{min-width:62px}
.group-footnote{margin:8px 0 0;color:#81877d;font-size:9px;line-height:1.45}
:root[data-theme="dark"] .friend-dialog{border-color:#435044;background:#202720;color:#e8eee7}
:root[data-theme="dark"] .friend-heading>p:last-child,:root[data-theme="dark"] .friend-request-copy,:root[data-theme="dark"] .friend-state,:root[data-theme="dark"] .friend-note,:root[data-theme="dark"] .group-members,:root[data-theme="dark"] .group-footnote{color:#b4c0b4}
:root[data-theme="dark"] .friend-simulation-note,:root[data-theme="dark"] .friend-request-status{background:#303a30}
:root[data-theme="dark"] .friend-simulation-note strong,:root[data-theme="dark"] .friend-simulation-note span{color:#c4d0c4}
:root[data-theme="dark"] .presence-legend{color:#c1ccbF}
:root[data-theme="dark"] .friend-card{border-color:#435044;background:#252e26}
:root[data-theme="dark"] .friend-name{color:#e8eee7}
:root[data-theme="dark"] .friend-card[data-state="busy"] .friend-avatar{background:#423a2b;color:#ead6a8}
:root[data-theme="dark"] .friend-action{border-color:#4c5b4b;background:#2c392d;color:#cfe1c9}
:root[data-theme="dark"] .friend-action:disabled{border-color:#3d463d;background:#303730;color:#9da99b}
:root[data-theme="dark"] .friend-response-actions button{border-color:#465347;background:#252e26;color:#d9e3d7}
:root[data-theme="dark"] .friend-response-actions button:last-child{background:#2c3c2e;color:#cce0c8}
:root[data-theme="dark"] .add-friend-form input,:root[data-theme="dark"] .group-message-form input{border-color:#465347;background:#252e26;color:#e8eee7}
:root[data-theme="dark"] .group-message-list{border-color:#435044;background:#252e26}
:root[data-theme="dark"] .group-message{background:#354735;color:#e2ecdf}
@media(max-width:680px){.friend-dialog{padding:24px 18px}.friend-heading h2{font-size:22px}.friend-card{grid-template-columns:36px minmax(0,1fr);gap:8px;padding:9px}.friend-avatar{width:34px;height:34px}.friend-action{grid-column:2;justify-self:start;min-height:40px}.presence-legend{gap:8px 12px;font-size:8px}.friend-response-actions{grid-template-columns:1fr}.friend-response-actions button:last-child{grid-column:auto}}
@media(max-width:390px){.topbar{height:auto;min-height:60px;flex-wrap:wrap;padding:8px 0;gap:6px}.topbar-actions{flex:1;min-width:0;flex-wrap:wrap;justify-content:flex-end}}
.profile-photo-panel{display:flex;flex-direction:column;gap:9px;margin:13px 0;padding:13px;border:1px solid #dce6d8;border-radius:12px;background:#f8faf5}
.profile-photo-panel[hidden]{display:none}
.profile-photo-heading{display:flex;flex-direction:column;gap:3px}
.profile-photo-heading strong{color:#344a36;font:700 13px Manrope,sans-serif}
.profile-photo-heading span{color:#687366;font-size:10px;line-height:1.45}
.profile-photo-frame{width:min(100%,280px);aspect-ratio:4/3;align-self:center;overflow:hidden;display:grid;place-items:center;border:1px solid #d7dfd2;border-radius:10px;background:#e9eee5}
.profile-photo-frame video,.profile-photo-frame img{width:100%;height:100%;object-fit:cover}
.profile-photo-placeholder{display:flex;flex-direction:column;align-items:center;gap:4px;color:#758071;font-size:10px}
.profile-photo-placeholder>span:first-child{font-size:34px;color:#678068}
.profile-photo-note{margin:0;color:#697367;font-size:9px;line-height:1.5}
.profile-photo-consent{display:flex;align-items:flex-start;gap:8px;padding:9px;border-radius:8px;background:#eef3e9;color:#455243;font-size:9px;line-height:1.45;cursor:pointer}
.profile-photo-consent input{width:16px;height:16px;flex:none;margin:0;accent-color:var(--green)}
.profile-photo-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.profile-photo-actions button{min-height:40px;padding:6px 9px}
.profile-photo-actions button[hidden]{display:none}
.profile-photo-secondary{border:1px solid #d8e0d3;border-radius:10px;background:#fffefa;color:#36563d;font-size:10px;font-weight:700;cursor:pointer}
.profile-photo-status{margin:0;color:#657061;font-size:9px;line-height:1.45}
.profile-photo-account-image{width:54px;height:54px;object-fit:cover;border-radius:12px}
:root[data-theme="dark"] .profile-photo-panel{border-color:#435044;background:#252e26}
:root[data-theme="dark"] .profile-photo-heading strong,:root[data-theme="dark"] .profile-photo-heading span,:root[data-theme="dark"] .profile-photo-note,:root[data-theme="dark"] .profile-photo-status{color:#c4d0c4}
:root[data-theme="dark"] .profile-photo-frame{border-color:#465347;background:#303a30}
:root[data-theme="dark"] .profile-photo-placeholder{color:#b2beb0}
:root[data-theme="dark"] .profile-photo-consent{background:#303a30;color:#d5dfd2}
:root[data-theme="dark"] .profile-photo-secondary{border-color:#4c5b4b;background:#2c392d;color:#cfe1c9}
@media(max-width:680px){.profile-photo-panel{padding:10px}.profile-photo-frame{width:min(100%,240px)}.profile-photo-actions{grid-template-columns:1fr}}
.match-friend-dialog{position:relative;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;padding:30px;border:1px solid #e3e0d7;border-radius:20px;background:#fffefa;color:var(--ink);box-shadow:0 20px 70px #1b251b30}
.match-friend-dialog::backdrop{background:#1e281f78;backdrop-filter:blur(2px)}
.match-friend-dialog>form{position:absolute;right:17px;top:15px}
.match-friend-dialog>.eyebrow{margin:2px 0 7px}
.match-friend-dialog h2{margin:0;padding-right:25px;font:700 21px Manrope,sans-serif;letter-spacing:-.5px}
.match-friend-copy{margin:9px 0 16px;color:#6d756a;font-size:11px;line-height:1.55}
.match-friend-send{width:100%}
.match-friend-response{margin-top:14px}
.match-friend-response[hidden]{display:none}
.match-friend-response>p:first-child{margin:0 0 13px;padding:10px 12px;border-radius:9px;background:#f1f4ec;color:#4f5c4c;font-size:10px;line-height:1.5}
.match-friend-response>.eyebrow{margin:0 0 7px;color:#7b8278;font-size:8px;font-weight:800;letter-spacing:.08em}
.match-friend-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.match-friend-actions button,.match-friend-list-link{min-height:42px;padding:7px 10px;border:1px solid #dce3d8;border-radius:9px;background:#f7f9f4;color:#405541;font-size:10px;font-weight:700;cursor:pointer}
.match-friend-actions button:last-child{border-color:#e4e2da;background:#fffefa;color:#675f54}
.match-friend-actions button:hover,.match-friend-list-link:hover{border-color:#9bb298}
.match-friend-list-link{width:100%;margin-top:8px;background:#eef4e9}
:root[data-theme="dark"] .match-friend-dialog{border-color:#435044;background:#202720;color:#e8eee7}
:root[data-theme="dark"] .match-friend-copy,:root[data-theme="dark"] .match-friend-response>.eyebrow{color:#b4c0b4}
:root[data-theme="dark"] .match-friend-response>p:first-child{background:#303a30;color:#c4d0c4}
:root[data-theme="dark"] .match-friend-actions button,:root[data-theme="dark"] .match-friend-list-link{border-color:#4c5b4b;background:#2c392d;color:#cfe1c9}
:root[data-theme="dark"] .match-friend-actions button:last-child{background:#252e26;color:#d9e3d7}
@media(max-width:680px){.match-friend-dialog{padding:24px 20px}.match-friend-actions{grid-template-columns:1fr}}
/* Distinct conversation channels and creator room controls. */
.chat-mode-tabs{display:flex;gap:6px;padding:8px 12px;border-bottom:1px solid #eeece5;background:#fbfaf6}
.chat-mode-tab{min-height:30px;padding:0 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:#697267;font-size:9px;font-weight:700;cursor:pointer}
.chat-mode-tab:hover{background:#f0f2eb;color:#344335}
.chat-mode-tab.is-selected{border-color:#d9e4d3;background:#eaf1e6;color:#315c40}
.chat-mode-tab span{margin-left:3px;color:#8a7224;font-size:7px;text-transform:uppercase}
.chat-panel[data-chat-mode="group"] .chat-body{background:#f5f3ec}
.chat-panel[data-chat-mode="public"] .chat-body{background:#f1f5ec}
.chat-panel[data-chat-mode="group"] .message p{border-radius:12px 12px 12px 3px;background:#ece6d8}
.chat-panel[data-chat-mode="public"] .message p{background:#e2edd9;border:1px solid #d4e1ca}
.mass-invite-button{min-height:30px;padding:0 9px;border:1px solid #d6e2cf;border-radius:8px;background:#edf4e9;color:#315c40;font-size:9px;font-weight:700;cursor:pointer}
.mass-invite-button:hover{background:#e2eedc}
.mass-invite-button[hidden]{display:none}
.room-create-open,.room-invite-button{min-height:39px;margin-top:15px;padding:0 14px;border:1px solid #d6e2cf;border-radius:10px;background:#edf4e9;color:#315c40;font-size:11px;font-weight:700;cursor:pointer}
.room-create-open:hover,.room-invite-button:hover{background:#e2eedc}
.room-create-panel{margin:22px 0 14px;padding:20px;border:1px solid #e1e6da;border-radius:14px;background:#f8faf5}
.room-create-panel[hidden]{display:none}
.room-create-panel h3{margin:0;font:700 18px Manrope,sans-serif}
.room-create-panel>p:not(.eyebrow){max-width:600px;color:#697267;font-size:11px;line-height:1.55}
.room-name-label{display:block;margin:14px 0 6px;font-size:10px;font-weight:700}
.room-name-input{width:100%;max-width:520px;height:42px;padding:0 12px;border:1px solid #dcded4;border-radius:9px;background:#fffefa;color:#252b25;font-size:12px;outline:none}
.room-name-input:focus{border-color:#71937a;box-shadow:0 0 0 3px #79977a2b}
.creator-preview-toggle{display:flex;align-items:flex-start;gap:8px;margin:13px 0;color:#4e594d;font-size:10px;line-height:1.5}
.creator-preview-toggle input{margin-top:2px;accent-color:#246d4c}
.room-create-note,.room-create-status{font-size:10px!important}
.room-create-panel .dialog-ok{min-width:160px;margin-top:9px}
.room-create-status:empty{display:none}
.room-invite-button{width:100%;margin:2px 0 8px}
.mass-invite-dialog{position:relative;width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:28px;border:1px solid #e3e0d7;border-radius:18px;background:#fffefa;color:var(--ink);box-shadow:0 20px 70px #1b251b30}
.mass-invite-dialog::backdrop{background:#1e281f78;backdrop-filter:blur(2px)}
.mass-invite-dialog>form{position:absolute;right:15px;top:12px}
.mass-invite-dialog h2{margin:0;font:700 22px Manrope,sans-serif;letter-spacing:-.5px}
.mass-invite-intro{margin:8px 0 14px;color:#697267;font-size:11px;line-height:1.55}
.mass-invite-local-note{margin:-7px 0 12px;color:#7a806f;font-size:9px;line-height:1.5}
.mass-invite-list{display:grid;gap:7px;max-height:42dvh;overflow:auto}
.mass-invite-member{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;border:1px solid #e6e8df;border-radius:10px;background:#fbfcf8;cursor:pointer}
.mass-invite-member input{accent-color:#246d4c}
.mass-invite-identity{display:grid;gap:3px;min-width:0}
.mass-invite-identity strong{font-size:11px}
.mass-invite-identity small{color:#70796e;font-size:9px}
.mass-invite-member em{padding:4px 7px;border-radius:6px;background:#f2edda;color:#6f5b20;font-size:8px;font-style:normal;font-weight:700}
.mass-invite-status{min-height:30px;margin:10px 0;color:#5e695c;font-size:10px;line-height:1.5}
.mass-invite-dialog>.dialog-ok{width:100%}
.mass-invite-dialog>.dialog-ok:disabled{opacity:.55;cursor:not-allowed}
:root[data-theme="dark"] .chat-mode-tabs{border-color:#3e493f;background:#252d26}
:root[data-theme="dark"] .chat-mode-tab{color:#b2beb1}
:root[data-theme="dark"] .chat-mode-tab:hover{background:#303a30;color:#e4ede1}
:root[data-theme="dark"] .chat-mode-tab.is-selected,:root[data-theme="dark"] .mass-invite-button,:root[data-theme="dark"] .room-create-open,:root[data-theme="dark"] .room-invite-button{border-color:#4b654d;background:#304032;color:#c9e1c5}
:root[data-theme="dark"] .chat-panel[data-chat-mode="group"] .chat-body{background:#242a25}
:root[data-theme="dark"] .chat-panel[data-chat-mode="public"] .chat-body{background:#263027}
:root[data-theme="dark"] .chat-panel[data-chat-mode="group"] .message p{background:#3b382d;color:#eee9d8}
:root[data-theme="dark"] .chat-panel[data-chat-mode="public"] .message p{border-color:#455744;background:#354433;color:#e0ecdc}
:root[data-theme="dark"] .room-create-panel,:root[data-theme="dark"] .mass-invite-dialog{border-color:#435044;background:#202720;color:#e8eee7}
:root[data-theme="dark"] .room-create-panel>p:not(.eyebrow),:root[data-theme="dark"] .room-create-note,:root[data-theme="dark"] .room-create-status,:root[data-theme="dark"] .mass-invite-intro,:root[data-theme="dark"] .mass-invite-local-note,:root[data-theme="dark"] .mass-invite-status{color:#b4c0b4}
:root[data-theme="dark"] .room-name-input{border-color:#465248;background:#283129;color:#e6ede4}
:root[data-theme="dark"] .creator-preview-toggle{color:#c5d0c3}
:root[data-theme="dark"] .mass-invite-member{border-color:#435044;background:#252e26}
:root[data-theme="dark"] .mass-invite-identity small{color:#b4c0b4}
:root[data-theme="dark"] .mass-invite-member em{background:#393521;color:#e5d5a7}
@media(max-width:680px){.chat-mode-tabs{padding:7px 8px;gap:3px}.chat-mode-tab{flex:1;padding:0 5px;font-size:8px}.chat-mode-tab span{font-size:6px}.mass-invite-button{padding:0 7px;font-size:8px}.room-create-panel{padding:14px}.mass-invite-dialog{padding:24px 18px}}
.profile-nav-button{min-height:38px;padding:0 12px;border:1px solid #dcd9cf;border-radius:10px;background:#fffefa;color:#344335;font-size:11px;font-weight:700;cursor:pointer}
.profile-nav-button:hover{border-color:#97ad93;background:#f7f8f2}
.profile-dialog,.monitor-dialog{position:relative;width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:30px;border:1px solid #e3e0d7;border-radius:20px;background:#fffefa;color:var(--ink);box-shadow:0 20px 70px #1b251b30}
.monitor-dialog{width:min(600px,calc(100vw - 32px))}
.profile-dialog::backdrop,.monitor-dialog::backdrop{background:#1e281f78;backdrop-filter:blur(2px)}
.profile-dialog>form,.monitor-dialog>form{position:absolute;right:15px;top:12px}
.profile-page-header{padding-right:35px}
.profile-page-header .eyebrow,.profile-section-heading .eyebrow{margin:0 0 5px}
.profile-page-header h2,.monitor-dialog h2{margin:0;font:700 24px Manrope,sans-serif;letter-spacing:-.6px}
.profile-page-header>p:last-child{color:#697267;font-size:11px;line-height:1.5}
.profile-role-panel[hidden]{display:none}
.profile-identity-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #e4e7dd;border-radius:13px;background:#f8faf5}
.profile-identity-card>img,.profile-avatar-placeholder{width:52px;height:52px;border-radius:50%;object-fit:cover}
.profile-avatar-placeholder{display:grid;place-items:center;background:#dce9cf;color:#315b3b;font:800 20px Manrope,sans-serif}
.profile-identity-card>div:last-child{display:grid;gap:4px;min-width:0}
.profile-identity-card strong{font:700 14px Manrope,sans-serif;overflow-wrap:anywhere}
.profile-identity-card span:not(.profile-role-badge){color:#697267;font-size:10px;overflow-wrap:anywhere}
.profile-role-badge{display:inline-flex;align-self:start;padding:4px 8px;border-radius:999px;background:#e9f1e6;color:#315c40;font-size:9px;font-weight:700}
.profile-metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}
.profile-metric-grid article{display:grid;gap:8px;padding:13px;border:1px solid #e5e7df;border-radius:11px;background:#fbfcf8}
.profile-metric-grid article span{color:#687366;font-size:9px}
.profile-metric-grid article strong{font:700 17px Manrope,sans-serif;overflow-wrap:anywhere}
.profile-data-note{margin:10px 0;color:#70796e;font-size:10px;line-height:1.5}
.profile-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}
.profile-section-heading h3,.creator-application h3{margin:0;font:700 18px Manrope,sans-serif}
.profile-role-panel h4,.admin-recommendation h4{margin:18px 0 9px;font:700 12px Manrope,sans-serif}
.profile-table-wrap{overflow:auto;border:1px solid #e5e7df;border-radius:10px}
.profile-table{width:100%;border-collapse:collapse;font-size:10px;text-align:left}
.profile-table th,.profile-table td{padding:10px;border-bottom:1px solid #e8eae3;white-space:nowrap}
.profile-table th{background:#f5f7f1;color:#687366;font-size:8px;text-transform:uppercase;letter-spacing:.04em}
.profile-table tbody tr:last-child td{border-bottom:0}
.profile-table-action,.profile-action-button{min-height:34px;padding:0 11px;border:1px solid #d6e2cf;border-radius:8px;background:#edf4e9;color:#315c40;font-size:9px;font-weight:700;cursor:pointer}
.profile-table-action:hover,.profile-action-button:hover{background:#e2eedc}
.moderation-queue,.creator-applications-list{display:grid;gap:8px}
.moderation-queue-item,.creator-application-review{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border:1px solid #e5e7df;border-radius:10px;background:#fbfcf8}
.moderation-queue-item>div{display:grid;gap:4px;min-width:0}
.moderation-queue-item strong,.creator-application-review strong{font-size:10px;overflow-wrap:anywhere}
.moderation-queue-item span,.creator-application-review span{color:#70796e;font-size:9px;line-height:1.45;overflow-wrap:anywhere}
.admin-recommendation{margin-top:18px;padding:14px;border:1px solid #e5e7df;border-radius:11px;background:#f8faf5}
.admin-recommendation h4{margin:0 0 10px}
.admin-recommendation label{display:block;margin:0 0 5px;font-size:9px;font-weight:700}
.admin-recommendation select{width:100%;height:38px;padding:0 9px;border:1px solid #dcded4;border-radius:8px;background:#fffefa;color:#252b25;font-size:10px}
.admin-recommendation .profile-action-button{margin-top:8px}
.admin-recommendation p{min-height:16px;margin:8px 0 0;color:#5e695c;font-size:10px;line-height:1.5}
.monitor-disclosure{display:grid;gap:5px;margin:14px 0;padding:12px;border-left:3px solid #77975e;border-radius:7px;background:#f0f5eb}
.monitor-disclosure strong{font-size:10px}
.monitor-disclosure span{color:#596456;font-size:9px;line-height:1.5}
.monitor-stage{min-height:200px;display:grid;place-items:center;padding:20px;border-radius:12px;background:#202720;color:#e5ece2;text-align:center;font-size:11px;line-height:1.5}
.monitor-status{min-height:28px;color:#697267;font-size:10px;line-height:1.5}
.monitor-dialog>.profile-action-button{width:100%}
.creator-application{margin-top:18px;padding:16px;border:1px solid #e1e6da;border-radius:12px;background:#f8faf5}
.creator-application>.eyebrow{margin:0 0 5px}
.creator-application>p:not(.eyebrow){color:#687366;font-size:10px;line-height:1.5}
.creator-application-form{display:grid;gap:7px}
.creator-application-form>label:not(.creator-application-consent){margin-top:5px;font-size:9px;font-weight:700}
.creator-application-form input:not([type="checkbox"]),.creator-application-form textarea{width:100%;min-height:38px;padding:9px;border:1px solid #dcded4;border-radius:8px;background:#fffefa;color:#252b25;font-size:10px;outline:none}
.creator-application-form textarea{resize:vertical}
.creator-application-form input:focus,.creator-application-form textarea:focus{border-color:#71937a;box-shadow:0 0 0 3px #79977a2b}
.creator-application-consent{display:flex;align-items:flex-start;gap:8px;margin:8px 0;color:#566253;font-size:9px;line-height:1.5}
.creator-application-consent input{margin-top:2px;accent-color:#246d4c}
.creator-application-form .profile-action-button{justify-self:start}
.creator-application-review{align-items:flex-start}
.creator-application-review>div{display:grid;gap:4px;min-width:0}
.creator-application-review .creator-review-detail{color:#535f51}
.creator-review-actions{display:flex;gap:6px;flex:none}
.creator-review-actions button{min-height:30px;padding:0 8px;border:1px solid #d6e2cf;border-radius:7px;background:#edf4e9;color:#315c40;font-size:8px;font-weight:700;cursor:pointer}
:root[data-theme="dark"] .profile-nav-button,:root[data-theme="dark"] .profile-dialog,:root[data-theme="dark"] .monitor-dialog{border-color:#435044;background:#202720;color:#e8eee7}
:root[data-theme="dark"] .profile-nav-button{background:#252e26}
:root[data-theme="dark"] .profile-page-header>p:last-child,:root[data-theme="dark"] .profile-data-note,:root[data-theme="dark"] .profile-metric-grid article span,:root[data-theme="dark"] .profile-identity-card span:not(.profile-role-badge),:root[data-theme="dark"] .moderation-queue-item span,:root[data-theme="dark"] .creator-application-review span,:root[data-theme="dark"] .creator-application>p:not(.eyebrow),:root[data-theme="dark"] .creator-application-consent,:root[data-theme="dark"] .monitor-status{color:#b4c0b4}
:root[data-theme="dark"] .profile-identity-card,:root[data-theme="dark"] .profile-metric-grid article,:root[data-theme="dark"] .moderation-queue-item,:root[data-theme="dark"] .creator-application-review,:root[data-theme="dark"] .admin-recommendation,:root[data-theme="dark"] .creator-application{border-color:#435044;background:#252e26}
:root[data-theme="dark"] .profile-metric-grid article strong{color:#e8eee7}
:root[data-theme="dark"] .profile-role-badge,:root[data-theme="dark"] .profile-action-button,:root[data-theme="dark"] .profile-table-action{border-color:#4b654d;background:#304032;color:#c9e1c5}
:root[data-theme="dark"] .profile-table-wrap{border-color:#435044}
:root[data-theme="dark"] .profile-table th{background:#303a30;color:#bdc9bb}
:root[data-theme="dark"] .profile-table th,:root[data-theme="dark"] .profile-table td{border-color:#3c493d}
:root[data-theme="dark"] .admin-recommendation label,:root[data-theme="dark"] .profile-role-panel h4,:root[data-theme="dark"] .admin-recommendation h4{color:#e3ebe0}
:root[data-theme="dark"] .admin-recommendation select,:root[data-theme="dark"] .creator-application-form input:not([type="checkbox"]),:root[data-theme="dark"] .creator-application-form textarea{border-color:#465248;background:#283129;color:#e6ede4}
:root[data-theme="dark"] .monitor-disclosure{background:#303a30}
:root[data-theme="dark"] .monitor-disclosure span{color:#c4d0c4}
:root[data-theme="dark"] .creator-review-actions button{border-color:#4b654d;background:#304032;color:#c9e1c5}
@media(max-width:680px){.profile-nav-button{min-height:36px;padding:0 8px;font-size:10px}.profile-dialog,.monitor-dialog{padding:24px 18px}.profile-page-header h2,.monitor-dialog h2{font-size:21px}.profile-metric-grid{grid-template-columns:1fr 1fr;gap:7px}.profile-metric-grid article{padding:10px}.profile-metric-grid article strong{font-size:14px}.profile-table th,.profile-table td{padding:8px;font-size:8px}.creator-application{padding:12px}.creator-application-review{align-items:flex-start;flex-direction:column}.creator-review-actions{width:100%}}
.auth-form select{width:100%;height:42px;padding:0 11px;border:1px solid #e2dfd7;border-radius:9px;outline:none;background:#fffefa;color:#2f382f;font-size:12px}
.auth-form select:focus{border-color:#71937a;box-shadow:0 0 0 3px #79977a2b}
.auth-form input[hidden],.auth-form select[hidden],.auth-form label[hidden],.auth-tabs[hidden],.provider-buttons[hidden]{display:none!important}
#registrationConsentGroup[hidden]{display:none}
.registration-consent{margin:5px 0;padding:10px;border:1px solid #e2e6dc;border-radius:9px;background:#f8faf5}
.registration-consent-label{display:flex;align-items:flex-start;gap:8px;margin:0!important;color:#4d594b!important;font-size:9px!important;font-weight:500!important;line-height:1.5}
.registration-consent-label input{flex:none;width:15px;height:15px;margin:1px 0 0;accent-color:#246d4c}
.registration-policy-links{display:flex;gap:12px;margin:7px 0 0 23px}
.registration-policy-links button{padding:0;border:0;background:none;color:#315c40;font-size:9px;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.registration-consent small{display:block;margin:7px 0 0 23px;color:#737a70;font-size:8px;line-height:1.45}
:root[data-theme="dark"] .auth-form select{border-color:#465248;background:#2a332b;color:#e6ede4}
:root[data-theme="dark"] .registration-consent{border-color:#435044;background:#252e26}
:root[data-theme="dark"] .registration-consent-label{color:#d0dbd0!important}
:root[data-theme="dark"] .registration-policy-links button{color:#a7d2ad}
:root[data-theme="dark"] .registration-consent small{color:#b4c0b4}
@media(max-width:680px){.registration-consent{padding:8px}.registration-consent-label{font-size:8px!important}}
.room-gift-button{width:100%;min-height:40px;margin:8px 0;padding:0 12px;border:1px solid #e4d6aa;border-radius:9px;background:#f5f0dd;color:#66531b;font-size:10px;font-weight:700;cursor:pointer}
.room-gift-button:hover{background:#eee5c9}
.room-gift-button[hidden]{display:none!important}
.gift-dialog{position:relative;width:min(450px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:28px;border:1px solid #e3e0d7;border-radius:18px;background:#fffefa;color:var(--ink);box-shadow:0 20px 70px #1b251b30}
.gift-dialog::backdrop{background:#1e281f78;backdrop-filter:blur(2px)}
.gift-dialog>form{position:absolute;right:15px;top:12px}
.gift-dialog h2{margin:0;font:700 21px Manrope,sans-serif;letter-spacing:-.5px}
.gift-dialog>label{display:block;margin:14px 0 6px;font-size:10px;font-weight:700}
.gift-dialog>input,.gift-dialog>select{width:100%;height:42px;padding:0 11px;border:1px solid #dcded4;border-radius:9px;background:#fffefa;color:#252b25;font-size:12px;outline:none}
.gift-dialog>input:focus,.gift-dialog>select:focus{border-color:#71937a;box-shadow:0 0 0 3px #79977a2b}
.gift-recipient{margin:8px 0;color:#566253;font-size:11px}
.gift-balance{padding:10px;border-radius:9px;background:#f3f5ee;color:#5f695c;font-size:10px}
.gift-balance strong{color:#315c40}
.gift-value-note,.gift-status,.topup-summary{color:#687366;font-size:10px;line-height:1.55}
.gift-split-summary{padding:10px;border:1px solid #e5e7df;border-radius:9px;background:#f8faf5;color:#566253;font-size:10px;font-weight:700;line-height:1.5}
.gift-dialog .profile-action-button{width:100%;margin-top:9px}
:root[data-theme="dark"] .room-gift-button{border-color:#645839;background:#3d3725;color:#e6d59f}
:root[data-theme="dark"] .gift-dialog{border-color:#435044;background:#202720;color:#e8eee7}
:root[data-theme="dark"] .gift-dialog>input,:root[data-theme="dark"] .gift-dialog>select{border-color:#465248;background:#283129;color:#e6ede4}
:root[data-theme="dark"] .gift-recipient,:root[data-theme="dark"] .gift-value-note,:root[data-theme="dark"] .gift-status,:root[data-theme="dark"] .topup-summary{color:#b4c0b4}
:root[data-theme="dark"] .gift-split-summary{border-color:#435044;background:#252e26;color:#c5d0c3}
:root[data-theme="dark"] .gift-balance{background:#303a30;color:#c4d0c4}
:root[data-theme="dark"] .gift-balance strong{color:#a7d2ad}
@media(max-width:680px){.gift-dialog{padding:24px 18px}}
.friend-code-help{display:grid;gap:4px;margin:10px 0 13px;color:#72796f;font-size:10px;line-height:1.6}
.friend-code-example{display:block}
.friend-code-help strong{color:#315c40;font-family:ui-monospace,monospace;font-size:10px;letter-spacing:.04em}
.friend-code{color:#697267;font-family:ui-monospace,monospace;font-size:8px;letter-spacing:.03em}
.profile-friend-code{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0;padding:11px;border:1px solid #e5e7df;border-radius:10px;background:#fbfcf8}
.profile-friend-code>div{display:grid;gap:4px}
.profile-friend-code>div span{color:#687366;font-size:9px}
.profile-friend-code>div strong{font:700 12px ui-monospace,monospace;letter-spacing:.05em}
:root[data-theme="dark"] .friend-code-help,:root[data-theme="dark"] .friend-code,:root[data-theme="dark"] .profile-friend-code>div span{color:#b4c0b4}
:root[data-theme="dark"] .friend-code-help strong{color:#a7d2ad}
:root[data-theme="dark"] .profile-friend-code{border-color:#435044;background:#252e26}
@media(max-width:680px){.friend-code-help{font-size:10px;line-height:1.55}.friend-code-help strong{font-size:10px}.profile-friend-code{padding:9px}}
.friend-activity-badge{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;display:grid;place-items:center;padding:0 4px;border:2px solid #fffefa;border-radius:999px;background:#d84a45;color:#fff;font-size:8px;font-weight:800;line-height:1}
.friend-activity-badge[hidden]{display:none!important}
#friendsButton,.fullscreen-friends-button{position:relative}
.room-nav-button.has-new-friends .friend-activity-badge,.fullscreen-friends-button.has-new-friends .friend-activity-badge{animation:friend-alert-pulse 1s ease-in-out infinite}
@keyframes friend-alert-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.84)}}
.fullscreen-quickbar{display:none}
.workspace:fullscreen .fullscreen-quickbar{position:absolute;z-index:18;top:16px;left:16px;display:flex;align-items:center;gap:8px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;transition:opacity .28s ease,visibility .28s ease}
.fullscreen-quick-button{flex:none}
.fullscreen-account-chip{display:flex;align-items:center;gap:6px;padding:0}
.fullscreen-plan-button{font-family:inherit;cursor:pointer}
.fullscreen-points{flex:none}
.points-button[hidden],.plan-badge[hidden],.login-button[hidden]{display:none!important}
.workspace:fullscreen .has-active-friends .friend-activity-badge{box-shadow:0 0 0 2px #fffefa}
.workspace:fullscreen .chat-panel{top:calc(50% + 20px)}
.workspace:fullscreen .fullscreen-friends-button.has-new-friends .friend-activity-badge{animation:friend-alert-pulse 1s ease-in-out infinite}
.workspace:fullscreen .fullscreen-quickbar{z-index:18}
.workspace:fullscreen .fullscreen-quickbar .friend-activity-badge{border-color:#fffefa}
.workspace:fullscreen .fullscreen-quickbar .fullscreen-quick-button:focus-visible{outline:3px solid #7d9f48;outline-offset:2px}
.workspace:fullscreen .video-actions,.workspace:fullscreen .control-bar,.workspace:fullscreen .stage-caption,.workspace:fullscreen .camera-tile,.workspace:fullscreen .call-timer,.workspace:fullscreen .chat-side-button,.workspace:fullscreen .chat-panel,.workspace:fullscreen .fullscreen-quickbar{transition:opacity .28s ease,visibility .28s ease}
.workspace:fullscreen.is-idle .fullscreen-quickbar{opacity:0;visibility:hidden;pointer-events:none}
.room-follow-button{width:100%;min-height:40px;margin:8px 0;padding:0 12px;border:1px solid #d5e0cf;border-radius:9px;background:#edf4e9;color:#315c40;font-size:10px;font-weight:700;cursor:pointer}
.room-follow-button:hover{background:#e2eedc}
.room-follow-button[hidden]{display:none!important}
:root[data-theme="dark"] .friend-activity-badge{border-color:#202720}
:root[data-theme="dark"] .workspace:fullscreen .fullscreen-quickbar{background:transparent}
:root[data-theme="dark"] .room-follow-button{border-color:#4b654d;background:#304032;color:#c9e1c5}
@media(prefers-reduced-motion:reduce){.room-nav-button.has-new-friends .friend-activity-badge,.fullscreen-friends-button.has-new-friends .friend-activity-badge{animation:none}}
@media(max-width:680px){.workspace:fullscreen .fullscreen-quickbar{top:8px;left:8px;gap:6px}.workspace:fullscreen .fullscreen-account-chip{gap:4px}.workspace:fullscreen .fullscreen-friends-button .friend-activity-badge:not([hidden]){display:grid}.workspace:fullscreen .chat-panel{top:calc(54dvh + 8px);max-height:calc(46dvh - 16px)}}


/* Sapa responsive polish: compact navigation and faster first paint. */
:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}
.app-shell{width:min(100%,1600px);padding-inline:clamp(12px,3.6vw,48px)}
.topbar{height:auto;min-height:68px;gap:18px;padding:10px 0}
.brand{flex:none;font-size:21px}
.topbar-note{margin-inline:auto;white-space:nowrap;font-size:12px}
.topbar-nav{display:flex;align-items:center;gap:5px;flex:none}
.topbar-nav .room-nav-button{width:auto;min-height:40px;padding-inline:10px;border-color:transparent;background:transparent;border-radius:9px;transition:background .16s,border-color .16s,color .16s}
.topbar-nav .room-nav-button:hover{background:var(--soft-green);border-color:var(--line);color:var(--green-dark)}
.topbar-nav .help-button{display:grid;width:40px;height:40px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}
.topbar-actions{gap:6px;padding-left:12px;border-left:1px solid var(--line)}
.topbar-nav button:focus-visible,.topbar-actions button:focus-visible{outline:3px solid #739665;outline-offset:2px}
.workspace{gap:20px;padding-top:20px}
.video-stage{padding:9px;border-radius:19px}
.remote-video{min-height:clamp(250px,34vw,360px);max-height:calc(100dvh - 285px);border-radius:13px}
.chat-panel{border-radius:15px}
.footer{min-height:46px;height:auto;gap:10px;padding-block:9px;flex-wrap:wrap}
.footer>span:last-child{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
@media(max-width:1120px){
  .app-shell{padding-inline:clamp(12px,2.6vw,28px)}
  .topbar{gap:10px}
  .topbar-note{display:none}
  .topbar-nav{margin-left:auto}
  .topbar-actions{padding-left:9px}
  .workspace{gap:14px}
}
@media(max-width:820px){
  .topbar{display:flex;flex-wrap:wrap;row-gap:7px;padding-block:8px}
  .brand{margin-right:auto}
  .topbar-nav{order:2;flex:1 0 100%;justify-content:space-between;padding-top:6px;border-top:1px solid var(--line)}
  .topbar-actions{order:3;flex:none;margin-left:auto;padding-left:0;border-left:0}
  .topbar-nav .room-nav-button{flex:1;min-height:44px;justify-content:center;padding-inline:7px}
  .topbar-nav .help-button{width:44px;height:44px}
  .workspace{padding-top:13px;gap:12px}
  .video-stage{padding:7px;border-radius:16px}
  .remote-video{min-height:clamp(225px,58vw,420px);max-height:none}
  .footer{margin-top:6px}
}
@media(max-width:520px){
  .app-shell{padding-inline:12px}
  .topbar{column-gap:7px}
  .brand{font-size:20px}
  .topbar-actions{gap:4px}
  .account-glance{gap:4px}
  .points-button,.theme-toggle{min-height:40px;padding-inline:7px}
  .profile-nav-button,.login-button{min-height:40px;padding-inline:9px}
  .topbar-nav{gap:3px}
  .topbar-nav .room-nav-button{gap:5px;font-size:10px}
  .topbar-nav .room-nav-button span:not(.friend-activity-badge){display:inline}
  .topbar-nav .room-nav-button svg{width:17px;height:17px}
  .topbar-nav .help-button{width:42px;height:42px}
  .remote-video{min-height:0;aspect-ratio:4/3;max-height:none}
  .remote-empty{left:50%;width:min(86%,360px);padding:14px 15px}
  .remote-empty h1{font-size:clamp(25px,7vw,32px)}
  .empty-symbol{width:52px;height:52px;margin-bottom:12px}
  .empty-symbol:before,.empty-symbol:after,.empty-symbol span{width:27px;height:27px}
  .empty-symbol span{left:13px}
  .empty-copy{font-size:12px}
  .control-bar{gap:7px;flex-wrap:wrap;padding-top:8px}
  .control-button{min-height:44px;min-width:54px;padding-inline:9px}
  .primary-button,.next-button{min-height:44px;padding-inline:13px}
  .primary-button{min-width:0;flex:1}
  .next-button{min-width:92px}
  .preferences{gap:10px;padding:12px 3px 0}
  .select-wrap{min-width:min(180px,100%);flex:1}
  .footer{justify-content:center;text-align:center}
  .footer>span:last-child{justify-content:center;row-gap:5px}
}
@media(max-width:370px){
  .topbar-actions{width:100%;justify-content:flex-end;order:3}
  .brand{align-self:center}
  .topbar-nav{order:2}
  .points-button small{display:none}
  .plan-badge{font-size:7px}
  .stage-caption{font-size:9px}
  .control-button{gap:5px;font-size:9px}
  .next-button{min-width:82px}
}
@media(prefers-reduced-motion:reduce){
  .topbar-nav .room-nav-button{transition:none}
}

/* Header account controls use one consistent, compact button rhythm. */
.account-glance .plan-badge{min-height:40px;padding-inline:10px;border:1px solid var(--line);border-radius:10px;font-size:10px;letter-spacing:.035em}
.account-glance .plan-badge[data-plan="premium"]{border-color:#d8ce9f}
.login-button{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:root[data-theme="dark"] .account-glance .plan-badge{border-color:#465248;background:#252d26;color:#d8f1dd}
:root[data-theme="dark"] .account-glance .plan-badge[data-plan="premium"]{border-color:#5b5436;background:#3b3527;color:#eadca9}
@media(max-width:680px){.account-glance .plan-badge{min-height:40px;padding-inline:8px;font-size:9px}.login-button{max-width:130px}}
@media(max-width:370px){.login-button{max-width:110px}}

/* Compact sign-in sheet: keep the dialog as the surface, flatten inner panels. */
.auth-dialog{width:min(410px,calc(100vw - 24px));max-height:min(calc(100dvh - 24px),760px);padding:21px 22px 15px;border-radius:16px}
.auth-dialog h2{margin:0;font-size:22px;letter-spacing:-.45px}
.auth-intro{margin:4px 0 11px;font-size:11px;line-height:1.45}
.auth-tabs{gap:16px;padding:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
.auth-tab{position:relative;height:37px;border-radius:0;color:var(--muted)}
.auth-tab.is-selected{background:transparent;color:var(--green-dark);box-shadow:none}
.auth-tab.is-selected::after{position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--green);content:""}
.provider-buttons{gap:0;margin-top:7px}
.provider-button{min-height:40px;justify-content:flex-start;padding-inline:8px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
.auth-divider{margin:10px 0;font-size:9px}
.auth-form{gap:5px}
.auth-form label{margin-top:2px;font-size:10px}
.auth-form input,.auth-form select{height:40px;border-radius:8px}
.auth-submit,.auth-secondary{height:41px;border-radius:8px}
.auth-submit{margin-top:4px}
.reset-password{margin-top:2px}
.auth-config-note{margin-top:5px;font-size:9px}
.signed-in-panel{margin:9px 0 5px;padding:0;border:0;background:transparent}
.signed-in-panel p{margin:0 0 8px}
.profile-photo-panel{gap:7px;margin:9px 0;padding:0;border:0;background:transparent}
.registration-consent{margin:7px 0;padding:8px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}
:root[data-theme="dark"] .auth-tabs{border-color:var(--line);background:transparent}
:root[data-theme="dark"] .auth-tab.is-selected{background:transparent;color:#d7ecd2}
:root[data-theme="dark"] .provider-button{border-color:var(--line);background:transparent}
:root[data-theme="dark"] .signed-in-panel,:root[data-theme="dark"] .profile-photo-panel,:root[data-theme="dark"] .registration-consent{border-color:var(--line);background:transparent}
@media(max-width:520px){.auth-dialog{padding:19px 17px 13px}.auth-dialog h2{font-size:20px}.provider-button{min-height:42px}}

.message-safety-dialog{position:relative;width:min(430px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow-y:auto;padding:25px 24px 20px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);box-shadow:0 18px 56px #17211735}
.message-safety-dialog::backdrop{background:#1e281f78;backdrop-filter:blur(2px)}
.message-safety-dialog>form{position:absolute;top:11px;right:11px}
.message-safety-dialog>.eyebrow{margin:0 40px 5px 0}
.message-safety-dialog h2{margin:0;font:700 21px Manrope,sans-serif;letter-spacing:-.5px}
.message-safety-details{margin:10px 0 5px;color:var(--ink);font-size:13px;font-weight:700;line-height:1.5}
.message-safety-copy{margin:5px 0 17px;color:var(--muted);font-size:12px;line-height:1.55}
.message-safety-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.message-safety-actions button{min-height:44px;padding:0 13px;border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--ink);font-size:12px;font-weight:700;cursor:pointer}
.message-safety-actions button:last-child{border-color:var(--green);background:var(--green);color:#fff}
.message-safety-actions button:last-child:hover{background:var(--green-dark)}
:root[data-theme="dark"] .message-safety-dialog{border-color:var(--line);background:var(--surface);color:var(--ink)}
:root[data-theme="dark"] .message-safety-copy{color:var(--muted)}
:root[data-theme="dark"] .message-safety-actions button{border-color:var(--line);color:var(--ink)}
:root[data-theme="dark"] .message-safety-actions button:last-child{border-color:var(--green);background:var(--green);color:#111a13}
@media(max-width:420px){.message-safety-dialog{padding:23px 18px 17px}.message-safety-actions{display:grid;grid-template-columns:1fr 1fr}.message-safety-actions button{padding:0 8px;font-size:11px}}

.profile-photo-gate{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0 0;padding:12px 15px;border:1px solid #d4b875;border-radius:12px;background:#fff8e6;color:#493d20}
.profile-photo-gate[hidden]{display:none}
.profile-photo-gate strong{display:block;font-size:12px}
.profile-photo-gate p{margin:3px 0 0;color:#665a3c;font-size:11px;line-height:1.45}
.profile-photo-gate button{flex:none;min-height:40px;padding:0 14px;border:0;border-radius:9px;background:var(--green);color:#fff;font-size:11px;font-weight:700;cursor:pointer}
.profile-photo-gate button:hover{background:var(--green-dark)}
:root[data-theme="dark"] .profile-photo-gate{border-color:#766642;background:#302c20;color:#f0e2b9}
:root[data-theme="dark"] .profile-photo-gate p{color:#d2c69e}
@media(max-width:520px){.profile-photo-gate{align-items:flex-start;flex-direction:column;gap:9px;padding:11px 12px}.profile-photo-gate button{width:100%}}

/* Full-screen administrator workspace and camera pin states. */
.admin-dashboard{min-height:100dvh;padding:clamp(14px,2.6vw,36px);background:var(--paper);color:var(--ink)}
.admin-dashboard[hidden]{display:none}
.admin-dashboard-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px max(0px,calc((100vw - 1440px)/2));border-bottom:1px solid var(--line);background:var(--paper)}
.admin-dashboard-header .eyebrow{margin:0 0 4px}
.admin-dashboard-header h1{margin:0;font:750 clamp(23px,3vw,34px)/1.15 Manrope,sans-serif;letter-spacing:-.8px}
.admin-dashboard-header>div>p:last-child{margin:5px 0 0;color:var(--muted);font-size:12px}
.admin-dashboard-back{flex:none;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font-size:12px;font-weight:700;cursor:pointer}
.admin-dashboard-back:hover{border-color:#97ad93}
.admin-dashboard-content{width:min(100%,1440px);margin:22px auto 0}
.admin-dashboard-content #profileAdminPanel{max-width:none}
.admin-dashboard-content .profile-section-heading h3{font-size:22px}
.admin-dashboard-content .profile-metric-grid{gap:14px}
.admin-finance-panel{margin:20px 0 26px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.admin-finance-panel .profile-section-heading{margin-bottom:8px}
.admin-finance-panel .profile-section-heading h3{margin:0;font:700 21px Manrope,sans-serif}
.admin-readonly-tag{flex:none;padding:5px 8px;border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.admin-finance-security{max-width:900px;margin:7px 0 12px;color:var(--muted);font-size:11px;line-height:1.55}
.admin-finance-live-status{margin:0 0 10px;color:var(--green-dark);font-size:10px;font-weight:700}
.admin-finance-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:12px 0 18px}
.admin-finance-metrics article{display:grid;gap:6px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}
.admin-finance-metrics article span{color:var(--muted);font-size:9px;line-height:1.4}
.admin-finance-metrics article strong{font-size:15px;overflow-wrap:anywhere}
.admin-finance-subheading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:16px 0 5px}
.admin-finance-subheading h4{margin:0}
.admin-finance-subheading>span{color:var(--muted);font-size:9px}
.admin-finance-table{min-width:700px}
.admin-finance-pagination{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin:10px 0 16px}
.admin-finance-pagination span{color:var(--muted);font-size:10px}
.admin-finance-pagination button:disabled{opacity:.5;cursor:not-allowed}
:root[data-theme="dark"] .admin-readonly-tag{border-color:var(--line);color:var(--muted)}
:root[data-theme="dark"] .admin-finance-live-status{color:#b9e1b6}
:root[data-theme="dark"] .admin-finance-metrics article{border-color:var(--line);background:var(--surface);color:var(--ink)}
@media(max-width:760px){.admin-finance-panel{margin:16px 0 20px}.admin-finance-metrics{grid-template-columns:1fr 1fr;gap:7px}.admin-finance-metrics article{padding:10px}.admin-finance-metrics article strong{font-size:13px}.admin-finance-pagination{justify-content:space-between}.admin-finance-pagination button{min-height:42px}}
:root[data-theme="dark"] .admin-dashboard{background:var(--paper);color:var(--ink)}
:root[data-theme="dark"] .admin-dashboard-header{border-color:var(--line);background:var(--paper)}
:root[data-theme="dark"] .admin-dashboard-header>div>p:last-child{color:var(--muted)}
:root[data-theme="dark"] .admin-dashboard-back{border-color:var(--line);background:var(--surface);color:var(--ink)}
@media(max-width:620px){.admin-dashboard{padding:10px}.admin-dashboard-header{align-items:flex-start;flex-direction:column;padding:8px 0 12px}.admin-dashboard-back{width:100%}.admin-dashboard-content{margin-top:14px}.admin-dashboard-content .profile-metric-grid{grid-template-columns:1fr 1fr;gap:7px}}
.camera-pin-toggle{position:absolute;z-index:9;top:8px;left:8px;width:32px;height:32px;display:grid;place-items:center;padding:0;border:1px solid #ffffff85;border-radius:8px;background:#15221dcc;box-shadow:0 1px 5px #1117;cursor:pointer;backdrop-filter:blur(4px)}
.camera-pin-toggle input{width:18px;height:18px;margin:0;accent-color:var(--lime);cursor:pointer}
.camera-pin-toggle[hidden]{display:none}
.camera-pin-toggle:focus-within{outline:2px solid var(--lime);outline-offset:2px}
.remote-camera-pin{top:12px;left:12px}
.remote-video.has-peer .remote-label{top:52px}
.remote-video.peer-camera-pinned{box-shadow:inset 0 0 0 3px var(--lime)}
.camera-tile.is-pinned{border-color:var(--lime)}
.workspace:fullscreen.is-idle .camera-tile.is-pinned{opacity:1;visibility:visible;pointer-events:auto}
.camera-tile .camera-pin-toggle{touch-action:manipulation}
.stage-action[aria-pressed="true"]{border-color:var(--lime);background:#1f382ad9;color:#f3ffd7}
.profile-photo-share-consent{border:1px solid #d6e2cf}
.stage-action[hidden]{display:none!important}

.referral-panel{margin-top:24px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.referral-panel[hidden]{display:none}
.referral-panel .profile-section-heading{margin-bottom:8px}
.referral-panel .profile-section-heading h3{margin:0;font:700 18px Manrope,sans-serif}
.referral-copy{max-width:850px;margin:0 0 13px;color:var(--muted);font-size:11px;line-height:1.55}
.referral-link-row{display:flex;gap:8px}
.referral-link-row input{flex:1;min-width:0;height:42px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font-size:11px}
.referral-link-row .profile-table-action{min-height:42px}
.referral-share-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}
.referral-share-actions button{min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font-size:10px;font-weight:700;cursor:pointer}
.referral-share-actions button:hover:not(:disabled){border-color:#97ad93;background:var(--soft-green)}
.referral-share-actions button:disabled,.referral-link-row button:disabled{opacity:.55;cursor:not-allowed}
.referral-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:13px}
.referral-metrics article{display:grid;gap:5px;padding:11px;border:1px solid var(--line);border-radius:9px;background:var(--paper)}
.referral-metrics article span{color:var(--muted);font-size:9px}
.referral-metrics article strong{font-size:15px;font-weight:750;overflow-wrap:anywhere}
:root[data-theme="dark"] .referral-panel{border-color:var(--line);background:var(--surface)}
:root[data-theme="dark"] .referral-link-row input,:root[data-theme="dark"] .referral-metrics article{border-color:var(--line);background:var(--paper);color:var(--ink)}
:root[data-theme="dark"] .referral-share-actions button{border-color:var(--line);background:var(--surface);color:var(--ink)}
@media(max-width:520px){.referral-panel{margin-top:17px;padding:12px}.referral-link-row{flex-direction:column}.referral-link-row button{width:100%}.referral-share-actions button{flex:1 1 calc(50% - 7px);min-height:44px}.referral-metrics{grid-template-columns:1fr}.referral-metrics article{grid-template-columns:1fr auto;align-items:center}}

.payout-panel{width:100%;max-width:none;margin:16px 0 0;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink)}
.payout-panel .profile-section-heading{margin-bottom:10px}
.payout-panel .profile-section-heading h3{margin:0;font:700 18px Manrope,sans-serif}
.payout-balance{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:11px}
.payout-balance>span{color:var(--muted)}
.payout-balance strong{font-size:15px}
.payout-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px;margin-top:12px}
.payout-field{display:grid;align-content:start;gap:6px;min-width:0}
.payout-field label{color:var(--muted);font-size:10px;font-weight:700;line-height:1.4}
.payout-form input,.payout-form select{width:100%;min-width:0;min-height:42px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit;font-size:11px}
.payout-bank-field{grid-column:1/-1}
.payout-bank-field[hidden]{display:none}
.payout-account-consent{grid-column:1/-1;display:flex;align-items:flex-start;gap:8px;margin:5px 0;color:var(--muted);font-size:10px;line-height:1.5}
.payout-account-consent input{width:16px;min-height:16px;flex:none;margin:1px 0 0;accent-color:var(--green)}
.payout-form .profile-action-button{grid-column:1/-1;min-height:43px}
.payout-form .profile-action-button:disabled{opacity:.55;cursor:not-allowed}
.payout-history{display:grid;gap:5px;margin-top:8px}
.payout-history-row{margin:0;padding:8px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:10px;line-height:1.45}
:root[data-theme="dark"] .payout-panel{border-color:var(--line);background:var(--surface);color:var(--ink)}
:root[data-theme="dark"] .payout-balance,:root[data-theme="dark"] .payout-history-row{border-color:var(--line)}
:root[data-theme="dark"] .payout-form input,:root[data-theme="dark"] .payout-form select{border-color:var(--line);background:var(--paper);color:var(--ink)}
@media(max-width:520px){.payout-panel{margin-top:12px;padding:12px}}

/* Home conversation floats over the video preview, following the Room Live overlay. */
.workspace{position:relative;display:block;grid-template-columns:1fr;gap:0;padding:20px 0}
.video-column{width:100%;min-width:0}
.video-stage{position:relative}
.remote-video{position:relative}
.chat-panel{position:absolute;z-index:8;top:50%;right:clamp(12px,2vw,24px);left:auto;transform:translateY(-50%);width:min(360px,38%);height:min(560px,max(320px,72%));min-height:300px;max-height:calc(100% - 24px);border:1px solid #ffffff38;border-radius:16px;background:rgba(13,19,15,.72);color:#f4f6f1;box-shadow:0 16px 48px #0005;backdrop-filter:blur(12px) saturate(1.08)}
.chat-header{height:58px;padding:0 14px;border-color:#ffffff25}
.chat-header .eyebrow{color:#c5f36c}
.chat-header h2{color:#f4f6f1}
.chat-count{background:#ffffff1a;color:#f3f6ef}
.chat-mode-tabs{padding:7px 9px;border-color:#ffffff20;background:#08100b42}
.chat-body{min-height:0;background:transparent!important}
.chat-empty>strong{color:#f5f7f2}
.chat-empty>p,.chat-footnote{color:#d0d8cf}
.suggestion{border-color:#ffffff32;background:#ffffff0e;color:#eaf0e7}
.suggestion:hover{border-color:#c5f36c;background:#ffffff1b}
.message-form{border-color:#ffffff20}
.message-form input{border-color:#ffffff36;background:#08100bb8;color:#fff}
.message-form input::placeholder{color:#bac4b9}
.message-form input:disabled{border-color:#ffffff26;background:#ffffff0c;color:#c1c9c0}
.message-form button:disabled{background:#ffffff25;color:#d6ddd5}
.chat-panel[data-chat-mode="group"] .chat-body,.chat-panel[data-chat-mode="public"] .chat-body{background:transparent!important}
.chat-panel .message p{background:#ffffff20;color:#f5f7f2}
.chat-panel[data-chat-mode="group"] .message p{background:#ffffff20;color:#f5f7f2}
.chat-panel[data-chat-mode="public"] .message p{border-color:#ffffff28;background:#d7f07830;color:#f5f7f2}
.chat-header-actions{display:flex;align-items:center;gap:7px}
.chat-toggle-button,.chat-hide-button{display:grid;width:32px;height:32px;place-items:center;padding:0;border:1px solid #ffffff35;border-radius:9px;background:#ffffff12;color:#f3f6ef;cursor:pointer}
.chat-toggle-button:hover,.chat-hide-button:hover{background:#ffffff22}
.chat-toggle-button svg,.chat-hide-button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.chat-toggle-restore{display:none}
.chat-toggle-button[aria-expanded="false"] .chat-toggle-minimize{display:none}
.chat-toggle-button[aria-expanded="false"] .chat-toggle-restore{display:block}
.workspace.is-chat-minimized .chat-panel{top:auto;right:clamp(12px,2vw,24px);bottom:clamp(12px,2vw,24px);left:auto;transform:none;width:min(220px,calc(100% - 24px));height:58px;min-height:0;max-height:58px}
.workspace.is-chat-minimized .chat-panel>:not(.chat-header){display:none!important}
:root[data-theme="dark"] .chat-toggle-button,:root[data-theme="dark"] .chat-hide-button{border-color:#ffffff35;background:#ffffff12;color:#f3f6ef}
:root[data-theme="dark"] .chat-toggle-button:hover,:root[data-theme="dark"] .chat-hide-button:hover{background:#ffffff22}
:root[data-theme="dark"] .chat-panel{border-color:#ffffff38;background:rgba(13,19,15,.72);color:#f4f6f1}
:root[data-theme="dark"] .chat-header{border-color:#ffffff25}
:root[data-theme="dark"] .chat-mode-tabs{border-color:#ffffff20;background:#08100b42}
:root[data-theme="dark"] .chat-panel[data-chat-mode="group"] .chat-body,:root[data-theme="dark"] .chat-panel[data-chat-mode="public"] .chat-body{background:transparent}
:root[data-theme="dark"] .chat-panel .suggestion,:root[data-theme="dark"] .chat-panel .message-form input{border-color:#ffffff32;background:#ffffff10;color:#f3f6ef}
:root[data-theme="dark"] .chat-panel .suggestion:hover{background:#ffffff20}
:root[data-theme="dark"] .chat-panel .message-form{border-color:#ffffff20}
:root[data-theme="dark"] .chat-panel .message-form button:disabled{background:#ffffff25;color:#d6ddd5}
:root[data-theme="dark"] .chat-panel[data-chat-mode="group"] .message p,:root[data-theme="dark"] .chat-panel[data-chat-mode="public"] .message p{border-color:#ffffff28;background:#ffffff20;color:#f5f7f2}
@media(max-width:820px){
  .chat-panel{width:min(330px,42%);height:min(520px,max(300px,72%))}
}
@media(max-width:680px){
  .workspace{display:block;padding:16px 0}
  .chat-panel{top:auto;right:8px;bottom:8px;left:8px;transform:none;width:auto;height:min(238px,calc(100% - 16px));min-height:190px;max-height:calc(100% - 16px);border-radius:14px;background:rgba(11,16,13,.76)}
  .chat-header{height:39px;padding:0 10px}
  .chat-header .eyebrow{display:none}
  .chat-header h2{font-size:13px}
  .chat-mode-tabs{height:34px;gap:4px;padding:3px 6px}
  .chat-mode-tab{min-height:28px;flex:1;padding-inline:5px;font-size:9px}
  .chat-mode-tab span{font-size:7px}
  .chat-body{min-height:0}
  .chat-empty{top:50%;width:92%}
  .chat-empty .chat-illustration,.chat-empty .suggestion-list{display:none}
  .chat-empty>strong{font-size:11px}
  .chat-empty>p{margin:4px 0;color:#d0d8cf;font-size:9px}
  .message-form{gap:6px;padding:5px 7px}
  .message-form input,.message-form button{height:36px}
  .message-form input{font-size:10px}
  .message-form button{width:36px}
  .chat-footnote{display:none}
.workspace.is-chat-minimized .chat-panel{right:8px;bottom:8px;left:auto;width:min(205px,calc(100% - 16px));height:46px;max-height:46px;border-radius:12px}
  .workspace.is-chat-minimized .chat-header{height:44px}
}

.friend-card-actions{display:flex;flex-direction:column;align-items:stretch;gap:6px;width:148px}
.friend-card-actions .friend-action,.friend-private-invite{min-height:34px;padding:0 9px;border:1px solid #d8e0d3;border-radius:8px;background:#f5f8f1;color:#36563d;font-size:9px;font-weight:700;cursor:pointer}
.friend-card-actions .friend-action:hover:not(:disabled),.friend-private-invite:hover:not(:disabled){border-color:#9bb298;background:#edf4e8}
.friend-card-actions .friend-action:disabled,.friend-private-invite:disabled{border-color:#e4e5df;background:#f3f3ef;color:#8c9189;cursor:not-allowed}
.friend-private-invite{border-color:#c4d9a8;background:#edf4df;color:#38553b}
.private-room-invite-dialog{position:relative;width:min(450px,calc(100vw - 28px));max-height:min(90vh,720px);overflow-y:auto;padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);box-shadow:0 20px 70px #10171055}
.private-room-invite-dialog::backdrop{background:#111a14a8;backdrop-filter:blur(3px)}
.private-room-invite-dialog>form{position:absolute;top:12px;right:12px}
.private-room-invite-dialog>.eyebrow{margin:0 42px 7px 0;color:var(--green)}
.private-room-invite-dialog h2{margin:0;font:700 22px/1.15 Manrope,sans-serif;letter-spacing:-.7px}
.private-room-invitee{margin:9px 0 16px;color:var(--muted);font-size:12px}
.private-room-offer-card{display:grid;gap:5px;padding:15px;border:1px solid #dce6d3;border-radius:12px;background:#f3f7ed}
.private-room-offer-card>span{color:#647362;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.private-room-offer-card>strong{color:#294b36;font:700 20px Manrope,sans-serif}
.private-room-offer-card>p{margin:0;color:#667463;font-size:11px;line-height:1.5}
.private-room-invite-copy{margin:14px 0;color:var(--muted);font-size:12px;line-height:1.55}
.private-room-local-note{margin:12px 0;color:var(--muted);font-size:10px;line-height:1.45}
.private-room-invite-dialog>.dialog-ok{width:100%;min-height:43px;margin-top:3px}
.private-room-response{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.private-room-response>.eyebrow,.private-room-counter-review>.eyebrow{margin:0 0 6px;color:var(--green)}
.private-room-response>p:nth-child(2),.private-room-counter-review>p:nth-child(2){margin:0;color:var(--muted);font-size:11px;line-height:1.5}
.private-room-response-actions{display:grid;gap:7px;margin-top:11px}
.private-room-response-actions button,.private-room-counter-form button{min-height:39px;padding:7px 11px;border:1px solid #d9e2d3;border-radius:9px;background:#f4f7ef;color:#405841;font-size:10px;font-weight:700;cursor:pointer}
.private-room-response-actions button:hover,.private-room-counter-form button:hover{border-color:#9bb298;background:#edf4e8}
.private-room-counter-form{display:grid;gap:7px;margin-top:12px}
.private-room-counter-form label{font-size:10px;font-weight:700}
.private-room-counter-form>div{display:flex;gap:7px}
.private-room-counter-form input{flex:1;min-width:0;height:40px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font:inherit;font-size:11px}
.private-room-counter-form small{color:var(--muted);font-size:9px;line-height:1.45}
.private-room-counter-review{margin-top:16px;padding:13px;border:1px solid #dce6d3;border-radius:11px;background:#f6f8f2}
.private-room-counter-review .private-room-response-actions{grid-template-columns:1fr 1fr}
.private-room-invite-status{min-height:18px;margin:12px 0 0;color:var(--muted);font-size:10px;line-height:1.5}
.private-room-session-note{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;margin:10px 0;padding:11px;border:1px solid #dce6d3;border-radius:10px;background:#f4f7ef}
.private-room-session-note[hidden],.private-room-invite-dialog [hidden]{display:none!important}
.private-room-session-note>p{grid-column:1/-1;margin:0;color:#4d604d;font-size:10px;line-height:1.5}
.private-room-session-note>button{min-height:34px;padding:0 10px;border:1px solid #c7d8bf;border-radius:8px;background:#e7f0df;color:#35573b;font-size:9px;font-weight:700;cursor:pointer}
.private-room-session-note>button:disabled{opacity:.65;cursor:default}
.private-room-session-note .private-room-monitor-banner{padding:7px 9px;border-radius:8px;background:#e9efe4;color:#4d604d;font-size:9px;font-weight:600}
.private-room-session-note .private-room-monitor-audit{color:#778174;font-size:8px}
.private-room-evidence-tools{grid-column:1/-1;display:grid;gap:7px;padding-top:8px;border-top:1px solid #dce6d3}
.private-room-evidence-tools[hidden],.private-room-evidence-preview[hidden]{display:none!important}
.private-room-evidence-tools>label{font-size:10px;font-weight:700;color:#4d604d}
.private-room-evidence-tools>select{width:100%;height:38px;padding:0 9px;border:1px solid #d5dfd0;border-radius:8px;background:#fffefa;color:#344335;font:inherit;font-size:10px}
.private-room-evidence-tools>button,.private-room-evidence-preview>button{min-height:36px;padding:0 10px;border:1px solid #c7d8bf;border-radius:8px;background:#e7f0df;color:#35573b;font-size:9px;font-weight:700;cursor:pointer}
.private-room-evidence-tools>button:disabled,.private-room-evidence-preview>button:disabled{opacity:.55;cursor:not-allowed}
.private-room-evidence-preview{display:grid;gap:7px}
.private-room-evidence-preview img{display:block;width:min(100%,520px);max-height:300px;object-fit:contain;border:1px solid #dce2d8;border-radius:8px;background:#f7f8f4}
.private-room-evidence-preview>p{margin:0;color:#69776a;font-size:9px;line-height:1.45}
.group-evidence-message{display:grid;gap:7px;max-width:min(88%,540px);margin:7px 0 7px auto;padding:10px;border:1px solid #dccb99;border-radius:10px;background:#fbf4df;color:#3d392b;font-size:10px;line-height:1.5}
.group-evidence-message strong{font-size:11px}
.group-evidence-message p{margin:0}
.group-evidence-message img{display:block;width:min(100%,440px);max-height:270px;object-fit:contain;border:1px solid #e0d6b8;border-radius:7px;background:#fff}
:root[data-theme="dark"] .friend-private-invite{border-color:#59704d;background:#344332;color:#e0efce}
:root[data-theme="dark"] .friend-card-actions .friend-action,:root[data-theme="dark"] .friend-private-invite{border-color:#4c5b4b;background:#2c392d;color:#cfe1c9}
:root[data-theme="dark"] .friend-card-actions .friend-action:disabled,:root[data-theme="dark"] .friend-private-invite:disabled{border-color:#3d463d;background:#303730;color:#9da99b}
:root[data-theme="dark"] .private-room-offer-card,:root[data-theme="dark"] .private-room-counter-review,:root[data-theme="dark"] .private-room-session-note{border-color:#495948;background:#283329}
:root[data-theme="dark"] .private-room-offer-card>span,:root[data-theme="dark"] .private-room-offer-card>p,:root[data-theme="dark"] .private-room-invite-copy,:root[data-theme="dark"] .private-room-local-note,:root[data-theme="dark"] .private-room-invitee,:root[data-theme="dark"] .private-room-counter-form small,:root[data-theme="dark"] .private-room-counter-review>p:nth-child(2),:root[data-theme="dark"] .private-room-session-note>p{color:#bdcabb}
:root[data-theme="dark"] .private-room-offer-card>strong{color:#e0efce}
:root[data-theme="dark"] .private-room-response-actions button,:root[data-theme="dark"] .private-room-counter-form button,:root[data-theme="dark"] .private-room-session-note>button{border-color:#4c604b;background:#303d30;color:#d9e6d3}
:root[data-theme="dark"] .private-room-counter-form input{border-color:#465347;background:#202820;color:#e8eee7}
:root[data-theme="dark"] .private-room-session-note .private-room-monitor-banner{background:#303b30;color:#ced9c9}
:root[data-theme="dark"] .private-room-session-note .private-room-monitor-audit{color:#9da99b}
:root[data-theme="dark"] .private-room-evidence-tools{border-color:#465347}
:root[data-theme="dark"] .private-room-evidence-tools>label{color:#bdcabb}
:root[data-theme="dark"] .private-room-evidence-tools>select{border-color:#465347;background:#202820;color:#e8eee7}
:root[data-theme="dark"] .private-room-evidence-tools>button,:root[data-theme="dark"] .private-room-evidence-preview>button{border-color:#4c604b;background:#303d30;color:#d9e6d3}
:root[data-theme="dark"] .private-room-evidence-preview img,:root[data-theme="dark"] .group-evidence-message img{border-color:#465347;background:#202820}
:root[data-theme="dark"] .private-room-evidence-preview>p{color:#9da99b}
:root[data-theme="dark"] .group-evidence-message{border-color:#6a5b36;background:#3c3524;color:#eee4c4}
:root[data-theme="dark"] .group-evidence-message img{background:#171c18}
@media(max-width:680px){
  .friend-card-actions{grid-column:2;flex-direction:row;flex-wrap:wrap;width:100%}
  .friend-card-actions .friend-action,.friend-private-invite{min-height:38px;flex:1 1 130px;padding:0 7px}
  .private-room-invite-dialog{padding:24px 19px}
  .private-room-counter-review .private-room-response-actions{grid-template-columns:1fr}
  .private-room-session-note{grid-template-columns:1fr}
  .private-room-session-note>button{width:100%}
  .group-evidence-message{max-width:100%}
}

@media(max-width:680px){
  .workspace:not(.is-chat-minimized) .chat-panel{height:min(172px,calc(64% - 8px));min-height:140px}
}

.chat-panel .chat-header{cursor:grab;touch-action:none;user-select:none}
.chat-panel .chat-header button{cursor:pointer}
.chat-panel.is-dragging .chat-header{cursor:grabbing}

.role-preview-open{min-height:36px;padding:0 12px;border:1px solid #d8e2d2;border-radius:10px;background:#f5f8f1;color:#385740;font-size:10px;font-weight:700;cursor:pointer}
.role-preview-open:hover{border-color:#a8bc9e;background:#edf4e7}
.role-preview-open[hidden]{display:none!important}
.admin-dashboard-actions{display:flex;align-items:center;gap:8px}
.role-preview-banner{position:relative;z-index:20;display:flex;align-items:center;gap:9px;width:min(620px,100%);margin:0 auto 12px;padding:10px 12px;border:1px solid #9bb889;border-radius:12px;background:#f3f8e9;color:#2d4631;box-shadow:0 10px 32px #1b251b35}
.workspace:fullscreen .role-preview-banner{position:absolute;top:64px;left:50%;width:min(620px,calc(100vw - 24px));margin:0;transform:translateX(-50%)}
.role-preview-banner[hidden]{display:none!important}
.role-preview-banner>div{display:grid;gap:2px;flex:1;min-width:0}
.role-preview-banner strong{font-size:11px}
.role-preview-banner span{color:#5c6c59;font-size:9px;line-height:1.4}
.role-preview-banner button{min-height:32px;padding:0 9px;border:1px solid #bdcdb3;border-radius:8px;background:#fffefa;color:#385740;font-size:9px;font-weight:700;cursor:pointer}
.role-preview-dialog{position:relative;width:min(510px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto;padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);box-shadow:0 20px 70px #10171055}
.role-preview-dialog::backdrop{background:#111a14a8;backdrop-filter:blur(3px)}
.role-preview-dialog>form{position:absolute;top:12px;right:12px}
.role-preview-dialog>.eyebrow{margin:0 40px 7px 0;color:var(--green)}
.role-preview-dialog h2{margin:0;font:700 21px/1.2 Manrope,sans-serif;letter-spacing:-.5px}
.role-preview-dialog>p:not(.eyebrow){margin:9px 0 16px;color:var(--muted);font-size:11px;line-height:1.55}
.role-preview-options{display:grid;gap:8px}
.role-preview-options button{display:grid;gap:3px;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--surface);text-align:left;cursor:pointer}
.role-preview-options button:hover,.role-preview-options button:focus-visible{border-color:#99b18d;background:#f3f7ee;outline:none}
.role-preview-options strong{color:var(--ink);font-size:12px}
.role-preview-options span{color:var(--muted);font-size:10px}
.role-preview-active .role-preview-open{border-color:#8da97e}
:root[data-theme="dark"] .role-preview-open,:root[data-theme="dark"] .role-preview-banner button{border-color:#4d604d;background:#29352a;color:#e0ecd9}
:root[data-theme="dark"] .role-preview-banner{border-color:#687f5d;background:#283528;color:#e0ecd9}
:root[data-theme="dark"] .role-preview-banner span,:root[data-theme="dark"] .role-preview-options span{color:#b7c4b2}
:root[data-theme="dark"] .role-preview-options button{border-color:#425043;background:#242c25}
:root[data-theme="dark"] .role-preview-options button:hover,:root[data-theme="dark"] .role-preview-options button:focus-visible{border-color:#829a70;background:#303c31}
:root[data-theme="dark"] .role-preview-options strong{color:#e5ece1}
.chat-panel[hidden]{display:none!important}
.chat-resize-handles{position:absolute;z-index:11;inset:0;pointer-events:none}
.chat-resize-handle{position:absolute;display:block;padding:0;border:0;border-radius:8px;background:transparent;color:#edf5e7;cursor:move;pointer-events:auto;touch-action:none;opacity:.62}
.chat-resize-handle:hover,.chat-resize-handle:focus-visible{opacity:1;background:#d7f0782b;outline:2px solid #c5f36c;outline-offset:-2px}
.chat-resize-handle::after{content:"";position:absolute;top:50%;left:50%;width:18px;height:2px;transform:translate(-50%,-50%);border-radius:2px;background:currentColor}
.chat-resize-n,.chat-resize-s{left:44px;right:44px;height:22px}
.chat-resize-n{top:0;cursor:ns-resize}
.chat-resize-s{bottom:0;cursor:ns-resize}
.chat-resize-e,.chat-resize-w{top:44px;bottom:44px;width:22px}
.chat-resize-e{right:0;cursor:ew-resize}
.chat-resize-w{left:0;cursor:ew-resize}
.chat-resize-e::after,.chat-resize-w::after{width:2px;height:18px}
.chat-resize-ne,.chat-resize-nw,.chat-resize-se,.chat-resize-sw{width:40px;height:40px}
.chat-resize-ne{top:0;right:0;cursor:nesw-resize}
.chat-resize-nw{top:0;left:0;cursor:nwse-resize}
.chat-resize-se{right:0;bottom:0;cursor:nwse-resize}
.chat-resize-sw{left:0;bottom:0;cursor:nesw-resize}
.chat-resize-ne::after,.chat-resize-nw::after,.chat-resize-se::after,.chat-resize-sw::after{width:9px;height:9px;border:1px solid currentColor;border-radius:2px;background:transparent}
.chat-panel .chat-footnote{padding-left:36px}
.workspace.is-chat-minimized .chat-resize-handles{display:none!important}
.chat-restore-button{position:absolute;z-index:14;min-height:44px;display:flex;align-items:center;gap:7px;padding:0 12px;border:1px solid #ffffff62;border-radius:12px;background:rgba(13,19,15,.88);color:#f4f6f1;box-shadow:0 8px 24px #0005;backdrop-filter:blur(8px);font-size:11px;font-weight:700;cursor:pointer}
.chat-restore-button:hover{border-color:#c5f36c;background:#1f3024}
.chat-restore-button[hidden]{display:none!important}
.chat-restore-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.chat-restore-button:focus-visible{outline:3px solid #c5f36c;outline-offset:2px}
:root[data-theme="dark"] .chat-restore-button{border-color:#ffffff62;background:rgba(13,19,15,.92);color:#f4f6f1}
@media(max-width:680px){
  .role-preview-banner{gap:5px;padding:8px}
  .workspace:fullscreen .role-preview-banner{top:60px}
  .role-preview-banner button{padding:0 7px;font-size:8px}
  .role-preview-dialog{padding:24px 18px}
  .admin-dashboard-actions{width:100%;flex-wrap:wrap}
  .admin-dashboard-actions>*{flex:1}
  .chat-resize-ne,.chat-resize-nw,.chat-resize-se,.chat-resize-sw{width:44px;height:44px}
  .chat-resize-e,.chat-resize-w{width:28px}
  .chat-resize-n,.chat-resize-s{height:28px}
  .chat-restore-button{min-height:44px;padding:0 10px;font-size:10px}
}

.workspace:not(:fullscreen) .control-bar{position:absolute;z-index:10;top:auto;right:auto;bottom:12px;left:50%;transform:translateX(-50%);display:flex;flex-wrap:nowrap;justify-content:center;gap:8px;width:max-content;max-width:calc(100% - 24px);padding:8px;border:1px solid #ffffff30;border-radius:14px;background:#172119d9;backdrop-filter:blur(8px)}
.workspace:not(:fullscreen) .control-bar .control-button{background:#fffefa;color:#354237}
.workspace:not(:fullscreen) .control-bar .primary-button{background:#2a7854;color:#fff}
.workspace:not(:fullscreen) .control-bar .next-button{background:#e0e8da;color:#344335}
.workspace:not(:fullscreen) .control-bar .next-button:disabled{opacity:.62}
.workspace .video-actions,.workspace .control-bar,.workspace .stage-caption,.workspace .camera-tile,.workspace .call-timer,.workspace .chat-side-button,.workspace .chat-panel{transition:opacity .28s ease,visibility .28s ease}
.workspace.is-idle .video-actions,.workspace.is-idle .control-bar,.workspace.is-idle .stage-caption,.workspace.is-idle .camera-tile,.workspace.is-idle .call-timer,.workspace.is-idle .chat-side-button,.workspace.is-idle .chat-panel{opacity:0;visibility:hidden;pointer-events:none}
.workspace.is-idle .control-bar:focus-within,.workspace.is-idle .video-actions:focus-within,.workspace.is-idle .stage-caption:focus-within,.workspace.is-idle .camera-tile:focus-within,.workspace.is-idle .chat-panel:focus-within{opacity:1;visibility:visible;pointer-events:auto}
.workspace.is-idle .camera-tile.is-pinned{opacity:1;visibility:visible;pointer-events:auto}
@media(max-width:900px){
  .workspace:not(:fullscreen) .control-bar{left:12px;transform:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:min(300px,calc(100% - min(360px,38%) - clamp(12px,2vw,24px) - 24px));max-width:none}
  .workspace:not(:fullscreen) .control-bar .control-button,.workspace:not(:fullscreen) .control-bar .primary-button,.workspace:not(:fullscreen) .control-bar .next-button{min-width:0;width:100%;height:43px;min-height:43px;padding:0 8px;font-size:10px}
  .workspace:not(:fullscreen) .control-bar .primary-button,.workspace:not(:fullscreen) .control-bar .next-button{flex:none}
}
@media(max-width:680px){
  .workspace:not(:fullscreen) .control-bar{top:40px;right:10px;bottom:auto;left:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:min(220px,calc(100% - 20px));max-width:none;transform:none}
  .workspace:not(:fullscreen) .control-bar .control-button,.workspace:not(:fullscreen) .control-bar .primary-button,.workspace:not(:fullscreen) .control-bar .next-button{min-width:0;padding-inline:8px}
}
@media(max-width:520px){
  .workspace:not(:fullscreen) .control-bar{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:6px}
  .workspace:not(:fullscreen) .control-bar .control-button,.workspace:not(:fullscreen) .control-bar .primary-button,.workspace:not(:fullscreen) .control-bar .next-button{width:100%;height:44px;min-height:44px;padding:0 5px;gap:5px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){
  .workspace .video-actions,.workspace .control-bar,.workspace .stage-caption,.workspace .camera-tile,.workspace .call-timer,.workspace .chat-side-button,.workspace .chat-panel{transition:none}
}
