@font-face{font-family:Poppins;src:url(/fonts/Poppins-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/Poppins-Medium.ttf) format("truetype");font-weight:500;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/Poppins-SemiBold.ttf) format("truetype");font-weight:600;font-display:swap}:root{--pink: #FF1F5A;--deep: #D0174E;--blush: #FFE3EA;--paper: #FFF5F7;--sun: #FFC93C;--bg: #F6F4F5;--surface: #FFFFFF;--surface-2: #FAF8F9;--border: #E9E3E6;--text: #141414;--muted: #6B6468;--accent: var(--deep);--accent-soft: var(--blush);--in-bubble: #FFFFFF;--out-bubble: #FFE3EA;--chat-bg: var(--paper);--ok: #0F7B4F;--ok-soft: #E3F5EC;--bad: #B42318;--bad-soft: #FDECEA;--warn-soft: #FFF4D6;--info-soft: #E8F0FE;--read: #1D7BD8;--radius: 12px;--shadow: 0 1px 2px rgb(0 0 0 / .06), 0 4px 16px rgb(0 0 0 / .06);color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #121012;--surface: #1C191B;--surface-2: #232023;--border: #353035;--text: #F3EEF0;--muted: #A79EA3;--accent: #FF4D7A;--accent-soft: #3A1E27;--in-bubble: #262225;--out-bubble: #4A1F2D;--chat-bg: #161315;--ok: #4ADE9B;--ok-soft: #10301F;--bad: #FF8A80;--bad-soft: #3A1715;--warn-soft: #3A2F10;--info-soft: #172338;--read: #6CB4FF;color-scheme:dark}}:root[data-theme=dark]{--bg: #121012;--surface: #1C191B;--surface-2: #232023;--border: #353035;--text: #F3EEF0;--muted: #A79EA3;--accent: #FF4D7A;--accent-soft: #3A1E27;--in-bubble: #262225;--out-bubble: #4A1F2D;--chat-bg: #161315;--ok: #4ADE9B;--ok-soft: #10301F;--bad: #FF8A80;--bad-soft: #3A1715;--warn-soft: #3A2F10;--info-soft: #172338;--read: #6CB4FF;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:Poppins,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;line-height:1.45;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}input,select,textarea{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px;min-width:0;width:100%}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input[type=checkbox]{width:auto;accent-color:var(--accent)}input[type=color]{width:44px;padding:2px;height:36px}textarea{resize:vertical}a{color:var(--accent)}code{background:var(--surface-2);padding:1px 4px;border-radius:4px;font-size:12px}.muted{color:var(--muted)}.small{font-size:12px}.hint{color:var(--muted);font-size:12px;margin:0 0 6px}.form-error{color:var(--bad);font-size:13px;margin:4px 0}.danger-text{color:var(--bad)!important}.btn{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:8px 14px;cursor:pointer;font-weight:500;white-space:nowrap;min-height:36px}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover:not(:disabled){background:var(--pink)}.btn.ghost{background:transparent;border-color:transparent}.btn.ghost:hover:not(:disabled),.btn.on{background:var(--accent-soft)}.btn.sm{padding:5px 10px;font-size:13px;min-height:32px}.btn.link{background:none;border:none;color:var(--accent);padding:0 4px;min-height:0;font-weight:500;cursor:pointer}.splash,.login{min-height:100%;display:grid;place-items:center;background:var(--paper);padding:16px}.splash img{width:72px;opacity:.8}.login-card{width:min(380px,100%);background:var(--surface);border-radius:16px;padding:28px;box-shadow:var(--shadow);display:grid;gap:12px}.login-card h1{margin:0;font-size:22px}.login-card p{margin:0 0 4px}.login-card label{display:grid;gap:4px;font-weight:500;font-size:13px}.login-logo{width:64px;height:64px;object-fit:contain}.banner{padding:8px 14px;font-size:13px;border-bottom:1px solid var(--border)}.banner.warn{background:var(--warn-soft)}.banner.info{background:var(--info-soft)}.banner.danger{background:var(--bad-soft);color:var(--bad)}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:#222;color:#fff;padding:10px 16px;border-radius:10px;box-shadow:var(--shadow);z-index:50;max-width:calc(100vw - 32px);cursor:pointer}.chats{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);height:100dvh}.list-pane{display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--surface);min-height:0;min-width:0}.chat-pane{min-width:0;min-height:0;display:flex}.placeholder{margin:auto;text-align:center;color:var(--muted)}.placeholder img{width:56px;opacity:.5}.list-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;gap:8px;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:8px;font-weight:600;font-size:16px}.brand img{width:28px;height:28px;object-fit:contain}.header-actions{display:flex;gap:2px;flex-wrap:wrap;justify-content:flex-end}.views{display:flex;flex-wrap:wrap;gap:4px;padding:8px 10px 4px}.view-tab{border:none;background:transparent;padding:6px 10px;border-radius:999px;cursor:pointer;white-space:nowrap;color:var(--muted);font-weight:500;display:inline-flex;align-items:center;gap:6px}.view-tab.active{background:var(--accent-soft);color:var(--accent)}.count{background:var(--accent);color:#fff;border-radius:999px;font-size:11px;padding:0 6px;min-width:18px;text-align:center}.count.due{background:var(--sun);color:#141414}.search-row{display:flex;gap:6px;padding:6px 10px}.filters{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:0 10px 8px}.conv-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.conv-list .empty{padding:32px 16px;text-align:center;color:var(--muted)}.conv-row{display:flex;gap:10px;width:100%;text-align:left;border:none;background:none;padding:10px 12px;cursor:pointer;border-bottom:1px solid var(--border);align-items:flex-start}.conv-row:hover{background:var(--surface-2)}.conv-row.selected{background:var(--accent-soft)}.avatar{flex:none;width:38px;height:38px;border-radius:50%;background:var(--blush);color:var(--deep);display:grid;place-items:center;font-weight:600;font-size:13px}.conv-main{flex:1;min-width:0;display:grid;gap:2px}.conv-top{display:flex;justify-content:space-between;gap:8px}.conv-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-time{color:var(--muted);font-size:12px;flex:none}.conv-preview{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.conv-tags{display:flex;flex-wrap:wrap;gap:4px}.unread{flex:none;align-self:center;background:var(--pink);color:#fff;border-radius:999px;font-size:11px;font-weight:600;min-width:20px;height:20px;display:grid;place-items:center;padding:0 6px}.tag{font-size:11px;border:1px solid var(--border);border-radius:999px;padding:0 7px;line-height:18px;color:var(--muted);background:transparent;white-space:nowrap}.tag.ad{border-color:var(--sun);color:#8a6500;background:#fff6dc}.tag.bot{border-color:#8b5cf6;color:#6d28d9}.tag.owner{border-color:var(--border);color:var(--text)}.tag.danger{border-color:var(--bad);color:var(--bad)}.tag.due{border-color:var(--sun);background:var(--sun);color:#141414}.tag.toggle{cursor:pointer;font-size:12px;line-height:24px;padding:0 10px}.chat{display:flex;flex:1;min-width:0;min-height:0;position:relative}.chat-main{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;background:var(--chat-bg)}.chat-header{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--border)}.chat-header .back{display:none;font-size:18px;padding:4px 8px}.chat-title{flex:1;min-width:0;display:grid;text-align:left;background:none;border:none;cursor:pointer;padding:0}.chat-title strong,.chat-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-actions{display:flex;align-items:center;gap:4px}.owner-pill{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:500;white-space:nowrap}.messages{flex:1;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:4px}.day-divider{text-align:center;margin:10px 0 6px}.day-divider span{background:var(--surface);color:var(--muted);font-size:11px;padding:2px 10px;border-radius:999px;box-shadow:var(--shadow)}.bubble-row{display:flex}.bubble-row.out{justify-content:flex-end}.bubble{max-width:min(78%,560px);padding:6px 10px 4px;border-radius:12px;box-shadow:0 1px 1px #0000000f;background:var(--in-bubble);overflow-wrap:anywhere}.bubble.out{background:var(--out-bubble);border-bottom-right-radius:4px}.bubble.in{border-bottom-left-radius:4px}.bubble.bot,.bubble.system{background:var(--surface-2);border:1px dashed var(--border)}.bubble.echo{background:var(--ok-soft)}.bubble.problem{border:1px solid var(--bad)}.bubble-meta-top{font-size:11px;font-weight:600;color:var(--accent);margin-bottom:2px}.bubble-body{white-space:pre-wrap}.bubble-buttons{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.bubble-buttons span{font-size:12px;color:var(--read);border:1px solid var(--border);border-radius:8px;padding:2px 8px;background:var(--surface)}.bubble-meta{display:flex;justify-content:flex-end;gap:6px;font-size:11px;color:var(--muted)}.bubble-problem{font-size:12px;color:var(--bad);border-top:1px solid var(--border);margin-top:4px;padding-top:4px;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.bubble-billing{font-size:10px;color:var(--muted);text-align:right}.composer{background:var(--surface);border-top:1px solid var(--border);padding:8px 12px calc(10px + env(safe-area-inset-bottom));display:grid;gap:8px}.composer.locked{color:var(--muted);text-align:center;padding:16px}.eligibility{display:flex;flex-wrap:wrap;gap:6px}.pill{font-size:11px;padding:2px 8px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);white-space:nowrap}.pill.ok{background:var(--ok-soft);border-color:transparent;color:var(--ok)}.pill.bad{background:var(--bad-soft);border-color:transparent;color:var(--bad)}.mode-switch{display:inline-flex;background:var(--surface-2);border-radius:8px;padding:2px;justify-self:start;border:1px solid var(--border)}.mode-switch button{border:none;background:none;padding:4px 12px;border-radius:6px;cursor:pointer;font-size:13px}.mode-switch button.active{background:var(--surface);box-shadow:var(--shadow);font-weight:600}.mode-switch button:disabled{opacity:.45;cursor:not-allowed}.compose-row{display:flex;gap:8px;align-items:flex-end}.compose-row textarea{flex:1;max-height:160px}.template-box{display:grid;gap:6px}.template-preview{background:var(--out-bubble);border-radius:10px;padding:8px 10px;white-space:pre-wrap;font-size:13px}.compose-tools{display:flex;flex-direction:row;align-items:center;gap:2px;align-self:flex-end;padding-bottom:4px}.btn.icon{padding:4px 8px;min-height:30px;font-size:16px;line-height:1}.btn.icon-lg{padding:8px 12px;font-size:18px;line-height:1}.attachment{display:flex;align-items:center;gap:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:6px 8px}.attachment img{width:48px;height:48px;object-fit:cover;border-radius:6px}.quick-replies{max-height:220px;overflow-y:auto;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.qr-item{display:grid;gap:2px;width:100%;text-align:left;padding:8px 10px;border:none;border-bottom:1px solid var(--border);background:none;cursor:pointer}.qr-item:hover,.qr-item:focus-visible{background:var(--accent-soft)}.qr-item .small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qr-empty{padding:10px}.recorder{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:4px 0}.recorder audio{height:36px;max-width:100%}.recorder .spacer{flex:1}.rec-dot{width:10px;height:10px;border-radius:50%;background:var(--pink);animation:pulse 1s infinite}.rec-time{font-variant-numeric:tabular-nums;font-weight:600;min-width:3.2em}.rec-time.near-limit{color:var(--bad)}.rec-wave{flex:1;min-width:120px;height:32px;display:flex;align-items:center;gap:2px}.rec-wave span{flex:1;min-width:2px;border-radius:2px;background:var(--pink);transition:height 80ms linear}.rec-wave span.idle{background:var(--border)}@media(prefers-reduced-motion:reduce){.rec-wave span{transition:none}}@keyframes pulse{50%{opacity:.3}}@media(prefers-reduced-motion:reduce){.rec-dot{animation:none}}.media-image{display:block;padding:0;border:none;background:none;cursor:zoom-in}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#000000eb;display:grid;place-items:center;padding:56px 12px 12px}.viewer-img{max-width:100%;max-height:calc(100dvh - 72px);object-fit:contain;border-radius:6px;cursor:default}.viewer-bar{position:absolute;top:0;left:0;right:0;display:flex;justify-content:flex-end;gap:8px;padding:calc(8px + env(safe-area-inset-top)) 12px 8px}.viewer-btn{color:#fff!important;text-decoration:none}.viewer-btn:hover{background:#ffffff26!important}.viewer-close{font-size:22px;width:44px;height:44px;padding:0}.media-image img{display:block;max-width:min(280px,100%);max-height:320px;border-radius:8px;margin-bottom:4px}.media-video{display:block;max-width:min(320px,100%);border-radius:8px;margin-bottom:4px}.voice-player{display:flex;align-items:center;gap:10px;min-width:220px;max-width:300px;padding:2px 0 4px}.vp-play{flex:none;width:36px;height:36px;border-radius:50%;border:none;background:var(--accent);color:#fff;cursor:pointer;font-size:13px;display:grid;place-items:center}.vp-play:hover{background:var(--pink)}.vp-main{flex:1;min-width:0;display:grid;gap:2px}.vp-bars{display:flex;align-items:center;gap:2px;height:28px;cursor:pointer}.vp-bars span{flex:1;min-width:2px;border-radius:2px;background:var(--muted);opacity:.45;transition:background .1s}.vp-bars span.played{background:var(--accent);opacity:1}.vp-meta{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.media-audio{display:flex;align-items:center;gap:6px;margin-bottom:2px}.media-audio audio{height:36px;max-width:240px}.voice-badge{font-size:16px}.media-doc{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px;margin-bottom:4px;min-width:200px}.doc-icon{flex:none;width:40px;height:40px;border-radius:6px;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:600}.doc-meta{display:grid;min-width:0;flex:1}.doc-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-pending,.media-failed{font-size:12px;color:var(--muted);font-style:italic;margin-bottom:4px}.media-failed{color:var(--bad)}.info-pane{width:340px;flex:none;background:var(--surface);border-left:1px solid var(--border);overflow-y:auto}.info-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:1}.info-pane section{padding:12px 14px;border-bottom:1px solid var(--border);display:grid;gap:8px}.info-pane h3{margin:0;font-size:13px;font-weight:600}.kv{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px}.kv>span:first-child{color:var(--muted)}.kv select{width:auto}.inline-form{display:flex;gap:6px;align-items:flex-start;flex-wrap:wrap}.inline-form>input,.inline-form>textarea,.inline-form>select{flex:1;min-width:120px}.stack-form{display:grid;gap:6px}.label-picker{display:flex;flex-wrap:wrap;gap:6px}.notes,.reminders,.history ul,.audit,.sim-log{list-style:none;margin:0;padding:0;display:grid;gap:6px}.notes li{background:var(--warn-soft);border-radius:8px;padding:6px 10px}.notes p{margin:0;white-space:pre-wrap}.reminders label{display:flex;gap:8px;align-items:flex-start;font-size:13px}.reminders li.due{color:var(--bad);font-weight:500}.reminders li.done{color:var(--muted);text-decoration:line-through}.history summary{cursor:pointer;font-size:12px;color:var(--muted)}.history li{font-size:12px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:grid;place-items:center;z-index:40;padding:16px}.modal{background:var(--surface);border-radius:16px;padding:18px;width:min(440px,100%);display:grid;gap:10px;box-shadow:var(--shadow);max-height:90dvh;overflow-y:auto}.modal header{display:flex;justify-content:space-between;align-items:center}.modal label{display:grid;gap:4px;font-size:13px;font-weight:500}.modal label.check{display:flex;gap:8px;align-items:center;font-weight:400}.sim-log li{font-size:12px;color:var(--muted)}.admin{min-height:100dvh;background:var(--bg)}.admin-header{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:2}.admin-header h1{font-size:18px;margin:0}.admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:16px;padding:16px;max-width:1280px;margin:0 auto}.card{background:var(--surface);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);display:grid;gap:10px;align-content:start;min-width:0}.card.wide{grid-column:1 / -1}.card h2{margin:0;font-size:15px}.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}.stat{background:var(--surface-2);border-radius:10px;padding:10px;display:grid;gap:2px}.stat.warn{background:var(--warn-soft)}.stat-value{font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}.stat-label{font-size:12px;color:var(--muted)}.switch-row{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.switch-row input{margin-top:4px}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;color:var(--muted);font-weight:500;font-size:12px;padding:6px 4px;border-bottom:1px solid var(--border)}.table td{padding:8px 4px;border-bottom:1px solid var(--border);vertical-align:top}.table tr.inactive td{opacity:.5}.row-actions{text-align:right;white-space:nowrap}.qr-admin{list-style:none;margin:0;padding:0;display:grid;gap:6px;max-height:280px;overflow-y:auto}.qr-admin li{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--border);padding-bottom:6px}.qr-admin p{margin:2px 0 0;white-space:pre-wrap}.audit{max-height:320px;overflow-y:auto;font-size:13px}@media(max-width:1199px){.info-pane{position:absolute;right:0;top:0;bottom:0;z-index:10;box-shadow:-8px 0 24px #0000001f;max-width:100%}}@media(max-width:799px){.chats{grid-template-columns:minmax(0,1fr)}.list-pane{border-right:none}.brand span,.chats .chat-pane,.chats.has-selection .list-pane{display:none}.chats.has-selection .chat-pane{display:flex;height:100dvh}.chat-header .back{display:inline-flex}.chat-header .avatar{display:none}.info-pane{width:100%}.bubble{max-width:88%}.messages{padding:10px}.filters{grid-template-columns:1fr}}.ticks{display:inline-block;vertical-align:-1px;color:var(--muted);flex:none}.ticks.read{color:var(--read)}.ticks.bad{color:var(--bad);font-weight:700}.ticks.pending{vertical-align:-2px}.bubble-meta{align-items:center}.bubble-row{position:relative;align-items:center;gap:4px}.bubble-row.out{flex-direction:row-reverse;justify-content:flex-start}.msg-tools{display:flex;gap:2px;opacity:0;transition:opacity .12s}.bubble-row:hover .msg-tools,.bubble-row:focus-within .msg-tools{opacity:1}@media(hover:none){.msg-tools{display:none;opacity:1}.bubble-row.active .msg-tools{display:flex}.bubble-row.active .bubble{outline:2px solid var(--accent-soft)}}.bubble-row.active .msg-tools{opacity:1}.btn.icon.sm{width:26px;height:26px;padding:0;font-size:13px;border-radius:999px}.bubble{position:relative}.bubble.notice{font-style:italic;color:var(--muted)}.bubble-row.flash .bubble{outline:2px solid var(--accent);outline-offset:2px;transition:outline-color 1s}.quote{display:grid;gap:1px;text-align:left;width:100%;border:none;cursor:pointer;font:inherit;background:#0000000d;border-left:3px solid var(--accent);border-radius:6px;padding:4px 8px;margin-bottom:4px}.quote strong{font-size:12px;color:var(--accent)}.quote span{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:420px}.quote.static{cursor:default;margin:0;flex:1;min-width:0}.forwarded{font-size:11px;color:var(--muted);font-style:italic}.reply-bar{display:flex;gap:8px;align-items:center;padding:6px 0 2px}.reactions{position:absolute;bottom:-12px;display:flex;gap:1px;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:0 5px;font-size:13px;line-height:20px;box-shadow:0 1px 2px #00000014}.bubble.in .reactions{left:8px}.bubble.out .reactions{right:8px}.bubble-row:has(.reactions){margin-bottom:12px}.reaction-picker{position:absolute;z-index:5;top:-40px;display:flex;gap:2px;padding:4px 6px;background:var(--surface);border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow)}.bubble-row.in .reaction-picker{left:0}.reaction-picker button{border:none;background:none;font-size:20px;cursor:pointer;border-radius:999px;padding:2px 4px}.reaction-picker button:hover,.reaction-picker button.on{background:var(--accent-soft)}.reaction-picker .remove{font-size:12px;color:var(--muted)}.msg-info{position:absolute;z-index:6;top:100%;margin-top:4px;width:min(280px,90vw);background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);padding:10px 12px;font-size:13px}.bubble-row.out .msg-info{right:0}.bubble-row.in .msg-info{left:0}.msg-info-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.msg-info dl{margin:0;display:grid;gap:4px}.msg-info dl div{display:flex;justify-content:space-between;gap:12px}.msg-info dt{color:var(--muted)}.msg-info dd{margin:0;text-align:right}.undo{color:var(--muted)}.undo .btn.link{font-size:11px;padding:0}.location-card,.contact-card{display:flex;gap:8px;align-items:flex-start;padding:6px 2px;color:inherit;text-decoration:none}.location-card>span:last-child,.contact-card>span:last-child{display:grid;gap:1px}.loc-pin{font-size:22px}.link-text{color:var(--read)}.contact-cards{display:grid;gap:6px}.avatar.sm{width:28px;height:28px;font-size:14px}.pill.warn{background:var(--warn-soft);border-color:transparent;color:var(--text)}.pill-btn{cursor:pointer;font:inherit;font-size:11px;color:var(--accent)}.pill-btn:hover{background:var(--accent-soft)}.window-warning{font-size:12px;background:var(--warn-soft);border-radius:8px;padding:6px 10px;margin:4px 0}.window-warning .btn.link{font-size:12px;padding:0}.tag.closing{background:var(--bad-soft);color:var(--bad);border-color:transparent;font-weight:600}.conv-preview{display:flex;align-items:center;gap:3px}.conv-preview>span{overflow:hidden;text-overflow:ellipsis}:root{--quote-in: #0B8A6F;--quote-out: var(--deep);--quote-bg: rgb(0 0 0 / .06)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--quote-in: #25D9A6;--quote-out: #FF7A9C;--quote-bg: rgb(0 0 0 / .28)}}:root[data-theme=dark]{--quote-in: #25D9A6;--quote-out: #FF7A9C;--quote-bg: rgb(0 0 0 / .28)}.quote{display:flex;flex-direction:column;gap:1px;background:var(--quote-bg);border-left-width:4px;padding:5px 9px;border-radius:7px}.quote.from-in{border-left-color:var(--quote-in)}.quote.from-in strong{color:var(--quote-in)}.quote.from-out{border-left-color:var(--quote-out)}.quote.from-out strong{color:var(--quote-out)}.quote span{color:var(--text);opacity:.72}.bubble-body a{color:var(--read);text-decoration:underline;text-underline-offset:2px;word-break:break-all}.bubble-body code{font-family:ui-monospace,Consolas,monospace;font-size:.92em;background:#00000012;padding:0 4px;border-radius:4px}.wa-mono{font-family:ui-monospace,Consolas,monospace;font-size:.92em;margin:2px 0;white-space:pre-wrap}.wa-quote{display:block;border-left:3px solid var(--muted);padding-left:8px;color:var(--muted)}.wa-li{display:block;padding-left:4px}.bubble-body.big-emoji{font-size:40px;line-height:1.15}.bubble.bare{background:transparent;box-shadow:none;padding-left:2px;padding-right:2px}.bubble-body.hl{background:#ffc93c59;border-radius:4px}.played-mark{color:var(--read);margin-left:1px;flex:none}.vp-mic{display:inline-flex;color:var(--muted)}.vp-mic.heard{color:var(--read)}.vp-rate{border:none;background:var(--surface-2);color:var(--text);font-size:11px;font-weight:600;border-radius:999px;padding:0 7px;cursor:pointer}.vp-meta{align-items:center}.location-card{display:grid;gap:4px;padding:0;margin:-2px -6px 2px;color:inherit;text-decoration:none;width:260px;max-width:100%}.map-preview{position:relative;display:block;overflow:hidden;border-radius:8px;background:#e8e4da;max-width:100%}.map-preview img{position:absolute;width:256px;height:256px;max-width:none;-webkit-user-select:none;user-select:none}.map-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-100%);filter:drop-shadow(0 1px 1px rgb(0 0 0 / .35))}.map-attrib{position:absolute;right:4px;bottom:2px;font-size:9px;color:#333;background:#ffffffbf;padding:0 3px;border-radius:3px}.loc-text{display:grid;gap:1px;padding:0 6px}.loc-open{color:var(--read);padding:0 6px}.saved-place{display:flex;gap:10px;align-items:center}.contact-card{display:grid;gap:6px;min-width:220px;padding:2px 0}.contact-top{display:flex;gap:10px;align-items:center}.contact-id{display:grid;gap:1px}.contact-photo{width:42px;height:42px;border-radius:50%;object-fit:cover;font-size:20px;flex:none}.contact-actions{display:flex;border-top:1px solid var(--border);margin:0 -10px}.contact-actions .btn{flex:1;text-align:center;padding:6px 0;color:var(--read);text-decoration:none;font-size:13px}.contact-actions .btn+.btn{border-left:1px solid var(--border)}.bubble-list{margin-top:6px}.list-button{display:block;text-align:center;color:var(--read);font-size:13px;border-top:1px solid var(--border);padding-top:5px}.bubble-list ol{margin:4px 0 0;padding-left:20px;font-size:12px;color:var(--muted)}.react-count{font-size:11px;color:var(--muted);margin-left:2px}.reaction-picker .more{font-size:18px;color:var(--muted)}.emoji-pop{position:absolute;z-index:20;box-shadow:var(--shadow);border-radius:12px}.emoji-pop.for-reaction{top:-10px;transform:translateY(-100%)}.bubble-row.in .emoji-pop.for-reaction{left:0}.bubble-row.out .emoji-pop.for-reaction{right:0}.emoji-pop.for-composer{bottom:100%;left:0;margin-bottom:8px}em-emoji-picker{--rgb-accent: 208, 23, 78;height:360px}.unread-divider{text-align:center;margin:10px 0}.unread-divider span{display:inline-block;background:var(--surface);color:var(--muted);font-size:12px;padding:3px 12px;border-radius:8px;box-shadow:0 1px 1px #00000014}.chat-main{position:relative}.jump-bottom{position:absolute;right:18px;bottom:150px;z-index:4;width:40px;height:40px;border-radius:50%;border:none;background:var(--surface);color:var(--muted);font-size:22px;line-height:1;cursor:pointer;box-shadow:var(--shadow)}.jump-count{position:absolute;top:-6px;right:-4px;background:var(--ok);color:#fff;font-size:11px;border-radius:999px;padding:1px 6px}.chat-search{display:flex;gap:6px;align-items:center;padding:6px 12px;border-bottom:1px solid var(--border);background:var(--surface)}.chat-search input{flex:1;min-width:0}.messages.dragging{outline:2px dashed var(--accent);outline-offset:-8px}.drop-hint{position:sticky;top:40%;z-index:5;align-self:center;background:var(--surface);padding:10px 18px;border-radius:10px;box-shadow:var(--shadow);font-weight:600}.compose-tools{position:relative}.attach-menu{position:absolute;bottom:100%;left:0;margin-bottom:8px;z-index:15;display:grid;gap:2px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);min-width:200px}.attach-menu button{display:flex;gap:10px;align-items:center;border:none;background:none;padding:7px 10px;border-radius:8px;cursor:pointer;font:inherit;color:var(--text);text-align:left}.attach-menu button:hover{background:var(--surface-2)}.am-icon{width:30px;height:30px;border-radius:50%;display:inline-grid;place-items:center;font-size:15px}.am-icon.doc{background:#7f66ff33}.am-icon.photo{background:#007bfc33}.am-icon.cam{background:#ff2e7433}.am-icon.loc{background:#1fa85533}.am-icon.contact{background:#009de233}.am-icon.poll{background:#ffbc3833}.sheet{position:absolute;bottom:100%;left:0;margin-bottom:8px;z-index:16;width:min(360px,88vw);max-height:70vh;overflow-y:auto;display:grid;gap:10px;padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.sheet-head{display:flex;justify-content:space-between;align-items:center}.sheet-wide{width:100%}.sheet-list{display:grid;gap:4px}.sheet-item{display:grid;gap:1px;text-align:left;border:1px solid var(--border);background:var(--surface-2);border-radius:8px;padding:7px 10px;cursor:pointer;font:inherit;color:var(--text)}.sheet-item:hover{border-color:var(--accent)}.mld-tabs{display:flex;gap:4px;margin-bottom:8px}.mld-tabs button{border:none;background:var(--surface-2);border-radius:999px;padding:3px 10px;font:inherit;font-size:12px;cursor:pointer;color:var(--muted)}.mld-tabs button.active{background:var(--accent-soft);color:var(--accent)}.mld-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.mld-thumb{aspect-ratio:1;border:none;padding:0;border-radius:6px;overflow:hidden;cursor:pointer;background:var(--surface-2)}.mld-thumb img{width:100%;height:100%;object-fit:cover}.mld-video{font-size:24px}.mld-list{list-style:none;padding:0;margin:0;display:grid;gap:6px;font-size:13px}.mld-list li{display:flex;gap:6px;align-items:center}.mld-list a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-photo-btn{border:none;background:none;padding:0;cursor:zoom-in;border-radius:50%;flex:none}.reaction-choice{position:relative;display:inline-flex}.tone-pop{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);display:flex;gap:2px;padding:4px 6px;background:var(--surface);border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow);z-index:25}.tone-pop button{border:none;background:none;font-size:20px;cursor:pointer;border-radius:999px;padding:2px 3px}.tone-pop button:hover,.tone-pop button.on{background:var(--accent-soft)}.reaction-picker button{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.tone-pop:after{content:"";position:absolute;top:100%;left:0;right:0;height:10px}.viewer-img.upscale{width:min(70vmin,420px);height:auto;border-radius:12px;image-rendering:auto}.emoji-panel{width:min(340px,92vw);height:380px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);padding:8px;gap:6px}.emoji-search{width:100%}.emoji-tabs{display:flex;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:4px}.emoji-tabs button{border:none;background:none;font-size:18px;cursor:pointer;border-radius:6px;padding:2px 4px;opacity:.8}.emoji-tabs button:hover{background:var(--surface-2);opacity:1}.emoji-scroll{flex:1;overflow-y:auto;overscroll-behavior:contain}.emoji-scroll h4{position:sticky;top:0;background:var(--surface);margin:0;padding:4px 2px;font-size:12px;color:var(--muted);font-weight:600;z-index:1}.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr)}.toned{position:relative;display:inline-flex;justify-content:center}.toned>button{border:none;background:none;font-size:24px;line-height:1.25;cursor:pointer;border-radius:8px;padding:2px;width:100%;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.toned>button:hover,.toned>button.on{background:var(--accent-soft)}.emoji-grid .tone-pop{z-index:30}.emoji-loading{padding:12px}.tone-pop.floating{position:fixed;bottom:auto;transform:none;z-index:1000}@media(max-width:700px){.eligibility{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.eligibility::-webkit-scrollbar{display:none}.eligibility .pill{flex:none}.mode-switch button{padding:3px 10px;font-size:12px}.compose-row{gap:4px}.compose-tools .btn.icon{padding:4px}}
