:root{--bg:#f4f7fb;--surface:#fff;--surface-soft:#f8fafc;--surface-accent:#eef5ff;--border:#dce3ec;--border-strong:#c4ceda;--text:#142033;--text-soft:#34445c;--text-muted:#66758b;--primary:#205bd8;--primary-dark:#1749b1;--primary-solid:#1769e0;--primary-solid-hover:#0e54bd;--primary-soft:#e8f0ff;--positive:#087a55;--positive-soft:#e7f7f0;--warning:#9a5a00;--warning-soft:#fff5df;--danger:#c92d3b;--danger-dark:#a9212d;--danger-soft:#fff0f1;--focus:#0b68f0;--shadow:0 16px 44px #1f2f461a;--shadow-soft:0 5px 18px #1f2f4612;--radius-sm:10px;--radius:14px;--radius-lg:20px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}:root[data-text-size=small]{font-size:14px}:root[data-text-size=medium]{font-size:16px}:root[data-text-size=large]{font-size:18px}:root[data-high-contrast=true]{--bg:#fff;--surface:#fff;--surface-soft:#f5f5f5;--surface-accent:#e9f1ff;--border:#6b7280;--border-strong:#374151;--text:#000;--text-soft:#111827;--text-muted:#374151;--primary:#003fbd;--primary-dark:#002d89;--focus:#ff8a00;--shadow:none;--shadow-soft:none}:root[data-reduced-motion=true] *,:root[data-reduced-motion=true] :before,:root[data-reduced-motion=true] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%}html{background:var(--bg)}body{background:var(--bg);min-width:320px;color:var(--text);margin:0;line-height:1.45}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}a{color:var(--primary)}.skip-link{z-index:1000;background:var(--text);color:var(--surface);border-radius:9px;padding:10px 14px;font-weight:800;transition:transform .15s;position:fixed;top:10px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}input,select,textarea{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text);outline:none;min-height:44px;padding:10px 12px}textarea{resize:vertical;line-height:1.45}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:2px}::placeholder{color:#8995a6}h1,h2,h3,p{overflow-wrap:anywhere}h1{letter-spacing:-.025em;margin:0;font-size:clamp(1.65rem,2vw,2.15rem);line-height:1.15}h2{margin:0;font-size:1.08rem;line-height:1.3}h3{margin:0}.muted,.page-heading p,.section-title p,.modal-card p{color:var(--text-muted)}.microcopy,.field-hint{color:var(--text-muted);font-size:.78rem;line-height:1.5}.password-meter{color:var(--warning);margin-top:6px;font-size:.75rem;font-weight:750;display:block}.password-meter.ready{color:var(--positive)}.not-found-card{text-align:center}.not-found-card .primary-button{align-self:center}.eyebrow{color:var(--primary);letter-spacing:.09em;text-transform:uppercase;margin-bottom:5px;font-size:.72rem;font-weight:800;display:block}.danger-text{color:var(--danger)}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.primary-button,.secondary-button,.danger-button,.icon-button{border-radius:var(--radius-sm);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-weight:750;text-decoration:none;transition:background .16s,border-color .16s,transform .16s;display:inline-flex}.primary-button{background:var(--primary-solid);color:#fff}.primary-button:hover:not(:disabled){background:var(--primary-solid-hover)}.secondary-button{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.secondary-button:hover:not(:disabled){background:var(--surface-soft);border-color:#aab6c5}.danger-button{background:var(--danger);color:#fff}.danger-button:hover:not(:disabled){background:var(--danger-dark)}.link-button{color:var(--primary);background:0 0;border:0;min-height:34px;padding:6px;font-weight:750}.icon-button{background:var(--surface);width:44px;color:var(--text);border-color:var(--border);padding:0}.icon-button:hover{background:var(--surface-soft)}.small-button{min-height:36px;padding:7px 11px;font-size:.78rem}.compact-button{min-height:38px;padding:7px 10px}.fit-button{width:fit-content}.action-row,.modal-actions,.confirm-actions{align-items:center;gap:10px;display:flex}.action-row.wrap{flex-wrap:wrap}.auth-page{background:var(--bg);place-items:center;min-height:100vh;padding:28px 18px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--border);width:min(440px,100%);box-shadow:var(--shadow);border-radius:var(--radius-lg);flex-direction:column;gap:15px;padding:30px;display:flex}.auth-card:before{content:"S";background:var(--primary);color:#fff;border-radius:13px;place-items:center;width:44px;height:44px;font-size:1.15rem;font-weight:900;display:grid}.auth-card h1{font-size:1.55rem}.auth-subtitle{color:var(--text-muted);margin:-6px 0 3px;font-size:.88rem}.auth-card label,.stack-form label,.control-card>label,.delete-confirmation label,.modal-card label{flex-direction:column;gap:6px;font-size:.86rem;font-weight:700;display:flex}.password-field{align-items:center;gap:8px;display:flex}.password-field input{flex:1}.optional-tag{color:var(--text-muted);font-size:.76rem;font-weight:500}.forgot-link{align-self:flex-end;margin-top:-6px;font-size:.8rem;font-weight:700;text-decoration:none}.auth-switch{text-align:center;color:var(--text-muted);margin:2px 0 0;font-size:.86rem}.auth-divider{color:var(--text-muted);align-items:center;gap:10px;font-size:.75rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-divider span{white-space:nowrap}.google-signin-wrap{justify-content:center;width:100%;min-height:44px;display:flex;overflow:hidden}.google-signin-wrap>div,.google-signin-wrap iframe{max-width:100%!important}.google-native-button{gap:10px;width:100%}.google-native-icon{flex-shrink:0}.google-privacy-note{color:var(--text-muted);text-align:center;margin:-7px 0 0;font-size:.72rem;line-height:1.45}.google-username-modal{width:min(500px,100%)}.auth-welcome-toast{bottom:26px}.auth-loading,.page-loading{min-height:100vh;color:var(--text-muted);justify-content:center;align-items:center;gap:10px;display:flex}.spinner{border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{flex-direction:column;height:100dvh;min-height:560px;display:flex;overflow:hidden}.top-nav{border-bottom:1px solid var(--border);z-index:20;background:#fffffff5;align-items:center;gap:24px;min-height:68px;padding:10px 22px;display:flex}.brand{color:var(--text);letter-spacing:-.02em;white-space:nowrap;align-items:center;gap:9px;font-weight:900;text-decoration:none;display:flex}.brand-mark{background:var(--primary);color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.nav-links{scrollbar-width:none;flex:1;align-items:center;gap:4px;display:flex;overflow-x:auto}.nav-links::-webkit-scrollbar{display:none}.nav-links a{color:var(--text-muted);white-space:nowrap;border-radius:9px;padding:9px 10px;font-size:.8rem;font-weight:750;text-decoration:none}.nav-links a:hover{color:var(--text);background:var(--surface-soft)}.nav-links a.active{color:var(--primary);background:var(--primary-soft)}.nav-user{white-space:nowrap;align-items:center;gap:8px;display:flex}.profile-chip{color:var(--text-soft);border-radius:999px;align-items:center;gap:7px;padding:4px 8px 4px 4px;font-size:.8rem;font-weight:700;text-decoration:none;display:flex}.profile-chip:hover{background:var(--surface-soft)}.rail-account{color:var(--text-soft);border:1px solid #0000;border-radius:13px;align-items:center;gap:7px;padding:5px;text-decoration:none;display:inline-flex}.rail-account:hover,.rail-account.active{color:var(--primary);border-color:var(--border);background:var(--primary-soft)}.rail-account span{font-size:.68rem;font-weight:750}.account-session-panel{justify-content:space-between;align-items:center;gap:18px;display:flex}.account-session-panel p{margin:5px 0 0}.logout-button{font-size:.78rem}.app-content{flex:1;min-height:0;overflow:auto}.app-content.chat-route{overflow:hidden}.chat-route .route-stage{height:100%;min-height:0;overflow:hidden}.page-shell{flex-direction:column;gap:18px;width:min(1080px,100% - 36px);margin:0 auto;padding:34px 0 48px;display:flex}.narrow-page{width:min(760px,100% - 36px)}.page-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:4px;display:flex}.page-heading p{max-width:720px;margin:8px 0 0}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:22px}.section-title{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.section-title p{max-width:720px;margin:5px 0 0;font-size:.86rem}.stack-form{flex-direction:column;gap:15px;display:flex}.info-banner,.warning-banner,.success-banner,.error-banner,.connection-banner,.privacy-explainer,.inline-status{border-radius:var(--radius-sm);padding:12px 14px;font-size:.84rem;line-height:1.5}.info-banner{color:#173f73;background:#edf5ff;border:1px solid #cfe2fb}.warning-banner{background:var(--warning-soft);color:#6c4308;border:1px solid #f0d595}.success-banner{background:var(--positive-soft);color:#075e44;border:1px solid #bfe6d6}.error-banner{background:var(--danger-soft);color:#8b1e29;border:1px solid #efc1c6}.inline-status{background:var(--surface-soft);color:var(--text-muted);border:1px solid var(--border)}.inline-status.warning{background:var(--warning-soft);color:var(--warning)}.privacy-explainer{background:var(--surface-accent);color:var(--text-soft);border:1px solid #d4e3fb;gap:11px;display:flex}.privacy-explainer>svg{flex:none;width:22px;height:22px;margin-top:1px}.privacy-explainer p{color:var(--text-muted);margin:2px 0 0}.status-pill{background:var(--surface-soft);border:1px solid var(--border);min-height:30px;color:var(--text-muted);white-space:nowrap;border-radius:999px;align-items:center;padding:5px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.status-pill.positive{color:var(--positive);background:var(--positive-soft);border-color:#bfe6d6}.status-pill.warning{color:var(--warning);background:var(--warning-soft);border-color:#f0d595}.count-badge,.unread-badge{background:var(--primary);color:#fff;border-radius:999px;place-items:center;min-width:24px;height:24px;padding:0 7px;font-size:.7rem;font-weight:850;display:inline-grid}.count-badge.neutral{color:var(--text-soft);background:#e9eef5}.empty-inline{color:var(--text-muted);padding:12px 4px;font-size:.82rem}.empty-inline.centered{align-self:center;margin:auto}.toast{z-index:1200;color:#fff;box-shadow:var(--shadow);background:#142033;border-radius:999px;max-width:calc(100vw - 30px);padding:10px 16px;font-size:.8rem;font-weight:700;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.modal-overlay{z-index:1000;background:#0c172894;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal-card{background:var(--surface);border:1px solid var(--border);width:min(520px,100%);max-height:calc(100dvh - 40px);box-shadow:var(--shadow);border-radius:var(--radius-lg);flex-direction:column;gap:14px;padding:26px;display:flex;overflow-y:auto}.compact-card{width:min(440px,100%)}.modal-card h2{font-size:1.3rem}.modal-card p{margin:0}.modal-actions{flex-wrap:wrap;justify-content:flex-end;margin-top:4px}.modal-copy p{color:var(--text-muted);margin:0}.tour-progress{gap:6px;display:flex}.tour-dot{background:var(--border);border-radius:999px;width:28px;height:4px}.tour-dot.active{background:var(--primary)}.tour-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.lock-hero{background:var(--primary-soft);border-radius:18px;place-items:center;width:58px;height:58px;font-size:1.5rem;display:grid}.lock-hero svg{width:28px;height:28px}.lock-input{letter-spacing:.22em;font-size:1.05rem}.avatar{object-fit:cover;background:var(--surface-soft);border:1px solid var(--border);color:var(--text-muted);border-radius:50%;flex:none;place-items:center;display:inline-grid}.avatar-xs{width:30px;height:30px;font-size:.86rem}.avatar-sm{width:40px;height:40px;font-size:1rem}.avatar-md{width:48px;height:48px;font-size:1.15rem}.avatar-lg{width:64px;height:64px;font-size:1.45rem}.avatar-xl{width:104px;height:104px;font-size:2.2rem}.profile-panel{flex-direction:column;gap:18px;display:flex}.profile-photo-stack{align-items:center;gap:18px;display:flex}.avatar-edit-button{background:0 0;border:0;border-radius:50%;flex:none;padding:0;position:relative}.avatar-edit-button>span{border:3px solid var(--surface);background:var(--primary);color:#fff;width:32px;height:32px;box-shadow:var(--shadow-soft);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:3px;right:1px}.avatar-edit-button>span svg{width:15px;height:15px}.profile-photo-stack p{margin:5px 0 0}.visibility-preview{flex-direction:column;gap:16px;display:flex}.preview-identity{align-items:center;gap:14px;display:flex}.preview-identity p,.preview-identity small{color:var(--text-muted);margin:3px 0 0;display:block}.settings-page{width:min(900px,100% - 36px)}.privacy-score{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);min-width:120px;padding:10px 14px}.privacy-score span,.privacy-score strong{display:block}.privacy-score span{color:var(--text-muted);font-size:.7rem}.privacy-score strong{margin-top:2px}.privacy-principle{margin-bottom:2px}.settings-section{padding-bottom:8px}.settings-list{flex-direction:column;display:flex}.setting-row{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(150px,auto);align-items:center;gap:22px;padding:16px 0;display:grid}.setting-row:first-child{border-top:0;padding-top:2px}.setting-info{flex-direction:column;gap:4px;display:flex}.setting-label{font-size:.9rem;font-weight:800}.setting-help{color:var(--text-muted);max-width:620px;font-size:.78rem;line-height:1.5}.setting-row select{width:auto;min-width:180px}.switch-control{justify-self:end;align-items:center;width:48px;height:28px;display:inline-flex;position:relative}.switch-control input{z-index:1;opacity:0;cursor:pointer;width:100%;height:100%;min-height:0;margin:0;padding:0;position:absolute;inset:0}.switch-track{background:#aab5c3;border-radius:999px;width:48px;height:28px;padding:3px;transition:background .16s;display:block}.switch-track span{background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .16s;display:block;box-shadow:0 1px 3px #0003}.switch-control input:checked+.switch-track{background:var(--primary)}.switch-control input:checked+.switch-track span{transform:translate(20px)}.switch-control input:focus-visible+.switch-track{outline:3px solid var(--focus);outline-offset:3px}.notification-preview{color:#fff;max-width:380px;box-shadow:var(--shadow-soft);background:#172033;border-radius:16px;padding:14px 16px}.notification-preview .preview-label{color:#aebbd0;text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px;font-size:.67rem;display:block}.notification-preview p{color:#e6edf8;margin:3px 0 0;font-size:.82rem}.blocked-list{flex-direction:column;display:flex}.blocked-row{border-top:1px solid var(--border);align-items:center;gap:11px;padding:11px 0;display:flex}.blocked-row div{flex:1}.blocked-row small{color:var(--text-muted);display:block}.control-card{flex-direction:column;gap:15px;display:flex}.danger-zone{box-shadow:none;border-color:#edb8be}.delete-confirmation{background:var(--danger-soft);border-radius:var(--radius);border:1px solid #efc1c6;flex-direction:column;gap:14px;padding:18px;display:flex}.delete-confirmation h3{color:#8b1e29}.delete-confirmation>p{color:#6b2d34;margin:0}.confirm-actions{flex-wrap:wrap;justify-content:flex-end}.truth-card .warning-banner p{margin:5px 0 0}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:650px}.data-table th,.data-table td{text-align:left;vertical-align:top;border-top:1px solid var(--border);padding:12px 11px;font-size:.82rem}.data-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.74rem}.data-table tbody tr:hover{background:var(--surface-soft)}.principle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.principle-card>span{color:var(--primary);font-size:.75rem;font-weight:900}.principle-card h2{margin:6px 0}.principle-card p{color:var(--text-muted);margin:0;font-size:.84rem}.chip-row{flex-wrap:wrap;gap:8px;margin-top:13px;display:flex}.data-chip{background:var(--positive-soft);color:#075e44;border:1px solid #bfe6d6;border-radius:999px;padding:7px 10px;font-size:.76rem;font-weight:700}.evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.evidence-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-soft);padding:16px}.evidence-card h3{font-size:.9rem}.evidence-card p{color:var(--text-muted);margin:6px 0 0;font-size:.8rem}.demo-checklist ol{color:var(--text-soft);margin:12px 0 0;padding-left:22px}.demo-checklist li{padding:5px 0}.chat-page{background:var(--surface);grid-template-columns:340px minmax(0,1fr);height:100%;min-height:0;display:grid}.chat-sidebar{border-right:1px solid var(--border);background:#fbfcfe;flex-direction:column;min-width:0;padding:18px 14px 16px;display:flex;overflow-y:auto}.sidebar-top{justify-content:space-between;align-items:center;gap:12px;padding:0 4px 14px;display:flex}.sidebar-top h1{font-size:1.45rem}.connection-dot{background:#a5afbc;border-radius:50%;width:11px;height:11px;box-shadow:0 0 0 4px #eef1f5}.connection-dot.connected{background:#0b9b6e;box-shadow:0 0 0 4px #dcf5eb}.connection-dot.offline{background:#d13b48;box-shadow:0 0 0 4px #fde8ea}.user-search{border-bottom:1px solid var(--border);padding:0 4px 14px}.search-input-wrap{align-items:center;display:flex;position:relative}.search-input-wrap>span{color:var(--text-muted);font-weight:800;position:absolute;left:12px}.search-input-wrap input{padding-left:29px;padding-right:65px}.search-input-wrap kbd{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-muted);border-radius:6px;padding:3px 5px;font-size:.62rem;position:absolute;right:8px}.search-button{width:100%;min-height:39px;margin-top:8px;font-size:.78rem}.user-search .microcopy{margin:8px 1px 0}.search-result-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:left;width:calc(100% - 8px);color:var(--text);align-items:center;gap:10px;margin:9px 4px 0;padding:10px;display:flex}.search-result-card:hover{box-shadow:var(--shadow-soft);border-color:#b7c8df}.search-result-card>span:nth-child(2){flex:1;min-width:0}.search-result-card strong,.search-result-card small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.search-result-card small{color:var(--text-muted);margin-top:2px;font-size:.7rem;font-weight:500}.request-section{border-bottom:1px solid var(--border);padding:13px 4px}.list-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.list-heading h2{text-transform:uppercase;letter-spacing:.055em;color:var(--text-muted);font-size:.78rem}.list-heading>span:not(.count-badge){color:var(--text-muted);font-size:.72rem}.request-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-top:9px;padding:12px}.request-person{align-items:center;gap:9px;display:flex}.request-person small{color:var(--text-muted);font-size:.7rem;display:block}.request-card blockquote{background:var(--surface-soft);border-left:3px solid var(--primary);color:var(--text-soft);border-radius:0 8px 8px 0;margin:10px 0 6px;padding:9px 10px;font-size:.78rem}.request-card .microcopy{margin:6px 0}.request-actions{gap:7px;margin-top:9px;display:flex}.sent-request{align-items:center;gap:9px;margin-top:8px;padding:8px 0;display:flex}.sent-request>div{flex:1;min-width:0}.sent-request strong,.sent-request small{display:block}.sent-request small{color:var(--text-muted);font-size:.68rem}.conversations-heading{padding:15px 4px 7px}.conversation-list{flex-direction:column;gap:3px;display:flex}.conversation-row{text-align:left;width:100%;min-height:62px;color:var(--text);background:0 0;border:0;border-radius:12px;align-items:center;gap:10px;padding:8px;display:flex}.conversation-row:hover{background:#f0f4f9}.conversation-row.active{background:var(--primary-soft)}.conversation-copy{flex:1;min-width:0}.conversation-copy strong,.conversation-copy small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.conversation-copy strong{font-size:.84rem}.conversation-copy small{color:var(--text-muted);margin-top:3px;font-size:.7rem}.conversation-meta{flex-direction:column;align-items:flex-end;gap:5px;display:flex}.conversation-meta>small{color:var(--text-muted);font-size:.63rem}.chat-thread{background:#f5f7fa;flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.chat-empty{text-align:center;max-width:500px;margin:auto;padding:30px}.empty-illustration{background:var(--primary-soft);border-radius:24px;place-items:center;width:72px;height:72px;margin:0 auto 16px;font-size:1.8rem;display:grid}.chat-empty p{color:var(--text-muted)}.privacy-feature-row{flex-wrap:wrap;justify-content:center;gap:7px;margin-top:16px;display:flex}.privacy-feature-row span{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:6px 9px;font-size:.7rem;font-weight:700}.chat-header{background:var(--surface);border-bottom:1px solid var(--border);z-index:3;align-items:center;gap:11px;min-height:70px;padding:10px 16px;display:flex}.back-button{border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--text);border-radius:10px;flex:0 0 40px;place-items:center;font-size:1.7rem;line-height:1;display:inline-grid}.chat-person{flex:1;min-width:0}.chat-person strong,.chat-person span{display:block}.chat-person strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.presence-text{color:var(--text-muted);margin-top:2px;font-size:.72rem}.presence-text.online{color:var(--positive)}.presence-dot{background:var(--positive);border-radius:50%;width:7px;height:7px;margin-right:4px;display:inline-block}.chat-header-actions{align-items:center;gap:8px;display:flex}.retention-control{color:var(--text-muted);flex-direction:column;gap:2px;font-size:.65rem;display:flex}.retention-control select{width:125px;min-height:36px;padding:5px 8px;font-size:.74rem}.connection-banner{background:var(--warning-soft);color:#704608;border-width:0 0 1px;border-radius:0}.compact-banner{margin:10px 14px 0}.compact-banner p{margin:3px 0 0}.chat-notice{background:var(--surface);border:1px solid var(--border);color:var(--text-soft);box-shadow:var(--shadow-soft);border-radius:10px;margin:10px 14px 0;padding:9px 12px;font-size:.77rem}.chat-tools{border-bottom:1px solid var(--border);background:#f8fafc;justify-content:space-between;align-items:center;gap:10px;padding:9px 14px;display:flex}.chat-local-search{align-items:center;width:min(280px,55%);display:flex;position:relative}.chat-local-search span{color:var(--text-muted);position:absolute;left:10px}.chat-local-search input{min-height:34px;padding:6px 9px 6px 29px;font-size:.75rem}.chat-tools .microcopy{white-space:nowrap}.message-list{flex-direction:column;flex:1;gap:8px;min-height:0;padding:18px clamp(14px,3vw,34px);display:flex;overflow-y:auto}.message-row{align-items:center;gap:5px;max-width:min(72%,720px);display:flex}.message-row.mine{flex-direction:row-reverse;align-self:flex-end}.message-row.theirs{align-self:flex-start}.message-bubble{border-radius:17px;min-width:86px;padding:9px 12px 7px;box-shadow:0 1px 2px #1e2c3c0a}.message-bubble.mine{background:var(--primary);color:#fff;border-bottom-right-radius:5px}.message-bubble.theirs{background:var(--surface);color:var(--text);border:1px solid var(--border);border-bottom-left-radius:5px}.message-bubble>p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:.88rem}.message-meta{opacity:.79;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;margin-top:5px;font-size:.61rem;display:flex}.message-bubble.theirs .message-meta{color:var(--text-muted)}.message-status{letter-spacing:-.12em;padding-right:.12em;font-weight:900}.message-status.seen{color:#a7ecff;opacity:1}.message-bubble.theirs .message-status.seen{color:var(--primary)}.message-actions{opacity:0;gap:2px;transition:opacity .14s;display:flex}.message-row:hover .message-actions,.message-row:focus-within .message-actions{opacity:1}.message-actions button{color:var(--text-muted);background:0 0;border:0;border-radius:6px;padding:5px;font-size:.66rem}.message-actions button:hover{background:var(--surface);color:var(--text)}.edit-box{flex-direction:column;gap:6px;min-width:min(420px,55vw);display:flex}.edit-box textarea{min-height:72px;color:var(--text);background:#fff}.edit-box>div{justify-content:flex-end;gap:5px;display:flex}.edit-box .link-button{color:#fff}.system-event{width:min(640px,92%);color:var(--text-soft);background:#ffffffc7;border:1px solid #d9e4f2;border-radius:11px;align-self:center;align-items:flex-start;gap:9px;padding:9px 12px;font-size:.72rem;display:flex}.system-event p{color:var(--text-muted);margin:2px 0}.system-event small{color:#8995a6}.typing-bubble{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);border-radius:16px 16px 16px 5px;align-self:flex-start;align-items:center;gap:4px;padding:10px 12px;display:flex}.typing-bubble>span{background:#8492a6;border-radius:50%;width:6px;height:6px;animation:.95s infinite alternate typing}.typing-bubble>span:nth-child(2){animation-delay:.16s}.typing-bubble>span:nth-child(3){animation-delay:.32s}.typing-bubble small{margin-left:7px;font-size:.62rem}@keyframes typing{0%{opacity:.5;transform:translateY(1px)}to{opacity:1;transform:translateY(-2px)}}.message-composer{background:var(--surface);border-top:1px solid var(--border);padding:11px 14px 10px}.composer-main{align-items:flex-end;gap:9px;display:flex}.composer-main textarea{resize:none;flex:1;min-height:44px;max-height:140px}.send-button{min-width:78px}.composer-meta{color:var(--text-muted);justify-content:space-between;gap:12px;margin-top:6px;font-size:.64rem;display:flex}.floating-error{z-index:900;max-width:430px;box-shadow:var(--shadow);align-items:center;gap:10px;display:flex;position:fixed;bottom:18px;right:18px}.floating-error .link-button{color:inherit;margin-left:auto}.request-modal .request-target{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:12px;padding:12px;display:flex}.request-target p{margin:2px 0 0;font-size:.78rem}.request-modal textarea{min-height:96px}@media (width<=1050px){.top-nav{gap:12px;padding-inline:14px}.nav-links a{padding-inline:8px}.profile-chip span{display:none}.chat-page{grid-template-columns:305px minmax(0,1fr)}}@media (width<=820px){.app-shell{min-height:100dvh}.top-nav{flex-wrap:wrap;min-height:auto;padding:8px 10px}.brand{flex:1}.nav-user{margin-left:auto}.nav-links{border-top:1px solid var(--border);flex-basis:100%;order:3;width:100%;padding-top:6px}.app-content{min-height:0}.chat-page{height:100%;display:block;position:relative}.chat-sidebar{border-right:0;width:100%;height:100%}.chat-thread{height:100%;display:none}.chat-page.has-active .chat-sidebar{display:none}.chat-page.has-active .chat-thread{display:flex}.back-button{place-items:center;display:inline-grid}.message-row{max-width:86%}.chat-tools .microcopy{display:none}.chat-local-search{width:100%}.retention-control>span{display:none}.page-shell,.settings-page,.narrow-page{width:min(100% - 24px,760px);padding-top:22px}.page-heading{flex-direction:column}.privacy-score{width:100%}.principle-grid,.evidence-grid{grid-template-columns:1fr}}@media (width<=560px){:root[data-text-size=large]{font-size:17px}.logout-button{display:none}.top-nav .icon-button{width:38px;min-height:38px}.nav-links a{font-size:.73rem}.panel{border-radius:16px;padding:17px}.setting-row{grid-template-columns:1fr;gap:10px}.setting-row select{width:100%;min-width:0}.switch-control{justify-self:start}.profile-photo-stack{align-items:flex-start}.avatar-xl{width:82px;height:82px}.confirm-actions,.modal-actions{flex-direction:column-reverse;align-items:stretch}.confirm-actions button,.modal-actions button{width:100%}.password-field{align-items:stretch}.password-field .compact-button{width:auto}.chat-header{padding-inline:9px}.chat-header-actions .icon-button{display:none}.retention-control select{width:105px}.message-list{padding:12px 9px}.message-row{max-width:91%}.message-actions{opacity:1}.message-actions button{padding:3px}.typing-bubble small{display:none}.composer-meta{flex-direction:column;gap:2px}.message-composer{padding:9px}.send-button{min-width:62px;padding-inline:10px}.edit-box{min-width:min(300px,72vw)}.floating-error{max-width:none;bottom:10px;left:10px;right:10px}.modal-overlay{padding:12px}.modal-card{padding:20px}.notification-preview{max-width:none}}.lecture-rule-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.lecture-rule-grid article{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-soft);padding:14px}.lecture-rule-grid h3,.rule-columns h3{font-size:.86rem}.lecture-chip{background:var(--surface);color:var(--text-soft);border-color:var(--border)}.rule-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:18px;display:grid}.rule-columns ol{color:var(--text-muted);margin:8px 0 0;padding-left:20px;font-size:.8rem}.rule-columns li{padding:3px 0}@media (width<=820px){.lecture-rule-grid,.rule-columns{grid-template-columns:1fr}}:root[data-theme=dark]{--bg:#0d1219;--surface:#151c25;--surface-soft:#1b2430;--surface-accent:#172941;--border:#283444;--border-strong:#3a485b;--text:#f1f5f9;--text-soft:#d8e0ea;--text-muted:#97a6ba;--primary:#3f82f7;--primary-dark:#2c6de0;--primary-solid:#1f66e0;--primary-solid-hover:#1749b1;--primary-soft:#18345f;--positive:#4bd3a3;--positive-soft:#12392f;--warning:#f1bd62;--warning-soft:#3b2d15;--danger:#f05c69;--danger-dark:#d64956;--danger-soft:#3d1d23;--focus:#79aaff;--shadow:0 18px 48px #00000057;--shadow-soft:0 5px 20px #00000038;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-high-contrast=true]{--border:#6b7280;--border-strong:#374151;--focus:#ff8a00;--shadow:none;--shadow-soft:none}:root[data-theme=dark][data-high-contrast=true]{--bg:#000;--surface:#080808;--surface-soft:#111;--surface-accent:#101d31;--border:#8f98a5;--border-strong:#d1d5db;--text:#fff;--text-soft:#f3f4f6;--text-muted:#d1d5db;--primary:#72a7ff;--primary-dark:#4b8cf5;--primary-solid:#1c5cd6;--primary-solid-hover:#0e3fae;--primary-soft:#112d59;--positive:#64f0bd;--positive-soft:#0b2c22;--warning-soft:#2c210b;--danger-soft:#2f1015}html,body,#root{height:100%;min-height:0;overflow:hidden}body{overscroll-behavior:none}.app-content{overscroll-behavior:contain;background:var(--bg);contain:layout paint;isolation:isolate;overflow:auto}.brand-logo-frame{border:1px solid var(--border);width:38px;height:38px;box-shadow:var(--shadow-soft);background:#fff;border-radius:12px;place-items:center;padding:4px;display:grid;overflow:hidden}.brand-logo-frame img{object-fit:contain;width:100%;height:100%}.brand-name{font-size:1rem}.top-nav{background:color-mix(in srgb, var(--surface) 97%, transparent)}.top-icon{flex:none}.crypto-dot{background:#9aa5b5;border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 4px #9aa5b52e}.crypto-dot.ready{background:var(--positive);box-shadow:0 0 0 4px color-mix(in srgb, var(--positive) 20%, transparent)}.crypto-dot.error{background:var(--danger)}.overflow-menu{position:relative}.menu-popover{z-index:60;background:var(--surface);border:1px solid var(--border);width:min(290px,100vw - 20px);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.menu-popover a,.menu-popover button{width:100%;min-height:40px;color:var(--text);text-align:left;background:0 0;border:0;border-radius:9px;padding:9px 11px;font-size:.8rem;font-weight:650;text-decoration:none}.menu-popover a:hover,.menu-popover button:hover{background:var(--surface-soft)}.menu-divider{background:var(--border);height:1px;margin:5px 3px}.project-notes-link{color:var(--text-muted)!important;font-size:.72rem!important}.danger-menu-item{color:var(--danger)!important}.menu-setting{color:var(--text-muted);flex-direction:column;gap:5px;padding:8px 10px;font-size:.7rem;font-weight:700;display:flex}.menu-setting select{min-height:36px;font-size:.76rem}.auth-card:before{display:none!important}.auth-logo{object-fit:contain;align-self:center;width:min(220px,70%);height:auto}:root[data-theme=dark] .auth-logo{filter:brightness(.92)contrast(1.04)}.info-banner{background:color-mix(in srgb, var(--primary) 13%, var(--surface));color:var(--text-soft);border-color:color-mix(in srgb, var(--primary) 34%, var(--border))}.warning-banner,.connection-banner,.success-banner,.error-banner{color:var(--text-soft)}.privacy-explainer{background:var(--surface-accent);color:var(--text-soft);border-color:color-mix(in srgb, var(--primary) 30%, var(--border))}.data-chip{color:var(--text-soft);border-color:color-mix(in srgb, var(--positive) 35%, var(--border))}.ethics-grid .evidence-card{background:var(--surface-accent)}.delete-confirmation h3,.delete-confirmation>p{color:var(--text-soft)}::placeholder{color:var(--text-muted);opacity:.85}.chat-v2{background:var(--surface);grid-template-columns:minmax(300px,370px) minmax(0,1fr);height:100%}.chat-v2 .chat-sidebar{background:var(--surface);border-right-color:var(--border);padding:0;overflow:hidden}.chat-v2 .sidebar-top{min-height:72px;padding:15px 16px 9px}.chat-v2 .sidebar-top h1{font-size:1.55rem}.sidebar-subtitle{color:var(--text-muted);margin-top:1px;font-size:.68rem;display:block}.sidebar-actions{align-items:center;gap:12px;display:flex}.compose-group-button{background:var(--primary-soft);width:40px;min-height:40px;color:var(--primary);border-color:color-mix(in srgb, var(--primary) 28%, var(--border));font-size:1.25rem}.compact-search{border-bottom:0;padding:0 14px 5px}.compact-search .search-input-wrap input{background:var(--surface-soft);border-color:#0000;border-radius:999px;min-height:42px;padding-left:48px}.compact-search .search-input-wrap>span{font-size:.78rem;left:14px}.search-privacy-note{color:var(--text-muted);margin:0;padding:0 18px 8px;font-size:.61rem;line-height:1.35}.chat-filter-row{scrollbar-width:none;border-bottom:1px solid var(--border);gap:7px;padding:6px 14px 10px;display:flex;overflow-x:auto}.chat-filter-row::-webkit-scrollbar{display:none}.chat-filter-row button{border:1px solid var(--border);background:var(--surface);min-height:34px;color:var(--text-soft);white-space:nowrap;border-radius:999px;padding:6px 11px;font-size:.72rem;font-weight:750}.chat-filter-row button.active{background:var(--primary-soft);color:var(--primary);border-color:color-mix(in srgb, var(--primary) 38%, var(--border))}.chat-filter-row button span{background:color-mix(in srgb, var(--primary) 14%, var(--surface));border-radius:999px;place-items:center;min-width:18px;height:18px;margin-left:5px;padding:0 4px;font-size:.62rem;display:inline-grid}.sidebar-scroll{scrollbar-gutter:stable;flex:1;min-height:0;padding:4px 8px 14px;overflow-y:auto}.chat-v2 .request-section{border:0;padding:6px}.request-preview{background:var(--surface-soft);border-left:3px solid var(--primary);color:var(--text-soft);border-radius:0 8px 8px 0;margin:10px 0 6px;padding:9px 10px;font-size:.76rem}.group-request-card{border-color:color-mix(in srgb, var(--primary) 30%, var(--border))}.chat-v2 .conversation-list{gap:2px}.chat-v2 .conversation-row{border-radius:12px;min-height:69px;padding:9px 10px}.chat-v2 .conversation-row:hover{background:var(--surface-soft)}.chat-v2 .conversation-row.active{background:var(--primary-soft)}.chat-v2 .conversation-copy strong{font-size:.86rem}.chat-v2 .conversation-copy small{font-size:.69rem}.group-avatar{background:linear-gradient(145deg, var(--primary-solid), #6d5ce7);color:#fff;letter-spacing:-.03em;border:0;font-weight:850}.unread-badge{background:var(--primary-solid);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:.61rem;font-weight:800;display:grid}.chat-v2 .chat-thread{background:var(--bg);overflow:hidden}.chat-v2 .chat-header{background:var(--surface);min-height:68px;padding:9px 14px}.chat-person-button{color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;padding:5px 4px}.chat-person-button:hover strong{text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:3px}.encryption-pill{border:1px solid color-mix(in srgb, var(--positive) 38%, var(--border));background:var(--positive-soft);min-height:34px;color:var(--text-soft);border-radius:999px;align-items:center;gap:5px;padding:6px 10px;font-size:.68rem;font-weight:750;display:inline-flex}.chat-overflow{position:relative}.chat-menu{width:250px}.e2ee-banner{background:color-mix(in srgb, var(--positive) 9%, var(--surface));border-bottom:1px solid color-mix(in srgb, var(--positive) 25%, var(--border));min-height:34px;color:var(--text-muted);text-align:center;justify-content:center;align-items:center;gap:7px;padding:6px 14px;font-size:.66rem;display:flex}.e2ee-banner button{color:var(--primary);font-weight:750;font-size:inherit;background:0 0;border:0;padding:2px 4px}.chat-v2 .chat-tools{background:var(--surface-soft)}.chat-v2 .message-list{background-color:var(--bg);background-image:radial-gradient(circle at 20% 20%, color-mix(in srgb, var(--primary) 3.5%, transparent) 0 2px, transparent 2.5px), radial-gradient(circle at 80% 55%, color-mix(in srgb, var(--text-muted) 2.8%, transparent) 0 1.5px, transparent 2px);scroll-behavior:smooth;scrollbar-gutter:stable;background-size:44px 44px,58px 58px;padding:20px clamp(12px,3vw,42px)}:root[data-reduced-motion=true] .chat-v2 .message-list{scroll-behavior:auto}.chat-v2 .message-row{align-items:flex-end;max-width:min(74%,760px)}.chat-v2 .message-bubble{padding:9px 11px 7px;box-shadow:0 2px 6px #0000000f}.chat-v2 .message-bubble.mine{background:linear-gradient(145deg, var(--primary-solid), var(--primary-solid-hover))}.chat-v2 .message-bubble.theirs{background:var(--surface);border-color:var(--border)}.group-sender-name{color:var(--primary);margin-bottom:3px;font-size:.68rem;font-weight:850;display:block}.message-bubble.mine .group-sender-name{color:#ffffffd1}.decrypt-state{opacity:.72;font-style:italic}.decrypt-error{flex-direction:column;gap:2px;font-size:.75rem;display:flex}.decrypt-error small{opacity:.78}.legacy-label{opacity:.72;border:1px solid;border-radius:999px;width:fit-content;margin-bottom:5px;padding:2px 6px;font-size:.56rem}.message-status.seen{color:#8be9ff}:root[data-theme=light] .message-status.seen{color:#bfefff}.chat-v2 .system-event{background:color-mix(in srgb, var(--surface) 96%, transparent);border-color:var(--border)}.chat-v2 .system-event small{color:var(--text-muted)}.empty-chat-logo{object-fit:contain;width:min(280px,74%);height:auto;margin-bottom:8px}.media-message{min-width:min(330px,58vw)}.attachment-bubble{align-items:center;gap:10px;display:flex}.attachment-icon{background:#ffffff24;border-radius:10px;flex:0 0 36px;place-items:center;width:36px;height:36px;font-size:1.1rem;display:grid}.message-bubble.theirs .attachment-icon{background:var(--surface-soft)}.attachment-bubble>div{flex:1;min-width:0}.attachment-bubble strong,.attachment-bubble small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.attachment-bubble small{opacity:.78;margin-top:2px;font-size:.64rem}.attachment-bubble button{min-height:34px;color:inherit;background:#ffffff21;border:1px solid #ffffff47;border-radius:9px;padding:6px 9px;font-size:.67rem;font-weight:800}.message-bubble.theirs .attachment-bubble button{border-color:var(--border);background:var(--surface-soft)}.voice-bubble{align-items:center;gap:9px;min-width:280px;display:flex}.voice-play{width:34px;height:34px;color:inherit;background:#ffffff21;border:1px solid #ffffff4d;border-radius:50%;flex:none}.message-bubble.theirs .voice-play{border-color:var(--border);background:var(--surface-soft)}.voice-track{flex:1;align-items:center;gap:3px;height:28px;display:flex}.voice-track span{opacity:.52;background:currentColor;border-radius:999px;width:3px}.voice-track span:first-child,.voice-track span:nth-child(8){height:7px}.voice-track span:nth-child(2),.voice-track span:nth-child(7){height:15px}.voice-track span:nth-child(3),.voice-track span:nth-child(6){height:23px}.voice-track span:nth-child(4),.voice-track span:nth-child(5){height:18px}.voice-bubble>small{opacity:.78;font-size:.62rem}.voice-audio{width:160px;height:32px}.attachment-stage,.recording-bar{border-top:1px solid var(--border);background:var(--surface-soft);align-items:center;gap:12px;margin:0;padding:10px 14px;display:flex}.attachment-stage-copy{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.attachment-stage-copy>div{min-width:0}.attachment-stage-copy strong,.attachment-stage-copy small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.attachment-stage-copy small{color:var(--text-muted);margin-top:2px;font-size:.65rem}.attachment-stage-icon{background:var(--surface);border:1px solid var(--border);border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.attachment-stage-actions{gap:7px;display:flex}.attachment-stage audio{width:min(260px,28vw);height:34px}.recording-bar{color:var(--text-soft)}.recording-bar>span:not(.recording-dot){color:var(--text-muted);flex:1;font-size:.7rem}.recording-dot{background:var(--danger);border-radius:50%;width:10px;height:10px;animation:1s infinite alternate record-pulse}@keyframes record-pulse{to{opacity:.58;transform:scale(1.35)}}.chat-v2 .message-composer{background:var(--surface);padding:9px 12px 8px}.chat-v2 .composer-main{align-items:center}.chat-v2 .composer-main textarea{background:var(--surface-soft);resize:none;border-color:#0000;border-radius:22px;min-height:44px;padding:11px 14px}.composer-icon-button{border:1px solid var(--border);background:var(--surface);width:42px;height:42px;color:var(--text);border-radius:50%;flex:0 0 42px;place-items:center;font-size:1.15rem;display:grid}.composer-icon-button:hover:not(:disabled){background:var(--surface-soft)}.composer-icon-button.recording,.mic-button.recording{background:var(--danger-soft);color:var(--danger);border-color:color-mix(in srgb, var(--danger) 35%, var(--border))}.chat-v2 .send-button{border-radius:999px;min-width:68px;min-height:42px}.chat-v2 .composer-meta{padding-inline:50px 2px}.member-picker{border:1px solid var(--border);border-radius:var(--radius);max-height:250px;padding:10px;overflow-y:auto}.member-picker legend{color:var(--text-muted);padding:0 5px;font-size:.76rem;font-weight:800}.member-option{border-radius:9px;grid-template-columns:24px 32px minmax(0,1fr);align-items:center;min-height:48px;padding:6px 7px;gap:9px!important;display:grid!important}.member-option:hover{background:var(--surface-soft)}.member-option input{width:18px;height:18px;min-height:18px;margin:0}.member-option strong,.member-option small{display:block}.member-option small{color:var(--text-muted);font-size:.68rem}.permission-icon{background:var(--primary-soft);border-radius:18px;place-items:center;width:58px;height:58px;font-size:1.45rem;display:grid}.encryption-modal{width:min(600px,100%)}.security-summary-grid{grid-template-columns:1fr 1fr;gap:10px;margin:4px 0 12px;display:grid}.security-summary{border:1px solid var(--border);background:var(--surface-soft);border-radius:12px;align-items:flex-start;gap:10px;padding:12px;display:flex}.security-summary>span{border-radius:50%;flex:0 0 26px;place-items:center;width:26px;height:26px;font-weight:900;display:grid}.security-summary.protected>span{color:var(--positive);background:var(--positive-soft)}.security-summary.metadata>span{color:var(--primary);background:var(--primary-soft)}.security-summary p{color:var(--text-muted);margin:3px 0 0;font-size:.72rem}.advanced-toggle{border:1px solid var(--border);background:var(--surface);width:100%;min-height:44px;color:var(--text);text-align:left;border-radius:10px;justify-content:space-between;align-items:center;padding:10px 12px;font-weight:780;display:flex}.advanced-toggle:hover{background:var(--surface-soft)}.advanced-security-panel{border:1px solid var(--border);background:var(--surface-soft);border-top:0;border-radius:0 0 12px 12px;flex-direction:column;gap:10px;padding:12px;display:flex}.advanced-security-panel h3,.advanced-security-panel p{margin:0}.technical-boundary{border-left:3px solid var(--warning);background:var(--warning-soft);border-radius:0 8px 8px 0;padding:10px}.technical-boundary p{color:var(--text-soft);margin-top:4px;font-size:.72rem}.technical-disclosure{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px}.technical-disclosure summary{min-height:42px;color:var(--text-soft);cursor:pointer;align-items:center;padding:9px 11px;font-weight:750;display:flex}.technical-disclosure[open] summary{border-bottom:1px solid var(--border)}.technical-disclosure p{margin:0;padding:10px 11px}.contact-info-modal{width:min(560px,100%)}.contact-info-hero{text-align:center;flex-direction:column;align-items:center;gap:5px;padding:4px 0 8px;display:flex}.contact-info-hero h2,.contact-info-hero p{margin:0}.contact-quick-actions{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.contact-quick-actions button{border:1px solid var(--border);background:var(--surface);min-height:68px;color:var(--text);border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.contact-quick-actions button:hover{background:var(--surface-soft);border-color:var(--border-strong)}.contact-quick-actions button>span{color:var(--primary);font-size:1.1rem}.contact-quick-actions strong{font-size:.72rem}.contact-info-section{border-top:1px solid var(--border);padding-top:13px}.contact-info-section h3{color:var(--text-muted);margin-bottom:9px;font-size:.8rem}.info-list-row,.participant-row{align-items:center;gap:10px;min-height:48px;padding:7px 4px;display:flex}.info-list-row>span{text-align:center;flex:0 0 34px;width:34px}.info-list-row div,.participant-row div{flex:1;min-width:0}.info-list-row strong,.info-list-row small,.participant-row strong,.participant-row small{display:block}.info-list-row small,.participant-row small{color:var(--text-muted);margin-top:2px;font-size:.68rem}.participant-list{max-height:230px;overflow-y:auto}.contact-danger-actions{border-top:1px solid var(--border);padding-top:7px}.settings-hub{width:min(900px,100% - 36px)}.settings-hub-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.settings-hub-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:104px;color:var(--text);box-shadow:var(--shadow-soft);grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:17px;text-decoration:none;display:grid}.settings-hub-card:hover{border-color:var(--primary);transform:translateY(-1px)}.settings-hub-card>span{background:var(--primary-soft);border-radius:12px;place-items:center;width:42px;height:42px;font-size:1.1rem;display:grid}.settings-hub-card h2,.settings-hub-card p{margin:0}.settings-hub-card p{color:var(--text-muted);margin-top:4px;font-size:.75rem}.settings-hub-card>b{color:var(--primary);font-size:1.4rem}.faq-list,.policy-sections{padding:6px 20px}.faq-list details,.policy-sections details{border-bottom:1px solid var(--border)}.faq-list details:last-child,.policy-sections details:last-child{border-bottom:0}.faq-list summary,.policy-sections summary{cursor:pointer;align-items:center;min-height:54px;font-weight:780;display:flex}.faq-list p,.policy-sections p{color:var(--text-muted);margin:0 0 16px}.prepared-report{background:var(--surface-soft);min-height:130px}.golden-rules{margin-top:18px}.golden-rules ol{grid-template-columns:1fr 1fr;gap:10px;padding-left:28px;display:grid}.golden-rules li{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;padding:11px 12px}.golden-rules li::marker{color:var(--primary);font-weight:850}.golden-rules p{color:var(--text-muted);margin:4px 0 0;font-size:.74rem}.device-list{flex-direction:column;gap:7px;display:flex}.device-row{border:1px solid var(--border);background:var(--surface-soft);border-radius:11px;align-items:flex-start;gap:10px;padding:10px;display:flex}.device-row>span{margin-top:2px}.device-row div{min-width:0}.device-row strong,.device-row small{display:block}.device-row small{color:var(--text-muted);overflow-wrap:anywhere;margin-top:3px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.63rem}@media (width<=1120px){.chat-v2{grid-template-columns:320px minmax(0,1fr)}.encryption-pill span:last-child{display:none}.encryption-pill{justify-content:center;width:38px;height:38px;padding:0}}@media (width<=820px){.top-nav{flex-wrap:nowrap;min-height:60px}.brand-name{display:none}.brand-logo-frame{width:36px;height:36px}.nav-links{order:initial;border-top:0;flex-basis:auto;width:auto;padding-top:0}.nav-links a{align-items:center;min-height:38px;display:inline-flex}.profile-chip{display:none}.chat-v2{height:100%;display:block}.chat-v2 .chat-sidebar{width:100%;height:100%}.chat-v2 .chat-thread{height:100%;display:none}.chat-v2.has-active .chat-sidebar{display:none}.chat-v2.has-active .chat-thread{display:flex}.back-button{place-items:center;display:inline-grid}.e2ee-banner{text-align:left;justify-content:flex-start}.chat-v2 .message-row{max-width:86%}.chat-v2 .composer-meta{padding-inline:2px}.attachment-stage{flex-wrap:wrap}.attachment-stage-copy{flex-basis:calc(100% - 10px)}.attachment-stage audio{width:100%}}@media (width<=620px){.security-summary-grid,.settings-hub-grid,.golden-rules ol{grid-template-columns:1fr}.contact-quick-actions{gap:5px}.top-nav{gap:6px;padding:7px 8px}.nav-user{gap:4px}.nav-user .crypto-dot{display:none}.nav-links a{padding:7px 8px;font-size:.72rem}.chat-v2 .sidebar-top{min-height:62px;padding:11px 13px 6px}.chat-v2 .sidebar-top h1{font-size:1.35rem}.search-privacy-note{display:none}.compact-search{padding-bottom:6px}.chat-v2 .chat-header{gap:7px;padding-inline:7px}.chat-header-actions{gap:4px}.chat-v2 .chat-header-actions>.icon-button{width:38px;min-height:38px;display:inline-flex}.chat-person strong{font-size:.85rem}.presence-text{font-size:.64rem}.e2ee-banner span:nth-child(2){white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.e2ee-banner button{white-space:nowrap}.chat-v2 .message-list{padding:12px 8px}.chat-v2 .message-row{max-width:91%}.media-message{min-width:min(290px,78vw)}.voice-bubble{min-width:245px}.voice-audio{width:125px}.message-actions{opacity:1}.chat-v2 .message-composer{padding:7px}.composer-icon-button{flex-basis:38px;width:38px;height:38px}.chat-v2 .send-button{min-width:58px;padding-inline:10px}.chat-v2 .composer-meta span:first-child{display:none}.chat-v2 .composer-meta{justify-content:flex-end;font-size:.58rem}.attachment-stage-actions{width:100%}.attachment-stage-actions button{flex:1}.recording-bar{flex-wrap:wrap}.recording-bar>span:not(.recording-dot){flex-basis:60%}.recording-bar button{margin-left:auto}}@media (width<=400px){.nav-links a{padding-inline:6px}.top-nav .top-icon{width:34px;min-height:34px}.brand-logo-frame{width:34px;height:34px}.e2ee-banner button{display:none}.chat-v2 .message-row{max-width:94%}.media-message{min-width:250px}.voice-bubble{min-width:220px}.chat-v2 .send-button{min-width:50px;font-size:.7rem}}:root{--bg:#f3f6fa;--surface:#fff;--surface-soft:#f7f9fc;--surface-accent:#eef5ff;--surface-elevated:#fff;--rail:#0f1b2d;--rail-soft:#182943;--border:#e1e7ef;--border-strong:#c8d2df;--text:#122033;--text-soft:#34455d;--text-muted:#6c7c91;--primary:#1769e0;--primary-dark:#0e54bd;--primary-solid:#1769e0;--primary-solid-hover:#0e54bd;--primary-soft:#eaf2ff;--positive:#087c60;--positive-soft:#e5f7f1;--warning:#97600b;--warning-soft:#fff6e3;--danger:#c9384a;--danger-dark:#a92637;--danger-soft:#fff0f2;--focus:#1377f2;--shadow:0 22px 60px #15284524;--shadow-soft:0 6px 24px #15284512;--shadow-float:0 10px 36px #15284529;--radius-xs:6px;--radius-sm:9px;--radius:13px;--radius-lg:18px;--radius-xl:24px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--control-sm:36px;--control:44px;--icon-sm:16px;--icon:20px;--motion-fast:.15s;--motion:.19s}:root[data-theme=dark]{--bg:#0b111b;--surface:#121b28;--surface-soft:#172231;--surface-accent:#142943;--surface-elevated:#1a2636;--rail:#08101c;--rail-soft:#152740;--border:#263548;--border-strong:#3b4c62;--text:#f3f7fb;--text-soft:#d7e0eb;--text-muted:#93a4ba;--primary:#55a1ff;--primary-dark:#3488ef;--primary-solid:#1f66e0;--primary-solid-hover:#1749b1;--primary-soft:#17385f;--positive:#54d6ad;--positive-soft:#123c32;--warning:#efbf6c;--warning-soft:#3a2c16;--danger:#ff7280;--danger-dark:#ea5363;--danger-soft:#421d25;--focus:#83baff;--shadow:0 24px 70px #0000006b;--shadow-soft:0 7px 25px #0000003d;--shadow-float:0 16px 46px #0006}body{font-feature-settings:"cv02", "cv03", "cv04", "cv11";letter-spacing:-.006em}button,a,input,select,textarea{transition:color var(--motion-fast) ease, background-color var(--motion-fast) ease, border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease, transform var(--motion-fast) ease}button:active:not(:disabled),.primary-button:active,.secondary-button:active{transform:scale(.98)}svg{width:var(--icon);height:var(--icon);stroke-width:1.9px}.icon-button svg{width:var(--icon-sm);height:var(--icon-sm)}input,select,textarea{border-color:var(--border);background:var(--surface-soft);box-shadow:inset 0 1px #ffffff59}input:hover,select:hover,textarea:hover{border-color:var(--border-strong)}input:focus,select:focus,textarea:focus{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 13%, transparent)}.primary-button{box-shadow:0 5px 14px color-mix(in srgb, var(--primary) 24%, transparent)}.primary-button:hover:not(:disabled){box-shadow:0 8px 20px color-mix(in srgb, var(--primary) 28%, transparent);transform:translateY(-1px)}.secondary-button{border-color:var(--border);box-shadow:0 1px 2px #1426400a}.panel{border-color:var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.eyebrow{letter-spacing:.11em}@media (width>=821px){.app-shell{flex-direction:row;min-height:0}.top-nav{background:var(--rail);border:0;border-right:1px solid #ffffff14;flex-direction:column;gap:16px;width:92px;min-width:92px;height:100dvh;min-height:0;padding:14px 9px 12px;box-shadow:7px 0 28px #040e1c1f}.brand{justify-content:center;min-height:52px}.brand-logo-frame{border:0;border-radius:13px;width:42px;height:42px;box-shadow:0 8px 24px #00000040}.brand-name{display:none}.nav-links{flex-direction:column;flex:1;gap:6px;width:100%;overflow:visible}.nav-links a{color:#9fb0c7;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:100%;min-height:58px;padding:7px 3px;font-size:.62rem;font-weight:720;display:flex}.nav-links a svg{width:20px;height:20px}.nav-links a:hover{color:#fff;background:#ffffff12}.nav-links a.active{color:#fff;background:linear-gradient(145deg, color-mix(in srgb, var(--primary-solid) 82%, #17365e), color-mix(in srgb, var(--primary-solid-hover) 88%, #0d2442));box-shadow:0 8px 22px #004baf47}.nav-user{flex-direction:column;gap:7px;width:100%}.nav-user .crypto-dot,.profile-chip{display:none}.rail-account{color:#c2d0e1;border-color:#ffffff1a;flex-direction:column;justify-content:center;gap:3px;width:100%}.rail-account:hover,.rail-account.active{color:#fff;background:#ffffff14;border-color:#ffffff26}.top-nav .top-icon{color:#c2d0e1;background:0 0;border-color:#ffffff1a;width:42px;min-height:42px}.top-nav .top-icon:hover{color:#fff;background:#ffffff14}.top-nav .overflow-menu{justify-content:center;display:flex}.top-nav .menu-popover{background:var(--surface-elevated);inset:auto auto 0 calc(100% + 12px)}.app-content{flex:1;width:calc(100% - 92px)}.chat-v2{grid-template-columns:minmax(310px,370px) minmax(0,1fr)}}.page-shell{padding-block:32px 54px}.page-heading{padding:2px 2px 8px}.page-heading h1{font-size:clamp(1.55rem,2vw,2rem)}.page-heading p{font-size:.9rem;line-height:1.6}.menu-popover{background:var(--surface-elevated);box-shadow:var(--shadow-float);animation:pop-in var(--motion) ease both}.menu-popover a,.menu-popover button{font-size:.76rem}.modal-overlay{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:fade-in var(--motion) ease both;background:#040c18a8}.modal-card{background:var(--surface-elevated);box-shadow:var(--shadow);animation:modal-in var(--motion) cubic-bezier(.2,.8,.2,1) both}.toast{background:var(--text);color:var(--surface);box-shadow:var(--shadow-float);animation:toast-in var(--motion) ease both}@keyframes fade-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(10px)scale(.985)}}@keyframes pop-in{0%{opacity:0;transform:translateY(-5px)scale(.985)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}.route-stage{min-height:100%;animation:.21s cubic-bezier(.22,.8,.28,1) both route-enter;position:relative}.page-back-button{z-index:12;border:1px solid var(--border);background:color-mix(in srgb, var(--surface-elevated) 90%, transparent);width:fit-content;min-height:38px;color:var(--text);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;align-items:center;gap:7px;margin:12px 0 -4px 18px;padding:7px 12px;display:inline-flex;position:sticky;top:12px}.page-back-button:hover{border-color:var(--primary);color:var(--primary);transform:translate(-2px)}.page-back-button svg{width:16px;height:16px}.chat-thread{animation:.19s cubic-bezier(.22,.8,.28,1) both chat-enter}.message-row,.system-event{animation:.17s ease-out both message-enter}@keyframes route-enter{0%{opacity:0;transform:translateY(7px)scale(.997)}}@keyframes chat-enter{0%{opacity:0;transform:translate(10px)}}@keyframes message-enter{0%{opacity:0;transform:translateY(5px)scale(.99)}}.skeleton-block{background:linear-gradient(100deg, var(--surface-soft) 25%, color-mix(in srgb, var(--border) 48%, var(--surface)) 42%, var(--surface-soft) 62%);background-size:220% 100%;border-radius:999px;min-height:12px;animation:1.15s ease-in-out infinite skeleton-shimmer;display:block}.shell-skeleton{background:var(--bg);grid-template-columns:92px 1fr;height:100dvh;display:grid}.shell-skeleton aside{background:var(--rail);flex-direction:column;align-items:center;gap:22px;padding:16px 18px;display:flex}.shell-skeleton main{padding:clamp(28px,5vw,72px)}.skeleton-logo{border-radius:13px;width:42px;height:42px}.skeleton-nav{border-radius:12px;width:44px;height:44px}.skeleton-title{width:min(280px,60%);height:30px}.skeleton-line{width:min(520px,85%);margin-top:14px}.skeleton-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);gap:20px;max-width:900px;margin-top:28px;padding:24px;display:grid}.skeleton-panel .skeleton-block{height:58px}.chat-list-skeleton,.message-skeleton{gap:12px;padding:10px 8px;display:grid}.skeleton-chat-row{align-items:center;gap:10px;padding:8px;display:flex}.skeleton-chat-row>span:last-child{gap:8px;width:70%;display:grid}.skeleton-chat-row i:first-child{width:68%;height:13px}.skeleton-chat-row i:last-child{width:92%;height:9px}.skeleton-avatar{border-radius:50%;flex:0 0 40px;width:40px;height:40px}.message-skeleton{width:100%}.message-skeleton .skeleton-chat-row{background:color-mix(in srgb, var(--surface) 72%, transparent);border-radius:16px;width:min(360px,72%);padding:13px}.message-skeleton .skeleton-chat-row.mine{flex-direction:row-reverse;justify-self:end}@keyframes skeleton-shimmer{to{background-position-x:-220%}}:root[data-reduced-motion=true] .route-stage,:root[data-reduced-motion=true] .chat-thread,:root[data-reduced-motion=true] .message-row,:root[data-reduced-motion=true] .system-event,:root[data-reduced-motion=true] .skeleton-block{animation:none}.auth-page{background:radial-gradient(circle at 16% 18%, color-mix(in srgb, var(--primary) 15%, transparent), transparent 34%), radial-gradient(circle at 84% 80%, #25b9c61a, transparent 32%), var(--bg);justify-content:center;align-items:flex-start;height:100dvh;min-height:0;display:flex;position:relative;overflow:hidden auto}.auth-page:before{content:"";pointer-events:none;opacity:.32;background-image:linear-gradient(color-mix(in srgb, var(--border) 35%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--border) 35%, transparent) 1px, transparent 1px);background-size:40px 40px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 85%);mask-image:linear-gradient(#000,#0000 85%)}.auth-card{z-index:1;border-color:color-mix(in srgb, var(--border) 76%, transparent);background:color-mix(in srgb, var(--surface-elevated) 94%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);flex:none;margin-block:auto;padding:32px;position:relative}.primary-button,.secondary-button,.icon-button,.search-result-card,.request-card,.settings-hub-card{transition:transform var(--motion-fast) ease, box-shadow var(--motion-fast) ease, border-color var(--motion-fast) ease, background var(--motion-fast) ease}.primary-button:hover:not(:disabled),.send-button:hover:not(:disabled){box-shadow:0 9px 24px color-mix(in srgb, var(--primary) 30%, transparent);transform:translateY(-1px)}.search-result-card:hover,.request-card:hover,.settings-hub-card:hover{border-color:color-mix(in srgb, var(--primary) 32%, var(--border));box-shadow:0 10px 28px color-mix(in srgb, var(--primary) 12%, transparent);transform:translateY(-2px)}.search-input-wrap:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb, var(--primary) 13%, transparent)}@media (prefers-reduced-motion:reduce){.primary-button,.secondary-button,.icon-button,.search-result-card,.request-card,.settings-hub-card{transition:none}.primary-button:hover:not(:disabled),.send-button:hover:not(:disabled),.search-result-card:hover,.request-card:hover,.settings-hub-card:hover{transform:none}}.auth-logo{max-height:72px}.chat-v2 .chat-sidebar,.chat-v2 .sidebar-top{background:var(--surface)}.chat-v2 .conversation-row{transition:background var(--motion-fast) ease, border-color var(--motion-fast) ease, transform var(--motion-fast) ease;border:1px solid #0000}.chat-v2 .conversation-row:hover{background:var(--surface-soft);transform:translate(2px)}.chat-v2 .conversation-row.active{border-color:color-mix(in srgb, var(--primary) 18%, transparent);background:linear-gradient(90deg, var(--primary-soft), color-mix(in srgb, var(--primary-soft) 46%, var(--surface)))}.chat-v2 .message-list{background-color:color-mix(in srgb, var(--bg) 94%, var(--surface))}.chat-v2 .message-bubble{border-radius:15px}.chat-v2 .message-bubble.mine{box-shadow:0 5px 14px color-mix(in srgb, var(--primary) 15%, transparent);border-bottom-right-radius:5px}.chat-v2 .message-bubble.theirs{border-bottom-left-radius:5px;box-shadow:0 3px 11px #0f1f3512}.chat-v2 .message-composer{border-top:1px solid var(--border);box-shadow:0 -8px 28px #14263e0b}.chat-v2 .composer-main textarea{border:1px solid var(--border);background:var(--surface-soft)}.composer-icon-button{border-color:var(--border)}.send-button{box-shadow:0 6px 18px color-mix(in srgb, var(--primary) 25%, transparent)}.chat-empty{background:radial-gradient(circle at 50% 42%, color-mix(in srgb, var(--primary) 10%, transparent), transparent 35%)}.empty-chat-logo{filter:drop-shadow(0 14px 25px #1a519621)}.empty-chat-actions{flex-wrap:wrap;justify-content:center;gap:9px;margin:16px 0 10px;display:flex}.privacy-feature-row span{align-items:center;gap:5px;display:inline-flex}.privacy-feature-row svg{width:14px;height:14px}.date-separator{justify-content:center;align-items:center;width:100%;margin:8px 0;display:flex}.date-separator:before,.date-separator:after{content:"";background:color-mix(in srgb, var(--border) 72%, transparent);flex:1;max-width:130px;height:1px}.date-separator span{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 88%, transparent);color:var(--text-muted);border-radius:999px;margin:0 10px;padding:4px 9px;font-size:.62rem;font-weight:750;box-shadow:0 2px 8px #1426400a}.notification-levels{border:0;grid-template-columns:repeat(3,1fr);gap:7px;width:min(470px,100%);margin:0;padding:0;display:grid}.notification-levels label{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:11px;gap:7px;min-width:0;min-height:74px;padding:10px;display:flex}.notification-levels label:hover{border-color:var(--border-strong);background:var(--surface-soft)}.notification-levels label.selected{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 2px color-mix(in srgb, var(--primary) 10%, transparent)}.notification-levels input{width:16px;height:16px;min-height:16px;accent-color:var(--primary);flex:0 0 16px;margin:2px 0 0}.notification-levels strong,.notification-levels small{display:block}.notification-levels strong{font-size:.73rem}.notification-levels small{color:var(--text-muted);margin-top:3px;font-size:.62rem;line-height:1.35}@media (width<=820px){.app-shell{flex-direction:column}.top-nav{background:color-mix(in srgb, var(--surface) 96%, transparent);border-bottom:1px solid var(--border);flex-direction:row;width:100%;height:auto;min-height:60px;padding:7px 10px;box-shadow:0 5px 20px #0f1f350f}.brand{flex:none}.nav-links{flex:1;justify-content:center}.nav-links a{justify-content:center;align-items:center;gap:5px;min-width:48px;display:flex}.nav-links a svg{width:18px;height:18px}.nav-links a span{display:none}.nav-user{flex-direction:row;width:auto}.rail-account{border:0;flex-direction:row;width:auto;padding:2px}.rail-account span{display:none}.app-content{width:100%}}@media (width<=430px){.top-nav{gap:4px;padding-inline:7px}.nav-links{gap:1px}.nav-links a{min-width:40px;padding-inline:6px}.page-shell,.settings-page,.settings-hub,.narrow-page{width:calc(100% - 20px);padding-top:18px}.panel{border-radius:15px;padding:17px}.modal-overlay{padding:10px}.modal-card{max-height:calc(100dvh - 20px);padding:19px}.notification-levels{grid-template-columns:1fr}.account-session-panel{flex-direction:column;align-items:stretch}}@media (width<=820px){.app-shell{min-height:0}.top-nav{padding-top:max(7px, env(safe-area-inset-top))}.message-composer{padding-bottom:max(10px, env(safe-area-inset-bottom))}.modal-overlay{padding-bottom:max(12px, env(safe-area-inset-bottom))}.toast{bottom:max(24px, calc(env(safe-area-inset-bottom) + 12px))}}@media (width>=821px){.back-button{display:none}}@media (width<=620px){.search-input-wrap kbd{display:none}}.primary-button,.secondary-button,.danger-button,.small-button{text-align:center}body,.app-content,.page-shell,.auth-page{overflow-x:clip}img{max-width:100%;height:auto}@media (width<=360px){.top-nav .top-icon{width:32px;min-height:32px}.brand-logo-frame{width:32px;height:32px}.nav-links a{min-width:36px;padding-inline:4px;font-size:.68rem}.auth-card{padding:24px 20px}.chat-v2 .chat-header-actions>.icon-button{width:34px;min-height:34px}.composer-icon-button{flex-basis:36px;width:36px;height:36px}}:root[data-theme=dark] .chat-filter-row button.active{color:#8ec2ff}:root[data-theme=dark] .conversation-row.active strong{color:#eaf2ff}:root[data-theme=dark] .primary-button,:root[data-theme=dark] .send-button,:root[data-theme=dark] .unread-badge{color:#fff}:root[data-theme=dark] .message-bubble.mine .message-time,:root[data-theme=dark] .message-bubble.mine .message-status{color:#ffffffd9}.chat-v2 .message-row{position:relative}.reaction-bar{flex-wrap:wrap;align-items:center;gap:6px;max-width:100%;margin:5px 6px 0;display:flex}.reaction-set{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.reaction-chip{border:1px solid var(--border);background:var(--surface);min-width:34px;min-height:27px;color:var(--text-soft);cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:.74rem;font-weight:700;transition:transform .1s,border-color .12s,background .12s;display:inline-flex}.reaction-chip:hover{background:var(--surface-soft);border-color:var(--border-strong);box-shadow:0 0 0 1px color-mix(in srgb, var(--primary) 22%, transparent)}.reaction-chip.mine{background:var(--primary-soft);border-color:color-mix(in srgb, var(--primary) 45%, var(--border));color:var(--primary)}.reaction-chip:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.reaction-toggle-button{border:1px solid var(--border);width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;font-size:.85rem;transition:background .12s,color .12s,opacity .12s,border-color .12s;display:inline-grid}.reaction-toggle-button:hover{background:var(--surface-soft);color:var(--primary);border-color:var(--border-strong)}.reaction-toggle-button:focus-visible,.composer-icon-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.reaction-bar .reaction-toggle-button{opacity:0}.reaction-bar:focus-within .reaction-toggle-button,.message-row:hover .reaction-bar .reaction-toggle-button,.reaction-toggle-wrap.open .reaction-toggle-button{opacity:1}.reaction-toggle-wrap{align-items:center;display:inline-flex;position:relative}.emoji-menu{z-index:80;background:var(--surface);border:1px solid var(--border);border-radius:16px;grid-template-columns:repeat(8,1fr);gap:2px;max-width:min(304px,100vw - 16px);padding:8px;display:grid;position:absolute;bottom:calc(100% + 6px);left:0;box-shadow:0 12px 34px #0000002e,0 2px 8px #0000001f}.emoji-menu button{cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;min-width:34px;min-height:34px;font-size:1.2rem;line-height:1;display:grid}.emoji-menu button:hover{background:var(--surface-soft)}.emoji-menu button:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.emoji-wrap{align-items:center;display:inline-flex;position:relative}.emoji-wrap .emoji-menu{left:0;right:unset;bottom:calc(100% + 8px)}@media (width<=640px){.reaction-bar .reaction-toggle-button{opacity:1}.emoji-menu{grid-template-columns:repeat(7,1fr);max-width:min(280px,100vw - 16px)}}:root[data-theme=dark] .reaction-chip{background:color-mix(in srgb, var(--surface-soft) 40%, var(--surface))}:root[data-theme=dark] .reaction-chip.mine{color:#8ec2ff}
