:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f1ec;--surface:#fffaf4;--surface-strong:#fff;--text:#201a17;--muted:#746b63;--line:#e7ddd1;--brand:#7c4dff;--brand-dark:#5932c8;--danger:#b42318;--shadow:0 24px 70px #1f1a171f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at top left, #ebe3ff 0, transparent 34%), var(--bg);min-width:320px;min-height:100vh;color:var(--text);margin:0}button,input,select{font:inherit}button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:14px;padding:.85rem 1rem;font-weight:700;transition:transform .14s,background .14s,box-shadow .14s}button:hover{background:var(--brand-dark);transform:translateY(-1px)}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #7c4dff40}button:disabled{cursor:not-allowed;background:#c8c0b7;transform:none}input,select{border:1px solid var(--line);width:100%;color:var(--text);background:#fff;border-radius:14px;padding:.9rem 1rem}label{color:var(--muted);gap:.45rem;font-size:.92rem;font-weight:700;display:grid}.auth-shell{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.auth-card{width:min(100%,420px);box-shadow:var(--shadow);background:#fffaf4e6;border:1px solid #ffffffb3;border-radius:30px;padding:2rem}.brand-mark{background:var(--brand);color:#fff;letter-spacing:-.04em;border-radius:18px;place-items:center;width:56px;height:56px;font-weight:900;display:grid}.auth-card h1,.chat-header h1{letter-spacing:-.04em;margin:1rem 0 .5rem}.auth-card p,.chat-header p{color:var(--muted);margin:0 0 1.5rem}.stack{gap:1rem;display:grid}.stack.compact{gap:.6rem}.ghost{color:var(--brand);background:0 0}.ghost:hover{background:#7c4dff14}.small{padding:.55rem .75rem}.tiny{border-radius:10px;padding:.35rem .5rem;font-size:.78rem}.danger{background:var(--danger)}.danger:hover{background:#7f1d1d}.success{background:#15803d}.success:hover{background:#166534}.notice{color:var(--brand-dark)}.error{color:var(--danger)}.info-block{border:1px solid var(--line);background:#ffffff9e;border-radius:18px;gap:.35rem;margin:1rem 0;padding:1rem;display:grid}.info-block p{margin:0}.app-shell{grid-template-columns:360px 1fr;gap:1rem;height:100vh;padding:1rem;display:grid;overflow:hidden}.app-shell-desktop{grid-template-columns:76px minmax(280px,340px) minmax(0,1fr)}.sidebar,.chat-panel{border:1px solid var(--line);background:#fffaf4eb;border-radius:28px;overflow:hidden;box-shadow:0 18px 50px #1f1a1714}.sidebar{align-content:start;gap:1rem;min-height:0;padding:1rem;display:grid;overflow:auto}.sidebar-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1rem;display:flex}.sidebar-header span,.list-item small{color:var(--muted);font-size:.82rem;display:block}h2{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem;font-size:.78rem}.list{gap:.5rem;display:grid}.list-item{width:100%;color:var(--text);text-align:left;background:#ffffff9e;border:1px solid #0000;padding-right:3rem;position:relative}.row-action{align-items:center;gap:.5rem;padding-right:.75rem;display:flex}.unstyled-list-button{min-width:0;color:var(--text);text-align:left;background:0 0;border-radius:0;flex:1;padding:0}.unstyled-list-button:hover{background:0 0;transform:none}.list-item span{align-items:center;gap:.5rem;display:flex}.dot{border-radius:999px;flex:none;width:.55rem;height:.55rem}.dot.online{background:#16a34a;box-shadow:0 0 0 4px #16a34a1f}.dot.offline{background:#a8a29e}.unread-badge{color:#fff;background:#dc2626;border-radius:999px;place-items:center;min-width:1.45rem;height:1.45rem;padding:0 .38rem;font-size:.78rem;font-weight:900;line-height:1;display:grid;position:absolute;top:.8rem;right:.85rem}.list-item:hover,.list-item.active{background:#fff;border-color:#7c4dff47}.list-item.static{cursor:default}.list-item.static:hover{transform:none}.circle-card{border:1px solid var(--line);background:#ffffff9e;border-radius:20px;gap:.75rem;padding:1rem;display:grid}.chat-panel{grid-template-rows:auto 1fr auto;min-height:0;display:grid}.chat-header,.composer{border-bottom:1px solid var(--line);padding:1rem 1.25rem}.chat-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.chat-header>div:first-child{flex:1;min-width:0}.chat-header h1{margin:0 0 .25rem}.chat-header p{margin:0}.composer{border-top:1px solid var(--line);border-bottom:0;align-items:center;gap:.5rem;width:100%;min-width:0;max-width:100%;display:flex}.composer>input:not([type=file]){flex:1 1 0;width:0;min-width:0;max-width:100%}.composer-send{border-radius:14px;flex:0 0 2.75rem;justify-content:center;align-items:center;width:2.75rem;min-width:2.75rem;max-width:2.75rem;height:2.75rem;padding:0;display:inline-flex}.composer-send svg{width:1.15rem;height:1.15rem;display:block}.composer>input:not([type=file]),.composer input,.message-edit-form input,.create-circle-modal input,.mobile-subpage-body input,.settings-body input,.auth-card input,.circle-actions-popover input,.search-field input{font-size:16px;line-height:1.25}.messages{flex-direction:column;align-items:stretch;gap:.75rem;min-height:0;padding:1.25rem;display:flex;overflow:hidden auto}.bubble{background:#fff;border-radius:22px;align-self:flex-start;width:auto;min-width:0;max-width:min(72%,620px);padding:.85rem 1rem;box-shadow:0 10px 26px #1f1a1712}.bubble.mine{background:#efe8ff;align-self:flex-end}.bubble p{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;margin:0 0 .4rem}.message-edit-form{gap:.4rem;margin-bottom:.35rem;display:grid}.message-edit-actions{justify-content:flex-end;gap:.35rem;display:flex}.ghost.tiny{padding:.2rem .45rem;font-size:.72rem}.read-by{margin-top:.3rem}.read-by-list{flex-direction:column;gap:.15rem;margin-top:.2rem;display:flex}.message-author{color:var(--brand-dark);margin:0 0 .35rem;font-size:.82rem;display:block}.reactions{flex-wrap:wrap;gap:.35rem;margin-top:.4rem;display:flex}.reaction-chip{border:1px solid var(--line);color:var(--text);background:#fffc;border-radius:999px;padding:.2rem .5rem;font-size:.78rem;font-weight:700}.reaction-chip.mine{background:#7c4dff1f;border-color:#7c4dff80}.reaction-plus{border:1px dashed var(--line);color:var(--muted);background:#ffffff9e;border-radius:999px;padding:.2rem .55rem;font-size:.92rem;font-weight:800;line-height:1}.reaction-plus.active{color:var(--brand-dark);background:#7c4dff1f;border-style:solid;border-color:#7c4dff80}.reaction-picker{flex-wrap:wrap;gap:.3rem;margin-top:.35rem;display:flex}.reaction-btn{border:1px solid var(--line);color:var(--text);background:#ffffffb8;border-radius:999px;padding:.28rem .48rem;font-size:.9rem;line-height:1}.bubble time,.empty{color:var(--muted);font-size:.84rem}.admin-shell{gap:1rem;min-height:100vh;padding:1rem;display:grid}.admin-header,.admin-panel,.metric-card,.admin-stats article{border:1px solid var(--line);background:#fffaf4eb;border-radius:24px;box-shadow:0 18px 50px #1f1a1714}.admin-header{justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.admin-header h1,.admin-header p{margin:0}.admin-header p,.admin-row span,.admin-row small{color:var(--muted)}.log-line{word-break:break-word;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.log-stack{color:#0f172a;white-space:pre-wrap;word-break:break-word;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;max-height:280px;margin:.4rem 0 0;padding:.6rem;font-size:12px;line-height:1.35;overflow:auto}.admin-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;display:grid}.admin-system-summary{margin-top:-.25rem}.admin-stats article{gap:.25rem;padding:1rem;display:grid}.admin-stats strong{color:var(--brand-dark);font-size:2rem}.admin-grid,.admin-system-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.admin-tabs{flex-wrap:wrap;gap:.5rem;display:flex}.admin-tabs button{border:1px solid var(--line);color:var(--text);background:#fffaf4e0;border-radius:999px}.admin-tabs button.active{background:var(--brand);color:#fff;border-color:#7c4dff73}.metric-card{align-content:start;gap:.75rem;padding:1rem;display:grid}.metric-card h2,.admin-panel h2{margin:0}.metric-card p{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;margin:0;padding-top:.65rem;display:flex}.metric-card span{color:var(--muted)}.admin-panel{align-content:start;gap:.75rem;padding:1rem;display:grid}.admin-search{gap:.5rem;display:flex}.admin-search select{max-width:220px}.admin-list{gap:.5rem;display:grid}.admin-row{border:1px solid var(--line);background:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;display:flex}.admin-row.blocked{background:#fef2f2;border-color:#b91c1c57}.admin-row div{gap:.2rem;display:grid}.http-stat-row,.alert-row{width:100%}.alert-fixed-toggle{min-width:max-content;color:var(--muted);align-items:center;gap:.45rem;font-size:.85rem;display:inline-flex}.alert-fixed-toggle input{width:auto;margin:0}.admin-toast{z-index:20;color:#14532d;background:#f0fdf4;border:1px solid #15803d47;border-radius:18px;max-width:min(420px,100vw - 2.5rem);padding:.85rem 1rem;font-weight:800;position:fixed;bottom:1.25rem;right:1.25rem;box-shadow:0 18px 50px #1f1a1729}.admin-pagination{color:var(--muted);justify-content:space-between;align-items:center;display:flex}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.avatar-trigger{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.avatar-trigger.tiny{margin-right:.35rem}.avatar-img,.avatar-fallback{object-fit:cover;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.avatar-img{border:1px solid var(--line);background:#eef2ff}.avatar-fallback{color:#1f2937;background:#e5e7eb;border:1px solid #d1d5db;font-weight:700}.avatar-modal-backdrop{z-index:30;background:#0f172a8c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.avatar-modal{border:1px solid var(--line);background:#fff;border-radius:20px;width:min(560px,96vw);overflow:hidden}.avatar-modal header{justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.avatar-modal img,.avatar-preview-full{object-fit:contain;background:#f8fafc;width:100%;height:auto;max-height:75vh;display:block}.avatar-crop-backdrop{z-index:40;background:#100d0b8c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.avatar-crop-modal{border:1px solid var(--line);background:var(--surface-strong,#fff);width:min(720px,100%);max-height:min(92dvh,860px);box-shadow:var(--shadow);border-radius:20px;gap:1rem;padding:1rem 1.1rem 1.15rem;display:grid;overflow:auto}.avatar-crop-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.avatar-crop-header h2{margin:0 0 .35rem}.avatar-crop-header p{color:var(--muted,#6b7280);margin:0;font-size:.92rem;line-height:1.4}.avatar-crop-stage{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;display:grid}.avatar-crop-frame{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;background:#111;border:2px solid #ffffffe6;border-radius:50%;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 0 0 12px #00000047}.avatar-crop-frame:active{cursor:grabbing}.avatar-crop-image{pointer-events:none;max-width:none;position:absolute;top:0;left:0}.avatar-crop-mask{display:none}.avatar-crop-preview-pane{justify-items:center;gap:.5rem;min-width:110px;display:grid}.avatar-crop-preview-pane small{color:var(--muted,#6b7280);text-align:center}.avatar-crop-live-preview{border:1px solid var(--line);width:96px;height:96px;box-shadow:var(--shadow);background-color:#e5e7eb;border-radius:999px}.avatar-crop-live-preview.empty{background:repeating-linear-gradient(-45deg,#e5e7eb,#e5e7eb 8px,#f3f4f6 8px 16px)}.avatar-crop-zoom{gap:.4rem;font-size:.9rem;display:grid}.avatar-crop-zoom input[type=range]{width:100%}.avatar-crop-actions{justify-content:flex-end;gap:.65rem;display:flex}@media (width<=820px){.avatar-crop-stage{grid-template-columns:1fr;justify-items:center}.avatar-crop-preview-pane{order:-1}}.centered{align-self:center;margin:auto}.mobile-nav-tabs{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.mobile-nav-tabs .ghost.active{background:var(--brand);color:#fff}.mobile-chat-header{align-items:center;gap:.45rem;min-width:0;display:flex}.mobile-chat-header .chat-header-main{flex:1;gap:.5rem;min-width:0}.mobile-chat-title{flex:1;min-width:0}.mobile-chat-header h1,.mobile-chat-header p{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.mobile-chat-actions{flex-shrink:0;align-items:center;gap:.35rem;display:flex}.mobile-circle-actions{background:var(--surface-strong);border-radius:16px;min-height:0;overflow:visible}.mobile-subpage{background:var(--surface-strong);z-index:5;isolation:isolate;grid-template-rows:auto minmax(0,1fr);align-content:stretch;display:grid;position:relative;overflow:hidden}.mobile-subpage-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;align-content:start;gap:.75rem;min-height:0;padding:.65rem;display:grid;overflow:auto}.mobile-subpage-body input,.mobile-subpage-body button,.mobile-subpage-body label{z-index:1;position:relative}.composer-reply-bar{border-bottom:1px solid var(--line);background:#7c4dff0f;align-items:center;gap:.5rem;padding:.55rem .75rem;display:flex}.composer-reply-preview{border:0;border-left:3px solid var(--brand);min-width:0;color:var(--text);text-align:left;box-shadow:none;background:0 0;border-radius:0;flex:1;gap:.15rem;padding:.1rem .55rem;display:grid}.composer-reply-preview:hover{background:0 0;transform:none}.composer-reply-preview strong,.composer-reply-preview small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.composer-reply-preview small{color:var(--muted);font-weight:500}.message-reply-quote{border:0;border-left:3px solid var(--brand);width:100%;color:var(--text);text-align:left;box-shadow:none;background:#ffffff8c;border-radius:0 10px 10px 0;gap:.15rem;margin:.25rem 0 .45rem;padding:.35rem .55rem;display:grid}.message-reply-quote:hover{background:#ffffffbf;transform:none}.message-reply-quote strong,.message-reply-quote small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.message-reply-quote small{color:var(--muted);font-weight:500}.message-forwarded{color:var(--muted);margin:.15rem 0 .25rem;font-size:.78rem;font-weight:700}.message-actions{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;align-items:center;gap:.1rem;max-width:100%;margin-top:.3rem;display:flex;overflow-x:auto}.message-action-btn{width:1.85rem;height:1.85rem;color:var(--muted);box-shadow:none;background:0 0;border-radius:8px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex;transform:none}.message-action-btn:hover{color:var(--text);background:#201a170f;transform:none}.message-action-btn:disabled{color:#c8c0b7;background:0 0}.message-action-btn.danger{color:var(--danger)}.message-action-btn.danger:hover{color:var(--danger);background:#b4231814}.message-action-btn svg{width:1rem;height:1rem;display:block}.bubble-highlight{outline-offset:2px;outline:2px solid #7c4dff73}.forward-picker-backdrop{z-index:40;background:#100d0b73;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.forward-picker-modal{border:1px solid var(--line);background:var(--surface-strong);width:min(100%,440px);max-height:min(80dvh,640px);box-shadow:var(--shadow);border-radius:20px;grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.forward-picker-modal header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;display:flex}.forward-picker-modal h2{letter-spacing:normal;text-transform:none;color:var(--text);margin:0;font-size:1.05rem}.forward-picker-modal small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:280px;margin-top:.25rem;display:block;overflow:hidden}.forward-picker-list{padding:.7rem;overflow:auto}.composer-shell{flex-shrink:0;width:100%;min-width:0;max-width:100%;overflow:hidden}.composer-attach{width:2.45rem;min-width:2.45rem;max-width:2.45rem;height:2.45rem;color:var(--muted);box-shadow:none;background:0 0;border-radius:12px;flex:0 0 2.45rem;justify-content:center;align-items:center;padding:0;display:inline-flex}.composer-attach:hover{color:var(--text);background:#201a170f;transform:none}.composer-attach svg{width:1.15rem;height:1.15rem}.composer-media-preview,.composer-media-progress{flex-wrap:wrap;align-items:center;gap:.35rem;padding:.45rem 1.25rem 0;display:flex}.composer-media-chip{background:#201a170f;border-radius:999px;align-items:center;gap:.25rem;max-width:100%;padding:.25rem .35rem .25rem .55rem;font-size:.78rem;display:inline-flex}.composer-media-chip span{text-overflow:ellipsis;white-space:nowrap;max-width:9rem;overflow:hidden}.composer-media-progress{color:var(--muted);justify-content:space-between;font-size:.82rem}.media-album-grid{gap:.3rem;max-width:100%;margin:.35rem 0;display:grid}.media-album-grid.one{grid-template-columns:1fr}.media-album-grid.two,.media-album-grid.three,.media-album-grid.many{grid-template-columns:1fr 1fr}.media-thumb{aspect-ratio:1;width:100%;box-shadow:none;background:#201a170f;border-radius:12px;padding:0;display:block;position:relative;overflow:hidden}.media-thumb:hover{background:#201a1714;transform:none}.media-thumb img,.media-thumb-placeholder{object-fit:cover;width:100%;height:100%;display:block}.media-thumb-placeholder{background:linear-gradient(135deg,#ece6df,#d9d1c7)}.media-lightbox-backdrop{z-index:50;background:#100d0bb8;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.media-lightbox{background:var(--surface-strong);border:1px solid var(--line);width:min(920px,100%);max-height:min(90dvh,900px);box-shadow:var(--shadow);border-radius:18px;grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.media-lightbox header,.media-lightbox footer{justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .85rem;display:flex}.media-lightbox-body{background:#111;place-items:center;min-height:0;padding:.5rem;display:grid}.media-lightbox-body img{object-fit:contain;max-width:100%;max-height:min(70dvh,720px)}.composer-shell .composer{border-top:0}.composer-lock-banner{color:var(--ink);background:#fff4e6eb;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem 1.25rem;font-size:.9rem;display:flex}.mobile-screen{height:calc(100dvh - 1rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:0}.mobile-list-screen{flex-direction:column;align-content:stretch;gap:.55rem;display:flex;overflow:hidden}.mobile-list-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:auto;align-content:start;gap:.75rem;min-height:0;padding-bottom:.25rem;display:grid;overflow:auto}.back-button{color:var(--brand-dark);box-shadow:none;background:0 0;border-radius:10px;flex-shrink:0;align-items:center;gap:.05rem;margin:0;padding:.2rem .35rem .2rem 0;font-size:1rem;font-weight:600;display:inline-flex;transform:none}.back-button:hover{color:var(--brand-dark);background:#7c4dff14;transform:none}.back-button-icon{flex-shrink:0;display:block}.header-peer-avatar{flex-shrink:0}.chat-header-main{flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.search-field{color:inherit;align-items:center;margin:0;font-weight:500;display:grid;position:relative}.search-field-icon{color:#9a9188;pointer-events:none;place-items:center;display:grid;position:absolute;left:.75rem}.search-field input{width:100%;color:var(--text);background:#ebe6df;border:0;border-radius:12px;padding:.65rem 2rem .65rem 2.2rem;font-size:16px;line-height:1.25}.search-field input::placeholder{color:#9a9188}.search-field-clear{color:#8a8178;width:1.7rem;height:1.7rem;box-shadow:none;background:0 0;border-radius:999px;padding:0;font-size:1.1rem;font-weight:600;position:absolute;right:.35rem}.search-field-clear:hover{background:#0000000f;transform:none}.contact-row{padding-right:.75rem}.members-modal-backdrop{z-index:30;background:#100d0b73;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.members-modal{border:1px solid var(--line);background:var(--surface-strong);width:min(680px,100%);max-height:min(82dvh,760px);box-shadow:var(--shadow);border-radius:18px;grid-template-rows:auto 1fr;display:grid;overflow:hidden}.members-modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem .9rem;display:flex}.members-modal-header h2{letter-spacing:normal;text-transform:none;color:var(--text);margin:0;font-size:.95rem}.members-modal-header small{color:var(--muted)}.members-modal-list{padding:.7rem;overflow:auto}@media (width<=820px){.app-shell{grid-template-columns:1fr;gap:.5rem;padding:.5rem}.app-shell-mobile{box-sizing:border-box;height:100dvh;max-height:100dvh;padding-top:max(.35rem, env(safe-area-inset-top));padding-right:max(.35rem, env(safe-area-inset-right));padding-bottom:max(.35rem, env(safe-area-inset-bottom));padding-left:max(.35rem, env(safe-area-inset-left));flex-direction:column;display:flex;overflow:hidden}.admin-stats,.admin-grid,.admin-system-grid{grid-template-columns:1fr}.sidebar{max-height:unset;border-radius:20px;overflow:auto}.mobile-screen{flex:1 1 0;width:100%;height:auto;min-height:0;max-height:none}.mobile-subpage.mobile-screen{background:var(--surface-strong);flex:1 1 0;align-content:stretch;width:100%;height:auto;min-height:0;overflow:hidden}.mobile-subpage .mobile-subpage-body{min-height:0;overflow:auto}.mobile-list-screen.sidebar{flex:1 1 0;min-height:0;overflow:hidden}.chat-panel.mobile-screen{border-radius:20px;flex:1 1 0;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;overflow:hidden}.chat-panel.mobile-screen .messages{-webkit-overflow-scrolling:touch;min-height:0;overflow:auto}.chat-panel.mobile-screen .composer-shell{width:100%;min-width:0}.chat-header,.composer,.messages{padding-left:.65rem;padding-right:.65rem}.bubble{border-radius:14px;max-width:92%;padding:.5rem .65rem}.bubble p{font-size:.9rem;line-height:1.3}.chat-header,.composer{padding-top:.55rem;padding-bottom:.55rem}.messages{gap:.45rem;padding-top:.55rem;padding-bottom:.55rem}.sidebar{gap:.6rem;padding:.65rem}.sidebar-header strong{font-size:.9rem}.sidebar-header span{font-size:.74rem}h2{margin-bottom:.5rem;font-size:.7rem}.circle-card{gap:.5rem;padding:.65rem}button{border-radius:10px;padding:.55rem .7rem;font-size:.88rem}input,select{border-radius:10px;padding:.6rem .7rem;font-size:.9rem}.small{padding:.4rem .55rem;font-size:.82rem}.tiny{padding:.28rem .4rem;font-size:.72rem}.list{gap:.35rem}.list-item{padding:.5rem 2rem .5rem .6rem}.list-item small{font-size:.75rem}.unread-badge{min-width:1.2rem;height:1.2rem;font-size:.68rem;top:.55rem;right:.6rem}.reaction-chip{padding:.16rem .38rem;font-size:.7rem}.reaction-plus,.reaction-btn{font-size:.78rem}.members-modal-backdrop{padding:.5rem}.members-modal{border-radius:14px;max-height:90dvh}.mobile-chat-actions{gap:.25rem}.mobile-chat-actions .small{padding:.34rem .45rem;font-size:.74rem}.app-nav-bottom{flex:none;margin-top:.25rem}.create-circle-modal{border-radius:18px 18px 0 0;align-self:end;width:min(100%,420px)}.create-circle-backdrop{align-items:end;padding:0}}@media (width<=430px){.app-shell{gap:.35rem;padding:.35rem}.app-shell-mobile{padding-top:max(.25rem, env(safe-area-inset-top));padding-right:max(.25rem, env(safe-area-inset-right));padding-bottom:max(.25rem, env(safe-area-inset-bottom));padding-left:max(.25rem, env(safe-area-inset-left))}.mobile-screen{height:auto}.sidebar,.chat-panel{border-radius:14px}.sidebar{gap:.45rem;padding:.5rem}.mobile-list-screen{gap:.4rem;padding:.45rem}.mobile-list-header{gap:.35rem;padding-bottom:.45rem}.mobile-list-actions .tiny{padding:.28rem .38rem;font-size:.68rem}.mobile-list-body{gap:.55rem}.mobile-create-circle{padding:.45rem}.sidebar-header{padding-bottom:.55rem}.circle-card{border-radius:12px;gap:.4rem;padding:.5rem}.chat-header,.composer,.messages{padding-left:.5rem;padding-right:.5rem}.chat-header,.composer{padding-top:.45rem;padding-bottom:.45rem}.messages{gap:.35rem;padding-top:.45rem;padding-bottom:.45rem}button{border-radius:9px;padding:.45rem .58rem;font-size:.8rem}input,select{border-radius:9px;padding:.5rem .6rem;font-size:.8rem}.list-item{padding:.42rem 1.7rem .42rem .52rem}.list-item span{gap:.35rem}.list-item small{font-size:.7rem}.bubble{border-radius:12px;max-width:90%;padding:.45rem .55rem}.bubble p{font-size:.79rem;line-height:1.25}.bubble time,.message-author{font-size:.68rem}.composer{align-items:center;gap:.35rem}.composer-send,.composer-attach{border-radius:11px;flex:0 0 2.35rem;width:2.35rem;min-width:2.35rem;max-width:2.35rem;height:2.35rem;padding:0}.composer button.composer-send,.composer button.composer-attach{flex:0 0 2.35rem;padding:0}.composer>input:not([type=file]){flex:1 1 0;width:0;min-width:0;font-size:16px}.message-action-btn{width:1.7rem;height:1.7rem}.message-action-btn svg{width:.92rem;height:.92rem}}.app-nav{border:1px solid var(--line);background:#fffaf4f5;gap:.35rem;display:flex}.app-nav-bottom{border-radius:18px;padding:.35rem}.app-nav-rail{border-radius:24px;flex-direction:column;justify-content:flex-start;align-items:stretch;height:100%;min-height:0;padding:.65rem .45rem;overflow:auto}.app-nav-item{color:var(--muted);box-shadow:none;background:0 0;border-radius:14px;flex:1;justify-items:center;gap:.2rem;padding:.55rem .4rem;font-size:.72rem;font-weight:700;display:grid}.app-nav-item:hover{color:var(--text);background:#7c4dff14;transform:none}.app-nav-item.active{color:var(--brand-dark);background:#7c4dff24}.app-nav-icon{place-items:center;display:grid}.app-nav-rail .app-nav-item{flex:none;padding:.7rem .35rem}.chat-list-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.35rem;display:flex}.chat-list-header h1{letter-spacing:-.03em;margin:0;font-size:1.25rem}.chat-list-header .small{min-width:2.4rem;padding:.45rem .65rem}.chat-filter-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;margin-bottom:.65rem;display:grid}.chat-filter-tabs .ghost.active{color:var(--brand-dark);background:#7c4dff1f}.desktop-list-panel,.desktop-settings-panel{flex-direction:column;gap:.55rem;height:100%;min-height:0;padding:1rem;display:flex;overflow:hidden}.desktop-list-panel .mobile-list-body,.desktop-settings-panel .mobile-list-body,.settings-body{flex:auto;min-height:0;overflow:auto}.settings-avatar-block{justify-items:center;gap:.65rem;margin-bottom:1rem;display:grid}.settings-meta{gap:.25rem;margin:1rem 0;display:grid}.settings-meta strong{word-break:break-all}.desktop-chat-actions{flex-shrink:0;align-items:flex-start;gap:.4rem;display:flex}.circle-actions-details{position:relative}.circle-actions-details>summary{cursor:pointer;list-style:none}.circle-actions-details>summary::-webkit-details-marker{display:none}.circle-actions-popover{z-index:20;width:min(320px,70vw);max-height:min(70vh,520px);box-shadow:var(--shadow);position:absolute;top:calc(100% + .4rem);right:0;overflow:auto}.create-circle-backdrop{z-index:40;overscroll-behavior:contain;background:#100d0b73;place-items:center;max-height:100dvh;padding:1rem;display:grid;position:fixed;inset:0;overflow:auto}.create-circle-modal{-webkit-overflow-scrolling:touch;border:1px solid var(--line);background:var(--surface-strong);width:min(100%,440px);max-height:min(90dvh,100%);box-shadow:var(--shadow);border-radius:20px;gap:.85rem;padding:1rem;display:grid;overflow:auto}.create-circle-modal header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.create-circle-modal h2{letter-spacing:normal;text-transform:none;color:var(--text);margin:0;font-size:1.05rem}.create-circle-modal footer{justify-content:flex-end;gap:.5rem;display:flex}.desktop-status-toast,.mobile-status-toast{left:50%;bottom:max(1rem, env(safe-area-inset-bottom));z-index:35;pointer-events:none;gap:.35rem;width:min(420px,100% - 1.5rem);display:grid;position:fixed;transform:translate(-50%)}@media (width<=820px){.mobile-status-toast.with-nav{bottom:max(4.75rem, calc(env(safe-area-inset-bottom) + 4.25rem))}}.desktop-status-toast .notice,.desktop-status-toast .error,.mobile-status-toast .notice,.mobile-status-toast .error{border:1px solid var(--line);box-shadow:var(--shadow);pointer-events:auto;background:#fffaf4f5;border-radius:12px;margin:0;padding:.65rem .8rem}@media (width>=821px){.app-shell-desktop .desktop-list-panel,.app-shell-desktop .desktop-settings-panel,.app-shell-desktop .chat-panel{height:100%}}
