@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#030b15;--text:#eef8ff;--muted:#9eafc2;--cyan:#7decff;--line:#a1dfff26;--panel:#071421ed;--heading:'Space Grotesk','Trebuchet MS',sans-serif;--body:'Barlow',Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-size:16px;overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}button,a{color:inherit}button{font:inherit;cursor:pointer}a{text-decoration:none}button{border:0}button:focus-visible,a:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}button:disabled{cursor:wait}button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}button[hidden],a[hidden],[hidden]{display:none!important}#universe{position:relative;height:100svh;min-height:560px;isolation:isolate;overflow:hidden}#scene{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 35%,#153c5a 0,#061422 50%,#02070f 100%);touch-action:none}#scene canvas{display:block;width:100%;height:100%;cursor:grab;outline:0}#scene canvas:active{cursor:grabbing}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#030b15cc 0,transparent 25%,transparent 65%,#030b15ed 100%);z-index:1}.topbar{position:absolute;z-index:10;top:0;left:0;width:100%;padding:27px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:13px;font-family:var(--heading);font-size:22px;font-weight:500;line-height:1.4}.brand img{filter:drop-shadow(0 0 9px #00bbff55)}.brand small{display:block;font-family:var(--body);font-size:10px;letter-spacing:3.1px;color:#abbdcd}.top-center{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:2.5px;color:#abc0cf}.tiny-cross{color:var(--cyan);font-size:25px}.top-actions{display:flex;align-items:center;gap:8px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;background:transparent;color:#bfd1dd;border-radius:50%}.icon-button:hover{background:#6dcfff16;color:#fff}.menu-button{display:flex;gap:20px;align-items:center;background:#82d9ff0a;border:1px solid var(--line);padding:12px 17px;margin-left:10px;font-size:14px;border-radius:4px;backdrop-filter:blur(12px)}.menu-button:hover{background:#82d9ff1a}.world-meta{position:absolute;top:110px;left:40px;right:40px;z-index:3;display:flex;justify-content:space-between;padding-top:17px;border-top:1px solid var(--line);font-size:11px;letter-spacing:2px;color:#a6c0d1}.meta-right span{margin:0 12px;color:#3e6c87}.scene-caption{position:absolute;z-index:3;left:6vw;bottom:124px;pointer-events:none}.scene-caption button{pointer-events:auto}.eyebrow{font-size:11px;letter-spacing:3px;font-weight:500;color:var(--cyan);display:block;margin-bottom:15px}h1{font-family:var(--heading);font-size:clamp(38px,4.2vw,65px);line-height:1.1;letter-spacing:-2.8px;font-weight:400;margin:0 0 12px;text-shadow:0 3px 28px #01101a}h1 span{color:var(--cyan)}.scene-caption p{font-size:17px;color:#bbd0df;margin:0 0 23px}.primary-button{background:#c0f6ff;display:inline-flex;align-items:center;justify-content:center;gap:24px;color:#04212e;border:1px solid #d7faff;padding:13px 18px;font-weight:600;font-size:14px;border-radius:3px;min-height:46px;transition:background .2s,transform .2s}.primary-button:hover{background:white;transform:translateY(-1px)}.right-rail{position:absolute;z-index:3;right:39px;top:36%;display:flex;flex-direction:column;align-items:center;gap:24px;pointer-events:none}.right-rail span{writing-mode:vertical-rl;font-size:10px;letter-spacing:3px;color:#9ebed4}.right-rail i{height:58px;width:1px;background:#83d8ff60}.right-rail b{font-size:32px;font-weight:400;color:var(--cyan)}.bottom-bar{position:absolute;z-index:10;bottom:0;left:0;width:100%;padding:24px 40px;display:flex;justify-content:space-between;align-items:center;gap:18px}.signature{font-size:10px;letter-spacing:1.4px;color:#6c899f;max-width:240px;line-height:1.8}.signature b{display:block;font-size:11px;font-weight:500;color:#b2c8d8}.controls-legend{display:flex;gap:25px;color:#a2b6c5;font-size:12px;align-items:center}.controls-legend span{display:flex;align-items:center;gap:7px}kbd{font:11px var(--body);border:1px solid #779ebf50;border-radius:3px;padding:4px 6px;min-width:24px;text-align:center;color:#d3e6f5}.help-button{border:1px solid #9ec8e05c;color:#b2ccdb;background:transparent;border-radius:50%;width:31px;height:31px;font-size:14px}.destinations{position:absolute;right:39px;top:150px;bottom:95px;width:min(420px,calc(100vw - 40px));background:var(--panel);border:1px solid var(--line);z-index:25;padding:26px;backdrop-filter:blur(22px);border-radius:5px;overflow:auto;box-shadow:0 20px 80px #0005}.panel-header{display:flex;justify-content:space-between;gap:10px;margin-bottom:16px}h2{font-family:var(--heading);font-weight:400;letter-spacing:-.9px;font-size:28px;line-height:1.2;margin:0 0 14px}.panel-header .eyebrow{margin-bottom:9px}.panel-header h2{font-size:24px}.close-menu{margin-top:-6px;font-size:25px}.destination{display:flex;gap:17px;align-items:center;padding:16px 4px;border-top:1px solid var(--line);transition:padding .2s,background .2s}.destination:hover,.destination[aria-current=page]{background:#49cbff0c;padding-left:12px}.destination-no{color:#79a8be;font-size:12px;font-family:var(--heading)}.destination div{flex:1}.destination strong{font-size:16px;font-weight:500}.destination small{display:block;color:var(--muted);font-size:13px;margin-top:4px}.destination>span:last-child{font-size:20px;color:#8ee6ff}.panel-footer{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;gap:16px;font-size:12px}.panel-footer a{color:#bfeefd}.panel-footer button{font-size:12px;color:var(--muted);background:transparent;padding:0}.location-panel{position:absolute;z-index:4;left:6vw;bottom:115px;width:340px;max-width:calc(100% - 70px);padding:24px;background:linear-gradient(135deg,#071723e8,#041320ce);border:1px solid var(--line);backdrop-filter:blur(18px);border-radius:4px}.location-panel p{color:#bdcfdb;font-size:16px;line-height:1.6;margin:0 0 18px}.location-panel h2{font-size:31px}.location-panel .text-link{display:block;font-size:14px;margin-top:18px}.location-panel .eyebrow{font-size:10px;letter-spacing:2px}.location-panel .primary-button{width:100%;margin-top:16px}.location-panel img{width:78px;max-height:100px;object-fit:cover;border:1px solid var(--line)}.text-link{font-size:14px;color:var(--cyan);background:none;padding:0;border:0}.text-link:hover{text-decoration:underline}.reticle{position:absolute;top:50%;left:50%;pointer-events:none;z-index:3;width:15px;height:15px;border:1px solid #ace8ff30;border-radius:50%;transform:translate(-50%,-50%);display:none}.reticle span{width:3px;height:3px;position:absolute;left:5px;top:5px;background:#d5f6ff;border-radius:50%}body.walking .reticle{display:block}body.walking .scene-caption .eyebrow,body.walking .scene-caption h1,body.walking .scene-caption p{display:none}body.walking .scene-caption{bottom:100px}body.walking .scene-caption button{background:#092436aa;color:#bbedff;border-color:var(--line);font-size:12px;min-height:38px}#portal-labels{position:absolute;inset:0;z-index:2;pointer-events:none}.portal-tag{position:absolute;transform:translate(-50%,-100%);border:0;background:transparent;color:#d7f7ff;pointer-events:auto;padding:10px 12px;text-align:center;min-width:135px;font-size:12px;letter-spacing:1.4px;white-space:nowrap;transition:color .15s;text-shadow:0 2px 10px #000;cursor:pointer}.portal-tag:hover{color:#fff}.portal-tag b{font-size:20px;display:block;font-weight:300;color:#a5edff;margin-bottom:9px}.portal-tag small{font-size:9px;letter-spacing:1.5px;display:block;color:#8fb6ce;margin-top:5px}.portal-tag .portal-name{font-size:13px}#loading{position:absolute;inset:0;background:#030b15;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;font-size:12px;letter-spacing:2px;color:#a7cbdc;transition:opacity .5s}.loading-orbit{height:46px;width:46px;border:1px solid #53d5ff24;border-top-color:#82e7ff;border-radius:50%;animation:orbit 1s linear infinite}@keyframes orbit{to{transform:rotate(360deg)}}#toast{position:absolute;top:160px;left:50%;transform:translateX(-50%);padding:12px 18px;font-size:14px;border:1px solid var(--line);background:#071929f5;z-index:40;border-radius:4px;opacity:0;pointer-events:none;transition:opacity .2s;text-align:center;max-width:90%}#toast.show{opacity:1}dialog{padding:38px;background:#081827;color:var(--text);border:1px solid #46748a7a;width:530px;max-width:calc(100vw - 32px);max-height:85svh;border-radius:6px;box-shadow:0 30px 100px #0008;z-index:50}dialog::backdrop{background:#010915ba;backdrop-filter:blur(8px)}dialog p{font-size:16px;line-height:1.6;color:#bdcdd9}.dialog-close{position:absolute;right:16px;top:14px;font-size:25px;color:#a1bdce;background:transparent;padding:3px 8px}dl{font-size:14px;line-height:1.5}dt{color:#d3f5ff;font-weight:500;margin-top:16px}dd{margin:5px 0 0;color:#a2b8c9}.muted{font-size:13px!important;color:#87a1b4!important}#link-fields label{display:block;font-size:14px;margin:16px 0 6px;color:#bed6e5}#link-fields input{width:100%;padding:12px;font:14px var(--body);color:#e4f5ff;background:#020c15;border:1px solid #719aad4d;border-radius:3px}#link-fields input:focus{outline:1px solid var(--cyan)}.dialog-actions{display:flex;align-items:center;justify-content:space-between;margin-top:26px;gap:14px}.form-error{color:#ffacb7;font-size:14px;min-height:1em}.touch-controls{position:absolute;bottom:125px;right:28px;z-index:6;display:grid;grid-template-columns:repeat(3,46px);grid-template-rows:repeat(2,44px);gap:4px}.touch-controls button{background:#0c293fcc;border:1px solid #7be3ff40;color:#c7f6ff;border-radius:5px;font-size:22px;touch-action:none;user-select:none}.touch-controls button:first-child{grid-column:2}.touch-controls button:nth-child(2){grid-column:1;grid-row:2}.touch-controls button:nth-child(3){grid-column:2;grid-row:2}.touch-controls button:nth-child(4){grid-column:3;grid-row:2}.fallback{position:absolute;top:35%;left:50%;transform:translateX(-50%);background:#071b2cd9;padding:24px;z-index:5;max-width:85vw;width:420px;border:1px solid var(--line)}.fallback p{color:#a5bac9;line-height:1.6}
@media(min-width:1600px){.scene-caption{bottom:16vh}.location-panel{bottom:16vh}}@media(max-width:1000px){.top-center{display:none}.controls-legend{gap:15px;font-size:11px}.controls-legend span:first-child{display:none}.scene-caption{left:40px;bottom:115px}.right-rail{right:28px}.location-panel{left:30px;width:300px}.signature{max-width:190px}.portal-tag{min-width:110px}.portal-tag .portal-name{font-size:12px}}@media(max-width:650px){#universe{min-height:480px}.topbar{padding:18px 20px}.brand{font-size:19px;gap:9px}.brand img{width:32px;height:32px}.brand small{font-size:8px;letter-spacing:2px}.top-actions{gap:0}.icon-button{width:34px;height:36px}.menu-button{font-size:12px;gap:9px;padding:9px 11px;margin-left:6px}.menu-button svg{width:17px}.world-meta{left:20px;right:20px;top:84px;font-size:9px;letter-spacing:1.5px;padding-top:13px}.meta-right{display:none}.right-rail{display:none}.scene-caption{left:26px;bottom:115px}.scene-caption .eyebrow{font-size:9px;letter-spacing:2.2px}h1{font-size:39px;letter-spacing:-1.9px}.scene-caption p{font-size:15px;margin-bottom:18px}.primary-button{font-size:13px;min-height:43px;padding:11px 15px}.bottom-bar{padding:18px 22px;align-items:flex-end}.signature{font-size:8px;line-height:1.8}.signature b{font-size:9px}.controls-legend{position:absolute;left:26px;bottom:76px;font-size:10px}.controls-legend span{display:none}.controls-legend span:last-child{display:flex}.controls-legend kbd{font-size:9px;padding:3px 5px}.destinations{top:120px;right:18px;bottom:80px;width:calc(100vw - 36px);padding:23px}.destination{padding:14px 4px}.destination strong{font-size:15px}.destination small{font-size:12px}.panel-header h2{font-size:23px}.location-panel{left:22px;bottom:102px;max-width:calc(100vw - 44px);width:calc(100vw - 44px);padding:20px}.location-panel h2{font-size:25px;margin-bottom:10px}.location-panel p{font-size:14px;line-height:1.5;margin-bottom:8px}.location-panel .eyebrow{margin-bottom:10px}.location-panel .text-link{margin-top:12px}.location-panel img{display:none}.location-panel .primary-button{margin-top:10px}.portal-tag .portal-name{font-size:12px;letter-spacing:.2px}.portal-tag small{display:none}.portal-tag{padding:6px;min-width:95px}.portal-tag b{font-size:18px;margin-bottom:5px}.panel-footer{font-size:11px}.panel-footer button{font-size:11px}dialog{padding:30px 24px}dialog h2{font-size:26px}.touch-controls{bottom:164px;right:24px;grid-template-columns:repeat(3,43px);grid-template-rows:repeat(2,41px)}body.walking .scene-caption{bottom:112px}#toast{top:125px}.fallback{top:25%;padding:22px}.fallback h2{font-size:23px}}
.speech-bubble{position:absolute;z-index:3;transform:translate(-50%,-120%);max-width:min(240px,70vw);padding:8px 10px;border:1px solid #7decff99;border-radius:14px;background:#071421f2;color:#e8f8ff;font:13px/1.35 var(--body);pointer-events:none;text-align:left;box-shadow:0 8px 24px #0006}.speech-bubble b{display:block;margin-bottom:3px;color:#7decff;font-size:11px;letter-spacing:.04em}.speech-bubble[hidden]{display:none!important}.character-world-label.crew-label{pointer-events:none}.friend-portal-tag{position:absolute;transform:translate(-50%,-100%);pointer-events:auto;min-width:108px;padding:6px 8px;text-align:center;color:#d7f7ff;background:transparent;text-shadow:0 2px 10px #000;font:12px/1.3 var(--body);cursor:pointer}.friend-portal-tag small{display:block;margin-top:3px;letter-spacing:1.2px;font-size:9px;color:#8fb6ce}.friend-portal-tag.frozen{color:#9eafc2}.friend-portal-tag.frozen small{color:#7e93a3}@media(max-width:700px){.speech-bubble{max-width:168px;font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}@media(max-height:650px) and (min-width:700px){.scene-caption{bottom:100px}.scene-caption h1{font-size:40px}.scene-caption .eyebrow{display:none}.location-panel{bottom:90px;padding:18px}.location-panel p{font-size:14px}.world-meta{top:94px}.destinations{top:126px;bottom:74px}.right-rail{display:none}}
/* MAMO V2 — conversation and personal worlds */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mamo-launcher{position:absolute;z-index:12;right:88px;bottom:118px;display:flex;align-items:center;gap:14px;padding:15px 20px;border:1px solid #67defd66;border-radius:7px;color:#dffaff;background:linear-gradient(130deg,#102d44e8,#05111df5);backdrop-filter:blur(15px);box-shadow:0 0 35px #12a2ff15;font-size:16px;text-align:left}.mamo-launcher:hover{border-color:#a8f1ff;background:#17374bf0}.mamo-launcher img{width:32px;height:32px}.mamo-launcher small{display:block;color:#8cafc4;font-size:10px;letter-spacing:1.6px;margin-top:4px}.launcher-wave{color:#88e9ff;font-size:20px;margin-left:14px}.mamo-panel{position:absolute;z-index:24;right:30px;top:110px;bottom:90px;width:420px;max-width:calc(100vw - 40px);background:#071623f5;border:1px solid #6ec0e044;backdrop-filter:blur(22px);border-radius:8px;display:flex;flex-direction:column;box-shadow:0 28px 80px #0008}.mamo-panel-top{padding:23px 23px 17px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between}.mamo-panel-top .eyebrow{font-size:10px;letter-spacing:1.9px;margin-bottom:8px}.mamo-panel-top h2{margin:0 0 5px;font-size:30px;letter-spacing:4px}.connection-label{font-size:12px;color:#9db3c6}.chat-toolbar{display:flex;align-items:center;padding:8px 13px;gap:7px;border-bottom:1px solid var(--line)}.chat-toolbar button{background:transparent;padding:8px 7px;border-radius:4px;color:#b4d4e7;font-size:12px}.chat-toolbar button:hover{background:#7fd4ff15}.chat-messages{flex:1;overflow:auto;padding:20px;min-height:100px;scrollbar-width:thin;scrollbar-color:#45728b transparent}.message{font-size:15px;line-height:1.65;margin:0 0 15px;padding:12px 15px;border-radius:8px;white-space:pre-wrap;overflow-wrap:anywhere}.message.assistant{background:#1831466e;border:1px solid #89cafa18;color:#d4e5f1;margin-right:14px}.message.user{background:#2f778d40;border:1px solid #89d7ed28;margin-left:38px;color:#ebfaff}.message.system{padding:10px 2px;color:#91b0c7;font-size:13px;line-height:1.55}.message-meta{display:block;font-size:10px;letter-spacing:.8px;color:#77b4d0;margin-bottom:4px}.message.pending{opacity:.6}.character-notice{font-size:12px;line-height:1.5;background:#8359aa16;border-bottom:1px solid #be96ff26;padding:11px 20px;margin:0;color:#d6beef}.voice-transcript{min-height:5px;font-size:12px;color:#9ddeee;padding:0 20px}.chat-form{padding:14px;border-top:1px solid var(--line)}.chat-form textarea{resize:none;width:100%;border:1px solid #628ca34d;background:#02101bd9;color:#e2f6ff;border-radius:5px;padding:13px;font:15px var(--body);line-height:1.5;max-height:110px;outline:none}.chat-form textarea:focus{border-color:#7fe4ff}.chat-form>div{display:flex;align-items:center;gap:10px;margin-top:9px}.microphone{background:none;color:#b5d7e7;border:1px solid #679aba48;display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:4px;font-size:12px}.microphone[aria-pressed=true]{color:#ffb4ce;border-color:#ff82ac;background:#71173955}.microphone svg{width:17px;height:17px}#chat-storage-note{flex:1;font-size:11px;text-align:center;color:#8faabd}.send-button{background:#b1efff;color:#032130;border-radius:5px;width:37px;height:36px;font-size:23px}.send-button:disabled{opacity:.45}.hover-guide{position:absolute;z-index:8;bottom:120px;left:50%;transform:translateX(-50%);width:350px;max-width:calc(100vw - 44px);background:#091d2ef2;border:1px solid #6ee5ff48;border-radius:6px;padding:15px;display:flex;align-items:flex-start;gap:12px;pointer-events:none;box-shadow:0 10px 35px #0006}.hover-guide img{width:26px;height:26px}.hover-guide strong{font-size:14px;font-weight:500;color:#c6f1ff}.hover-guide p{font-size:13px;line-height:1.5;color:#9cbed0;margin:5px 0 0}.workspace-dialog{width:850px;max-width:calc(100vw - 34px);padding:30px;max-height:85svh}.workspace-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:22px}.workspace-head .eyebrow{margin-bottom:8px}.workspace-head h2{margin:0}.workspace-error{padding:18px;border:1px solid #feafc433;background:#702a4019;color:#ecb5c5;font-size:15px;line-height:1.6;border-radius:5px}.workspace-error a{color:#c2f1ff;text-decoration:underline}.workspace-note{color:#9fb9cb;font-size:14px;line-height:1.6}.workspace-empty{padding:30px 18px;background:#0d253543;border:1px dashed #87b6ce40;border-radius:5px;color:#abc7d9;font-size:15px;line-height:1.6}.workspace-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:22px}.secondary-button{padding:11px 15px;min-height:42px;border:1px solid #72aec34d;background:#102a3d;color:#cbefff;border-radius:4px;font-size:14px}.secondary-button:hover{background:#214155}.workspace-form{display:grid;gap:16px}.workspace-form label{font-size:14px;color:#b5d1e1;display:block;margin-bottom:7px}.workspace-form input,.workspace-form select,.workspace-form textarea{width:100%;padding:12px;border:1px solid #659ab54d;border-radius:4px;font:15px var(--body);background:#020e19;color:#dcf4ff;outline:none}.workspace-form input:focus,.workspace-form textarea:focus,.workspace-form select:focus{border-color:#7ee6ff}.workspace-form textarea{resize:vertical;min-height:80px}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.workspace-form input[type=color]{height:45px;padding:5px}.workspace-form input[type=checkbox]{width:auto;accent-color:#7decff}.check-label{display:flex!important;align-items:flex-start;gap:12px;font-size:14px;line-height:1.5}.profile-preview{border:1px solid #51819849;border-radius:6px;background:radial-gradient(ellipse at 50% 40%,#15496099,#030d16 74%);height:180px;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.profile-preview svg{width:104px;height:150px;filter:drop-shadow(0 0 14px var(--avatar-color,#7decff))}.avatar-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid var(--avatar-color,#7decff);color:var(--avatar-color,#7decff);border-radius:50%;background:#071928;flex-shrink:0}.avatar-icon svg{width:28px;height:33px}.profile-card{display:flex;align-items:center;gap:15px;border:1px solid #719ab333;padding:17px;border-radius:5px;background:#0d243355}.profile-card>div{flex:1}.profile-card strong{font-weight:500;color:#d4effa;font-size:16px}.profile-card small{display:block;color:#90adc1;font-size:12px;margin-top:5px}.card-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.card-actions{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}.card-actions button{background:none;color:#a1e1f4;font-size:13px;padding:0}.card-actions .danger{color:#dfa0b0}.archive-row{display:flex;align-items:center;gap:15px;padding:17px 0;border-bottom:1px solid var(--line)}.archive-row>button:first-child{text-align:left;background:none;flex:1;color:#d4eefa;padding:0;font-size:15px;overflow-wrap:anywhere}.archive-row small{display:block;margin-top:5px;color:#86a5bb;font-size:12px}.archive-row .mini-action{padding:6px;color:#a5cfde;font-size:12px;background:none;white-space:nowrap}.community-tabs{display:flex;gap:6px;padding-bottom:20px}.community-tabs button{padding:10px 18px;border-radius:4px;background:#193748;color:#c2e3f3;border:1px solid transparent}.community-tabs button[aria-selected=true]{color:#aaf0ff;border-color:#66c5e266;background:#22506666}.post-composer{padding:16px;background:#0e293b55;border:1px solid var(--line);border-radius:6px;margin-bottom:20px}.post-composer textarea{width:100%;resize:vertical;min-height:90px;background:none;border:none;color:#d9edf9;font:16px var(--body);line-height:1.5;outline:none}.post-composer>div{display:flex;justify-content:space-between;align-items:center;gap:15px}.post-composer small{color:#85a7bd;font-size:12px}.post-card{padding:20px;border:1px solid var(--line);border-radius:6px;margin-bottom:14px;background:#0b203149}.post-author{display:flex;align-items:center;gap:12px}.post-author strong{font-size:15px;font-weight:500}.post-author small{font-size:12px;color:#80a1b8;display:block;margin-top:3px}.post-card p{color:#c6ddeb;font-size:15px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.post-actions{display:flex;justify-content:space-between}.post-actions button{background:none;color:#8dc5dc;font-size:13px;padding:3px}.post-actions button[aria-pressed=true]{color:#ff98c6}.character-disclosure{border-left:2px solid #b492dc;padding:10px 15px;margin:15px 0;color:#c4b1d6;font-size:13px;line-height:1.6}.mini-live-status{color:#9bcce0;font-size:13px}body:has(#mamo-panel:not([hidden])) .mamo-launcher{display:none}.location-panel .location-tools{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.location-panel .location-tools button{font-size:13px;color:#bcefff;border:1px solid #6bc6dc45;background:#234d6433;padding:10px 12px;border-radius:4px}
@media(max-width:1000px){.mamo-launcher{right:60px;bottom:112px;padding:12px 16px}.mamo-panel{right:20px;width:395px}.hover-guide{bottom:205px;left:auto;right:30px;transform:none}.mamo-launcher small{font-size:9px}.launcher-wave{display:none}}@media(max-width:650px){.mamo-launcher{right:23px;bottom:110px;padding:12px;border-radius:50%;width:53px;height:53px}.mamo-launcher img{width:28px;height:28px}.mamo-launcher>span{display:none}.mamo-panel{left:12px;right:12px;top:108px;bottom:72px;width:auto;max-width:none;border-radius:7px}.mamo-panel-top{padding:17px 18px 12px}.mamo-panel-top h2{font-size:25px}.mamo-panel-top .eyebrow{font-size:9px;margin-bottom:5px}.chat-messages{padding:15px}.message{font-size:14px;padding:10px 12px}.chat-toolbar{padding:6px 10px}.chat-toolbar button{font-size:12px;padding:7px 6px}.character-notice{font-size:11px;padding:8px 15px}.workspace-dialog{padding:23px 20px;width:calc(100vw - 26px);max-width:none;max-height:89svh}.workspace-head h2{font-size:24px}.form-columns,.card-grid{grid-template-columns:1fr}.workspace-form{gap:13px}.profile-preview{height:135px}.profile-preview svg{height:110px}.archive-row{gap:8px}.archive-row>button:first-child{font-size:14px}.archive-row .mini-action{font-size:11px}.hover-guide{left:22px;right:22px;bottom:186px;width:auto}.post-card{padding:16px}.profile-card{padding:15px}.post-composer small{max-width:150px}.chat-form textarea{font-size:16px}}
.chat-toolbar{flex-wrap:wrap}.chat-toolbar button[aria-pressed=true]{color:#bdf4ff}#hover-voice[aria-pressed=true]{background:#34718744}
/* V3: direct access to the worlds, companion and Bank. */
.quick-dock{position:fixed;z-index:20;left:50%;bottom:26px;transform:translateX(-50%);display:flex;gap:5px;padding:8px;background:#071828ed;border:1px solid #4ca9cd66;border-radius:12px;box-shadow:0 16px 45px #0009;max-width:calc(100vw - 32px);backdrop-filter:blur(20px)}
.quick-dock button{color:#dcf5ff;background:transparent;border:0;border-radius:7px;padding:12px 18px;font-size:14px;min-height:46px;white-space:nowrap;display:flex;align-items:center;gap:9px}.quick-dock button:hover,.quick-dock button:focus-visible{background:#25648477;outline:1px solid #91e7ff}.quick-dock button span{font-size:22px;color:#87dcfa}.quick-dock #open-bank span{color:#ffdc8e}
.atlas-dialog{width:1120px}.atlas-grid,.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0}.world-card,.module-card{display:flex;flex-direction:column;gap:11px;min-height:200px;padding:23px;text-align:left;color:#e5f8ff;background:linear-gradient(140deg,#18354b66,#081822);border:1px solid #3b6883;border-radius:9px;font-size:16px;line-height:1.5}.world-card{border-top:3px solid var(--world-accent,#78dbff)}button.world-card:hover,.module-card:hover{background:#1c3c52;border-color:#8bdffe}.world-card strong,.module-card strong{font-size:21px}.world-card>span:not(.world-card-number),.module-card>span{color:#b8cfdc;font-size:14px}.world-card b,.module-card b{margin-top:auto;font-size:14px;color:#a7edff}.world-card-number{font-size:30px;color:var(--world-accent,#8cdaff);font-weight:300}.module-card{min-height:190px}.module-card small{color:#dfc694;font-size:13px}.module-search{width:100%;padding:14px 16px;border:1px solid #395f75;background:#04121f;border-radius:6px;color:white;font-size:16px}.card-actions{flex-wrap:wrap}.card-actions button{font-size:14px;min-height:38px}
.bank-dialog{width:calc(100vw - 48px);max-width:1500px;height:91svh;max-height:91svh;padding:0;background:#05111c;overflow:hidden}.bank-dialog .workspace-head{padding:18px 23px;margin:0;height:85px;box-sizing:border-box}.bank-dialog iframe{display:block;border:0;width:100%;height:calc(100% - 85px);background:#061522}.dream-content{white-space:pre-wrap;overflow-wrap:anywhere}.fingerprint{display:block;word-break:break-all;color:#8ad7ee;font-size:13px}.dream-list{margin-top:28px}.dream-list summary{cursor:pointer;font-size:18px;padding:8px 0}.workspace-form>label{display:grid;gap:9px;font-size:16px}.workspace-form label.check-label{display:flex}.workspace-form select{min-height:44px}.workspace-actions{flex-wrap:wrap}
.chat-suggestions{display:flex;gap:7px;flex-wrap:wrap;padding:12px 18px 4px}.chat-suggestions button{padding:7px 9px;color:#c3efff;background:#18374c;border:1px solid #446b81;border-radius:5px;font-size:13px}.connection-detail{background:transparent;color:#e8c997;text-align:left;border:0;padding:9px 20px 13px;text-decoration:underline;font-size:13px}.mamo-launcher{right:35px;bottom:124px}.mamo-launcher small{font-size:12px;letter-spacing:.8px}.mamo-panel{top:143px;bottom:112px}.location-panel .location-tools button{font-size:14px;min-height:43px}.location-panel{bottom:126px}.bottom-bar .controls-legend,.bottom-bar .signature{display:none}.bottom-bar{pointer-events:none}.bottom-bar .help-button{pointer-events:auto}.world-meta{font-size:12px}.top-center{font-size:12px}.scene-caption{bottom:134px}.portal-tag .portal-name{font-size:14px}.portal-tag small{font-size:12px;letter-spacing:.5px}
@media(max-width:1050px){.quick-dock button{padding:10px 12px}.atlas-grid,.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.top-center{display:none}.mamo-panel{top:130px}.world-meta .meta-right{display:none}}
@media(max-width:700px){.quick-dock{bottom:10px;gap:2px;padding:5px;width:calc(100vw - 20px);max-width:none;box-sizing:border-box;display:grid;grid-template-columns:repeat(3,1fr)}.quick-dock button{white-space:normal;justify-content:center;font-size:13px;padding:7px 4px;gap:5px}.quick-dock button span{font-size:19px}.quick-dock #open-atlas{grid-column:span 2}.quick-dock #open-bank{color:#ffdfa5}.mamo-launcher{right:15px;bottom:123px;min-width:192px;width:auto;height:auto;padding:12px;border-radius:7px}.mamo-launcher>span{display:block}.mamo-launcher .launcher-wave{display:none}.mamo-launcher small{font-size:10px}.mamo-panel{top:105px;bottom:114px}.location-panel{bottom:185px;max-height:43svh;overflow:auto}.location-panel p{font-size:14px}.scene-caption{bottom:192px}.scene-caption h1{font-size:42px}.scene-caption p{font-size:16px}.atlas-grid,.module-grid{grid-template-columns:1fr}.world-card,.module-card{min-height:155px}.bank-dialog{width:calc(100vw - 12px);max-width:none;height:95svh;max-height:95svh}.bank-dialog .workspace-head{padding:14px;height:76px}.bank-dialog iframe{height:calc(100% - 76px)}.bank-dialog h2{font-size:22px}.workspace-dialog{max-height:92svh}.chat-toolbar{flex-wrap:wrap}.chat-suggestions{padding:8px 12px 2px}.chat-suggestions button{font-size:12px}.world-meta{font-size:12px}.touch-controls{bottom:120px!important}}

/* V8: controls stay readable in daylight; the blue holographic identity is constant. */
.environment-button{display:flex;align-items:center;gap:8px;background:#071b2de8;border:1px solid #6bdcff66;border-radius:5px;padding:11px 13px;color:#d8f6ff;font-size:13px;white-space:nowrap}.environment-button>span:first-child{font-size:19px;color:#7decff}.atmosphere-dialog{width:min(440px,calc(100vw - 28px));margin:140px 30px auto auto;padding:28px;max-height:calc(100svh - 170px);border-color:#78d7ff66}.atmosphere-dialog::backdrop{background:#020a151a;backdrop-filter:none}.environment-fields,.voice-settings{display:grid;gap:11px}.environment-fields label,.voice-settings label{color:#c1e5f4;font-size:14px}.environment-fields select,.voice-settings select{width:100%;min-width:0;font:inherit;font-size:15px;border:1px solid #4d829e;border-radius:5px;padding:12px;background:#0c2539;color:#e8f8ff}.environment-fields p{margin:0 0 6px!important;font-size:13px!important;line-height:1.5}.atmosphere-dialog>p{font-size:14px;line-height:1.55}.atmosphere-dialog .primary-button{width:100%;gap:8px}.voice-settings{margin:20px 0}.voice-settings input{accent-color:#7decff;width:100%}.voice-settings output{color:#7decff;font-size:14px}.voice-settings .muted{font-size:13px;margin:0 0 8px}.mamo-speaking-status{padding:8px 20px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #7bdfff24;font-size:12px;color:#b9ddec;flex-shrink:0}#mamo-expression{position:relative;display:block;width:36px;height:39px;border:1px solid #71ddff80;border-radius:45% 45% 55% 55%;box-shadow:0 0 17px #32baff30;background:#0b2c40;--mouth:.2}#mamo-expression i{position:absolute;width:7px;height:3px;border-radius:50%;background:#a9f6ff;top:12px;left:7px;box-shadow:0 0 7px #41dbff}#mamo-expression i+i{left:21px}#mamo-expression b{position:absolute;width:10px;height:8px;left:12px;top:25px;border:1px solid #a7efff;border-radius:50%;transform:scaleY(var(--mouth));transition:transform .08s}#mamo-expression[data-listening=true]{transform:rotate(-8deg);box-shadow:0 0 24px #65ddff70}body[data-daylight=true] .vignette{background:linear-gradient(180deg,#031522c9,transparent 29%,transparent 59%,#031522e8)}body[data-daylight=true] .world-meta,body[data-daylight=true] .right-rail{text-shadow:0 1px 6px #001726}body[data-daylight=true] .portal-tag{background:#062335d9;box-shadow:0 0 17px #32baff35}body[data-daylight=true] .scene-caption p{color:#e6f4ff;text-shadow:0 2px 8px #001725}.top-center{white-space:nowrap}@media(max-width:1220px){.top-center{display:none}}@media(max-width:700px){.environment-button{padding:8px;min-height:40px}.environment-button>span:last-child{display:none}.top-actions{gap:2px}.top-actions .menu-button{margin-left:2px;padding:10px;gap:6px}.topbar{gap:7px;padding-left:18px;padding-right:18px}.atmosphere-dialog{margin:93px auto auto;max-height:calc(100svh - 112px);padding:24px}.mamo-speaking-status{padding:5px 13px}#mamo-expression{width:32px;height:35px;transform:scale(.85)}.chat-suggestions{display:none}.chat-toolbar button{padding:6px;font-size:12px}}@media(prefers-reduced-motion:reduce){#mamo-expression b{transition:none;transform:scaleY(.25)}#mamo-expression[data-listening=true]{transform:none}}
.chat-states{display:flex;flex-wrap:wrap;gap:6px;margin:0 16px 8px;padding:0;list-style:none}.chat-states li{font-size:11px;letter-spacing:.02em;border:1px solid #3b6883;border-radius:99px;padding:4px 8px;color:#9ec4d6}.chat-states li[data-tone="ok"]{color:#8ae8cc;border-color:#2f6d5c}.chat-states li[data-tone="auth"]{color:#efcca0;border-color:#80664c}.chat-states li[data-tone="bad"]{color:#ffb4b4;border-color:#8a3d3d}.chat-mic-reason{margin:8px 0 0;color:#efcca0;font-size:12px;line-height:1.4}.chat-mic-reason[hidden]{display:none}.microphone:disabled{opacity:.45;cursor:not-allowed}.message-action{display:inline-flex;margin-top:10px;color:#041018;background:#8ae8cc;border-radius:6px;padding:8px 12px;text-decoration:none;font-size:14px}.connection-facts{margin:8px 0 16px;padding:0;list-style:none;display:grid;gap:8px}.connection-facts li{padding:10px 12px;border:1px solid #3b6883;border-radius:8px}.module-status{align-self:flex-start;width:max-content;font-size:11px;letter-spacing:.04em;text-transform:uppercase;border:1px solid currentColor;border-radius:99px;padding:3px 8px}.module-status[data-tone="ready"]{color:#8ae8cc}.module-status[data-tone="auth"]{color:#efcca0}.module-status[data-tone="pending"]{color:#9ec4ff}.module-status[data-tone="preparing"]{color:#cbb6ef}.bank-dialog{display:flex;flex-direction:column}.bank-dialog .workspace-head{height:auto;display:flex;justify-content:space-between;align-items:center;gap:12px}.bank-dialog-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.bank-open-tab{display:inline-flex;align-items:center;min-height:42px;padding:8px 12px;border:1px solid #80664c;border-radius:6px;color:#efcca0;text-decoration:none;font-size:14px;background:#2a2116}.bank-dialog iframe{flex:1;height:auto;min-height:0}.bank-frame-status{margin:0 18px 12px;color:#d5e9f5;font-size:14px}.bank-frame-status.is-error{display:grid;gap:12px;padding:14px 16px;border:1px solid #80664c;background:#2a2116;color:#ffe7c4}.bank-frame-status[hidden]{display:none}

/* Shared creation vault, attribution, rewards and folder NFT preparation. */
.creation-workspace{font-size:16px;line-height:1.55;min-width:0}.creation-tabs{display:flex;flex-wrap:wrap;gap:8px;padding:0 0 20px;border-bottom:1px solid #67d4ff33;margin-bottom:20px}.creation-tabs button,.creation-actions>button:not(.primary-button),.vault-breadcrumb button{background:#133346;color:#cff3ff;border:1px solid #68c9f24d;border-radius:5px;padding:9px 12px;font-size:14px}.creation-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.creation-workspace label{display:grid;gap:8px;margin:14px 0;color:#d4ebf5}.creation-workspace input,.creation-workspace select,.creation-workspace textarea{max-width:100%;font:inherit;background:#0a2132;color:#e5f7ff;border:1px solid #4d7b95;border-radius:5px;padding:12px;min-width:0}.creation-workspace input[type=checkbox]{width:20px;height:20px}.creation-workspace textarea{resize:vertical}.vault-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:22px 0}.vault-breadcrumb button{background:transparent;padding:4px 7px;border:0}.vault-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.vault-folder{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:8px;min-height:150px;background:linear-gradient(130deg,#13425b,#091f31);color:#cef2ff;border:1px solid #75d8ff66;border-radius:9px;padding:20px;overflow-wrap:anywhere}.vault-folder>span{font-size:36px;color:#83eaff}.vault-folder strong{font-size:17px}.vault-folder small{font-size:13px;color:#a5c6d7}.creation-card{background:#0a2335;border:1px solid #65bee83b;border-radius:9px;overflow:hidden;padding:16px;display:flex;flex-direction:column;gap:8px;min-width:0}.creation-open{background:transparent;color:inherit;border:0;padding:0;display:flex;flex-direction:column;text-align:left;gap:9px;min-width:0}.creation-open img{width:100%;height:150px;object-fit:contain;border-radius:5px;background:#05111e}.creation-open strong{font-size:17px;overflow-wrap:anywhere}.creation-open small{font-size:13px;color:#9ec3d8}.creation-kind{display:grid;place-items:center;background:#12394e;color:#8eeaff;border-radius:7px;width:100%;height:110px;font-size:42px}.creation-card p{margin:0}.creation-metrics{font-size:13px;color:#a3c9df;line-height:1.6}.creation-points{color:#a4f3ff;font-size:15px}.creation-card>button{background:#174159;color:#cff6ff;border:1px solid #68c9f24d;padding:9px;border-radius:4px;font-size:14px}.creation-preview{display:block;max-width:100%;max-height:430px;margin:20px auto;object-fit:contain}.creation-text{white-space:pre-wrap;overflow-wrap:anywhere;font:16px/1.7 var(--body);padding:22px;background:#061b29;border-left:2px solid #76dfff;max-height:50svh;overflow:auto}.creation-author{color:#afd0e1}.vault-cdn-row{display:block;width:100%;padding:18px;text-align:left;background:#0d2a3d;color:#d7f3ff;border:1px solid #6bc6ee42;border-radius:5px;margin:10px 0;font-size:15px;overflow-wrap:anywhere}.banque-link{margin:0 0 18px;padding:16px;border:1px solid #9af6ff;border-radius:8px;background:#0e3c52;color:#f3fdff}.banque-link h3{margin:2px 0 8px;color:#fff;font-size:22px}.banque-kicker{margin:0;color:#9af6ff;font-size:12px;letter-spacing:1.8px}.banque-figure{margin:0 0 8px;font:46px/1 var(--heading);color:#d9fbff}.banque-status{margin:0;color:#d5f6ff}.banque-link p{color:#e7f7ff}.banque-link a{color:#b7f4ff;text-decoration:underline}.reward-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:24px 0}.reward-stats>div{padding:18px 12px;background:linear-gradient(140deg,#13455f,#0a2134);border:1px solid #81d6ff55;border-radius:8px;display:flex;flex-direction:column;gap:8px}.reward-stats strong{font:34px var(--heading);color:#a2eeff}.reward-stats span{font-size:14px;color:#c0dce9}.reward-history article{display:grid;grid-template-columns:80px 1fr;gap:5px 14px;padding:15px 0;border-bottom:1px solid #75c9eb33}.reward-history strong{color:#9fefff}.reward-history small{grid-column:2;color:#99bdcf;font-size:13px}.nft-detail{margin:24px 0;padding:22px;background:#0b263b;border:1px solid #82daff77;border-radius:8px}.nft-chain-status{padding:14px 18px;border-left:2px solid #d8bc79;background:#3b302029;color:#e5d2a9;font-size:14px}.nft-file-list{max-height:270px;overflow:auto;margin-top:18px}.nft-file-list p{font-size:14px;overflow-wrap:anywhere;border-top:1px solid #77bee42b;padding:10px 0;margin:0}.quick-dock{max-width:calc(100vw - 28px);overflow-x:auto}.quick-dock button{flex-shrink:0}@media(max-width:850px){.vault-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reward-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.quick-dock{grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible}.quick-dock #open-atlas{grid-column:auto}.quick-dock button{font-size:12px;min-height:46px;gap:2px;display:flex;flex-direction:column}.quick-dock button span{font-size:16px}.vault-grid{grid-template-columns:1fr}.creation-tabs button{flex:1 1 auto}.creation-actions>*{flex:1 1 140px}.reward-history article{grid-template-columns:65px minmax(0,1fr)}.nft-detail{padding:15px}.creation-text{padding:15px}}
/* Aura belongs to the sky, with a keyboard and touch entrance as well. */
.aura-sky-tag{position:absolute;transform:translate(-50%,0);pointer-events:auto;display:grid;gap:5px;place-items:center;padding:10px 19px;color:#d4f5ff;background:#08182cd9;border:1px solid #9be9ff88;border-radius:24px;box-shadow:0 0 30px #38c5ff29;backdrop-filter:blur(12px);cursor:pointer;white-space:nowrap}.aura-sky-tag span{font-size:16px;letter-spacing:5px;padding-left:5px}.aura-sky-tag small{font-size:9px;letter-spacing:1.4px;color:#e1b5dc}.aura-sky-tag:hover,.aura-sky-tag:focus-visible{background:#193e54;border-color:#ffe0f3;outline:2px solid #98e6ff;outline-offset:4px}.aura-sky-tag[hidden]{display:none}.quick-dock #open-aura span{color:#ffacd4}.quick-dock #open-aura{color:#ffe1f0}.aura-menu-entry{display:flex;align-items:center;gap:18px;padding:19px;color:#e1f5ff;text-decoration:none;border-top:1px solid #80dfff33}.aura-menu-entry>span:first-child{font-size:30px;color:#ffa3d2}.aura-menu-entry div{flex:1}.aura-menu-entry small{display:block;margin-top:6px;color:#9ebdcf;font-size:12px}.aura-menu-entry:hover{background:#164158}.aura-dialog{padding:0;width:calc(100vw - 38px);max-width:1660px;height:95dvh;max-height:95dvh;background:#071626;border:1px solid #8fdcff80;border-radius:16px;overflow:hidden;box-shadow:0 0 80px #0c9fe838}.aura-dialog::backdrop{background:#030b17dc;backdrop-filter:blur(8px)}.aura-dialog-head{height:60px;padding:10px 20px;display:flex;align-items:center;gap:20px;border-bottom:1px solid #7cc9ec3d;box-sizing:border-box}.aura-dialog-head>div{display:flex;align-items:center;gap:12px;flex:1}.aura-dialog-head>div>span{font-size:28px;color:#ffabcf}.aura-dialog-head strong{font-size:14px;font-weight:500;letter-spacing:.5px}.aura-dialog-head a{font-size:12px;color:#aedcf4}.aura-dialog-head button{color:#d5f3ff;background:#153047;border:1px solid #71b9dc70;border-radius:8px;padding:8px 12px;min-height:38px;font-size:12px}.aura-dialog-head button span{font-size:20px;margin-left:12px}.aura-dialog iframe{border:0;width:100%;height:calc(100% - 60px);background:#071626;display:block}.aura-dialog #aura-loading{position:absolute;left:0;right:0;top:62px;padding:24px;text-align:center;background:#071626;color:#b2d6ee;font-size:14px}.aura-dialog #aura-loading[hidden]{display:none}@media(min-width:701px){.quick-dock{overflow-x:auto;justify-content:flex-start}.quick-dock button{padding-left:12px;padding-right:12px;flex-shrink:0}}@media(max-width:700px){.quick-dock #open-atlas{grid-column:auto}.aura-sky-tag{padding:8px 13px}.aura-sky-tag span{font-size:13px}.aura-sky-tag small{font-size:8px}.aura-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border-radius:0;border:0}.aura-dialog-head{padding:10px 14px;gap:8px}.aura-dialog-head a{display:none}.aura-dialog-head>div>span{display:none}.aura-dialog-head strong{font-size:12px}.aura-dialog-head button{font-size:11px}.aura-dialog-head button span{margin-left:6px}}

/* Native dialogs remain out of layout until show()/showModal() sets open. */
dialog:not([open]){display:none!important}

body.light-mode #scene{background:radial-gradient(ellipse at 50% 40%,#12394b,#030c17 70%)}
.fallback .primary-button{margin:6px;white-space:normal}.fallback{max-height:calc(100dvh - 230px);overflow:auto}

/* The dock can wrap as actions arrive; adjacent controls follow its measured height. */
:root{--dock-height:64px;--dock-bottom:26px;--dock-clearance:calc(var(--dock-height) + var(--dock-bottom) + 10px)}
.quick-dock{bottom:var(--dock-bottom)}
.mamo-launcher{bottom:var(--dock-clearance)}
@media(max-width:700px){
 :root{--dock-height:182px;--dock-bottom:max(10px,env(safe-area-inset-bottom,0px))}
 #universe{height:100dvh;min-height:0}
 .quick-dock{max-height:34dvh;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
 .mamo-launcher{position:fixed;z-index:26;right:12px;bottom:var(--dock-clearance);width:calc((100vw - 32px)/2);min-width:0;height:56px;min-height:56px;gap:8px;padding:8px;border-radius:12px;font-size:13px;line-height:1.2}
 .mamo-launcher img{width:25px;height:25px;flex:none}
 .mamo-launcher>span{min-width:0;overflow-wrap:anywhere}
 .mamo-launcher small{font-size:8px;letter-spacing:.3px;line-height:1.3}
 .scene-caption,body.walking .scene-caption{left:22px;right:22px;bottom:calc(var(--dock-clearance) + 72px);max-height:calc(100dvh - var(--dock-clearance) - 184px);overflow:auto;overscroll-behavior:contain;pointer-events:auto}
 .scene-caption h1{font-size:clamp(32px,9vw,42px)}
 .location-panel{bottom:calc(var(--dock-clearance) + 72px);max-height:calc(100dvh - var(--dock-clearance) - 184px);overscroll-behavior:contain}
 .fallback{position:fixed;top:112px;left:12px;right:12px;bottom:calc(var(--dock-clearance) + 72px);width:auto;max-width:none;max-height:none;transform:none;padding:16px;overflow:auto;overscroll-behavior:contain}
 .fallback h2{font-size:23px}.fallback p{font-size:14px;margin:10px 0}.fallback .primary-button{display:flex;width:100%;margin:8px 0}
 .touch-controls{bottom:calc(var(--dock-clearance) + 66px)!important;right:12px}
 .destinations{top:105px;bottom:12px;z-index:40}
 .mamo-panel{position:fixed;z-index:44;top:max(82px,env(safe-area-inset-top,0px));bottom:max(12px,env(safe-area-inset-bottom,0px));min-height:0;overflow:hidden}
 body:has(#destinations:not([hidden])) .mamo-launcher,body:has(dialog[open]) .mamo-launcher{visibility:hidden}
 body:has(#destinations:not([hidden])) .fallback,body:has(#mamo-panel:not([hidden])) .fallback,body:has(#mission-panel:not([hidden])) .fallback,body:has(#presence-panel:not([hidden])) .fallback,body:has(dialog[open]) .fallback{visibility:hidden;pointer-events:none}
}
/* Version cellulaire : la scène occupe l’écran. Aucun menu. La marche reste au doigt. */
.cellular-bar{display:none}
@media(max-width:700px){
 html.cellular-immersive{--dock-height:0px;--dock-bottom:0px}
 html.cellular-immersive .topbar,html.cellular-immersive .world-meta,html.cellular-immersive .quick-dock,html.cellular-immersive .bottom-bar,html.cellular-immersive .scene-caption,html.cellular-immersive .location-panel,html.cellular-immersive .right-rail,html.cellular-immersive .mamo-launcher,html.cellular-immersive .controls-legend{display:none!important}
 html.cellular-immersive .vignette{background:linear-gradient(180deg,#030b1522 0,transparent 6%,transparent 94%,#030b1522 100%)}
 html.cellular-immersive #universe{height:100dvh;min-height:100dvh}
 html.cellular-immersive .cellular-bar{position:fixed;z-index:36;top:max(8px,env(safe-area-inset-top,0px));right:max(8px,env(safe-area-inset-right,0px));display:block}
 html.cellular-immersive #cellular-vision{width:40px;height:40px;min-height:40px;padding:0;border-radius:50%;background:#07142166;border:1px solid #7decff44;opacity:.7}
 html.cellular-immersive #cellular-vision::before{content:"";display:block;width:14px;height:2px;margin:0 auto;background:#eef8ff;box-shadow:0 -5px 0 #eef8ff,0 5px 0 #eef8ff}
 html.cellular-immersive .touch-controls{z-index:30;bottom:max(18px,env(safe-area-inset-bottom,0px))!important;right:max(12px,env(safe-area-inset-right,0px));grid-template-columns:repeat(3,62px);grid-template-rows:repeat(2,56px)}
 html.cellular-immersive .touch-controls button{font-size:28px}
}
.mamo-panel-identity{display:flex;align-items:center;gap:13px;min-width:0}.mamo-panel-identity>img{width:54px;height:72px;object-fit:cover;object-position:center 22%;border:1px solid #7defff5c;border-radius:7px;box-shadow:0 0 19px #29cfff2b;background:#020812;flex:none}@media(max-width:650px){.mamo-panel-identity{gap:10px}.mamo-panel-identity>img{width:42px;height:56px}}

.presence-image-title{margin:14px 0 8px;font-size:14px;color:#d7f4ff}.presence-images{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.presence-image{position:relative;display:grid;gap:6px;justify-items:center;cursor:pointer;border:1px solid #2c4d63;border-radius:8px;padding:6px;background:#071421;min-width:0}.presence-image img{width:100%;aspect-ratio:3/4;object-fit:contain;background:#030b15;border-radius:6px}.presence-image span{font-size:11px;line-height:1.25;text-align:center;color:#d7f4ff}.presence-image input{position:absolute;opacity:0;pointer-events:none}.presence-image:has(input:checked){border-color:#95e4f7;box-shadow:0 0 0 1px #95e4f7}.presence-image:focus-within{outline:2px solid #a1e6ff;outline-offset:2px}@media(max-width:700px){.presence-images{grid-template-columns:repeat(2,minmax(0,1fr))}}
