:root{color-scheme:dark;--bg:#08141c;--surface:#11232b;--line:#ffffff19;--ink:#edf9f7;--muted:#93aaa9;--mint:#42d7b5;--mint2:#1aa990;--gold:#ffc977;--chip:#15363a}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;font:14px/1.5 system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);background:var(--bg)}body{overflow:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.48;cursor:default}input,textarea,select{outline:none}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--mint)}.hidden{display:none!important}.muted{color:var(--muted)}.eyebrow{letter-spacing:.17em;font-size:10px;font-weight:800;color:var(--mint)}.cta{border:0;color:#052b2a;background:linear-gradient(130deg,#6ee3bc,#34cdaa);padding:16px 22px;border-radius:14px;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:14px;box-shadow:0 12px 30px #14b48a28}.cta:hover{filter:brightness(1.07)}.cta.smaller{display:inline-flex;padding:12px 19px}.icon{color:var(--ink);background:#ffffff0a;border:1px solid var(--line);border-radius:12px;width:39px;height:39px;font-size:20px;display:grid;place-items:center}.icon:hover{background:#ffffff20}.auth-page{display:grid;grid-template-columns:1.07fr .93fr;height:100dvh}.auth-art{position:relative;overflow:hidden;background:radial-gradient(circle at 65% 36%,#21634f8f,transparent 45%),radial-gradient(circle at 10% 75%,#23486a,transparent 50%),#102631;display:flex;align-items:center;flex-direction:column;justify-content:center}.art-orb{position:absolute;width:330px;height:330px;border:1px solid #ffffff16;border-radius:50%;pointer-events:none}.orb-one{right:-190px;top:-80px}.orb-two{left:-260px;bottom:-100px;width:500px;height:500px}.art-label{position:absolute;top:39px;left:48px;font-size:11px;font-weight:800;letter-spacing:.12em;color:#c4e5db}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 12px var(--mint);margin-right:8px}.auth-mascot{position:absolute;top:6%;width:min(85%,570px);max-height:62%;object-fit:contain;filter:drop-shadow(0 24px 35px #020e13aa)}.art-bottom{position:absolute;bottom:45px;left:clamp(26px,5vw,86px);max-width:550px}.art-bottom h1{font-size:clamp(34px,4vw,57px);letter-spacing:-.06em;line-height:1.12;margin:12px 0 16px}.art-bottom h1 em{font-style:normal;color:#75dfbc}.art-bottom p{color:#b4cccb;max-width:410px;font-size:15px}.auth-right{background:radial-gradient(circle at 100% 0%,#14343780,transparent 40%),#0c1923;display:flex;flex-direction:column;padding:38px clamp(20px,5vw,70px);align-items:stretch}.auth-top{display:flex;align-items:center;gap:12px;font-size:22px}.auth-top img{width:45px;height:45px;object-fit:contain;border-radius:13px}.edition{font-size:10px;letter-spacing:.1em;color:#83bbb1;border:1px solid #ffffff23;padding:5px 8px;border-radius:8px;margin-left:auto}.auth-panel{max-width:430px;width:100%;margin:auto}.auth-panel h2{font-size:clamp(32px,3.5vw,49px);line-height:1.08;letter-spacing:-.055em;margin:16px 0 11px}.auth-panel form{display:flex;flex-direction:column;gap:9px;margin-top:30px}.auth-panel label,.form-row label{font-size:12px;font-weight:700;color:#c3d3d7}.auth-panel input,.field,dialog textarea,dialog select{width:100%;border:1px solid #ffffff22;background:#ffffff09;color:var(--ink);padding:13px 15px;border-radius:12px}.auth-panel input{margin-bottom:14px}.auth-panel .cta{margin-top:11px}.text-link{background:none;border:0;color:var(--muted);padding:19px 0;text-align:center;width:100%}.text-link b{color:var(--mint)}.auth-note{margin-top:24px;border-top:1px solid var(--line);padding-top:24px;font-size:12px;line-height:1.6;color:#78989c}.auth-note span{color:var(--mint);font-size:20px;padding-right:8px}.bottom-label{color:#567782;font-size:11px}.alert{color:#ff8d98;min-height:16px}.layout{display:flex;height:100dvh;overflow:hidden;background:#0a1720}.side{width:365px;max-width:45vw;display:flex;flex-direction:column;border-right:1px solid var(--line);background:radial-gradient(circle at 0% 0%,#17403977,transparent 38%),#0e2029;flex-shrink:0}.side-top{padding:23px 20px 18px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:10px;font-size:21px;letter-spacing:-.05em}.brand img{width:42px;height:42px;object-fit:contain}.brand small{display:block;letter-spacing:0;font-size:10px;color:#93a9ae;font-weight:500}.me-card{margin:2px 15px 20px;background:linear-gradient(110deg,#21504277,#21455044);border:1px solid #ffffff17;border-radius:16px;padding:11px 13px;display:flex;align-items:center;gap:10px;color:var(--ink);text-align:left}.avatar{display:grid;place-items:center;flex-shrink:0;border-radius:50%;width:44px;height:44px;color:#ffffff;background:linear-gradient(150deg,#49aeb6,#446888);font-weight:800;font-size:20px;overflow:hidden}.avatar img,.avatar video{height:100%;width:100%;object-fit:cover}.me-meta{min-width:0;flex:1}.me-meta b,.me-meta small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.me-meta small{color:#9dccbf;font-size:11px}.chev{color:#bdeadc;font-size:25px}.section-title{display:flex;align-items:center;justify-content:space-between;margin:0 21px 10px;letter-spacing:.12em;font-size:10px;color:#8ca4aa;font-weight:800}.subtle{border:0;background:none;color:#67ddbb;font-size:11px;letter-spacing:0;font-weight:700}.stories{min-height:83px;display:flex;gap:13px;align-items:flex-start;padding:0 18px 14px;overflow-x:auto}.story-self{min-width:60px;cursor:pointer;display:flex;align-items:center;flex-direction:column;gap:5px;color:#aabfc0}.story-self span{height:52px;width:52px;display:grid;place-items:center;border:1px dashed #68e5bb99;color:#80e1bd;border-radius:50%;background:#3d8e8033;font-size:25px}.story-self small,.story-item small{font-size:10px;max-width:65px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.story-item{display:flex;align-items:center;flex-direction:column;gap:4px;border:0;background:none;color:var(--ink);min-width:55px}.story-item .avatar{border:2px solid #78e6c0;width:52px;height:52px}.chats-title{display:flex;align-items:center;justify-content:space-between;padding:7px 22px}.chats-title h3{font-size:19px;letter-spacing:-.03em;margin:0}.new{width:32px;height:32px;background:var(--mint);color:#06352f;border:0;border-radius:11px;font-size:21px}.search{margin:12px 16px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#081820;border-radius:12px;padding:10px 14px;color:var(--mint);font-size:20px}.search input{min-width:0;flex:1;border:0;background:none;color:var(--ink);font-size:13px}.chat-list{flex:1;min-height:0;overflow:auto;padding:2px 10px}.chatitem{width:100%;display:flex;gap:12px;padding:13px 10px;border:0;border-radius:16px;background:transparent;color:var(--ink);text-align:left;align-items:center}.chatitem.selected,.chatitem:hover{background:#28544873}.chat-details{flex:1;min-width:0}.chat-details b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-details small{color:#93a9aa;font-size:11px}.side-bottom{padding:15px 20px;color:#72928f;font-size:11px;border-top:1px solid var(--line)}.build-tag{float:right;color:#557971}.main{min-width:0;flex:1;position:relative;background:radial-gradient(ellipse at 75% 0%,#1b43404c,transparent 40%),radial-gradient(ellipse at 0% 100%,#183b4f36,transparent 48%),#0a1821}.center-empty{height:100%;max-width:530px;margin:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}.welcome-blob{width:164px;height:164px;border-radius:53px;background:linear-gradient(145deg,#1a65537a,#1f4f6c55);display:grid;place-items:center;margin-bottom:24px;border:1px solid #ffffff16;transform:rotate(-5deg)}.welcome-blob img{width:122px;transform:rotate(5deg)}.center-empty h2{letter-spacing:-.05em;font-size:32px;margin:15px 0 4px}.center-empty p{color:var(--muted);font-size:14px;max-width:390px;line-height:1.8}.center-empty button{margin-top:18px}.thread{height:100%;display:flex;flex-direction:column}.thread-header{height:79px;display:flex;align-items:center;gap:13px;padding:0 25px;background:#0b1b24dd;border-bottom:1px solid var(--line);flex-shrink:0;backdrop-filter:blur(20px)}.peer-info{min-width:0;flex:1}.peer-info b,.peer-info small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.peer-info b{font-size:16px}.peer-info small{color:#85aba7;font-size:11px}.key-chip{background:#16403b;color:#9bf0d0;border:1px solid #30776488;border-radius:18px;padding:7px 12px;font-size:12px;font-weight:700}.key-chip.verified{background:#175b41;color:#bfffe0}.security-notice{background:#16504639;color:#addbcf;font-size:11px;padding:7px 22px;border-bottom:1px solid #ffffff11}.messages{flex:1;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:25px max(18px,7%) 18px}.message{max-width:min(80%,620px);min-width:65px;align-self:flex-start;background:#1b2d39;border:1px solid #ffffff13;padding:11px 15px;border-radius:17px 17px 17px 5px;box-shadow:0 4px 16px #0002;word-wrap:break-word;white-space:pre-wrap}.message.mine{align-self:flex-end;background:linear-gradient(135deg,#256e5d,#1e594e);border-radius:17px 17px 5px 17px}.message small{display:block;font-size:10px;color:#b2d0cb;text-align:right;margin-top:4px}.message img.gif{max-width:240px;border-radius:12px;display:block}.message .caption{font-size:12px;color:#b2d0cb}.message audio{width:min(270px,60vw)}.composer-wrap{padding:0 max(18px,7%) 14px;flex-shrink:0}.composer{border:1px solid #ffffff22;background:#152e35;display:flex;align-items:center;border-radius:20px;padding:7px;gap:5px;box-shadow:0 10px 40px #0002}.composer textarea{color:var(--ink);background:transparent;border:0;resize:none;flex:1;min-width:30px;max-height:110px;padding:10px 8px}.tool{width:36px;height:36px;color:#bdd3d2;border:0;background:transparent;font-size:22px}.tool:hover{color:var(--mint)}.send{width:40px;height:40px;border:0;border-radius:13px;background:var(--mint);color:#073d32;font-size:19px}.input-caption{text-align:center;color:#628984;font-size:10px;padding-top:7px}.rec{background:#542e35;border:1px solid #ba6470;border-radius:14px;padding:9px 16px;color:#ffd0d6;margin-bottom:8px}.rec button{margin-left:10px;background:#ffffff16;border:0;color:inherit;border-radius:10px;padding:6px}.picker{background:#152b35;border:1px solid var(--line);border-radius:18px;margin-bottom:9px;padding:12px;max-height:270px;overflow:auto}.picker-top{display:flex;gap:9px;align-items:center}.tab{border:0;color:#bcd6d6;padding:7px 12px;border-radius:10px;background:#ffffff14}.tab.active{background:var(--mint);color:#073a2f}.picker-top>.icon{margin-left:auto}.picker-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:4px;margin-top:12px}.picker-items button{background:none;border:0;font-size:25px;padding:5px;border-radius:9px}.picker-items button:hover{background:#ffffff19}.picker-items.gifs{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.picker-items.gifs img{width:100%;border-radius:10px}.back{display:none}dialog{width:min(510px,calc(100vw - 22px));max-height:88dvh;overflow-y:auto;background:#102630;color:var(--ink);border:1px solid #4b877c55;border-radius:23px;padding:25px;box-shadow:0 35px 130px #000c}dialog::backdrop{background:#02131bc4;backdrop-filter:blur(9px)}.dialog-head{display:flex;align-items:start;justify-content:space-between;margin-bottom:21px}.dialog-head h2{font-size:24px;letter-spacing:-.04em;margin:4px 0 0}.block{padding:16px;border:1px solid var(--line);border-radius:16px;background:#ffffff06;margin:11px 0}.block h3{margin:0 0 12px;font-size:14px}.field{margin:6px 0 12px}.form-row{display:flex;flex-direction:column;margin:7px 0}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.plain-btn{padding:10px 14px;background:#255b52;border:1px solid #388878;color:#e7fff9;border-radius:11px}.danger-btn{background:#56333c;color:#ffdbe1}.helper{font-size:11px;color:#91afae}.fingerprint{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;word-break:break-all;letter-spacing:.04em;color:#9bebce}.settings-tip{color:#85b0a6}.empty-list{padding:25px 16px;text-align:center;color:#719694;font-size:13px}#toast{position:fixed;z-index:50;left:50%;bottom:25px;transform:translateX(-50%) translateY(35px);opacity:0;pointer-events:none;background:#284841;color:#fff;border:1px solid #59ae97;border-radius:13px;padding:12px 17px;box-shadow:0 15px 50px #000a;transition:.25s;max-width:90vw}#toast.visible{opacity:1;transform:translateX(-50%) translateY(0)}@media(max-width:800px){.auth-page{grid-template-columns:1fr}.auth-art{display:none}.auth-right{padding:22px;min-height:100dvh}.auth-panel{margin:auto}.side{width:100%;max-width:none}.main{display:none}.layout.mobile-active .side{display:none}.layout.mobile-active .main{display:block;flex:1}.back{display:grid}.thread-header{padding:0 12px}.thread-header .peer-avatar{width:38px;height:38px}.key-chip{padding:5px 8px;font-size:10px}.messages{padding:12px 15px}.composer-wrap{padding:0 7px 8px}.security-notice{font-size:10px;padding:7px 12px}.thread-header>.icon:last-child{display:none}.message{max-width:88%}.input-caption{font-size:9px}.center-empty{display:none}.side-top{padding:19px 16px}.chats-title{padding-top:20px}}

:root[data-theme="light"]{color-scheme:light;--bg:#edf6f5;--surface:#f8fdfb;--line:#1d56552a;--ink:#203b3c;--muted:#577576;--mint:#18ae8e;--chip:#d4efe7}
:root[data-theme="light"] body,:root[data-theme="light"] .layout{background:#eaf3f2}
:root[data-theme="light"] .side{background:#f4fbf9}
:root[data-theme="light"] .main{background:radial-gradient(circle at 100% 10%,#cce9dd,transparent 43%),#e8f3f0}
:root[data-theme="light"] .side-bottom,:root[data-theme="light"] .thread-header{background:#f3faf8;color:#395d59}
:root[data-theme="light"] .me-card{background:#d6ece6;color:#17423b}
:root[data-theme="light"] .chatitem.selected,:root[data-theme="light"] .chatitem:hover{background:#c4e7db}
:root[data-theme="light"] .chat-details small,:root[data-theme="light"] .peer-info small{color:#5c7b76}
:root[data-theme="light"] .message{background:#fff;color:#1c3534;border:1px solid #26615a22}
:root[data-theme="light"] .message.mine{background:#b8ead8}
:root[data-theme="light"] .message small{color:#537b72}
:root[data-theme="light"] .composer{background:#fff}
:root[data-theme="light"] .composer textarea,:root[data-theme="light"] .search input{color:#23413e}
:root[data-theme="light"] .search{background:#e3f1ec}
:root[data-theme="light"] .security-notice{background:#d2f2e6;color:#256350}
:root[data-theme="light"] .key-chip{background:#d2f0e1;color:#17624e}
:root[data-theme="light"] .icon{color:#2d5b54}
:root[data-theme="light"] dialog{background:#fff;color:#1f3f39}
:root[data-theme="light"] .field,:root[data-theme="light"] dialog textarea,:root[data-theme="light"] dialog select{background:#f0f8f5;color:#23413e;border:1px solid #99bfb6}
:root[data-theme="purple"]{--mint:#b19cff;--mint2:#9b81e3}

.call-panel{position:fixed;z-index:24;right:18px;top:18px;max-width:min(380px,calc(100vw - 26px));padding:19px;border:1px solid #7cc5b866;border-radius:20px;background:#19323a;color:#fff;box-shadow:0 25px 70px #000b;display:flex;flex-direction:column;gap:8px}.call-panel p{margin:6px 0;font-size:14px}.call-panel small{color:#afcfc6;font-size:10px}.call-light{color:#5de7b4;font-size:24px}.call-panel .row{margin-top:8px}

/* v0.6.1 connection state, update and notification preferences */
.connection-state{font-weight:700;font-size:11px;transition:color .25s}.connection-state[data-state=online]{color:#50d89d}.connection-state[data-state=connecting]{color:#f5c875}.connection-state[data-state=error],.connection-state[data-state=offline]{color:#ee8b8b}
.notify-label{display:flex;align-items:center;gap:12px;margin:12px 0;cursor:pointer;font-size:14px}.notify-label input{width:19px;height:19px;accent-color:#23ad98}
.side-top .icon{flex-shrink:0}.side-top .brand{min-width:0;flex:1}

/* 0.6.2: explicit, high contrast unread counters on desktop and Android. */
.chatitem .unread-badge{margin-left:auto;flex-shrink:0}
.unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:23px;height:23px;padding:0 6px;border-radius:12px;background:linear-gradient(135deg,#75ecd0,#37c8a5);color:#063128;font-size:12px;font-weight:850;line-height:1;box-shadow:0 2px 10px #39dcaa33;font-variant-numeric:tabular-nums}
.chatitem .chev{font-size:18px;margin-left:0;color:#5d8c83}
.chatitem:has(.unread-badge) .chat-details b{font-weight:850;color:var(--ink)}
.peer-title{display:flex;align-items:center;gap:10px;min-width:0}
.peer-title b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.peer-title .unread-badge{flex-shrink:0}
@media(max-width:800px){.unread-badge{min-width:24px;height:24px}}

/* v0.6.3: consistent controls, clearly recognizable icons and media picker */
.icon svg,.tool svg,.send svg{width:21px;height:21px;display:block;flex-shrink:0;pointer-events:none}
.icon,.tool,.send{display:inline-flex;align-items:center;justify-content:center;transition:background .15s,color .15s,transform .15s}
.icon{width:38px;height:38px;border-radius:12px}.icon:hover{background:#ffffff16}.icon:active,.tool:active{transform:scale(.94)}
.icon-danger{color:#ffb5b5}.icon-danger:hover{color:#fff;background:#93424a88}
.call-action{color:#84efd3;background:#1c665a66;border:1px solid #57ba9c44}.call-action:hover{background:#246d60}
.mic-action{color:#d1f7ed}.mic-action:hover{background:#2c6e60;border-radius:12px}
.tool{width:40px;height:40px;border-radius:12px}.tool:hover{background:#ffffff14}
.send svg{width:20px;height:20px}
.visually-hidden-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;overflow:hidden!important;clip-path:inset(50%);pointer-events:none!important}
.file-summary{font-size:12px;color:var(--muted);margin-left:10px;word-break:break-word}
.attach-cta{background:#23594f;border:1px solid #4ca68d;color:#eafff9;display:inline-flex;align-items:center;gap:7px}
.picker{padding:14px;max-height:min(460px,60dvh);overflow:auto;border:1px solid #ffffff26;box-shadow:0 20px 60px #0005;background:#142c35}
.picker-top{gap:8px}.picker-top .tab{font-weight:700;font-size:13px}.picker-search{margin-top:10px}.picker-search input{width:100%;border:1px solid #ffffff24;border-radius:12px;background:#071d26;color:var(--ink);padding:10px 12px;font-size:13px}
.emoji-categories{display:flex;gap:6px;overflow:auto;padding:10px 0 3px;scrollbar-width:thin}.emoji-cat{background:#ffffff0c;border:1px solid #ffffff16;border-radius:99px;color:#b2cbc8;padding:6px 12px;white-space:nowrap;font-size:12px}.emoji-cat.selected{color:#003b34;background:var(--mint);border-color:var(--mint)}
.picker-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:5px;max-height:255px;overflow-y:auto;margin-top:10px}.picker-items .emoji-option{font-size:27px;min-height:42px;border-radius:12px}.picker-items .emoji-option:hover{background:#ffffff22}
.picker-items.gifs{display:block;max-height:none}.gif-empty{padding:20px 12px;text-align:center;display:flex;align-items:center;flex-direction:column;gap:10px;color:var(--ink)}.gif-empty b{font-size:16px}.gif-empty p,.gif-empty small{color:var(--muted);max-width:320px}.gif-mark{background:linear-gradient(120deg,#62e2c5,#ffcf8c);color:#123a33;padding:8px 15px;border-radius:12px;font-weight:900;letter-spacing:.1em}
.gif-pick-cta{padding:12px 18px;color:#073d31;background:var(--mint);font-weight:800;border:0;border-radius:12px}
@media(max-width:800px){.side-top .icon{width:36px;height:36px}.tool{width:38px;height:40px}.picker{max-height:55dvh;padding:10px}.picker-items{max-height:210px}.emoji-cat{padding:5px 9px}.composer{gap:2px}.composer textarea{padding:9px 5px}}

/* Categorised preferences: no more endless settings modal. */
.settings-nav{display:flex;gap:7px;overflow-x:auto;scrollbar-width:thin;padding:0 0 12px;margin-bottom:8px;border-bottom:1px solid var(--line)}
.settings-nav-btn{color:var(--muted);font-size:12px;font-weight:650;border:1px solid var(--line);border-radius:11px;background:#ffffff09;padding:9px 11px;white-space:nowrap}
.settings-nav-btn.active{background:var(--mint);border-color:var(--mint);color:#073d32}
@media(max-width:800px){.settings-nav-btn{font-size:11px;padding:9px 10px}dialog{padding:16px}}

/* v0.6.4: delivery receipts, edit composer, downloads and calls */
.message-meta{display:block;opacity:.72;font-size:11px;margin-top:6px}
.message-meta.read-status{color:#58e9c3;opacity:1}
.edit-message-btn{border:0;background:transparent;color:#a5dccd;cursor:pointer;font-size:11px;margin:4px 0 0 8px;padding:4px}
.edit-banner{display:flex;justify-content:space-between;align-items:center;padding:9px 14px;background:#1b393b;color:#b6eee1;border-left:3px solid #5bdec1;border-radius:9px;margin-bottom:8px;gap:12px}
.edit-banner button{background:transparent;color:#fff;border:0;cursor:pointer}
.save-media-btn{display:block;background:#264f4a;color:#d5fff3;border:1px solid #3b8c78;border-radius:9px;padding:7px 10px;margin:6px 0;cursor:pointer;font-weight:600}
.call-event{max-width:440px;margin:8px auto;text-align:center;border-radius:14px;background:#172c38;color:#aecac8;font-size:12px;padding:10px 14px}
.call-event.missed{color:#ffa7a7;background:#41282f}

/* v0.6.5 - desktop-first preferences, owner console, and premium identity */
.admin-entry{display:flex;align-items:center;justify-content:center;gap:10px;margin:0 16px 10px;width:calc(100% - 32px);padding:11px 14px;border-radius:14px;background:linear-gradient(115deg,#64512d,#493a30);color:#ffeab0;border:1px solid #c6a26180;text-align:left;font-weight:800;cursor:pointer;box-shadow:inset 0 1px #ffffff14}
.admin-entry.hidden{display:none}.admin-entry:hover{background:linear-gradient(115deg,#786036,#57402e)}
.mini-crown{display:inline-block;vertical-align:super;font-size:12px;line-height:0;margin-right:1px}.tier-crown,.mini-crown{color:#f8d679;font-weight:850;text-shadow:0 1px 10px #e2a32650}.tier-crown{font-size:11px;padding:4px 7px;border-radius:8px;background:#cea64a22;border:1px solid #d3a23f55}.tier-basic{color:var(--muted);font-size:11px}
@media(min-width:801px){dialog:has(.settings-nav){width:min(900px,94vw);max-height:88vh;padding:28px;border-radius:25px}dialog:has(.settings-nav) #dialogBody{display:grid;grid-template-columns:205px minmax(0,1fr);column-gap:22px;align-items:start}dialog:has(.settings-nav) .settings-nav{position:sticky;top:0;grid-column:1;grid-row:1 / span 12;display:flex;flex-direction:column;align-items:stretch;overflow:visible;border-bottom:0;border-right:1px solid var(--line);padding:0 14px 0 0}dialog:has(.settings-nav) .settings-nav-btn{text-align:left;font-size:13px;padding:13px 14px;border-radius:12px;border:1px solid transparent}dialog:has(.settings-nav) .settings-nav-btn.active{border-color:#65c3a955;box-shadow:0 3px 14px #1e9b7d24}dialog:has(.settings-nav) .block{grid-column:2;margin-top:0}dialog:has(.settings-nav) .field{width:100%}}
dialog.admin-open{width:min(970px,96vw);max-height:90vh;border-radius:24px}.admin-hero{border-radius:19px;padding:20px 23px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(115deg,#16453c,#203847 65%,#403726);border:1px solid #ffffff18}.admin-hero h3{font-size:22px;margin:5px 0}.admin-hero p{max-width:530px;font-size:12px;color:#add1c8}.admin-crown{font-size:54px;color:#ffd981}
.admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.admin-metrics>div{padding:16px;border-radius:15px;border:1px solid var(--line);background:#ffffff07;display:flex;flex-direction:column;gap:4px}.admin-metrics strong{font-size:27px;font-variant-numeric:tabular-nums;color:var(--ink)}.admin-metrics small{font-size:11px;color:var(--muted)}
.admin-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:18px}.admin-tabs button{border:1px solid var(--line);border-radius:11px;color:var(--ink);background:#ffffff08;padding:10px 14px;font-weight:700}.admin-tabs button.active{background:var(--mint);color:#07382e;border-color:var(--mint)}
.admin-find{display:flex;gap:10px;margin-bottom:12px}.admin-find input{flex:1;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);padding:10px 12px;min-width:0}.admin-user-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 6px;border-bottom:1px solid var(--line)}.admin-user-ident{display:flex;align-items:center;gap:10px;min-width:0}.admin-user-ident b{font-size:13px}.admin-user-ident small{display:block;font-size:11px;color:var(--muted);margin-top:6px}.admin-user-avatar{width:40px;height:40px;border-radius:12px;background:#265d55;display:grid;place-items:center;color:#a9f5d9;font-weight:900}.admin-user-actions{display:flex;gap:8px}.admin-user-actions select{border:1px solid var(--line);border-radius:10px;padding:8px;background:var(--surface);color:var(--ink)}.admin-pages{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.limit-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.admin-audit-row{display:flex;flex-direction:column;gap:5px;padding:12px 4px;border-bottom:1px solid var(--line)}.admin-audit-row span,.admin-audit-row small{font-size:11px;color:var(--muted)}
@media(max-width:740px){.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-user-row{align-items:start;flex-direction:column}.admin-user-actions{width:100%;justify-content:flex-end}.limit-grid{grid-template-columns:1fr}.admin-hero h3{font-size:18px}.admin-crown{font-size:38px}.admin-tabs button{font-size:11px;padding:8px}}

/* 0.6.6: dialog actions & hold-to-record */
.chat-row{display:flex;align-items:center;gap:3px;border-radius:16px;position:relative}
.chat-row:hover,.chat-row:focus-within{background:#25544855}
.chat-row .chatitem{min-width:0;flex:1;touch-action:pan-y}
.chat-more{width:34px;height:38px;flex-shrink:0;color:#afd7cf;background:transparent;border:0;border-radius:12px;font-size:25px}
.chat-more:hover{background:#316b5c88;color:#fff}
#mic{touch-action:none;user-select:none;-webkit-user-select:none}
#mic.recording{background:#b7354f;color:white;border-radius:13px;animation:mic-pulse .85s ease-in-out infinite alternate}
@keyframes mic-pulse{from{box-shadow:0 0 0 1px #ff9dac50}to{box-shadow:0 0 0 8px #da496022}}
.download-links{margin:5px 0 14px;padding:12px 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:7px}
.download-links>span{font-weight:700;font-size:12px;color:#adcbc3}
.download-actions{display:flex;gap:8px;flex-wrap:wrap}
.download-actions a,.download-actions .coming-soon{display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;border:1px solid #63ba9e77;border-radius:11px;padding:9px 11px;text-decoration:none;color:#c6ffea;background:#24644f44}
.download-actions a:hover{background:#2f927355}
.download-actions .coming-soon{border-color:#ffffff22;color:#809b9e;background:#ffffff08;cursor:default}
.download-links>small{color:#739c96;font-size:10px}
@media (max-width:800px){.chat-more{width:42px;font-size:25px}.chat-row .chatitem{padding:14px 10px}}

/* v0.6.7: accessible start-new actions and compact encrypted group tools. */
.new-chat-actions,.welcome-actions{display:flex;align-items:center;gap:9px}
.new-chat-actions{position:relative;z-index:2}
.group-create{background:#2a655b;color:#d2fff1;border:1px solid #5baf9980}
.empty-chats{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:20px 16px;text-align:center}
.empty-chats p{margin:0;color:var(--muted)}.empty-chats button{width:100%;padding:12px;position:relative;z-index:2}
#newChat,#startChat,#newGroup,#startGroup{pointer-events:auto;position:relative;z-index:2}
.pin-bar{display:flex;gap:7px;padding:8px 14px;background:#16342f;border-bottom:1px solid #4ea99255;overflow-x:auto}
.pin-bar button{flex-shrink:0;border:1px solid #509d8899;background:#29635777;color:#cefbe8;padding:7px 12px;border-radius:11px}
.pin-msg{border:0;background:transparent;color:#c5e6d7;font-size:13px;cursor:pointer;margin:2px 6px 2px 0}
.group-tools{display:flex;gap:8px;padding:9px 16px;background:#112630;border-bottom:1px solid var(--line);overflow-x:auto;flex-shrink:0}
.group-tools button{white-space:nowrap;border:1px solid #529e9170;border-radius:11px;padding:8px 12px;background:#1d4a45;color:#d9fff2;font-size:12px;font-weight:650}
.group-tools button:hover,.poll-choice:hover{background:#2f7963}
.poll-options{display:flex;flex-direction:column;gap:7px;margin:9px 0 2px}
.poll-choice{width:100%;text-align:left;border:1px solid #57937e88;color:#d5ffee;background:#24574d;border-radius:10px;padding:9px 12px;cursor:pointer}
.poll-choice.selected{border-color:#b1ffd8;box-shadow:inset 0 0 0 1px #a2ffe6}
.board-card{border:1px solid #5b9786;border-radius:13px;padding:11px 13px;margin-bottom:10px;background:#24514a55}
.board-card p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 8px}
.board-card small,.member-row small{color:var(--muted)}
.board-remove{border:0;background:none;color:#ff9ea2;font-size:12px;cursor:pointer}
.member-row{padding:10px;border-bottom:1px solid var(--line)}
@media(max-width:800px){
 html,body{overflow-x:hidden}
 body{overflow-y:auto}
 .auth-page{height:auto;min-height:100dvh;display:block}
 .auth-right{height:auto;min-height:100dvh;display:flex;overflow:visible;padding:20px 18px max(36px,env(safe-area-inset-bottom))}
 .auth-panel{margin:28px auto 18px;flex:none}
 .auth-panel form{margin-top:18px}
 .auth-note{margin-top:16px;padding-top:16px}
 .download-links{flex-shrink:0;margin:18px 0 14px;padding:16px 0}
 .download-actions a{min-height:46px;flex:1}
 .bottom-label{margin-top:4px;padding-bottom:20px}
 .group-tools{padding:7px 9px}
 .group-tools button{font-size:11px}
 .pin-bar{padding:6px}
}

/* v0.6.9: collaborative E2EE canvas and safe group invite controls */
#boardCanvas{display:block;width:100%;max-width:640px;aspect-ratio:16/9;height:auto;background:#112832;border:1px solid #61cbb069;border-radius:14px;touch-action:none;cursor:crosshair;user-select:none;-webkit-user-select:none;margin:12px 0;box-shadow:0 9px 35px #0003}
.board-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0}
.board-controls label{display:flex;gap:7px;align-items:center;font-size:12px;color:var(--muted)}
.board-controls select{border:1px solid var(--line);padding:8px;border-radius:9px;color:var(--ink);background:var(--surface)}
.group-link-result{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin:10px 0;overflow-wrap:anywhere}
.group-link-result input{min-width:180px;flex:1}
@media(max-width:800px){dialog:has(#boardCanvas){max-width:96vw;padding:12px}#boardCanvas{max-width:100%;touch-action:none}}
