:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff7f1;--bg-2:#fde9dd;--surface:#ffffffbd;--surface-solid:#fffcf9;--surface-quiet:#ffffff80;--ink:#241820;--muted:#7c6a76;--line:#3c1e2d1f;--line-strong:#3c1e2d33;--shadow:#5a283c24;--bubble-in:#fffdfb;--bubble-in-ink:#241820;--accent:#e8266f;--accent-2:#b01bd6;--on-accent:#fff;--glow:#e8266f4d;--grad:linear-gradient(135deg, var(--accent), var(--accent-2));--mesh:radial-gradient(at 12% 6%, #ffb8d49e, transparent 46%), radial-gradient(at 88% 10%, #d1a9ff80, transparent 44%), radial-gradient(at 52% 104%, #ffdbbaa8, transparent 58%);--radius-lg:26px;--radius-md:18px;--radius-sm:13px;--font:ui-sans-serif, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#08070a;--bg-2:#120f14;--surface:#1a161ebd;--surface-solid:#161219;--surface-quiet:#1e19228c;--ink:#f8f0f5;--muted:#a08e9c;--line:#ffffff17;--line-strong:#ffffff2e;--shadow:#00000080;--bubble-in:#201b24eb;--bubble-in-ink:#f8f0f5;--mesh:radial-gradient(at 8% -6%, color-mix(in oklab, var(--accent) 15%, transparent), transparent 38%), radial-gradient(at 102% 12%, #7832c81a, transparent 40%), radial-gradient(at 50% 112%, color-mix(in oklab, var(--accent-2) 9%, transparent), transparent 48%)}:root[data-accent=pink]{--accent:#e8266f;--accent-2:#b01bd6;--on-accent:#fff;--glow:#e8266f4d}:root[data-theme=dark][data-accent=pink]{--accent:#ff2e9a;--accent-2:#b026ff;--on-accent:#1b0410;--glow:#ff2e9a61}:root[data-accent=lime]{--accent:#2f9e57;--accent-2:#6cc42e;--on-accent:#f7fff9;--glow:#2f9e5747}:root[data-theme=dark][data-accent=lime]{--accent:#c6ff3d;--accent-2:#37f5a2;--on-accent:#0b1405;--glow:#c6ff3d4d}:root[data-accent=yellow]{--accent:#c98a00;--accent-2:#e0b000;--on-accent:#241a00;--glow:#c98a0042}:root[data-theme=dark][data-accent=yellow]{--accent:#ffe83d;--accent-2:#ffa51f;--on-accent:#241a00;--glow:#ffe83d4d}:root[data-theme=light]{--mesh:radial-gradient(at 12% 6%, color-mix(in oklab, var(--accent) 18%, #fff) 0%, transparent 46%), radial-gradient(at 88% 10%, color-mix(in oklab, var(--accent-2) 14%, #fff) 0%, transparent 44%), radial-gradient(at 52% 104%, #ffdbbaa8, transparent 58%)}:root[data-theme=light][data-accent=pink]{--accent:#ff2e9a;--accent-2:#b026ff;--on-accent:#1b0410;--glow:#ff2e9a61}:root[data-theme=light][data-accent=lime]{--accent:#c6ff3d;--accent-2:#37f5a2;--on-accent:#0b1405;--glow:#c6ff3d4d}:root[data-theme=light][data-accent=yellow]{--accent:#ffe83d;--accent-2:#ffa51f;--on-accent:#241a00;--glow:#ffe83d4d}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}body:before,body:after{content:"";pointer-events:none;z-index:-2;position:fixed;inset:-10%}body:before{background:var(--mesh), var(--bg);animation:26s ease-in-out infinite alternate drift}body:after{z-index:-1;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E")}@keyframes drift{to{transform:translateY(-1.5%)scale(1.02)}}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:color-mix(in oklab, var(--accent) 35%, transparent)}.logo{flex:none;align-items:center;display:inline-flex}.logo__tile{isolation:isolate;background:#06243a;flex:none;display:block;position:relative;overflow:hidden;box-shadow:0 8px 22px #03142059,inset 0 0 0 1px #ffffff3d,inset 0 1px #ffffff73}.logo__tile img{object-fit:cover;width:100%;height:100%;display:block;transform:scale(1.015)}.logo__tile:before{content:"";z-index:2;border-radius:inherit;mix-blend-mode:screen;opacity:.55;pointer-events:none;background:linear-gradient(145deg,#ffffff80 0%,#ffffff14 24%,#0000 46% 68%,#ffffff29 100%);position:absolute;inset:0}.logo__glint{z-index:3;filter:blur(2px);pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff8c,#0000);width:70%;height:240%;animation:9s ease-in-out infinite glint;position:absolute;top:-70%;left:-90%;transform:rotate(18deg)}@keyframes glint{0%,68%{opacity:0;transform:translate(-30%)rotate(18deg)}76%{opacity:.75}92%,to{opacity:0;transform:translate(420%)rotate(18deg)}}@font-face{font-family:Nora Display;src:url(/fonts/russo-one.ttf)format("truetype");font-display:swap;font-weight:400;font-style:normal}.logo__word{font-family:"Nora Display", "Arial Black", "Segoe UI Black", var(--font);letter-spacing:.02em;text-transform:uppercase;background:var(--grad);color:#0000;transform-origin:0;-webkit-background-clip:text;background-clip:text;font-size:17px;font-weight:400;display:inline-block;transform:skew(-7deg)}.icon-btn{width:38px;height:38px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:12px;place-items:center;transition:background .18s,color .18s,border-color .18s;display:inline-grid}.icon-btn:hover{background:var(--surface-quiet);border-color:var(--line);color:var(--ink)}.chip{border:1px solid var(--line);background:var(--surface-quiet);letter-spacing:.02em;height:26px;color:var(--muted);text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:600;display:inline-flex}.chip--tiny{height:20px;padding:0 8px;font-size:9.5px}.lock-pill{border:1px solid var(--line);background:var(--surface-quiet);letter-spacing:.04em;height:26px;color:var(--muted);border-radius:999px;align-items:center;gap:5px;padding:0 9px;font-size:10.5px;font-weight:700;display:inline-flex}.lock-pill--compact{justify-content:center;width:28px;padding:0}.avatar{color:#fff;letter-spacing:-.02em;border-radius:38%;flex:none;place-items:center;font-weight:700;display:inline-grid;position:relative;box-shadow:inset 0 1px #ffffff59,0 6px 18px #0000001f}.avatar:after{content:"";border-radius:inherit;border:1px solid #ffffff47;position:absolute;inset:0}.avatar img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.avatar__dot{border:2px solid var(--bg);background:#35d07f;border-radius:50%;width:12px;height:12px;position:absolute;bottom:-2px;right:-2px}.btn{border:1px solid var(--line);background:var(--surface-quiet);border-radius:15px;justify-content:center;align-items:center;gap:8px;height:48px;padding:0 18px;font-weight:650;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.btn:active{transform:scale(.985)}.btn--primary{background:var(--grad);width:100%;color:var(--on-accent);box-shadow:0 12px 30px var(--glow);border:0;position:relative;overflow:hidden}.btn--primary:after{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 32%,#ffffff5c 50%,#0000 68%);transition:transform .65s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;transform:translate(-130%)}.btn--primary:hover:after{transform:translate(130%)}.btn--primary:hover{box-shadow:0 16px 40px var(--glow)}.btn--primary:disabled{opacity:.6;cursor:default}.btn--ghost{width:100%;color:var(--muted);background:0 0}.spinner{border:2px solid color-mix(in oklab, var(--on-accent) 35%, transparent);border-top-color:var(--on-accent);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.boot{place-items:center;height:100%;display:grid}.boot>*{animation:2.2s ease-in-out infinite boot-breathe}@keyframes boot-breathe{0%,to{opacity:.72;filter:drop-shadow(0 0 #0000);transform:scale(.97)}50%{opacity:1;filter:drop-shadow(0 0 18px color-mix(in oklab, var(--accent) 35%, transparent));transform:scale(1.035)}}@keyframes pulse{50%{opacity:.55}}.auth{height:auto;min-height:0;padding:calc(28px + env(safe-area-inset-top)) 20px calc(28px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex-direction:column;justify-content:flex-start;gap:28px;display:flex;position:fixed;inset:0;overflow-y:auto}.auth__glow{background:var(--grad);filter:blur(90px);opacity:.12;pointer-events:none;z-index:-1;border-radius:50%;width:60vmax;height:60vmax;position:fixed;top:-22vmax;right:-18vmax}.auth__brand{flex-direction:column;flex:none;gap:18px;max-width:460px;display:flex}.auth__title{letter-spacing:-.05em;gap:6px;margin:0;display:grid}.auth__word{width:-moz-fit-content;width:fit-content;font-family:"Nora Display", "Arial Black", "Segoe UI Black", var(--font);letter-spacing:.02em;background:var(--grad);color:#0000;transform-origin:0;-webkit-background-clip:text;background-clip:text;font-size:clamp(38px,10vw,50px);font-weight:400;line-height:1;display:inline-block;transform:skew(-7deg)}.auth__tagline{letter-spacing:-.035em;color:var(--ink);font-size:clamp(18px,5vw,23px);font-weight:620;line-height:1.14}.auth__points{gap:10px;margin:4px 0 0;padding:0;list-style:none;display:grid}.auth__points li{color:var(--muted);align-items:center;gap:10px;font-size:13.5px;display:flex}.auth__points svg{color:var(--accent)}.auth__panel{border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface);width:100%;max-width:460px;box-shadow:0 24px 70px var(--shadow), inset 0 1px 0 #fff3;-webkit-backdrop-filter:blur(22px)saturate(150%);flex:none;padding:22px;position:relative;overflow:hidden}.auth__panel:before{content:"";opacity:.55;pointer-events:none;background:radial-gradient(closest-side,#ffffff4d,#0000 70%);border-radius:50%;width:90%;height:110%;position:absolute;top:-55%;left:-20%}.auth__panel-top{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.auth__form{gap:14px;display:grid}.auth__form h2{letter-spacing:-.03em;margin:0;font-size:24px}.auth__hint{color:var(--muted);margin:-6px 0 4px;font-size:13px;line-height:1.45}.auth__switch{color:var(--muted);background:0 0;border:0;border-radius:8px;justify-self:center;margin-top:-2px;padding:4px 6px;font-size:12.5px;font-weight:600}.auth__switch:hover{color:var(--accent)}.auth__back{color:var(--muted);background:0 0;border:0;border-radius:8px;justify-self:start;align-items:center;gap:4px;margin:-2px 0 2px -4px;padding:4px 6px;font-size:12.5px;font-weight:600;display:inline-flex}.auth__back:hover{color:var(--ink)}.field--mono input{letter-spacing:.02em;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:13px}.auth__id-hint{color:var(--muted);margin:-8px 0 0;font-size:11.5px;line-height:1.4}.auth__id-hint code{color:var(--ink);background:var(--surface-quiet);border:1px solid var(--line);border-radius:6px;padding:1px 5px;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:11.5px}.auth__note{color:var(--muted);text-align:center;margin:0;font-size:11.5px;line-height:1.45}.field{gap:7px;display:grid}.field span{color:var(--muted);letter-spacing:.01em;font-size:12px;font-weight:600}.field input{border:1px solid var(--line);background:var(--surface-quiet);border-radius:14px;height:50px;padding:0 14px;transition:border-color .16s,box-shadow .16s}.field input::placeholder{color:color-mix(in oklab, var(--muted) 65%, transparent)}.field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 22%, transparent);outline:none}.auth__error{color:#d92b4b;background:#ff3b5c24;background:lab(58.0687% 73.7307 30.5458/.14);border-radius:12px;margin:0;padding:10px 12px;font-size:13px}.auth__server{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;justify-content:center;align-items:center;gap:6px;margin:6px 0 0;font-size:11.5px;display:flex;overflow:hidden}.app-shell{height:100dvh;min-height:0;display:flex;overflow:hidden}.list-pane{flex-direction:column;width:100%;min-width:0;min-height:0;display:flex}.list-header{padding:calc(14px + env(safe-area-inset-top)) 16px 10px;justify-content:space-between;align-items:center;gap:12px;display:flex}.list-header__brand{align-items:center;gap:10px;display:flex}.list-header__actions{align-items:center;gap:6px;display:flex}.search{border:1px solid var(--line);background:var(--surface-quiet);height:42px;color:var(--muted);border-radius:14px;align-items:center;gap:9px;margin:0 14px 8px;padding:0 12px;display:flex}.search input{background:0 0;border:0;outline:none;flex:1;min-width:0;height:100%;font-size:14px}.search input::placeholder{color:color-mix(in oklab, var(--muted) 70%, transparent)}.search__clear{background:var(--line);width:22px;height:22px;color:var(--ink);border:0;border-radius:50%;place-items:center;display:grid}.chat-list{min-height:0;padding:4px 8px calc(16px + env(safe-area-inset-bottom));overscroll-behavior:contain;flex:1;overflow-y:auto}.chat-item{text-align:left;background:0 0;border:1px solid #0000;border-radius:18px;align-items:center;gap:12px;width:100%;padding:10px;transition:background .16s,border-color .16s,transform .16s;display:flex;position:relative}.chat-item:hover{background:var(--surface-quiet)}.chat-item.is-active{background:color-mix(in oklab, var(--accent) 10%, var(--surface-quiet));border-color:color-mix(in oklab, var(--accent) 22%, transparent)}.chat-item.is-active:before{content:"";background:var(--grad);border-radius:3px;width:3px;position:absolute;top:16px;bottom:16px;left:0}.chat-item__body{flex:1;gap:4px;min-width:0;display:grid}.chat-item__top,.chat-item__bottom{align-items:center;gap:6px;min-width:0;display:flex}.chat-item__name{letter-spacing:-.015em;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:15px;font-weight:650;overflow:hidden}.chat-item__time{color:var(--muted);flex:none;font-size:11px}.chat-item__lock{color:color-mix(in oklab, var(--muted) 80%, transparent);flex:none}.chat-me{border-radius:50%;padding:0}.chat-header__profile{min-width:0;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.chat-header__profile .chat-header__text{gap:1px;min-width:0;display:grid}.ticks{color:var(--muted);vertical-align:-2px;margin-left:-4px;display:inline-flex}.ticks svg+svg{margin-left:-6px}.ticks--read{color:#37d67a}.tick--sending{opacity:.55}.chat-info{z-index:92;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.chat-info__scrim{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#08060a7a;border:0;position:absolute;inset:0}.chat-info__panel{width:min(100%,430px);max-height:88dvh;padding:16px 16px calc(18px + env(safe-area-inset-bottom));border:1px solid var(--line);background:var(--surface-solid);box-shadow:0 -18px 60px var(--shadow);border-radius:24px 24px 0 0;animation:.22s cubic-bezier(.16,1,.3,1) sheet-up;position:relative;overflow-y:auto}.chat-info__head{justify-content:space-between;align-items:center;display:flex}.chat-info__head h2{margin:0;font-size:18px}.chat-info__hero{align-items:center;gap:12px;padding:14px 0;display:flex}.chat-info__hero h3{margin:0;font-size:19px}.chat-info__hero p{color:var(--muted);margin:2px 0 0;font-size:12px}.chat-info__creator{background:var(--surface-quiet);border-radius:12px;justify-content:space-between;gap:10px;padding:10px 12px;font-size:13px;display:flex}.chat-info__creator span{color:var(--muted)}.chat-info__title{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:16px 0 8px;font-size:11px}.chat-info__list{gap:4px;display:grid}.chat-info__member{align-items:center;gap:10px;padding:6px 4px;display:flex}.chat-info__member .avatar,.chat-info__add .avatar{flex:none}.chat-info__member div{flex:1;gap:1px;min-width:0;display:grid}.chat-info__member strong{font-size:13.5px}.chat-info__member span{color:var(--muted);font-size:11px}.chat-info__member em{color:var(--muted);font-size:10.5px;font-style:normal}.chat-info__invite{gap:6px;margin-top:16px;display:grid}.chat-info__add{color:var(--ink);text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:6px 4px;display:flex}.chat-info__add span{flex:1;font-size:13px;font-weight:600}@media (min-width:761px){.chat-info{align-items:center}.chat-info__panel{border-radius:22px;max-height:80dvh}}.chat-people{border-top:1px solid var(--line);gap:4px;margin-top:10px;padding-top:10px;display:grid}.chat-people__label{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);padding:2px 8px 6px;font-size:10px;font-weight:700}.chat-people__empty{color:var(--muted);margin:0;padding:10px 8px;font-size:12px}.calls-list{gap:0;display:grid}.call-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:10px;width:100%;padding:10px 2px;display:flex}.call-row:last-child{border-bottom:0}.call-row__body{flex:1;gap:3px;min-width:0;display:grid}.call-row__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.call-row__name{font-size:14px;font-weight:650}.call-row__top time{color:var(--muted);font-size:10.5px}.call-row__meta{color:var(--muted);align-items:center;gap:4px;font-size:11.5px;display:flex}.call-row__meta--missed{color:#e04560}.call-row__action{color:var(--accent);flex:none}.chat-item__preview{min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12.5px;overflow:hidden}.badge{background:var(--grad);min-width:20px;height:20px;color:var(--on-accent);border-radius:999px;flex:none;place-items:center;padding:0 6px;font-size:11px;font-weight:700;display:grid}.list-empty{color:var(--muted);text-align:center;justify-items:center;gap:6px;padding:60px 20px;display:grid}.list-empty p{color:var(--ink);margin:0;font-weight:600}.list-empty span{font-size:13px}.chat-pane{flex-direction:column;flex:1;min-width:0;height:100dvh;min-height:0;display:none}.app-shell[data-chat=open] .chat-pane{z-index:30;background:var(--bg);animation:.26s cubic-bezier(.16,1,.3,1) slide-in;display:flex;position:fixed;inset:0}.app-shell[data-chat=open] .list-pane{display:none}@keyframes slide-in{0%{opacity:.4;transform:translate(14%)}}.chat-header{padding:calc(10px + env(safe-area-inset-top)) 12px 10px;border-bottom:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:blur(18px)saturate(140%);z-index:2;align-items:center;gap:10px;display:flex}.chat-back{margin-left:-6px}.chat-header__text{gap:2px;min-width:0;display:grid}.chat-header__name{letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;font-size:15.5px;font-weight:680;overflow:hidden}.chat-header__sub{color:var(--muted);align-items:center;gap:4px;font-size:11px;display:flex}.messages{overscroll-behavior:contain;flex-direction:column;flex:1;gap:4px;min-height:0;padding:14px 14px 8px;display:flex;overflow-y:auto}.e2ee-note{background:var(--surface-quiet);border:1px solid var(--line);max-width:340px;color:var(--muted);text-align:center;border-radius:14px;align-self:center;align-items:flex-start;gap:7px;margin:2px 0 12px;padding:8px 12px;font-size:11.5px;line-height:1.4;display:flex}.e2ee-note svg{color:var(--accent);flex:none;margin-top:1px}.day-sep{justify-content:center;margin:14px 0 8px;display:flex}.day-sep span{background:var(--surface);border:1px solid var(--line);color:var(--muted);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:999px;padding:4px 10px;font-size:10.5px;font-weight:600}.msg{background:var(--bubble-in);width:-moz-fit-content;width:fit-content;max-width:78%;color:var(--bubble-in-ink);border:1px solid var(--line);border-radius:18px 18px 18px 6px;margin:2px 0;padding:8px 12px 5px;animation:.22s cubic-bezier(.16,1,.3,1) rise;box-shadow:0 2px 10px #0000000a}.msg--out{background:var(--grad);color:var(--on-accent);box-shadow:0 10px 26px var(--glow);border:0;border-radius:18px 18px 6px;margin-left:auto}.msg.is-pending{opacity:.7}.msg__author{color:var(--accent);margin-bottom:2px;font-size:11.5px;font-weight:700;display:block}.msg-row{width:100%;display:flex;position:relative}.msg-row__actions{border:1px solid var(--line);background:color-mix(in oklab, var(--surface-solid) 92%, transparent);box-shadow:0 10px 28px var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;z-index:4;border-radius:13px;gap:4px;padding:4px;transition:opacity .14s,transform .14s;display:flex;position:absolute;top:38px;right:8px;transform:translateY(-3px)}.msg-row__actions.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.msg-row:has(.msg--out) .msg-row__actions{left:8px;right:auto}.msg-row__more{z-index:5;border:1px solid var(--line);background:var(--surface-solid);width:28px;height:28px;color:var(--muted);box-shadow:0 4px 12px var(--shadow);opacity:0;border-radius:9px;place-items:center;padding:0;transition:opacity .14s;display:grid;position:absolute;top:7px;right:8px}.msg-row:hover .msg-row__more,.msg-row:focus-within .msg-row__more,.msg-row__more.is-open{opacity:1}.msg-row:has(.msg--out) .msg-row__more{left:8px;right:auto}.msg-row__actions button{border:1px solid var(--line);background:var(--surface-solid);width:30px;height:30px;color:var(--muted);box-shadow:0 3px 9px color-mix(in oklab, var(--shadow) 65%, transparent);border-radius:9px;place-items:center;padding:0;display:grid}.msg-row__actions button:hover{color:var(--accent);border-color:color-mix(in oklab, var(--accent) 35%, var(--line))}.msg-row__danger{gap:3px;color:#e04560!important;width:auto!important;padding:0 8px!important;display:flex!important}.msg-row__danger span{letter-spacing:.02em;font-size:8px;font-weight:700}.msg-actions{z-index:95;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.msg-actions__scrim{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#08060a7a;border:0;position:absolute;inset:0}.msg-actions__panel{width:min(100%,430px);padding:12px 12px calc(14px + env(safe-area-inset-bottom));border:1px solid var(--line);background:var(--surface-solid);box-shadow:0 -18px 60px var(--shadow);border-radius:24px 24px 0 0;gap:3px;animation:.22s cubic-bezier(.16,1,.3,1) sheet-up;display:grid;position:relative}.msg-actions__head{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;padding:2px 6px 8px;font-size:12px;font-weight:650;display:flex}.msg-actions__panel>button:not(.msg-actions__scrim){width:100%;min-height:46px;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:11px;padding:0 12px;font-size:14px;font-weight:600;display:flex}.msg-actions__panel>button:hover{background:var(--surface-quiet)}.msg-actions__danger{color:#e04560!important}@media (min-width:761px){.msg-actions{align-items:center}.msg-actions__panel{border-radius:22px;width:360px;padding-bottom:12px}}.msg-row.is-flash .msg{box-shadow:0 0 0 2px var(--accent), 0 12px 32px color-mix(in oklab, var(--accent) 24%, transparent)}@media (hover:none){.msg-row__more{opacity:.92}}@media (max-width:760px){.msg-row__more{opacity:.92}}.msg__quote{border-left:3px solid var(--accent);background:color-mix(in oklab, var(--accent) 9%, transparent);border-radius:7px;margin-bottom:5px;padding:4px 8px}.msg__quote span{color:var(--accent);font-size:10.5px;font-weight:700;display:block}.msg__quote p{white-space:nowrap;text-overflow:ellipsis;opacity:.82;max-width:220px;margin:1px 0 0;font-size:12px;overflow:hidden}.msg--out .msg__quote{background:#0000001f;border-left-color:currentColor}.msg--out .msg__quote span{color:inherit;opacity:.75}@media (hover:none){.msg-row__actions{display:none}}.msg__body{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14.5px;line-height:1.42}.msg__image-link{margin:-2px -6px 2px;display:block}.msg--media{padding:6px}.msg--out.msg--media{background:var(--surface-solid);color:var(--ink);box-shadow:0 10px 28px #0003}.msg--out.msg--media .msg__meta{color:var(--muted);opacity:.85;padding:0 2px}.msg--media .msg__image-link{margin:0}.msg__image{object-fit:cover;background:var(--surface-quiet);border-radius:13px;width:auto;max-width:min(320px,68vw);max-height:320px;display:block}.msg__audio{width:min(280px,64vw);height:40px;margin:2px 0;display:block}.msg__video{background:#000;border-radius:13px;width:auto;max-width:min(360px,70vw);max-height:320px;margin:0;display:block}.msg__file{min-width:min(220px,60vw);color:inherit;align-items:center;gap:10px;padding:2px 0;text-decoration:none;display:flex}.msg__file-icon{background:color-mix(in oklab, currentColor 12%, transparent);border-radius:12px;flex:none;place-items:center;width:38px;height:38px;display:grid}.msg__file-text{gap:2px;min-width:0;display:grid}.msg__file-text>span{white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-size:13.5px;font-weight:600;overflow:hidden}.msg__file-text small{opacity:.65;font-size:10.5px}.chat-header__actions{align-items:center;gap:2px;margin-left:auto;display:flex}.call-modal{z-index:70;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.call-modal__scrim{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0503069e;border:0;position:absolute;inset:0}.call-modal__panel{text-align:center;border:1px solid var(--line);background:var(--surface-solid);border-radius:28px;justify-items:center;gap:8px;width:min(360px,100%);padding:26px 22px 20px;animation:.24s cubic-bezier(.16,1,.3,1) sheet-pop;display:grid;position:relative;box-shadow:0 30px 80px #00000073}.call-modal__badge{border:1px solid var(--line);color:var(--muted);border-radius:999px;align-items:center;gap:5px;margin-bottom:6px;padding:4px 9px;font-size:10px;font-weight:700;display:inline-flex}.call-modal__panel h3{letter-spacing:-.03em;margin:6px 0 0;font-size:22px}.call-modal__mode{color:var(--ink);margin:0;font-size:13.5px;font-weight:600}.call-modal__status{color:var(--muted);margin:0;font-size:12px}.call-modal__actions{gap:14px;margin:12px 0 4px;display:flex}.call-btn{border:1px solid var(--line);background:var(--surface-quiet);width:52px;height:52px;color:var(--ink);border-radius:50%;place-items:center;display:grid}.call-btn:hover{background:var(--surface)}.call-btn--end{color:#fff;background:#ff3b5c;border:0;box-shadow:0 10px 24px #ff3b5c66}.call-modal__note{color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.45}.msg__meta{opacity:.62;justify-content:flex-end;align-items:center;gap:4px;margin-top:3px;font-size:10px;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(6px)scale(.99)}}.composer__attachments{scrollbar-width:none;gap:8px;padding:8px 12px 2px;display:flex;overflow-x:auto}.composer__attachments::-webkit-scrollbar{display:none}.attach{border:1px solid var(--line);background:var(--surface-quiet);border-radius:13px;flex:none;width:66px;height:66px;position:relative;overflow:hidden}.attach img{object-fit:cover;width:100%;height:100%}.attach__file{width:100%;height:100%;color:var(--muted);text-align:center;word-break:break-all;place-items:center;gap:3px;padding:5px;font-size:8px;line-height:1.2;display:grid}.attach button{color:#fff;background:#0a060cb8;border:0;border-radius:50%;place-items:center;width:20px;height:20px;padding:0;display:grid;position:absolute;top:3px;right:3px}.composer{margin:6px 10px calc(8px + env(safe-area-inset-bottom));border:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:blur(20px)saturate(150%);box-shadow:0 12px 34px var(--shadow);border-radius:24px;align-items:flex-end;gap:8px;padding:6px 6px 6px 10px;display:flex}.composer__reply{border-left:3px solid var(--accent);background:var(--surface-quiet);border-radius:10px;justify-content:space-between;align-items:flex-start;gap:8px;margin:0 14px 4px;padding:6px 10px;display:flex}.composer__reply span{color:var(--accent);font-size:10.5px;font-weight:700}.composer__reply p{white-space:nowrap;text-overflow:ellipsis;max-width:62vw;color:var(--muted);margin:1px 0 0;font-size:12px;overflow:hidden}.composer__reply button{background:var(--line);width:22px;height:22px;color:var(--ink);border:0;border-radius:50%;flex:none;place-items:center;display:grid}.pinned-banner{border-bottom:1px solid var(--line);background:var(--surface-quiet);color:var(--muted);align-items:flex-start;gap:8px;padding:8px 14px;display:flex}.pinned-banner svg{color:var(--accent);flex:none;margin-top:2px}.pinned-banner span{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);font-size:9.5px;font-weight:800;display:block}.pinned-banner p{white-space:nowrap;text-overflow:ellipsis;max-width:60vw;margin:1px 0 0;font-size:12px;overflow:hidden}.composer__lock{width:22px;height:38px;color:color-mix(in oklab, var(--muted) 75%, transparent);flex:none;place-items:center;display:grid}.composer__clip{width:32px;height:38px;color:var(--muted);background:0 0;border:0;border-radius:10px;flex:none;place-items:center;display:grid}.composer__clip:hover{color:var(--accent);background:var(--surface-quiet)}.composer__file{display:none}.composer textarea{resize:none;background:0 0;border:0;outline:none;flex:1;min-width:0;max-height:132px;padding:9px 0;font-size:14.5px;line-height:1.4}.composer textarea::placeholder{color:color-mix(in oklab, var(--muted) 70%, transparent)}.composer__send{background:var(--grad);width:42px;height:42px;color:var(--on-accent);box-shadow:0 8px 20px var(--glow);border:0;border-radius:50%;flex:none;place-items:center;transition:transform .15s,opacity .15s;display:grid}.composer__send:active{transform:scale(.94)}.composer__send:disabled{opacity:.45;box-shadow:none}.composer--recording{gap:10px;padding-left:8px}.recorder__cancel{width:38px;height:38px;color:var(--muted);background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.recorder__cancel:hover{color:#ff4d6d;background:#ff3b5c24;background:lab(58.0687% 73.7307 30.5458/.14)}.recorder__dot{background:#ff3b5c;border-radius:50%;flex:none;width:8px;height:8px;animation:1.1s ease-out infinite rec-pulse;box-shadow:0 0 #ff3b5c8c}@keyframes rec-pulse{to{box-shadow:0 0 0 9px #ff3b5c00}}.recorder__time{font-variant-numeric:tabular-nums;min-width:34px;color:var(--muted);flex:none;font-size:12px}.recorder__wave{flex:1;align-items:center;gap:3px;height:40px;display:flex;overflow:hidden}.recorder__bar{background:var(--accent);opacity:.85;border-radius:3px;flex:none;width:3px;transition:height 70ms linear}.composer__send.is-recording{color:#fff;background:#ff3b5c;box-shadow:0 10px 24px #ff3b5c59}.composer__hint{text-align:center;color:var(--muted);margin:-2px 18px 6px;font-size:11px}.composer__error{color:#d92b4b;text-align:center;background:#ff3b5c24;background:lab(58.0687% 73.7307 30.5458/.14);border-radius:10px;margin:-2px 18px 6px;padding:8px 10px;font-size:11.5px}.msg__voice{align-items:center;gap:9px;min-width:min(220px,60vw);padding:2px 0;display:flex}.voice__play{background:color-mix(in oklab, currentColor 14%, transparent);width:34px;height:34px;color:inherit;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.msg--out .voice__play{background:#00000029}.voice__wave{flex:1;align-items:center;gap:2px;height:26px;display:flex;overflow:hidden}.voice__wave span{opacity:.34;background:currentColor;border-radius:2px;flex:none;width:3px;transition:opacity .18s}.voice__wave span.is-played{opacity:.95}.voice__time{opacity:.68;font-variant-numeric:tabular-nums;flex:none;font-size:10.5px}.empty-pane{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:40px;display:none}.empty-pane__ring{border:1px solid var(--line);background:var(--surface);width:104px;height:104px;box-shadow:0 20px 50px var(--shadow);border-radius:36px;place-items:center;margin-bottom:8px;display:grid}.empty-pane h2{letter-spacing:-.03em;margin:0;font-size:22px}.empty-pane p{max-width:34ch;color:var(--muted);margin:0;font-size:13.5px;line-height:1.5}.empty-pane__lock{border:1px solid var(--line);background:var(--surface-quiet);color:var(--muted);border-radius:999px;align-items:center;gap:6px;margin-top:6px;padding:6px 11px;font-size:11.5px;display:flex}.calls-empty{text-align:center;justify-items:center;gap:6px;padding:32px 16px;display:grid}.calls-empty__icon{background:color-mix(in oklab, var(--accent) 14%, transparent);width:54px;height:54px;color:var(--accent);border-radius:16px;place-items:center;margin-bottom:6px;display:grid}.calls-empty strong{font-size:15px}.calls-empty p{color:var(--muted);margin:0;font-size:12px}.crop{z-index:90;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#08060ab8;justify-content:center;align-items:center;padding:16px;animation:.16s fade;display:flex;position:fixed;inset:0}.crop__panel{border:1px solid var(--line);background:var(--surface-solid);width:min(100%,420px);max-height:calc(100dvh - 32px);box-shadow:0 24px 70px var(--shadow);border-radius:26px;gap:14px;padding:18px;animation:.2s cubic-bezier(.16,1,.3,1) crop-in;display:grid;overflow-y:auto}@keyframes crop-in{0%{opacity:0;transform:translateY(8px)scale(.985)}}.crop__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.crop__header h2{letter-spacing:-.03em;margin:0;font-size:18px}.crop__header p{color:var(--muted);margin:4px 0 0;font-size:12px}.crop__frame{aspect-ratio:1;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;background:#0b0a0d;border-radius:24px;outline:none;width:min(100%,320px);margin:0 auto;position:relative;overflow:hidden}.crop__frame:active{cursor:grabbing}.crop__frame:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 45%, transparent)}.crop__image{transform-origin:50%;will-change:transform;pointer-events:none;max-width:none;max-height:none;position:absolute;top:50%;left:50%}.crop__ring{pointer-events:none;border-radius:50%;position:absolute;inset:0;box-shadow:0 0 0 9999px #0403068c,inset 0 0 0 2px #ffffffe6}.crop__loading{color:#fff;place-items:center;font-size:12px;display:grid;position:absolute;inset:0}.crop__zoom{align-items:center;gap:8px;display:flex}.crop__zoom input[type=range]{min-width:0;accent-color:var(--accent);flex:1}.crop__zoom-btn{border:1px solid var(--line);background:var(--surface-quiet);width:34px;height:34px;color:var(--text);border-radius:10px;flex:none;font-size:18px;line-height:1}.crop__zoom-btn:disabled{opacity:.35}.crop__reset{color:var(--accent);background:0 0;border:0;flex:none;padding:8px 4px;font-size:12px;font-weight:650}.crop__hint{text-align:center;color:var(--muted);margin:0;font-size:11px;line-height:1.45}.crop__error{color:#e04560;background:#e045601f;border-radius:12px;margin:0;padding:10px 12px;font-size:12.5px}.crop__actions{grid-template-columns:1fr 1.3fr;gap:10px;display:grid}.crop__actions .btn{width:100%}.sheet{z-index:60;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet__scrim{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a060c73;border:0;animation:.18s fade;position:absolute;inset:0}@keyframes fade{0%{opacity:0}}.sheet__panel{width:100%;max-height:90dvh;padding:18px 18px calc(20px + env(safe-area-inset-bottom));border:1px solid var(--line);background:var(--surface-solid);box-shadow:0 -18px 60px var(--shadow);border-radius:26px 26px 0 0;gap:16px;animation:.26s cubic-bezier(.16,1,.3,1) sheet-up;display:grid;position:relative;overflow-y:auto}@keyframes sheet-up{0%{opacity:.6;transform:translateY(12%)}}.sheet__header{justify-content:space-between;align-items:center;display:flex}.sheet__header h2{letter-spacing:-.03em;margin:0;font-size:20px}.sheet__section{border-top:1px solid var(--line);gap:10px;padding-top:4px;display:grid}.sheet__section:first-of-type{border-top:0}.sheet__section h3{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;margin:0;font-size:12px;font-weight:700;display:flex}.profile-row{align-items:center;gap:12px;display:flex}.profile-upload{border:1px solid var(--line);background:var(--surface-quiet);height:34px;color:var(--muted);cursor:pointer;border-radius:10px;align-items:center;padding:0 12px;font-size:12px;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.profile-upload input{opacity:0;cursor:pointer;position:absolute;inset:0}.profile-username{color:var(--muted);margin:-4px 0 0;font-size:12px;font-weight:600}.sheet__error{color:#e04560;background:#e045601f;border-radius:11px;margin:0;padding:9px 12px;font-size:12.5px}.encryption-row{border:1px solid var(--line);background:var(--surface-quiet);border-radius:16px;align-items:center;gap:12px;padding:13px 14px;display:flex}.encryption-row__icon{background:color-mix(in oklab, var(--accent) 16%, transparent);width:38px;height:38px;color:var(--accent);border-radius:12px;flex:none;place-items:center;display:grid}.encryption-row div{gap:2px;min-width:0;display:grid}.encryption-row strong{font-size:13.5px}.encryption-row div span{color:var(--muted);font-size:11.5px}.recovery{border-top:1px solid var(--line);padding-top:12px}.recovery summary{cursor:pointer;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;font-size:12px;font-weight:700;list-style:none;display:flex}.recovery summary::-webkit-details-marker{display:none}.recovery[open] summary{color:var(--text)}.recovery>*+*{margin-top:10px}.recovery__key{border:1px solid var(--line);background:var(--surface-quiet);border-radius:14px;gap:8px;padding:12px;display:grid}.recovery__key span{color:var(--muted);font-size:11px;font-weight:650}.recovery__key code{word-break:break-all;color:var(--accent);font-size:12px;line-height:1.5}.avatar--saved{background:var(--grad);color:var(--on-accent);box-shadow:0 8px 20px color-mix(in oklab, var(--accent) 30%, transparent), inset 0 1px 0 #ffffff47}.update-banner{left:50%;bottom:calc(16px + env(safe-area-inset-bottom));z-index:100;border:1px solid var(--line);background:var(--surface-solid);width:min(100% - 24px,470px);box-shadow:0 18px 50px var(--shadow);border-radius:16px;align-items:center;gap:10px;padding:10px 12px;animation:.22s cubic-bezier(.16,1,.3,1) update-in;display:flex;position:fixed;transform:translate(-50%)}@keyframes update-in{0%{opacity:0;transform:translate(-50%,10px)}}.update-banner__icon{background:color-mix(in oklab, var(--accent) 16%, transparent);width:34px;height:34px;color:var(--accent);border-radius:11px;flex:none;place-items:center;display:grid}.update-banner__text{flex:1;gap:1px;min-width:0;display:grid}.update-banner__text strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.update-banner__text span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.update-banner .btn.update-banner__action{flex:none;width:auto;height:34px;padding:0 14px;font-size:12px}@media (max-width:760px){.update-banner{bottom:calc(78px + env(safe-area-inset-bottom))}}.update-banner__close{flex:none;width:30px;height:30px}.admin__copy{border:1px solid var(--line);background:var(--surface-quiet);color:var(--accent);border-radius:8px;padding:4px 9px;font-size:11px;font-weight:650}.admin__revoke{border:1px solid color-mix(in oklab, #e04560 45%, var(--line));color:#e04560;background:0 0;border-radius:8px;padding:4px 9px;font-size:11px;font-weight:650}.admin__revoke:disabled{opacity:.5}.segmented{border:1px solid var(--line);background:var(--surface-quiet);border-radius:15px;grid-template-columns:1fr 1fr;gap:6px;padding:4px;display:grid}.segmented button{height:40px;color:var(--muted);background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:600;display:flex}.segmented button.is-active{background:var(--surface-solid);color:var(--ink);box-shadow:0 4px 14px var(--shadow)}.swatches{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.swatch{border:1px solid var(--line);background:var(--surface-quiet);color:var(--muted);border-radius:15px;justify-items:center;gap:7px;padding:12px 6px;font-size:11.5px;font-weight:600;transition:border-color .16s,background .16s;display:grid}.swatch.is-active{border-color:var(--accent);background:color-mix(in oklab, var(--accent) 10%, transparent);color:var(--ink)}.swatch__dot{border-radius:50%;width:30px;height:30px;box-shadow:inset 0 1px #fff6,0 4px 12px #00000029}.sheet__note{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.sheet__section--e2ee h3{color:var(--ink);text-transform:none;letter-spacing:0;font-size:12.5px}.kv{justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.kv span{color:var(--muted)}.kv code,.kv__value{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--ink);font-size:12.5px;overflow:hidden}.kv code{background:var(--surface-quiet);border:1px solid var(--line);border-radius:8px;padding:4px 8px;font-family:ui-monospace,Cascadia Code,Consolas,monospace}.sheet__version{text-align:center;color:var(--muted);margin:0;font-size:11px}.group-count{color:var(--muted);justify-content:space-between;align-items:center;font-size:12px;display:flex}.group-count strong{color:var(--ink);font-size:12px}.member-list{gap:2px;max-height:280px;margin:0 -4px;padding:0 4px;display:grid;overflow-y:auto}.member-item{text-align:left;background:0 0;border:1px solid #0000;border-radius:14px;align-items:center;gap:10px;padding:7px 8px;display:flex}.member-item:hover{background:var(--surface-quiet)}.member-item.is-active{background:color-mix(in oklab, var(--accent) 10%, transparent);border-color:color-mix(in oklab, var(--accent) 22%, transparent)}.member-item:disabled{opacity:.4}.member-item__text{flex:1;gap:1px;min-width:0;display:grid}.member-item__text span{font-size:13.5px;font-weight:600}.member-item__text small{color:var(--muted);font-size:11px}.member-check{border:1px solid var(--line);width:22px;height:22px;color:var(--on-accent);border-radius:7px;flex:none;place-items:center;display:grid}.member-item.is-active .member-check{background:var(--grad);border:0}.switch{border:1px solid var(--line);background:var(--surface-quiet);border-radius:999px;align-items:center;width:46px;height:27px;padding:3px;transition:background .18s;display:flex}.switch span{background:var(--muted);border-radius:50%;width:19px;height:19px;transition:transform .18s cubic-bezier(.16,1,.3,1),background .18s}.switch.is-on{background:var(--grad);border-color:#0000}.switch.is-on span{background:var(--on-accent);transform:translate(19px)}.backup-key{border:1px solid color-mix(in oklab, var(--accent) 30%, var(--line));background:color-mix(in oklab, var(--accent) 8%, transparent);border-radius:14px;gap:8px;padding:12px;display:grid}.backup-key>span{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);font-size:10px;font-weight:800}.backup-key code{background:var(--surface-solid);border:1px solid var(--line);word-break:break-all;-webkit-user-select:all;user-select:all;border-radius:10px;padding:10px;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:12px;line-height:1.5}@media (min-width:920px){.app-shell{grid-template-columns:382px minmax(0,1fr);display:grid}.app-shell[data-chat=open] .list-pane,.list-pane{display:flex}.app-shell[data-chat=open] .chat-pane,.chat-pane{background:0 0;animation:none;display:flex;position:static}.empty-pane{display:flex}.list-pane{border-right:1px solid var(--line);background:color-mix(in oklab, var(--surface-quiet) 55%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.chat-back{display:none}.chat-header{padding:14px 22px}.messages{padding:20px clamp(20px,4vw,48px) 10px}.composer{margin:8px clamp(20px,4vw,48px) 14px}.msg{max-width:min(62%,560px)}.auth{grid-template-columns:1.05fr .95fr;justify-content:normal;align-items:center;gap:clamp(30px,6vw,90px);max-width:1120px;height:100dvh;margin:0 auto;padding:60px 40px;display:grid;overflow-y:auto}.auth__brand{max-width:520px}.auth__panel{justify-self:end;max-width:440px;padding:30px}.sheet{align-items:center}.sheet__panel{border-radius:28px;width:430px;max-height:86dvh;padding:22px;animation:.22s cubic-bezier(.16,1,.3,1) sheet-pop}@keyframes sheet-pop{0%{opacity:0;transform:translateY(10px)scale(.98)}}}@media (min-width:1280px){.app-shell{grid-template-columns:410px minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (prefers-reduced-transparency:reduce){.auth__panel,.chat-header,.composer,.list-pane{background:var(--surface-solid)!important;-webkit-backdrop-filter:none!important}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.auth__panel,.chat-header,.composer,.list-pane{background:var(--surface-solid)}}.admin{background:var(--bg);grid-template-columns:232px minmax(0,1fr);min-height:100dvh;display:grid}.admin__rail{border-right:1px solid var(--line);background:color-mix(in oklab, var(--surface-quiet) 55%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);flex-direction:column;gap:22px;padding:22px 16px;display:flex}.admin__brand{color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.admin__brand span{letter-spacing:.02em;font-size:14px;font-weight:800;display:grid}.admin__brand small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:600}.admin__nav{gap:3px;display:grid}.admin__nav button{color:var(--muted);text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:9px;padding:10px 11px;font-size:13px;font-weight:600;display:flex}.admin__nav button:hover{background:var(--surface-quiet);color:var(--ink)}.admin__nav button.is-active{background:color-mix(in oklab, var(--accent) 12%, transparent);border-color:color-mix(in oklab, var(--accent) 22%, transparent);color:var(--ink)}.admin__nav button.is-active svg{color:var(--accent)}.admin__foot{color:var(--muted);gap:7px;margin-top:auto;font-size:11px;display:grid}.admin__foot a{color:var(--muted);font-weight:600;text-decoration:none}.admin__foot a:hover{color:var(--accent)}.dot{background:#b3a1ae;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.dot--ok{background:#2fbf71;box-shadow:0 0 0 4px #2fbf7126}.admin__main{max-height:100dvh;padding:26px 30px 40px;overflow-y:auto}.admin__header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.admin__header h1{letter-spacing:-.04em;margin:0;font-size:26px}.admin__header-actions{flex:none;align-items:center;gap:10px;display:flex}.admin__link--danger{color:#d92b4b}.admin__header p{color:var(--muted);margin:4px 0 0;font-size:13px}.admin__cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.admin__card{border:1px solid var(--line);background:var(--surface);border-radius:18px;gap:4px;padding:16px;display:grid;box-shadow:inset 0 1px #ffffff40}.admin__card span{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11px}.admin__card strong{letter-spacing:-.04em;font-size:24px}.admin__card small{color:var(--muted);font-size:11px}.admin__panel{border:1px solid var(--line);background:var(--surface);box-shadow:0 10px 32px var(--shadow);border-radius:20px;padding:18px}.admin__panel h2{letter-spacing:-.02em;margin:0 0 12px;font-size:15px}.admin__feed{color:var(--muted);gap:9px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.admin__feed li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:8px;display:flex}.admin__feed li:last-child{border-bottom:0;padding-bottom:0}.admin__feed span{text-overflow:ellipsis;min-width:0;overflow:hidden}.admin__feed time{color:var(--muted);flex:none;font-size:11px}.admin__toolbar{align-items:center;gap:10px;margin-bottom:14px;display:flex}.admin__toolbar input{border:1px solid var(--line);background:var(--surface-quiet);border-radius:12px;flex:1;max-width:280px;height:40px;padding:0 12px}.admin__toolbar .btn{border-radius:12px;width:auto;height:40px;padding:0 16px}.admin__hint{color:var(--muted);font-size:12px}.admin__table{border-collapse:collapse;width:100%;font-size:13px}.admin__table th{text-align:left;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--line);padding:8px 10px;font-size:10.5px}.admin__table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:11px 10px}.admin__table tr:last-child td{border-bottom:0}.admin__table strong{font-size:13.5px;display:block}.admin__table small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.admin__table code{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:11.5px}.admin__link{color:var(--muted);text-underline-offset:3px;background:0 0;border:0;font-size:12px;text-decoration:underline}.admin__link:hover{color:#ff4d6d}.pill{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;align-items:center;height:22px;padding:0 8px;font-size:10.5px;font-weight:700;display:inline-flex}.pill--active{color:#2fbf71;background:#2fbf712e;background:lab(68.739% -52.1972 28.2326/.18)}.pill--used{background:var(--line);color:var(--muted)}.admin__kv{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:12px 0;font-size:13px;display:flex}.admin__kv:last-of-type{border-bottom:0}.admin__kv span{color:var(--muted)}.admin__toast{background:var(--surface-solid);border:1px solid var(--line);box-shadow:0 16px 40px var(--shadow);z-index:80;border-radius:14px;padding:12px 16px;font-size:13px;position:fixed;bottom:22px;right:22px}.admin__logout{text-align:left;color:var(--muted);text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:11px;text-decoration:underline}.admin__theme{border:1px solid var(--line);background:var(--surface-quiet);height:30px;color:var(--muted);border-radius:9px;align-items:center;gap:6px;padding:0 11px;font-size:11px;font-weight:650;display:inline-flex}.admin__theme:hover{color:var(--ink)}.admin--login{grid-template-columns:1fr;place-items:center;min-height:100dvh;display:grid}.admin__login{border:1px solid var(--line);background:var(--surface);width:min(380px,90vw);box-shadow:0 24px 60px var(--shadow);border-radius:24px;gap:14px;padding:28px;display:grid}.admin__login h1{letter-spacing:-.04em;margin:4px 0 0;font-size:24px}.admin__login p{color:var(--muted);margin:0;font-size:12.5px;line-height:1.5}.admin__login input{border:1px solid var(--line);background:var(--surface-quiet);border-radius:12px;height:46px;padding:0 12px}.admin__login a{color:var(--muted);justify-self:center;font-size:12px;text-decoration:none}@media (max-width:900px){.admin{display:block;overflow-x:hidden}.admin__rail{z-index:20;border-right:0;border-bottom:1px solid var(--line);background:var(--bg);flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;display:flex;position:sticky;top:0;overflow:visible}.admin__brand span{font-size:12px}.admin__nav{flex:100%;order:2;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;display:grid;overflow:visible}.admin__nav button{white-space:nowrap;text-overflow:ellipsis;justify-content:center;padding:8px 6px;font-size:11px;overflow:hidden}.admin__rail::-webkit-scrollbar{display:none}.admin__nav::-webkit-scrollbar{display:none}.admin__brand{flex:none}.admin__nav{flex-wrap:nowrap;flex:1;gap:2px;min-width:0;display:flex;overflow-x:auto}.admin__nav button{white-space:nowrap;flex:none;padding:8px 10px;font-size:12px}.admin__nav button svg,.admin__foot{display:none}.admin__main{width:100%;max-height:none;padding:18px 14px 30px;overflow-x:hidden}.admin__header{flex-direction:column;align-items:stretch;gap:10px}.admin__header h1{font-size:22px}.admin__header p{font-size:12px}.admin__header-actions{flex-wrap:wrap;justify-content:flex-start;gap:6px;width:100%}.admin__theme,.admin__logout{border:1px solid var(--line);height:32px;color:var(--ink);background:var(--surface-quiet);border-radius:9px;padding:0 10px;text-decoration:none}.admin__header-actions .chip{align-self:center}.admin__cards{grid-template-columns:1fr 1fr;gap:8px}.admin__card{padding:12px}.admin__card strong{font-size:20px}.admin__toolbar{flex-direction:column;align-items:stretch}.admin__toolbar input{width:100%;max-width:none}.admin__toolbar .btn{width:100%}.admin__panel{padding:14px}.admin__table thead{display:none}.admin__table,.admin__table tbody,.admin__table tr,.admin__table td{width:100%;display:block}.admin__table tr{border:1px solid var(--line);background:var(--surface-quiet);border-radius:14px;margin-bottom:10px;padding:10px 12px}.admin__table td{border:0;padding:3px 0}.admin__table td:last-child{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.admin__table td:last-child .admin__link{border:1px solid var(--line);border-radius:8px;padding:5px 8px;font-size:11px;text-decoration:none}}
