:root{--m3ly-bg:#030104;--m3ly-bg-elevated:#08050a;--m3ly-surface:#100b12;--m3ly-surface-strong:#171019;--m3ly-text:#f8f5f7;--m3ly-text-muted:#a99da5;--m3ly-accent:#ff1687;--m3ly-accent-soft:#ff75bd;--m3ly-accent-rgb:255,22,135;--m3ly-accent-foreground:#fff;--m3ly-focus:#ff91ca;--m3ly-selection:rgba(255,22,135,.28);--m3ly-outgoing-bubble:linear-gradient(135deg,#d51b80,#a90058);--m3ly-success:#70d9ad;--m3ly-warning:#ffb36d;--m3ly-danger:#ff739c;--m3ly-offline:#ffc078;--m3ly-line:rgba(255,255,255,.12);--m3ly-space-1:4px;--m3ly-space-2:8px;--m3ly-space-3:12px;--m3ly-space-4:16px;--m3ly-space-6:24px;--m3ly-space-8:32px;--m3ly-radius-compact:8px;--m3ly-radius-card:16px;--m3ly-radius-dialog:22px}
:root[data-theme='night'][data-m3ly-accent='pink']{--m3ly-accent:#ff1687;--m3ly-accent-soft:#ff75bd;--m3ly-accent-rgb:255,22,135;--m3ly-accent-foreground:#fff;--m3ly-focus:#ff91ca;--m3ly-selection:rgba(255,22,135,.28);--m3ly-outgoing-bubble:linear-gradient(135deg,#d51b80,#a90058)}
:root[data-theme='night'][data-m3ly-accent='violet']{--m3ly-accent:#9d63ff;--m3ly-accent-soft:#c3a3ff;--m3ly-accent-rgb:157,99,255;--m3ly-accent-foreground:#fff;--m3ly-focus:#d0b8ff;--m3ly-selection:rgba(157,99,255,.3);--m3ly-outgoing-bubble:linear-gradient(135deg,#7f47df,#5430a9)}
:root[data-theme='night'][data-m3ly-accent='cyan']{--m3ly-accent:#19bfe5;--m3ly-accent-soft:#78ddf3;--m3ly-accent-rgb:25,191,229;--m3ly-accent-foreground:#031318;--m3ly-focus:#8ce8fa;--m3ly-selection:rgba(25,191,229,.28);--m3ly-outgoing-bubble:linear-gradient(135deg,#087f9b,#075a70)}
:root[data-theme='night'][data-m3ly-accent='green']{--m3ly-accent:#32bf82;--m3ly-accent-soft:#7bdeb3;--m3ly-accent-rgb:50,191,130;--m3ly-accent-foreground:#04150d;--m3ly-focus:#8cebc2;--m3ly-selection:rgba(50,191,130,.28);--m3ly-outgoing-bubble:linear-gradient(135deg,#15875a,#0b6140)}
:root[data-theme='night'][data-m3ly-accent='amber']{--m3ly-accent:#e58f26;--m3ly-accent-soft:#ffc170;--m3ly-accent-rgb:229,143,38;--m3ly-accent-foreground:#1d0f00;--m3ly-focus:#ffd196;--m3ly-selection:rgba(229,143,38,.3);--m3ly-outgoing-bubble:linear-gradient(135deg,#a75d09,#774204)}
:root[data-theme='night'][data-m3ly-accent='red']{--m3ly-accent:#ed4566;--m3ly-accent-soft:#ff8ca1;--m3ly-accent-rgb:237,69,102;--m3ly-accent-foreground:#fff;--m3ly-focus:#ffa1b2;--m3ly-selection:rgba(237,69,102,.28);--m3ly-outgoing-bubble:linear-gradient(135deg,#bc274b,#841b35)}
:root[data-theme='day'][data-m3ly-accent='pink']{--m3ly-accent:#b31364;--m3ly-accent-soft:#d82d7e;--m3ly-accent-rgb:179,19,100;--m3ly-accent-foreground:#fff;--m3ly-focus:#a20d59;--m3ly-selection:rgba(179,19,100,.2);--m3ly-outgoing-bubble:linear-gradient(135deg,#c71970,#94104f)}
:root[data-theme='day'][data-m3ly-accent='violet']{--m3ly-accent:#6740c7;--m3ly-accent-soft:#805bd7;--m3ly-accent-rgb:103,64,199;--m3ly-accent-foreground:#fff;--m3ly-focus:#5832bb;--m3ly-selection:rgba(103,64,199,.2);--m3ly-outgoing-bubble:linear-gradient(135deg,#7650d3,#5130a8)}
:root[data-theme='day'][data-m3ly-accent='cyan']{--m3ly-accent:#006d86;--m3ly-accent-soft:#087f9b;--m3ly-accent-rgb:0,109,134;--m3ly-accent-foreground:#fff;--m3ly-focus:#005e74;--m3ly-selection:rgba(0,109,134,.2);--m3ly-outgoing-bubble:linear-gradient(135deg,#087f9b,#00576c)}
:root[data-theme='day'][data-m3ly-accent='green']{--m3ly-accent:#08784c;--m3ly-accent-soft:#159160;--m3ly-accent-rgb:8,120,76;--m3ly-accent-foreground:#fff;--m3ly-focus:#08643f;--m3ly-selection:rgba(8,120,76,.2);--m3ly-outgoing-bubble:linear-gradient(135deg,#14885a,#075d3b)}
:root[data-theme='day'][data-m3ly-accent='amber']{--m3ly-accent:#8a4d00;--m3ly-accent-soft:#aa650d;--m3ly-accent-rgb:138,77,0;--m3ly-accent-foreground:#fff;--m3ly-focus:#714000;--m3ly-selection:rgba(138,77,0,.2);--m3ly-outgoing-bubble:linear-gradient(135deg,#a65e08,#714000)}
:root[data-theme='day'][data-m3ly-accent='red']{--m3ly-accent:#b42343;--m3ly-accent-soft:#d13b5c;--m3ly-accent-rgb:180,35,67;--m3ly-accent-foreground:#fff;--m3ly-focus:#9d1937;--m3ly-selection:rgba(180,35,67,.2);--m3ly-outgoing-bubble:linear-gradient(135deg,#c52d50,#8b1731)}
::selection{background:var(--m3ly-selection);color:var(--m3ly-text)}
body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}:where(a,button,input,select,textarea):focus-visible{outline:2px solid var(--m3ly-focus);outline-offset:3px}:where(.primary-action,.secondary-action,.primary-button,.icon-action){min-height:44px}
.m3ly-card{border:1px solid var(--m3ly-line);border-radius:var(--m3ly-radius-card);background:linear-gradient(180deg,var(--m3ly-surface-strong),var(--m3ly-surface))}.m3ly-status-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid var(--m3ly-line);border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.m3ly-status-badge[data-state="live"]{color:var(--m3ly-success)}.m3ly-status-badge[data-state="beta"]{color:var(--m3ly-accent-soft)}.m3ly-status-badge[data-state="coming-soon"]{color:var(--m3ly-warning)}
.m3ly-settings-group{display:grid;gap:var(--m3ly-space-3)}.m3ly-settings-row{display:flex;align-items:center;justify-content:space-between;gap:var(--m3ly-space-4);padding:var(--m3ly-space-4);border:1px solid var(--m3ly-line);border-radius:var(--m3ly-radius-compact);background:var(--m3ly-surface)}.m3ly-settings-row>div{min-width:0}.m3ly-settings-row strong,.m3ly-settings-row small{display:block}.m3ly-settings-row small{margin-top:4px;color:var(--m3ly-text-muted);line-height:1.45}.m3ly-notice{padding:var(--m3ly-space-4);border:1px solid var(--m3ly-line);border-radius:var(--m3ly-radius-compact);background:var(--m3ly-bg-elevated);color:var(--m3ly-text-muted)}.m3ly-notice[data-tone="warning"]{border-color:rgba(255,179,109,.35)}.m3ly-notice[data-tone="danger"]{border-color:rgba(255,115,156,.35)}
[data-feature-status="coming-soon"] :is(button,input,select,textarea){pointer-events:none;opacity:.5}[data-feature-status="coming-soon"] .m3ly-status-badge{box-shadow:0 0 20px rgba(255,179,109,.08)}[data-feature-status="beta"] .m3ly-status-badge,[data-feature-status="hardware-beta"] .m3ly-status-badge{box-shadow:0 0 20px rgba(255,79,176,.08)}
.empty-chat{position:relative;overflow:hidden}.empty-chat::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 38%,rgba(255,22,135,.13),transparent 26%),url('./m3ly-hero-scene-v1.webp') center/cover no-repeat;opacity:.22;pointer-events:none}.empty-chat>*{position:relative}.empty-chat-actions{display:flex;gap:10px;justify-content:center;margin-top:18px}.messenger-trust-row{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px}.messenger-trust-row span{padding:7px 9px;border:1px solid var(--m3ly-line);border-radius:999px;background:rgba(7,5,9,.74);color:var(--m3ly-text-muted);font-size:9px}
.share-hub-dialog{width:min(94vw,760px);padding:30px}.share-hub-head{display:flex;gap:16px;align-items:center;padding-right:42px}.share-hub-head>img{width:66px;height:66px;object-fit:contain;filter:drop-shadow(0 0 20px rgba(255,22,135,.3))}.share-hub-head h2{margin:0;font-size:28px}.share-hub-head p:last-child{margin:7px 0 0;color:var(--m3ly-text-muted);font-size:11px;line-height:1.55}.share-mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:24px 0 14px}.share-mode{min-height:76px;padding:12px;border:1px solid var(--m3ly-line);border-radius:12px;background:rgba(9,7,11,.8);color:var(--m3ly-text);text-align:left;cursor:pointer}.share-mode strong,.share-mode small{display:block}.share-mode strong{font-size:12px}.share-mode small{margin-top:6px;color:var(--m3ly-text-muted);font-size:8px;line-height:1.4}.share-mode.active{border-color:rgba(255,22,135,.65);background:linear-gradient(120deg,rgba(255,22,135,.17),rgba(141,77,255,.08));box-shadow:inset 3px 0 0 var(--m3ly-accent),0 0 28px rgba(255,22,135,.08)}.share-preview-card{display:grid;grid-template-columns:250px minmax(0,1fr);gap:20px;align-items:center;padding:18px;border:1px solid var(--m3ly-line);border-radius:16px;background:linear-gradient(145deg,rgba(14,9,16,.96),rgba(6,4,8,.96))}.share-qr-frame{padding:11px;border:1px solid rgba(255,22,135,.45);border-radius:17px;background:#fff;box-shadow:0 0 30px rgba(255,22,135,.18)}.share-qr-frame .contact-qr{width:100%;height:auto;margin:0;border-radius:8px}.share-link-meta{min-width:0}.share-link-meta>span{display:inline-flex;margin-bottom:10px;padding:6px 8px;border:1px solid rgba(255,22,135,.34);border-radius:999px;color:#ff8dca;font-size:8px;font-weight:800;text-transform:uppercase}.share-primary-actions{margin-top:12px}.share-advanced{display:flex;justify-content:space-between;gap:14px;margin:13px 2px}.share-advanced a{text-decoration:none}
.contact-gateway-shell{max-width:1120px;margin:auto;padding:22px 28px}.contact-gateway-brand{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px solid var(--m3ly-line)}.contact-gateway-brand .brand>img{width:42px;height:42px;object-fit:contain}.contact-gateway-brand .brand::before{display:none}.contact-gateway{min-height:calc(100vh - 105px);display:grid;grid-template-columns:minmax(320px,.9fr) minmax(380px,1.1fr);gap:26px;align-items:center;padding:36px 0}.contact-gateway-art{position:relative;display:grid;place-items:center;min-height:540px;border:1px solid rgba(255,22,135,.18);border-radius:24px;background:radial-gradient(circle,rgba(255,22,135,.16),transparent 42%),url('./m3ly-hero-scene-v1.webp') center/cover no-repeat;overflow:hidden}.contact-gateway-art::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(3,1,4,.86))}.contact-gateway-art>img{position:relative;z-index:1;width:min(62%,320px);filter:drop-shadow(0 0 45px rgba(255,22,135,.42))}.contact-gateway-art>p{position:absolute;z-index:2;bottom:28px;color:#ff8dca;font-size:9px;font-weight:800;letter-spacing:.18em}.contact-gateway .contact-entry{width:100%;margin:0;padding:34px;border-color:rgba(255,22,135,.26);border-radius:22px}.contact-gateway .contact-entry h1{margin:0;font-size:clamp(44px,6vw,70px);line-height:.94;letter-spacing:-.055em}.contact-gateway-lead{margin:17px 0;color:var(--m3ly-text-muted);font-size:13px;line-height:1.65}.contact-entry-actions{display:grid;gap:10px;margin:22px 0}.contact-entry-actions .text-button{padding:11px;text-align:center;text-decoration:none}.contact-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:18px 0}.contact-trust-grid span{padding:10px;border:1px solid var(--m3ly-line);border-radius:10px;background:rgba(7,5,9,.62);color:var(--m3ly-text-muted);font-size:8px;line-height:1.45}.contact-trust-grid strong{display:block;margin-bottom:4px;color:var(--m3ly-text);font-size:9px}
#guest-link-qr-box svg{display:block;width:100%;height:auto}.form-card .share-qr-frame{width:min(100%,330px);margin:18px auto;background:#fff}
@media(max-width:800px){.share-hub-dialog{padding:22px 16px}.share-hub-head>img{width:52px;height:52px}.share-mode-grid{grid-template-columns:1fr}.share-mode{min-height:58px}.share-preview-card{grid-template-columns:1fr}.share-qr-frame{width:min(100%,300px);margin:auto}.share-primary-actions{flex-direction:column}.share-advanced{align-items:flex-start;flex-direction:column}.empty-chat-actions{width:min(100%,340px);flex-direction:column}.empty-chat-actions>*{width:100%}.contact-gateway-shell{padding:16px}.contact-gateway{grid-template-columns:1fr;padding:20px 0}.contact-gateway-art{min-height:280px}.contact-gateway-art>img{width:180px}.contact-gateway .contact-entry{padding:24px 18px}.contact-trust-grid{grid-template-columns:1fr}.contact-gateway-brand .m3ly-status-badge{display:none}}
@media(max-width:480px){html,body{max-width:100%;overflow-x:hidden}.m3ly-card{border-radius:12px}.m3ly-settings-row{align-items:flex-start;flex-direction:column}.m3ly-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto}.share-preview-card{grid-template-columns:1fr}.composer{padding-bottom:max(10px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.m3ly-offline-control{position:relative;display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:4px 5px 4px 10px;border:1px solid rgba(255,115,156,.38);border-radius:999px;background:color-mix(in srgb,var(--m3ly-danger) 9%,var(--m3ly-surface));white-space:nowrap}.m3ly-offline-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--m3ly-danger);box-shadow:0 0 12px rgba(255,115,156,.65)}.m3ly-offline-status{max-width:180px;overflow:hidden;color:var(--m3ly-text);font-size:10px;font-weight:850;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.m3ly-offline-action,.m3ly-offline-clear,.m3ly-session-continuity{min-height:32px;padding:5px 10px;border-radius:999px;white-space:nowrap;font-size:10px;font-weight:850;letter-spacing:.01em}.m3ly-offline-clear{color:var(--m3ly-text-muted)}.m3ly-offline-clear-dialog{position:absolute;z-index:80;top:calc(100% + 10px);right:0;display:grid;width:min(340px,calc(100vw - 28px));gap:13px;padding:17px;border:1px solid rgba(255,115,156,.5);border-radius:14px;background:rgba(12,8,14,.99);box-shadow:0 18px 50px rgba(0,0,0,.5),0 0 28px rgba(255,22,135,.12);white-space:normal}.m3ly-offline-clear-dialog[hidden]{display:none!important}.m3ly-offline-clear-dialog p{margin:0;color:var(--m3ly-text-muted);font-size:11px;line-height:1.55}.m3ly-offline-clear-actions{display:flex;justify-content:flex-end;gap:8px}.m3ly-offline-clear-actions button{min-height:40px}
.permission-centre-dialog{width:min(94vw,680px)}.permission-centre-dialog>p{line-height:1.55}.permission-centre-choice{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:12px;margin:10px 0;padding:13px;border:1px solid var(--m3ly-line);border-radius:12px;background:rgba(8,6,10,.72)}.permission-centre-choice strong,.permission-centre-choice small{display:block}.permission-centre-choice small{margin-top:4px;color:var(--m3ly-text-muted);line-height:1.45}.permission-centre-choice input{margin-top:3px}.permission-centre-choice:has(input:disabled){opacity:.72}
.m3ly-offline-control[data-state="ready"]{border-color:rgba(112,217,173,.42);background:color-mix(in srgb,var(--m3ly-success) 10%,var(--m3ly-surface))}.m3ly-offline-control[data-state="ready"] .m3ly-offline-dot{background:var(--m3ly-success);box-shadow:0 0 12px rgba(112,217,173,.62)}.m3ly-offline-control[data-state="ready"] .m3ly-offline-action{border-color:rgba(112,217,173,.48)}
.m3ly-offline-control[data-state="busy"]{opacity:.72;cursor:progress}
.m3ly-offline-control[data-state="unavailable"] .m3ly-offline-action{border-color:rgba(255,115,156,.42);color:#ff9fbc}
.m3ly-session-continuity{border-color:rgba(255,22,135,.5)}
@media(max-width:720px){.messenger-topbar .top-actions{gap:6px;flex-wrap:wrap;justify-content:flex-end}.m3ly-offline-control{display:inline-flex!important;box-sizing:border-box;flex:1 1 100%;width:100%;min-width:0;justify-content:flex-end;order:3;min-height:44px;padding:3px 4px 3px 9px}.m3ly-offline-status{flex:1 1 auto;min-width:0;max-width:none;margin-right:auto;font-size:10px}.m3ly-offline-action,.m3ly-offline-clear{display:inline-flex!important;align-items:center;justify-content:center}.m3ly-offline-action,.m3ly-offline-clear,.m3ly-session-continuity{flex:0 0 auto;min-height:44px;padding:7px 10px;font-size:10px}.messenger-topbar .top-actions #lock-vault-header{display:inline-flex!important;min-width:44px;min-height:44px;padding:6px 9px;font-size:10px}.m3ly-offline-clear-dialog{position:absolute;top:calc(100% + 8px);right:0;bottom:auto;left:auto;width:min(340px,calc(100vw - 28px))}.m3ly-offline-keep{display:inline-flex!important;align-items:center;justify-content:center}}
:root{--m3ly-mobile-nav-height:68px;--m3ly-composer-offset:calc(var(--m3ly-mobile-nav-height) + env(safe-area-inset-bottom) + 8px)}
