:root{--bg:#070709;--bg-2:#0d0d11;--bg-3:#131317;--border:#2a1519;--border-dim:#1c1015;--tint-rgb:255, 255, 255;--scrim-rgb:0, 0, 0;--text:#ccc6c8;--text-dim:#9a8e92;--text-h:#f0e8ea;--text-inverse:#0a0a0c;--accent:var(--accent);--accent-hover:#e8001f;--accent-rgb:200, 0, 30;--accent-bg:rgba(var(--accent-rgb), .08);--accent-dim:rgba(var(--accent-rgb), .18);--glow:rgba(var(--accent-rgb), .28);--glow-bright:rgba(var(--accent-rgb), .55);--danger:var(--danger);--danger-rgb:255, 51, 85;--success:#00c8a0;--success-rgb:0, 200, 160;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;--font-size:15px;font:var(--font-size)/150% var(--sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}body{margin:0}::-webkit-scrollbar{width:3px;height:3px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--accent);box-shadow:0 0 6px var(--glow)}#root{min-height:100vh;flex-direction:column;min-height:100svh;display:flex}.auth-shell{min-height:100vh;background:radial-gradient(ellipse 80% 60% at 50% 40%, #8c001412 0%, transparent 70%), var(--bg);justify-content:center;align-items:center;min-height:100svh;padding:1.5rem;display:flex}.auth-card{background:var(--bg-2);border:1px solid var(--border);border-top:1px solid rgba(var(--accent-rgb), .45);width:100%;max-width:400px;box-shadow:0 0 40px rgba(var(--scrim-rgb), .6), 0 0 0 1px var(--border-dim);border-radius:6px;padding:2.5rem 2rem}.auth-card h1{color:var(--text-h);letter-spacing:1px;text-transform:uppercase;margin:0 0 .25rem;font-size:1.6rem;font-weight:700}.auth-card .subtitle{color:var(--text-dim);letter-spacing:.3px;margin:0 0 1.25rem;font-size:.85rem}.auth-card--loading{flex-direction:column;justify-content:center;align-items:center;gap:.75rem;min-height:160px;display:flex}.auth-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite auth-spin;display:inline-block}@keyframes auth-spin{to{transform:rotate(360deg)}}.bio-icon{text-align:center;filter:grayscale(.3);margin:.5rem 0 .75rem;font-size:2.5rem}.bio-prompt-hint,.bio-offer-hint{text-align:center;color:var(--text-dim);margin:0 0 1.25rem;font-size:.9rem;line-height:1.5}.btn-ghost{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:4px;width:100%;margin-top:.5rem;padding:.6rem;font-size:.9rem;transition:background .15s,color .15s}.btn-ghost:hover{background:var(--bg-3);color:var(--text-h)}.bio-fallback-btn{margin-top:1rem}.auth-tabs{border-bottom:1px solid var(--border);margin-bottom:1.25rem;display:flex}.auth-tab{color:var(--text-dim);font:inherit;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:.45rem .5rem;font-size:.82rem;font-weight:600;transition:color .15s,border-color .15s}.auth-tab:hover{color:var(--text-h)}.auth-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.file-pick-row{display:flex}.file-pick-btn{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden;font-size:.85rem!important}.profile-actions{flex-direction:column;gap:.5rem;margin-top:1.5rem;display:flex}.btn-danger-ghost{color:var(--danger)!important}.btn-danger-ghost:hover{border-color:var(--danger)!important}.export-panel{background:var(--bg-3);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:.75rem;margin-top:1rem;padding:1rem;display:flex}.export-info{color:var(--text-dim);margin:0;font-size:.82rem;line-height:1.5}.export-info code{font-family:var(--mono);color:var(--accent);font-size:.8rem}.export-text-area,.import-text-area{resize:vertical;width:100%;font-family:var(--mono);background:var(--bg);color:var(--text);border:1px solid var(--border);box-sizing:border-box;border-radius:4px;padding:.6rem;font-size:.72rem;line-height:1.45}.export-text-area:focus,.import-text-area:focus{border-color:var(--accent);outline:none}.import-or-divider{text-align:center;color:var(--text-dim);margin:.25rem 0;font-size:.75rem;position:relative}.import-or-divider:before,.import-or-divider:after{content:"";background:var(--border);width:30%;height:1px;position:absolute;top:50%}.import-or-divider:before{left:0}.import-or-divider:after{right:0}.form-group{flex-direction:column;gap:.4rem;margin-bottom:1rem;display:flex}.form-group label{color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;font-size:.75rem;font-weight:700}.form-group input{background:var(--bg-3);border:1px solid var(--border);color:var(--text-h);font-size:.95rem;font-family:var(--sans);border-radius:4px;outline:none;padding:.65rem .85rem;transition:border-color .15s,box-shadow .15s}.form-group input:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 10px var(--glow)}.form-group input::placeholder{color:var(--text-dim)}.btn{letter-spacing:.5px;text-transform:uppercase;cursor:pointer;font-size:.9rem;font-weight:700;font-family:var(--sans);border:none;border-radius:4px;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.25rem;transition:background .15s,box-shadow .15s,opacity .15s;display:inline-flex}.btn:disabled{opacity:.35;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--text-inverse)}.btn.btn-primary{width:100%;margin-top:.5rem}.btn-ghost{color:var(--text-dim);letter-spacing:.3px;background:0 0;width:100%;margin-top:.75rem;padding:.4rem 0;font-size:.8rem}.btn-ghost:hover:not(:disabled){color:var(--text)}.banner{border-radius:4px;margin-bottom:1rem;padding:.65rem .9rem;font-size:.85rem}.banner-error{background:rgba(var(--danger-rgb), .07);border:1px solid rgba(var(--danger-rgb), .3);color:#f67}.banner-info{background:var(--accent-bg);border:1px solid rgba(var(--accent-rgb), .3);color:var(--accent-hover)}.status-screen{min-height:100vh;min-height:100svh;color:var(--text-dim);letter-spacing:.5px;flex-direction:column;justify-content:center;align-items:center;gap:1.25rem;font-size:.9rem;display:flex}.reconnect-banner{z-index:8000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#ffd580;letter-spacing:.4px;pointer-events:none;background:#b45014eb;justify-content:center;align-items:center;gap:.5rem;padding:.35rem 1rem;font-size:.8rem;font-weight:500;animation:.2s reconnect-banner-in;display:flex;position:fixed;top:0;left:0;right:0}@keyframes reconnect-banner-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.reconnect-banner__dot{background:#ffd580;border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:1.1s ease-in-out infinite reconnect-pulse}@keyframes reconnect-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.status-screen__retry{border:1px solid var(--border);background:var(--bg-2);color:var(--text-h);cursor:pointer;border-radius:6px;padding:.5rem 1.4rem;font-size:.9rem;transition:opacity .15s,background .15s}.status-screen__retry:active{opacity:.7}.status-screen__retry:disabled{opacity:.45;cursor:default;background:var(--bg-3)}.reconnect-banner__retry{color:#ffd580;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #ffd58088;border-radius:4px;margin-left:.75rem;padding:.15rem .6rem;font-size:.78rem}.reconnect-banner__retry:active{opacity:.7}.conn-btn{cursor:pointer;opacity:.45;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:opacity .15s;display:flex}.conn-btn:hover,.conn-btn:active{opacity:1}.conn-btn__dot{background:#4ade80;border-radius:50%;flex-shrink:0;width:8px;height:8px}.conn-btn--warn .conn-btn__dot{background:#fbbf24;animation:1.1s ease-in-out infinite reconnect-pulse}.apk-banner{padding:.55rem 1rem;padding-top:calc(.55rem + var(--safe-area-inset-top,env(safe-area-inset-top,0px)));background:#1a3a1a;border-bottom:1px solid #2d6a2d;flex-shrink:0;align-items:center;gap:.6rem;font-size:.82rem;line-height:1.35;display:flex}.apk-banner__icon{flex-shrink:0;font-size:1rem}.apk-banner__msg{color:#a8d8a8;flex:1}.apk-banner__dl{color:#d4f5d4;white-space:nowrap;background:#2d6a2d;border-radius:5px;flex-shrink:0;padding:.25rem .65rem;font-size:.78rem;font-weight:600;text-decoration:none;transition:background .15s}.apk-banner__dl:hover{background:#3a8a3a}.apk-banner__dismiss{color:#6a9a6a;cursor:pointer;opacity:.7;background:0 0;border:none;flex-shrink:0;padding:.2rem;font-size:.85rem;line-height:1;transition:opacity .15s}.apk-banner__dismiss:hover{opacity:1}.devstatus-page{background:var(--bg);flex-direction:column;height:100%;display:flex;overflow:hidden}.devstatus-header{padding:calc(var(--safe-area-inset-top,env(safe-area-inset-top,0px)) + 1rem) 1.25rem .85rem;border-bottom:1px solid var(--border);background:var(--bg-2);flex-shrink:0;align-items:flex-start;gap:.75rem;display:flex}.devstatus-header__text{flex-direction:column;gap:.2rem;display:flex}.devstatus-header__title{color:var(--text);letter-spacing:.02em;margin:0;font-size:1.05rem;font-weight:700}.devstatus-header__sub{color:var(--text-dim);margin:0;font-size:.78rem;line-height:1.4}.devstatus-board{flex:1;grid-template-columns:repeat(3,1fr);gap:0;display:grid;overflow:hidden}.devstatus-col{border-right:1px solid var(--border);flex-direction:column;display:flex;overflow:hidden}.devstatus-col:last-child{border-right:none}.devstatus-col__header{background:var(--bg-2);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:.45rem;padding:.65rem .85rem .55rem;display:flex}.devstatus-col__icon{font-size:.95rem;line-height:1}.devstatus-col__heading{text-transform:uppercase;letter-spacing:.07em;flex:1;font-size:.78rem;font-weight:700}.devstatus-col--shipped .devstatus-col__heading{color:#4ade80}.devstatus-col--building .devstatus-col__heading{color:#fbbf24}.devstatus-col--planned .devstatus-col__heading{color:var(--text-dim)}.devstatus-col__count{color:var(--text-dim);background:var(--bg-3);text-align:center;border-radius:10px;min-width:1.3em;padding:0 .4rem;font-size:.7rem}.devstatus-col__list{flex:1;margin:0;padding:.5rem 0;list-style:none;overflow-y:auto}.devstatus-item{border-bottom:1px solid rgba(var(--tint-rgb), .04);flex-direction:column;gap:.15rem;padding:.5rem .85rem;display:flex}.devstatus-item:last-child{border-bottom:none}.devstatus-item__label{color:var(--text);font-size:.8rem;font-weight:500;line-height:1.35}.devstatus-item__detail{color:var(--text-dim);font-size:.72rem;line-height:1.35}.sidebar-bottom-row{justify-content:flex-end;align-items:center;gap:.4rem;padding-top:.3rem;display:flex}.devstatus-btn{cursor:pointer;opacity:.5;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:.95rem;line-height:1;transition:opacity .15s,background .15s,border-color .15s;display:flex}.devstatus-btn:hover,.devstatus-btn:active{opacity:1}.devstatus-btn--active{opacity:1;background:var(--bg-3);border-color:var(--border)}@media (max-width:480px){.devstatus-board{grid-template-columns:1fr;overflow-y:auto}.devstatus-col{border-right:none;border-bottom:1px solid var(--border);overflow:visible}.devstatus-col__list{overflow:visible}}.profile-shell{min-height:0;padding:calc(var(--safe-area-inset-top,env(safe-area-inset-top,0px)) + 1.5rem) 1.5rem calc(var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)) + 1.5rem);flex:1;justify-content:center;align-items:flex-start;display:flex;overflow-y:auto}.profile-card{background:var(--bg-2);border:1px solid var(--border);border-top:1px solid rgba(var(--accent-rgb), .4);width:min(640px,100vw - 3rem);max-height:min(860px, calc(100vh - var(--safe-area-inset-top,env(safe-area-inset-top,0px)) - var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)) - 3rem));border-radius:6px;flex-direction:column;padding:1.5rem 1.25rem 0;display:flex;overflow:hidden}.profile-header{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.profile-avatar{background:var(--accent-bg);border:1px solid var(--accent);width:56px;height:56px;box-shadow:0 0 12px var(--glow);color:var(--accent);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.4rem;font-weight:700;display:flex}.profile-info h2{color:var(--text-h);letter-spacing:.5px;margin:0 0 .15rem;font-size:1.1rem}.profile-info .uid{font-size:.75rem;font-family:var(--mono);color:var(--text-dim)}.profile-row{border-bottom:1px solid var(--border-dim);justify-content:space-between;align-items:center;padding:.6rem 0;font-size:.88rem;display:flex}.profile-row:last-child{border-bottom:none}.profile-row .key{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;font-size:.8rem}.profile-row .val{color:var(--text);font-family:var(--mono);text-overflow:ellipsis;text-align:right;max-width:60%;font-size:.78rem;overflow:hidden}.online-dot{background:var(--success);width:7px;height:7px;box-shadow:0 0 5px var(--success);border-radius:50%;margin-right:4px;display:inline-block}.chat-shell{height:100vh;height:var(--app-height,100svh);display:flex;overflow:hidden}.sidebar{background:var(--bg-2);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:260px;display:flex;overflow:hidden}.sidebar-scroll-area{flex:1;min-height:0;overflow-y:auto}.sidebar-bottom{border-top:1px solid var(--border);background:var(--bg-2);flex-direction:column;flex-shrink:0;gap:0;padding:.55rem .85rem;display:flex}.sidebar-header{padding:1rem;padding-top:calc(1rem + var(--safe-area-inset-top,env(safe-area-inset-top,0px)));border-bottom:1px solid var(--border);background:var(--bg-2);justify-content:space-between;align-items:center;display:flex}.sidebar-title{color:var(--accent);letter-spacing:2px;text-transform:uppercase;font-size:1rem;font-weight:700}.icon-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.2rem .4rem;font-size:1.1rem;transition:color .15s,background .15s}.icon-btn:hover{color:var(--accent);background:var(--accent-bg)}.own-user-row{border-bottom:1px solid var(--border-dim);align-items:center;gap:.65rem;padding:.75rem 1rem;display:flex}.own-user-btn{border:none;border-bottom:1px solid var(--border-dim);cursor:pointer;text-align:left;width:100%;color:var(--text);font-family:var(--sans);background:0 0;font-size:.9rem;transition:background .12s}.own-user-btn:hover{background:var(--accent-bg)}.own-user-btn:hover .own-user-gear{opacity:1}.own-user-gear{color:var(--text-dim);opacity:0;margin-left:auto;font-size:.85rem;transition:opacity .15s}.contact-row-wrap{border-left:2px solid #0000;align-items:center;transition:background .12s,border-color .12s;display:flex;position:relative}.contact-row-wrap:hover{background:var(--accent-bg);border-left-color:rgba(var(--accent-rgb), .4)}.contact-row-wrap.selected{background:var(--accent-dim);border-left-color:var(--accent)}.contact-row-wrap:hover .contact-remove-btn{opacity:1}.contact-btn-inner{cursor:pointer;text-align:left;color:var(--text);font-family:var(--sans);background:0 0;border:none;flex:1;align-items:center;gap:.65rem;min-width:0;padding:.5rem 1rem;font-size:.9rem;display:flex}.contact-remove-btn{color:var(--text-dim);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;padding:.25rem .6rem;font-size:.75rem;transition:opacity .15s,color .15s}.contact-remove-btn:hover{color:var(--danger)}.contact-row-wrap.removing{background:rgba(var(--danger-rgb), .04)!important}.contact-remove-confirm{flex-shrink:0;align-items:center;gap:.25rem;padding:0 .4rem;display:flex}.contact-confirm-yes{border:1px solid rgba(var(--danger-rgb), .45);color:var(--danger);font-size:.7rem;font-weight:700;font-family:var(--sans);cursor:pointer;white-space:nowrap;background:0 0;border-radius:3px;padding:.15rem .45rem;transition:background .12s}.contact-confirm-yes:hover{background:rgba(var(--danger-rgb), .12)}.contact-confirm-no{border:1px solid var(--border);color:var(--text-dim);font-size:.7rem;font-family:var(--sans);cursor:pointer;background:0 0;border-radius:3px;padding:.15rem .4rem;transition:color .12s,border-color .12s}.contact-confirm-no:hover{color:var(--text-h);border-color:var(--text-dim)}.profile-back-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;align-items:center;gap:.3rem;margin-bottom:1rem;padding:0;font-size:.85rem;transition:color .15s;display:inline-flex}.profile-back-btn:hover{color:var(--text-h)}.contact-section{padding:.4rem 0}.section-label{text-transform:uppercase;letter-spacing:1.2px;color:var(--accent);opacity:.6;padding:.35rem 1rem;font-size:.68rem;font-weight:700}.contact-row{align-items:center;gap:.65rem;padding:.5rem 1rem;display:flex}.contact-btn{cursor:pointer;text-align:left;width:100%;color:var(--text);font-family:var(--sans);background:0 0;border:none;border-left:2px solid #0000;border-radius:0;padding-left:0;font-size:.9rem;transition:background .12s,border-color .12s}.contact-btn:hover{background:var(--accent-bg);border-left-color:rgba(var(--accent-rgb), .4)}.contact-btn.selected{background:var(--accent-dim);border-left-color:var(--accent)}.contact-info{flex:1;min-width:0}.contact-name{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.contact-sub{color:var(--text-dim);font-size:.73rem}.pending-label{color:var(--accent)}.request-row{align-items:center}.avatar{background:var(--accent-bg);border:1px solid rgba(var(--accent-rgb), .35);width:34px;height:34px;color:var(--accent);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:.78rem;font-weight:700;display:flex;position:relative}.avatar-sm{width:26px;height:26px;font-size:.68rem}.online-badge{background:var(--success);border:2px solid var(--bg-2);width:8px;height:8px;box-shadow:0 0 4px var(--success);border-radius:50%;position:absolute;bottom:-2px;right:-2px}.empty-contacts{color:var(--text-dim);padding:.75rem 1rem;font-size:.8rem;line-height:1.5}.btn-sm{background:var(--accent-bg);color:var(--accent-hover);border:1px solid rgba(var(--accent-rgb), .3);letter-spacing:.5px;text-transform:uppercase;cursor:pointer;font-size:.75rem;font-weight:700;font-family:var(--sans);white-space:nowrap;border-radius:3px;padding:.22rem .6rem;transition:background .15s,box-shadow .15s}.btn-sm:hover:not(:disabled){background:var(--accent-dim);box-shadow:0 0 8px var(--glow)}.btn-sm:disabled{opacity:.35;cursor:not-allowed}.btn-accept{color:var(--success);background:#00c8a014;border-color:#00c8a04d}.btn-accept:hover:not(:disabled){box-shadow:none;background:#00c8a026}.btn-decline{background:rgba(var(--accent-rgb), .08);color:var(--danger);border-color:rgba(var(--accent-rgb), .3)}.btn-decline:hover:not(:disabled){background:rgba(var(--accent-rgb), .15);box-shadow:none}.btn-unblock{background:rgba(var(--tint-rgb), .04);color:var(--text-dim);border-color:rgba(var(--tint-rgb), .12)}.btn-unblock:hover:not(:disabled){background:rgba(var(--tint-rgb), .08);color:var(--text-h)}.btn-promote{color:#e0b840;background:#c8960014;border-color:#c896004d}.btn-promote:hover:not(:disabled){background:#c8960026}.btn-kick{color:var(--text-dim);background:0 0;border-color:#0000;padding:.1rem .35rem}.btn-kick:hover:not(:disabled){color:var(--danger);border-color:rgba(var(--accent-rgb), .3)}.btn-danger-sm{background:rgba(var(--accent-rgb), .15);color:var(--danger);border-color:rgba(var(--accent-rgb), .4)}.btn-danger-sm:hover:not(:disabled){background:rgba(var(--accent-rgb), .25)}.request-actions{flex:1 0 100%;gap:.4rem;padding-left:calc(34px + .65rem);display:flex}.request-actions .btn{text-align:center;flex:1}.request-row{flex-wrap:wrap;row-gap:.5rem;padding-bottom:.6rem}.section-label-btn{cursor:pointer;text-align:left;width:100%;font-family:var(--sans);text-transform:uppercase;letter-spacing:1.2px;color:var(--accent);opacity:.6;background:0 0;border:none;padding:.35rem 1rem;font-size:.68rem;font-weight:700;transition:opacity .15s;display:block}.section-label-btn:hover{opacity:1}.blocked-row{opacity:.55}.blocked-label{color:var(--danger);opacity:.8}.contact-muted{opacity:.65}.contact-mute-icon{opacity:.6;flex-shrink:0;font-size:.8rem}.add-contact-overlay{background:rgba(var(--scrim-rgb), .75);z-index:100;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.add-contact-panel{background:var(--bg-2);border:1px solid var(--border);border-top:1px solid rgba(var(--accent-rgb), .5);width:340px;max-height:70svh;box-shadow:0 0 30px rgba(var(--scrim-rgb), .7), 0 0 20px rgba(var(--accent-rgb), .06);border-radius:6px;flex-direction:column;gap:.75rem;padding:1.5rem;display:flex}.add-contact-header{color:var(--text-h);text-transform:uppercase;letter-spacing:1px;justify-content:space-between;align-items:center;font-size:.85rem;font-weight:700;display:flex}.user-results{margin:0;padding:0;list-style:none;overflow-y:auto}.user-result-row{border-bottom:1px solid var(--border-dim);justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.user-result-row:last-child{border-bottom:none}.user-result-info{flex-direction:column;display:flex}.uname{color:var(--text-h);font-size:.88rem}.uid-small{color:var(--text-dim);font-size:.72rem;font-family:var(--mono)}.no-results{color:var(--text-dim);padding:.5rem 0;font-size:.85rem}.hint-text{color:var(--text-dim);margin:0 0 .5rem;font-size:.75rem;line-height:1.4}.chat-main{background:var(--bg);flex-direction:column;flex:1;display:flex;overflow:hidden}.chat-placeholder{color:var(--text-dim);letter-spacing:.5px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.chat-view{flex-direction:column;height:100%;display:flex;position:relative;overflow:hidden}.scroll-to-bottom-btn{z-index:20;border:1px solid var(--border);background:var(--bg-3);width:36px;height:36px;color:var(--text-dim);cursor:pointer;box-shadow:0 2px 10px rgba(var(--scrim-rgb), .45);opacity:0;pointer-events:none;border-radius:50%;font-size:1.1rem;line-height:1;transition:background .12s,color .12s,border-color .12s,opacity .18s,transform .18s;position:absolute;bottom:5rem;right:1rem;transform:translateY(8px)}.scroll-to-bottom-btn.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.scroll-to-bottom-btn:hover{background:var(--accent-bg);color:var(--accent);border-color:var(--accent)}.drop-overlay{z-index:50;background:rgba(var(--scrim-rgb), .62);pointer-events:none;justify-content:center;align-items:center;animation:.1s drop-fade-in;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes drop-fade-in{0%{opacity:0}to{opacity:1}}.drop-overlay-border{border:2px dashed var(--accent);opacity:.55;box-shadow:inset 0 0 30px rgba(var(--scrim-rgb), .2), 0 0 20px var(--glow);border-radius:8px;position:absolute;top:10px;bottom:10px;left:10px;right:10px}.drop-overlay-inner{flex-direction:column;align-items:center;gap:.5rem;display:flex;position:relative}.drop-overlay-icon{filter:drop-shadow(0 0 10px var(--accent));font-size:2.4rem}.drop-overlay-label{color:var(--text-h);letter-spacing:.5px;font-size:1.05rem;font-weight:700}.drop-overlay-sub{color:var(--text-dim);letter-spacing:.3px;font-size:.75rem}.chat-header{padding:.8rem 1.25rem;padding-top:calc(.8rem + var(--safe-area-inset-top,env(safe-area-inset-top,0px)));border-bottom:1px solid var(--border);background:var(--bg-2);align-items:center;gap:.75rem;display:flex}.chat-header canvas{border-radius:3px}.chat-header-info strong{color:var(--text-h);letter-spacing:.3px;font-size:.92rem;display:block}.chat-header-sub{color:var(--text-dim);align-items:center;gap:.3rem;font-size:.75rem;display:flex}.messages-area{background:radial-gradient(120% 75% at 50% 100%, rgba(var(--accent-rgb), .06) 0%, transparent 62%), var(--bg);flex:1;min-height:0;overflow-y:auto}.messages-content{overflow-anchor:none;flex-direction:column;gap:.2rem;padding:1.25rem 1rem;display:flex}.messages-scroll-anchor{overflow-anchor:auto;flex-shrink:0;height:0}.loading-msgs,.empty-chat{color:var(--text-dim);letter-spacing:.5px;justify-content:center;align-items:center;margin:auto;font-size:.83rem;display:flex}.load-earlier-row{justify-content:center;padding:.6rem 1rem;display:flex}.load-earlier-btn{background:var(--bg-3);border:1px solid var(--border);color:var(--text-dim);cursor:pointer;border-radius:20px;padding:.3rem 1rem;font-size:.75rem;transition:background .15s,color .15s}.load-earlier-btn:hover{background:var(--bg-3);color:var(--text)}.bubble-wrap{overflow-anchor:none;margin-bottom:.1rem;display:flex;position:relative}.bubble-wrap.mine{justify-content:flex-end}.bubble-wrap.theirs{justify-content:flex-start}.bubble{border-radius:var(--bubble-radius,6px);word-break:break-word;border:1px solid #0000;max-width:100%;padding:.5rem .8rem;font-size:.92rem;line-height:1.5;position:relative}.bubble-wrap.mine .bubble{background:rgba(var(--accent-rgb), .22);border-color:rgba(var(--accent-rgb), .3);color:var(--text-h);border-bottom-right-radius:var(--bubble-tail,2px);box-shadow:0 0 12px rgba(var(--accent-rgb), .08)}.bubble-wrap.theirs .bubble{background:var(--bg-3);border-color:var(--border-dim);color:var(--text);border-bottom-left-radius:var(--bubble-tail,2px)}.density-compact .messages-content{gap:.05rem;padding:.75rem .8rem}.density-compact .bubble-wrap{margin-bottom:0}.density-compact .bubble{padding:.3rem .65rem}.density-compact .group-sender-label{margin-top:.35rem;margin-bottom:.05rem}.bubble-pending{opacity:.5}.bubble-time{font-size:.64rem;font-family:var(--mono);opacity:.5;vertical-align:bottom;white-space:nowrap;letter-spacing:.3px;margin-left:.55rem;display:inline-block}.chat-input-area{border-top:1px solid var(--border);background:var(--bg-2);flex-direction:column;flex-shrink:0;display:flex}.chat-toolbar{scrollbar-width:none;flex-wrap:nowrap;align-items:center;gap:.2rem;padding:.45rem .75rem .1rem;display:flex;overflow-x:auto}.chat-toolbar::-webkit-scrollbar{display:none}.attach-btn.toolbar-active,.mic-btn.toolbar-active{opacity:1;color:var(--accent);background:var(--accent-bg)}.message-input-row{background:var(--bg-2);align-items:flex-end;gap:.4rem;padding:.4rem .85rem .7rem;display:flex}.message-input{background:var(--bg-3);border:1px solid var(--border);color:var(--text-h);font-size:.92rem;font-family:var(--sans);resize:none;border-radius:4px;outline:none;flex:1;padding:.6rem .85rem;transition:border-color .15s,box-shadow .15s}.message-input:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 8px var(--glow)}.message-input::placeholder{color:var(--text-dim)}.format-panel{background:var(--bg-2);border-top:1px solid var(--border);scrollbar-width:none;align-items:center;gap:0;padding:.15rem .4rem;display:flex;overflow-x:auto}.format-panel::-webkit-scrollbar{display:none}.format-panel-group{flex-shrink:0;align-items:center;gap:1px;padding:0 .3rem;display:flex}.format-panel-group+.format-panel-group{border-left:1px solid var(--border)}.format-btn{cursor:pointer;opacity:.45;width:32px;height:32px;color:var(--text);-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:.8rem;line-height:1;transition:opacity .12s,background .12s,color .12s;display:flex}.format-btn:hover:not(:disabled){opacity:1;color:var(--accent);background:var(--accent-bg)}.format-btn:disabled{opacity:.15;cursor:not-allowed}.fmt--bold{font-size:.85rem;font-weight:700}.fmt--italic{font-size:.85rem;font-style:italic}.fmt--strike{text-decoration:line-through}.fmt--code{font-family:Menlo,Consolas,monospace;font-size:.78rem}.fmt--h1{font-size:.9rem;font-weight:800}.fmt--h2{opacity:.55;font-size:.8rem;font-weight:700}.fmt--h3{opacity:.55;font-size:.72rem;font-weight:700}.fmt--bullet{font-size:1rem}.fmt--numbered{font-family:Menlo,Consolas,monospace;font-size:.72rem}.rich-text{word-break:break-word;overflow-wrap:anywhere}.rich-block{min-height:1em;display:block}.rich-h1{margin-top:.15em;font-size:1.25em;font-weight:800;line-height:1.25}.rich-h2{font-size:1.1em;font-weight:700;line-height:1.3}.rich-h3{opacity:.85;font-size:1em;font-weight:700;line-height:1.3}.rich-list-item{align-items:baseline;gap:.45em;display:flex}.rich-bullet{color:var(--accent);-webkit-user-select:none;user-select:none;flex-shrink:0;font-weight:700}.rich-number{color:var(--accent);text-align:right;-webkit-user-select:none;user-select:none;flex-shrink:0;min-width:1.6em;font-family:Menlo,Consolas,monospace;font-size:.88em;font-weight:600}.chat-code{background:rgba(var(--scrim-rgb), .22);color:var(--accent);white-space:pre-wrap;word-break:break-all;border-radius:3px;padding:.1em .35em;font-family:Menlo,Monaco,Consolas,monospace;font-size:.82em}.bubble strong{font-weight:700}.bubble em{font-style:italic}.bubble s{opacity:.65}.chat-link{color:#74c0fc;text-underline-offset:2px;word-break:break-all;cursor:pointer;-webkit-tap-highlight-color:transparent;pointer-events:auto;-webkit-text-decoration:underline #74c0fc73;text-decoration:underline #74c0fc73;transition:color .12s,text-decoration-color .12s}.chat-link:hover{color:#a5d8ff;text-decoration-color:#a5d8ffb3}.chat-link:active{opacity:.75}.chat-link--warn{color:#ffd43b;text-decoration-color:#ffd43b73}.chat-link--warn:hover{color:#ffe066;text-decoration-color:#ffe066b3}.chat-link-warn-icon{vertical-align:middle;margin-right:3px;font-size:.8em}.send-btn{background:var(--accent);color:var(--text-inverse);cursor:pointer;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:.95rem;transition:background .15s,box-shadow .15s,opacity .15s;display:flex}.send-btn:disabled{opacity:.3;cursor:not-allowed}.send-btn:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 0 14px var(--glow-bright)}.attach-btn,.mic-btn{cursor:pointer;opacity:.5;width:34px;height:34px;color:var(--text);background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.05rem;transition:opacity .15s,background .15s,color .15s;display:flex}.attach-btn:hover:not(:disabled),.mic-btn:hover:not(:disabled){opacity:1;color:var(--accent);background:var(--accent-bg)}.attach-btn:disabled,.mic-btn:disabled{opacity:.2;cursor:not-allowed}.mic-btn.recording{opacity:1;color:var(--danger);animation:1s ease-in-out infinite pulse-record}@keyframes pulse-record{0%,to{box-shadow:none;background:0 0}50%{background:rgba(var(--danger-rgb), .1);box-shadow:0 0 10px rgba(var(--danger-rgb), .3)}}.bubble-media{max-width:280px;padding:.3rem .3rem .4rem}.bubble-image{object-fit:cover;border:1px solid rgba(var(--accent-rgb), .15);border-radius:4px;width:100%;max-width:260px;display:block}.bubble-audio{filter:invert()sepia()saturate(5)hue-rotate(300deg)brightness(.7);width:240px;height:34px;display:block}.bubble-caption{color:inherit;opacity:.85;margin-top:.3rem;padding:0 .2rem;font-size:.85rem;display:block}.media-loading{color:var(--text-dim);letter-spacing:.3px;padding:.5rem .6rem;font-size:.8rem}.media-error{color:var(--danger);opacity:.75;padding:.5rem .6rem;font-size:.8rem}.audio-player{align-items:center;gap:.5rem;min-width:220px;padding:.3rem 0;display:flex}.audio-play-btn{background:var(--accent-bg);border:1px solid rgba(var(--accent-rgb), .35);cursor:pointer;width:32px;height:32px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:.75rem;transition:background .15s,box-shadow .15s;display:flex}.audio-play-btn:hover{background:var(--accent-dim);box-shadow:0 0 10px var(--glow)}.audio-track{background:var(--border);cursor:pointer;border-radius:2px;flex:1;height:4px;position:relative}.audio-progress{background:var(--accent);height:100%;box-shadow:0 0 6px var(--glow);pointer-events:none;border-radius:2px;transition:width .1s linear}.audio-time{font-size:.68rem;font-family:var(--mono);color:var(--text-dim);white-space:nowrap;flex-shrink:0}.gif-overlay{background:rgba(var(--scrim-rgb), .6);z-index:200;justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.gif-panel{background:var(--bg-2);border:1px solid var(--border);border-top:1px solid rgba(var(--accent-rgb), .4);width:100%;max-width:520px;max-height:64svh;box-shadow:0 -4px 30px rgba(var(--scrim-rgb), .5);border-radius:8px 8px 0 0;flex-direction:column;display:flex;overflow:hidden}.gif-header{border-bottom:1px solid var(--border-dim);flex-shrink:0;align-items:center;gap:.5rem;padding:.55rem .75rem;display:flex}.gif-header-title{color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;flex:1;font-size:.82rem;font-weight:600}.gif-search{background:var(--bg-3);border:1px solid var(--border);color:var(--text-h);font-size:.88rem;font-family:var(--sans);border-radius:4px;outline:none;flex:1;padding:.4rem .7rem;transition:border-color .15s}.gif-search:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.gif-search::placeholder{color:var(--text-dim)}.gif-tabs{border-bottom:1px solid var(--border-dim);flex-shrink:0;display:flex}.gif-tab{color:var(--text-dim);font:inherit;text-transform:uppercase;letter-spacing:.07em;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:.38rem .5rem;font-size:.78rem;font-weight:600;transition:color .15s,border-color .15s}.gif-tab:hover{color:var(--text-h)}.gif-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.gif-masonry{flex:1;align-items:flex-start;gap:3px;min-height:0;padding:4px;display:flex;overflow-y:auto}.gif-col{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.gif-item{cursor:pointer;background:var(--bg-3);border:2px solid #0000;border-radius:4px;width:100%;padding:0;transition:border-color .12s;display:block;position:relative;overflow:hidden}.gif-item:hover{border-color:var(--accent);outline:none}.gif-item:focus-visible{border-color:var(--accent);outline:none}.gif-item img{width:100%;height:auto;display:block}.gif-item-overlay{pointer-events:none;background:0 0;justify-content:flex-end;align-items:flex-start;padding:4px;transition:background .15s;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.gif-item:hover .gif-item-overlay{background:rgba(var(--scrim-rgb), .28);pointer-events:auto}.gif-item:focus-visible .gif-item-overlay{background:rgba(var(--scrim-rgb), .28);pointer-events:auto}.gif-star-btn{background:rgba(var(--scrim-rgb), .55);width:22px;height:22px;color:var(--text-dim);cursor:pointer;opacity:0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:.78rem;line-height:1;transition:opacity .15s,color .15s,background .15s;display:flex}.gif-item:hover .gif-star-btn{opacity:1}.gif-item:focus-visible .gif-star-btn{opacity:1}.gif-star-btn.starred{opacity:1;color:gold;background:rgba(var(--scrim-rgb), .6)}.gif-star-btn:hover{color:gold!important;background:rgba(var(--scrim-rgb), .75)!important}.gif-notice{color:var(--text-dim);text-align:center;white-space:pre-line;flex:1;justify-content:center;align-items:center;padding:2rem 1.5rem;font-size:.85rem;display:flex}.gif-powered{text-align:center;color:var(--text-dim);border-top:1px solid var(--border-dim);letter-spacing:.3px;flex-shrink:0;padding:.3rem;font-size:.62rem}.gif-btn{letter-spacing:.5px;font-weight:700;font-size:.7rem!important;font-family:var(--mono)!important;width:auto!important;padding:0 6px!important}.video-thumb-wrap{cursor:pointer;border-radius:4px;max-width:260px;display:inline-block;position:relative;overflow:hidden}.video-play-overlay{background:rgba(var(--scrim-rgb), .42);color:#fff;justify-content:center;align-items:center;font-size:1.8rem;transition:background .15s;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.video-thumb-wrap:hover .video-play-overlay{background:rgba(var(--scrim-rgb), .58)}.video-no-thumb{background:var(--bg-3);border:1px solid var(--border);border-radius:4px;width:200px;height:120px}.bubble-video,.bubble-gif{border-radius:4px;width:100%;max-width:260px;display:block}.audio-effects-panel{border-top:1px solid var(--border);background:var(--bg-2);flex-direction:column;gap:.5rem;padding:.55rem .85rem .6rem;display:flex}.audio-effects-label{text-transform:uppercase;letter-spacing:.09em;color:var(--text-dim);font-size:.65rem;font-weight:700}.audio-effects-row{gap:.35rem;padding-bottom:1px;display:flex;overflow-x:auto}.audio-effects-row::-webkit-scrollbar{height:2px}.effect-btn{background:var(--bg-3);border:1px solid var(--border);min-width:54px;color:var(--text-dim);font-family:var(--sans);cursor:pointer;border-radius:6px;flex-direction:column;flex-shrink:0;align-items:center;gap:.15rem;padding:.3rem .55rem;transition:border-color .15s,color .15s,background .15s,box-shadow .15s;display:flex}.effect-btn:hover:not(:disabled){border-color:var(--text-dim);color:var(--text-h)}.effect-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-bg);box-shadow:0 0 8px var(--glow)}.effect-btn:disabled{opacity:.4;cursor:default}.effect-icon{font-size:.95rem;line-height:1}.effect-label{text-transform:uppercase;letter-spacing:.06em;font-size:.58rem;font-weight:700}.audio-effects-actions{align-items:center;gap:.4rem;display:flex}.effect-action-btn{background:var(--bg-3);border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:4px;padding:.28rem .65rem;font-size:.82rem;transition:border-color .15s,color .15s}.effect-action-btn:hover:not(:disabled){border-color:var(--text-dim);color:var(--text-h)}.effect-action-btn:disabled{opacity:.4;cursor:default}.effect-send-btn{color:var(--accent);border-color:var(--accent-dim);margin-left:auto}.effect-send-btn:hover:not(:disabled){background:var(--accent-bg);border-color:var(--accent)!important}.effect-discard-btn{color:var(--danger);border-color:rgba(var(--danger-rgb), .3)}.effect-discard-btn:hover:not(:disabled){border-color:var(--danger)!important}.recording-display{background:rgba(var(--accent-rgb), .04);border-top:1px solid rgba(var(--accent-rgb), .12);align-items:center;gap:.75rem;padding:.45rem .85rem;display:flex}.waveform-canvas{background:var(--bg-3);border-radius:3px;flex:1;max-width:220px;height:40px}.rec-timer{font-size:.8rem;font-family:var(--mono);color:var(--danger);letter-spacing:.5px;text-align:right;min-width:36px}.upload-progress-wrap{background:var(--bg-2);border-top:1px solid var(--border-dim);align-items:center;gap:.6rem;padding:.35rem .85rem;display:flex}.upload-progress-bar{background:var(--border);border-radius:2px;flex:1;height:3px;overflow:hidden}.upload-progress-fill{background:var(--accent);height:100%;box-shadow:0 0 8px var(--glow);border-radius:2px;transition:width .15s}.upload-progress-label{font-size:.68rem;font-family:var(--mono);color:var(--text-dim);text-align:right;min-width:28px}.sidebar-tabs{border-bottom:1px solid var(--border);padding-top:var(--safe-area-inset-top,env(safe-area-inset-top,0px));flex-shrink:0;display:flex}.sidebar-tab{color:var(--text-dim);font:inherit;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.55rem .5rem;font-size:.82rem;font-weight:600;transition:color .15s,border-color .15s;display:flex}.sidebar-tab:hover{color:var(--text-h)}.sidebar-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.tab-badge{background:var(--accent);color:var(--text-inverse);border-radius:10px;padding:0 .35rem;font-size:.65rem;font-weight:700;line-height:1.4}.unread-badge{background:var(--accent);min-width:18px;height:18px;color:var(--text-inverse);box-shadow:0 0 6px var(--glow);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;padding:0 4px;font-size:.66rem;font-weight:700;line-height:1;display:inline-flex}.contact-row-wrap.has-unread .contact-name,.contact-row.has-unread .contact-name{color:var(--text-h);font-weight:700}.contact-row-wrap.has-unread:not(.selected),.contact-row.has-unread:not(.selected){background:var(--accent-bg);border-left-color:rgba(var(--accent-rgb), .5)}.settings-hint{color:var(--text-dim);font-size:.78rem;line-height:1.4}.settings-action-btn.settings-action-active{border-color:var(--success);color:var(--success)}.groups-sidebar{flex-direction:column;flex:1;display:flex;overflow-y:auto}.group-avatar{background:linear-gradient(135deg, var(--bg-3), rgba(var(--accent-rgb), .28));border:1px solid var(--border);color:var(--accent);font-size:.8rem;font-weight:700}.modal-overlay{background:rgba(var(--scrim-rgb), .72);z-index:200;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal-panel{background:var(--bg-2);border:1px solid var(--border);width:min(420px,92vw);box-shadow:0 8px 40px rgba(var(--scrim-rgb), .6), 0 0 0 1px var(--border-dim);border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.modal-field{flex-direction:column;gap:.3rem;display:flex}.modal-field label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:600}.modal-input{background:var(--bg-3);border:1px solid var(--border);color:var(--text-h);font:inherit;border-radius:6px;outline:none;padding:.55rem .75rem;font-size:.9rem;transition:border-color .15s}.modal-input:focus{border-color:var(--accent)}.modal-actions{justify-content:flex-end;gap:.6rem;padding-top:.25rem;display:flex}.btn-primary{background:var(--accent);color:var(--text-inverse);font:inherit;cursor:pointer;border:none;border-radius:6px;width:auto;margin-top:0;padding:.45rem 1rem;font-size:.88rem;font-weight:600;transition:background .15s,box-shadow .15s}.btn-primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 0 12px var(--glow)}.btn-primary:disabled{opacity:.45;cursor:default}.btn-secondary{background:var(--bg-3);color:var(--text);border:1px solid var(--border);font:inherit;cursor:pointer;border-radius:6px;padding:.45rem 1rem;font-size:.88rem;transition:border-color .15s,color .15s}.btn-secondary:hover:not(:disabled){border-color:var(--text-dim);color:var(--text-h)}.btn-secondary:disabled{opacity:.45;cursor:default}.btn-danger{color:var(--danger);border:1px solid var(--danger);font:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:.4rem .9rem;font-size:.85rem;transition:background .15s}.btn-danger:hover{background:rgba(var(--danger-rgb), .1)}.btn-sm{padding:.3rem .7rem!important;font-size:.78rem!important}.group-info-overlay{background:rgba(var(--scrim-rgb), .6);z-index:150;justify-content:flex-end;align-items:stretch;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.group-info-panel{background:var(--bg-2);border-left:1px solid var(--border);flex-direction:column;gap:1rem;width:min(340px,100vw);padding:1.25rem;display:flex;overflow-y:auto}.group-info-header{justify-content:space-between;align-items:center;display:flex}.group-info-header h2{color:var(--text-h);margin:0;font-size:1rem}.close-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.2rem .4rem;font-size:1rem;transition:color .15s}.close-btn:hover{color:var(--text-h)}.group-info-desc{color:var(--text-dim);margin:0;font-size:.85rem;line-height:1.5}.group-info-section{flex-direction:column;gap:.5rem;display:flex}.group-info-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);font-size:.72rem;font-weight:700}.group-members-list,.group-invite-list{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.group-member-item,.group-invite-item{background:var(--bg-3);border-radius:6px;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .65rem;font-size:.85rem;display:flex}.group-invite-item>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.group-invite-item>button{flex-shrink:0;width:auto!important;margin-top:0!important}.group-member-name{color:var(--text)}.group-member-role{color:var(--accent);background:var(--accent-bg);border:1px solid var(--accent-dim);border-radius:4px;padding:.1rem .4rem;font-size:.68rem}.group-token-row{align-items:center;gap:.6rem;display:flex}.group-token{font-family:var(--mono);background:var(--bg-3);border:1px solid var(--border);color:var(--text);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;flex:1;padding:.35rem .6rem;font-size:.85rem;overflow:hidden}.group-sender-label{color:var(--accent);margin-top:.35rem;margin-bottom:-.1rem;padding:0 .75rem;font-size:.72rem;font-weight:600}.group-sender-label--clickable{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;transition:opacity .15s;display:block}.group-sender-label--clickable:hover{opacity:.7}.icon-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.2rem .4rem;font-size:1.1rem;line-height:1;transition:color .15s}.icon-btn:hover{color:var(--text-h)}.profile-card-tabs{border-bottom:1px solid var(--border);flex-shrink:0;margin-bottom:0;display:flex}.profile-card-body{flex:1;min-height:0;padding:1.5rem .75rem 0;overflow-y:auto}.profile-card-body:after{content:"";flex-shrink:0;height:2rem;display:block}.profile-card-tab{color:var(--text-dim);font:inherit;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:.45rem .5rem;font-size:.82rem;font-weight:600;transition:color .15s,border-color .15s}.profile-card-tab:hover{color:var(--text-h)}.profile-card-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.settings-panel{flex-direction:column;gap:0;display:flex}.settings-section{border-bottom:1px solid var(--border-dim);flex-direction:column;gap:.65rem;padding:1rem 0;display:flex}.settings-section:last-child{border-bottom:none}.settings-label{text-transform:uppercase;letter-spacing:.09em;color:var(--text-dim);align-items:center;gap:.4rem;font-size:.72rem;font-weight:700;display:flex}.settings-sublabel{text-transform:none;letter-spacing:0;opacity:.6;font-size:.68rem;font-weight:400}.emoji-palette{flex-wrap:wrap;gap:.3rem;display:flex}.emoji-palette-btn{border:1px solid var(--border-dim);background:var(--bg-3);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:2.1rem;height:2.1rem;padding:0;font-size:1.25rem;line-height:1;transition:border-color .12s,background .12s,transform .1s,box-shadow .12s;display:flex}.emoji-palette-btn:hover{border-color:var(--accent);background:var(--accent-bg);transform:scale(1.1)}.emoji-palette-btn.active{border-color:var(--accent);background:var(--accent-dim);box-shadow:0 0 6px var(--glow)}.settings-divider{background:var(--border);height:1px;margin:.25rem 0}.theme-open-btn{background:var(--bg-3);border:1px solid var(--border);cursor:pointer;text-align:left;width:100%;color:inherit;border-radius:8px;align-items:center;gap:.7rem;padding:.6rem .7rem;transition:border-color .15s,background .15s;display:flex}.theme-open-btn:hover{border-color:var(--accent);background:var(--accent-bg)}.theme-open-btn__chip{background:var(--bg);border:1px solid var(--border);border-radius:6px;flex-direction:column;flex-shrink:0;justify-content:center;gap:3px;width:34px;height:34px;padding:6px;display:flex}.theme-open-btn__bar{border-radius:2px;height:3px}.theme-open-btn__bar:nth-child(2){width:80%}.theme-open-btn__bar:nth-child(3){width:55%}.theme-open-btn__meta{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.theme-open-btn__name{color:var(--text-h);font-size:.88rem}.theme-open-btn__hint{color:var(--text-dim);font-size:.72rem}.theme-open-btn__chev{color:var(--text-dim);flex-shrink:0;font-size:1.2rem}.theme-preset-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:.5rem;display:grid}.theme-preset{cursor:pointer;color:inherit;background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;align-items:center;gap:.3rem;padding:.4rem .2rem;transition:border-color .15s,background .15s;display:flex}.theme-preset:hover{background:var(--bg-3)}.theme-preset.active{border-color:var(--accent);background:var(--accent-bg)}.theme-preset__chip{aspect-ratio:4/3;border:1px solid;border-radius:6px;flex-direction:column;justify-content:center;gap:3px;width:100%;padding:7px;display:flex}.theme-preset__bar{border-radius:2px;width:100%;height:4px}.theme-preset__bar--text{width:78%;height:3px}.theme-preset__bar--dim{width:52%;height:3px}.theme-preset__label{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.7rem;overflow:hidden}.theme-preset.active .theme-preset__label{color:var(--text-h)}.token-grid{flex-direction:column;gap:.35rem;display:flex}.token-row{align-items:center;gap:.6rem;padding:.3rem 0;display:flex}.token-swatch{-webkit-appearance:none;appearance:none;border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:5px;flex-shrink:0;width:34px;height:26px;padding:0}.token-swatch::-webkit-color-swatch-wrapper{padding:2px}.token-swatch::-webkit-color-swatch{border:none;border-radius:3px}.token-swatch::-moz-color-swatch{border:none;border-radius:3px}.token-meta{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.token-name{color:var(--text);font-size:.82rem}.token-hint{color:var(--text-dim);font-size:.68rem}.token-hex{background:var(--bg);border:1px solid var(--border);width:8.5rem;color:var(--text);border-radius:5px;flex-shrink:0;padding:.3rem .45rem;font-size:.78rem}.token-hex:focus{border-color:var(--accent);outline:none}.contrast-ok{color:var(--success);margin:0;font-size:.78rem}.contrast-warn{border:1px solid rgba(var(--danger-rgb), .35);background:rgba(var(--danger-rgb), .07);border-radius:6px;padding:.55rem .65rem}.contrast-warn__head{color:var(--text);margin:0 0 .4rem;font-size:.78rem}.contrast-list{flex-direction:column;gap:.2rem;margin:0;padding:0;list-style:none;display:flex}.contrast-list li{color:var(--text-dim);justify-content:space-between;gap:.6rem;font-size:.74rem;display:flex}.contrast-need{color:var(--danger)}.theme-io{flex-direction:column;gap:.5rem;margin-top:.6rem;display:flex}.theme-io__text{resize:vertical;background:var(--bg);border:1px solid var(--border);width:100%;min-height:8rem;color:var(--text);border-radius:6px;padding:.5rem;font-size:.72rem;line-height:1.45}.theme-io__text:focus{border-color:var(--accent);outline:none}.theme-editor__actions{justify-content:flex-end;gap:.6rem;padding-top:.8rem;display:flex}.settings-btn-group{flex-wrap:wrap;gap:.4rem;display:flex}.settings-btn{background:var(--bg-3);border:1px solid var(--border);color:var(--text-dim);font-family:var(--sans);cursor:pointer;white-space:nowrap;border-radius:4px;padding:.35rem .75rem;font-size:.83rem;transition:border-color .15s,color .15s,background .15s,box-shadow .15s}.settings-btn:hover{border-color:var(--text-dim);color:var(--text-h)}.settings-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-bg);box-shadow:0 0 8px var(--glow)}.settings-action-btn{background:var(--bg-3);border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;text-align:left;border-radius:4px;padding:.5rem .85rem;font-size:.85rem;transition:border-color .15s,color .15s}.settings-action-btn:hover{border-color:var(--text-dim);color:var(--text-h)}.settings-action-btn:disabled{opacity:.5;cursor:not-allowed}.settings-action-ghost{color:var(--text-dim);background:0 0;border-color:#0000}.settings-action-ghost:hover{background:var(--bg-2);border-color:var(--border);color:var(--text)}.settings-input{background:var(--bg-2);border:1px solid var(--border);color:var(--text);font:inherit;box-sizing:border-box;border-radius:6px;outline:none;width:100%;padding:.5rem .75rem;font-size:.85rem;transition:border-color .15s}.settings-input:focus{border-color:var(--accent)}.settings-action-danger{color:var(--danger)!important;border-color:rgba(var(--danger-rgb), .25)!important}.settings-action-danger:hover{background:rgba(var(--danger-rgb), .06);border-color:var(--danger)!important}.settings-notif-status{color:var(--text-dim);align-items:center;gap:.45rem;margin-bottom:.3rem;font-size:.82rem;display:flex}.settings-notif-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.settings-notif-dot--on{background:#4ade80}.settings-notif-dot--off{background:var(--text-dim)}.settings-toggles{flex-direction:column;gap:.4rem;margin-top:.6rem;display:flex}.settings-toggle{color:var(--text-dim);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.82rem;display:flex}.settings-toggle input[type=checkbox]{accent-color:var(--accent);cursor:pointer;width:14px;height:14px}.settings-toggle:hover span{color:var(--text-h)}.delete-account-panel{flex-direction:column;gap:.7rem;margin-top:.5rem;display:flex}.delete-account-warning{color:var(--danger);background:rgba(var(--danger-rgb), .06);border:1px solid rgba(var(--danger-rgb), .2);border-radius:6px;margin:0;padding:.6rem .75rem;font-size:.8rem;line-height:1.5}.delete-account-input{background:var(--bg-3);border:1px solid rgba(var(--danger-rgb), .35);color:var(--text-h);font-size:.85rem;font-family:var(--mono);border-radius:6px;outline:none;padding:.45rem .65rem;transition:border-color .15s}.delete-account-input:focus{border-color:var(--danger)}.delete-account-actions{flex-wrap:wrap;gap:.5rem;display:flex}.settings-action-danger:disabled{opacity:.45;cursor:not-allowed}.mono{font-family:var(--mono)}.scribble-overlay{z-index:300;background:#040406f5;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.scribble-header{padding:calc(var(--safe-area-inset-top,env(safe-area-inset-top,0px)) + .7rem) 1rem .7rem;border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.scribble-title{color:var(--text-dim);letter-spacing:.04em;font-size:.9rem}.scribble-cancel-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.25rem .5rem;font-size:.9rem;transition:color .15s}.scribble-cancel-btn:hover{color:var(--text)}.scribble-send-btn{background:var(--accent);color:var(--text-inverse);cursor:pointer;border:none;border-radius:6px;padding:.3rem .85rem;font-size:.9rem;font-weight:600;transition:background .15s,box-shadow .15s}.scribble-send-btn:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 0 12px var(--glow)}.scribble-send-btn:disabled{opacity:.35;cursor:default}.scribble-canvas-wrap{flex:1;justify-content:center;align-items:center;min-height:0;padding:.75rem;display:flex}.scribble-draw-canvas{aspect-ratio:400/280;background:rgba(var(--tint-rgb), .04);border:1px solid var(--border);cursor:crosshair;touch-action:none;border-radius:10px;width:min(400px,100vw - 1.5rem);display:block}.scribble-toolbar{padding:.75rem 1rem calc(var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)) + .75rem);border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:.6rem;display:flex}.scribble-send-row{align-items:center;gap:.6rem;padding-top:.1rem;display:flex}.scribble-size-wrap{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.scribble-size-track{background:var(--bg-3);border-radius:2px;height:4px;overflow:hidden}.scribble-size-fill{background:var(--accent);border-radius:2px;height:100%;transition:width .15s,background .2s}.scribble-size-fill--warn{background:#f5a623}.scribble-size-fill--block{background:#e03131}.scribble-size-label{color:#f5a623;white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;overflow:hidden}.scribble-size-label--block{color:#e03131;font-weight:600}.scribble-colors{justify-content:center;gap:.6rem;display:flex}.scribble-color-btn{cursor:pointer;border:2.5px solid #0000;border-radius:50%;outline:none;width:28px;height:28px;padding:0;transition:transform .12s,border-color .12s}.scribble-color-btn:hover{transform:scale(1.12)}.scribble-color-btn.active{border-color:rgba(var(--tint-rgb), .85);transform:scale(1.18)}.scribble-bottom-row{justify-content:center;align-items:center;gap:1.5rem;display:flex}.scribble-sizes{align-items:center;gap:.5rem;display:flex}.scribble-size-btn{background:rgba(var(--tint-rgb), .06);border:1.5px solid rgba(var(--tint-rgb), .15);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:border-color .12s,background .12s;display:flex}.scribble-size-btn:hover{border-color:rgba(var(--tint-rgb), .4)}.scribble-size-btn.active{border-color:rgba(var(--tint-rgb), .75);background:rgba(var(--tint-rgb), .1)}.scribble-actions{gap:.5rem;display:flex}.scribble-action-btn{background:rgba(var(--tint-rgb), .06);border:1px solid rgba(var(--tint-rgb), .12);color:var(--text);cursor:pointer;border-radius:8px;padding:.3rem .6rem;font-size:1rem;transition:background .12s,border-color .12s}.scribble-action-btn:hover:not(:disabled){background:rgba(var(--tint-rgb), .1);border-color:rgba(var(--tint-rgb), .25)}.scribble-action-btn:disabled{opacity:.3;cursor:default}.bubble-scribble{box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important}.bubble-scribble .bubble-time{background:rgba(var(--scrim-rgb), .55);pointer-events:none;border-radius:6px;padding:1px 5px;font-size:.68rem;position:absolute;bottom:4px;right:8px}.scribble-bubble-wrap{border-radius:10px;line-height:0;display:inline-block;position:relative;overflow:hidden}.scribble-editable{cursor:pointer}.scribble-display-canvas{aspect-ratio:400/280;border-radius:10px;width:min(280px,100vw - 6rem);display:block}.scribble-edit-hint{background:rgba(var(--scrim-rgb), .55);color:#fff;opacity:0;pointer-events:none;border-radius:10px;justify-content:center;align-items:center;font-size:.82rem;font-weight:500;transition:opacity .18s;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.scribble-editable:hover .scribble-edit-hint{opacity:1}.scribble-locked{cursor:default;opacity:1!important;background:rgba(var(--scrim-rgb), .7)!important;color:var(--text-dim)!important;font-size:.78rem!important}.bubble-outer{touch-action:pan-y;flex-direction:column;max-width:68%;display:flex;position:relative}.bubble-wrap.mine .bubble-outer{align-items:flex-end}.bubble-wrap.theirs .bubble-outer{align-items:flex-start}.msg-action-bar{background:var(--bg-3);border:1px solid var(--border);opacity:0;pointer-events:none;z-index:10;white-space:nowrap;box-shadow:0 2px 10px rgba(var(--scrim-rgb), .4);border-radius:20px;align-items:center;gap:2px;padding:4px 6px;transition:opacity .15s;display:flex;position:absolute;top:-38px}.msg-action-bar.mine{right:0}.msg-action-bar.theirs{left:0}.msg-action-bar.open{opacity:1;pointer-events:auto}.quick-react-btn{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:2px 3px;font-size:16px;line-height:1;transition:transform .1s,background .1s}.quick-react-btn:hover{background:var(--accent-bg);transform:scale(1.25)}.quick-react-btn.active{background:var(--accent-dim)}.msg-action-btn{cursor:pointer;color:var(--text-dim);background:0 0;border:none;border-radius:6px;margin-left:2px;padding:3px 6px;font-size:13px;transition:color .1s,background .1s}.msg-action-btn:hover{color:var(--text-h);background:var(--accent-bg)}.msg-action-btn.danger:hover{color:var(--danger);background:rgba(var(--danger-rgb), .1)}.reaction-row{flex-wrap:wrap;gap:4px;margin-top:3px;padding:0 2px;display:flex}.reaction-chip{background:var(--bg-3);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:12px;align-items:center;gap:3px;padding:2px 7px;font-size:14px;line-height:1.3;transition:border-color .15s,background .15s;display:inline-flex}.reaction-chip:hover{border-color:var(--accent);background:var(--accent-bg)}.reaction-chip.i-mine{border-color:var(--accent);background:var(--accent-dim)}.reaction-count{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:11px}.reaction-chip.i-mine .reaction-count{color:var(--accent)}.reply-quote{background:rgba(var(--tint-rgb), .05);border-left:2px solid var(--accent);border-radius:4px;align-items:center;gap:6px;margin-bottom:6px;padding:4px 8px;display:flex;overflow:hidden}.reply-quote-clickable{cursor:pointer;transition:background .12s}.reply-quote-clickable:hover{background:rgba(var(--tint-rgb), .1)}.reply-quote-clickable:active{background:rgba(var(--tint-rgb), .15)}.reply-quote-thumb{object-fit:cover;background:var(--bg-3);border-radius:4px;flex-shrink:0;width:36px;height:36px}.reply-quote-preview{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-size:12px;display:block;overflow:hidden}@keyframes msg-flash{0%{background:rgba(var(--accent-rgb), 0)}20%{background:rgba(var(--accent-rgb), .2)}to{background:rgba(var(--accent-rgb), 0)}}.msg-flash .bubble,.msg-flash>.bubble-wrap .bubble{animation:1.2s forwards msg-flash}.reply-bar{background:var(--bg-2);border-top:1px solid var(--border);color:var(--text-dim);align-items:center;gap:8px;padding:5px 12px;font-size:12px;display:flex}.reply-bar-icon{flex-shrink:0;font-size:14px}.reply-bar-text{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.reply-bar-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;transition:color .1s}.reply-bar-close:hover{color:var(--text-h)}.bubble-expires{color:var(--accent);opacity:.8;margin-left:3px;font-size:10px}.msg-tick{opacity:.55;letter-spacing:-.5px;color:inherit;margin-left:3px;font-size:10px;display:inline-block}.msg-tick--read{opacity:.9;color:#74c0fc}.expiry-active{font-size:11px;color:var(--accent)!important;border-color:var(--accent)!important}.back-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0 .5rem 0 0;font-size:1.7rem;line-height:1;transition:color .15s;display:none}.back-btn:hover{color:var(--text-h)}.swipe-reply-icon{color:var(--accent);pointer-events:none;z-index:2;filter:drop-shadow(0 0 4px rgba(var(--accent-rgb), .5));font-size:18px;line-height:1;position:absolute;top:50%;left:8px}.msg-ctx-backdrop{z-index:900;background:0 0;position:fixed;top:0;bottom:0;left:0;right:0}.msg-context-menu{z-index:901;background:var(--bg-3);border:1px solid var(--border);min-width:180px;box-shadow:0 8px 32px rgba(var(--scrim-rgb), .55), 0 2px 8px rgba(var(--scrim-rgb), .3);border-radius:12px;animation:.12s ctx-pop;position:fixed;overflow:hidden}@keyframes ctx-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.msg-ctx-emojis{border-bottom:1px solid var(--border);justify-content:center;align-items:center;gap:2px;padding:8px 10px 6px;display:flex}.msg-ctx-emoji{cursor:pointer;background:0 0;border:none;border-radius:8px;padding:4px;font-size:20px;line-height:1;transition:transform .1s,background .1s}.msg-ctx-emoji:hover{background:var(--accent-bg);transform:scale(1.3)}.msg-ctx-emoji.active{background:var(--accent-dim)}.msg-ctx-actions{flex-direction:column;display:flex}.msg-ctx-action{cursor:pointer;color:var(--text);text-align:left;border:none;border-top:1px solid var(--border);background:0 0;align-items:center;gap:10px;padding:11px 16px;font-size:.9rem;transition:background .1s;display:flex}.msg-ctx-action:first-child{border-top:none}.msg-ctx-action:hover{background:var(--accent-bg)}.msg-ctx-action-icon{text-align:center;opacity:.8;flex-shrink:0;width:18px;font-size:15px}.msg-ctx-action--danger{color:var(--danger)}.msg-ctx-action--danger:hover{background:rgba(var(--danger-rgb), .1)}.msg-ctx-confirm{flex-direction:column;align-items:center;gap:10px;padding:16px 14px 14px;display:flex}.msg-ctx-confirm-label{color:var(--text-dim);text-align:center;font-size:.85rem}.msg-ctx-confirm-btns{gap:8px;width:100%;display:flex}.msg-ctx-confirm-cancel,.msg-ctx-confirm-delete{border:1px solid var(--border);cursor:pointer;border-radius:8px;flex:1;padding:8px 0;font-size:.88rem;font-weight:500;transition:background .1s,border-color .1s}.msg-ctx-confirm-cancel{background:var(--bg-3);color:var(--text)}.msg-ctx-confirm-cancel:hover{background:var(--accent-bg);border-color:var(--accent)}.msg-ctx-confirm-delete{background:rgba(var(--danger-rgb), .12);color:var(--danger);border-color:rgba(var(--danger-rgb), .35)}.msg-ctx-confirm-delete:hover{background:rgba(var(--danger-rgb), .22);border-color:rgba(var(--danger-rgb), .6)}@media (pointer:coarse){.msg-action-bar{display:none!important}}@media (max-width:640px){.chat-shell{height:100vh;height:var(--app-height,100dvh);position:relative;overflow:hidden}.sidebar{will-change:transform;z-index:2;width:100%;transition:transform .28s cubic-bezier(.4,0,.2,1);position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(0)}.chat-main{will-change:transform;z-index:1;pointer-events:none;transition:transform .28s cubic-bezier(.4,0,.2,1);position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(100%)}.chat-shell.mobile-chat .sidebar{pointer-events:none;transform:translate(-100%)}.chat-shell.mobile-chat .chat-main{pointer-events:auto;transform:translate(0)}.back-btn{display:flex}.bubble-outer{max-width:85%}.chat-toolbar{gap:.15rem;padding:.4rem .6rem .1rem}.message-input-row{padding:.3rem .6rem;padding-bottom:calc(.3rem + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)));gap:.3rem}.attach-btn,.mic-btn,.send-btn{min-width:40px;min-height:40px}.format-toolbar{gap:0;padding:0 .2rem 0 0}.format-btn{width:22px;height:36px}.message-input{font-size:1rem}.sidebar-header{padding-top:calc(1rem + var(--safe-area-inset-top,env(safe-area-inset-top,0px)))}.sidebar-bottom{padding-bottom:calc(.55rem + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)))}.contact-row{min-height:52px}.reply-bar{padding-bottom:0}.scribble-overlay{padding-bottom:var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px))}}.avatar{background:0 0;border-color:#0000}.avatar canvas{border-radius:3px}.profile-avatar-wrap{flex-shrink:0;display:inline-flex;position:relative}.profile-avatar-edit-btn{background:var(--accent);border:2px solid var(--bg-2);width:22px;height:22px;color:var(--text-inverse);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:.7rem;line-height:1;display:flex;position:absolute;bottom:-6px;right:-6px}.profile-avatar-edit-btn:hover{background:var(--accent-hover)}.avatar-editor-overlay{background:rgba(var(--scrim-rgb), .75);z-index:1000;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.avatar-editor-modal{background:var(--bg-2);border:1px solid var(--border);border-radius:12px;flex-direction:column;width:min(720px,96vw);max-height:92vh;display:flex;overflow-y:auto}.avatar-editor-header{border-bottom:1px solid var(--border);color:var(--text-h);flex-shrink:0;justify-content:space-between;align-items:center;padding:.9rem 1.2rem;font-size:.9rem;font-weight:600;display:flex}.avatar-editor-close{background:var(--bg-3);border:1px solid var(--border);width:26px;height:26px;color:var(--text-dim);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:.75rem;display:flex}.avatar-editor-close:hover{color:var(--text-h)}.avatar-editor-body{flex-wrap:wrap;align-items:flex-start;gap:1.2rem;padding:1rem 1.2rem;display:flex}.avatar-editor-canvas{cursor:crosshair;border:1px solid var(--border);width:min(336px,100vw - 2rem);height:min(336px,100vw - 2rem);image-rendering:pixelated;touch-action:none;border-radius:4px;flex-shrink:0}.avatar-editor-sidebar{flex-direction:column;gap:1rem;min-width:140px;display:flex}.avatar-editor-section{flex-direction:column;gap:.4rem;display:flex}.avatar-editor-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:600}.avatar-tool-group{gap:.35rem;display:flex}.avatar-tool-btn{background:var(--bg-3);border:1px solid var(--border);width:36px;height:36px;color:var(--text-dim);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;font-size:1rem;transition:border-color .15s,color .15s;display:flex}.avatar-tool-btn:hover{color:var(--text-h);border-color:var(--accent-dim)}.avatar-tool-btn.active{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.avatar-palette-grid{grid-template-columns:repeat(4,1fr);gap:.3rem;display:grid}.avatar-palette-swatch{aspect-ratio:1;cursor:pointer;border:2px solid #0000;border-radius:5px;width:100%;min-width:0;min-height:0;padding:0;transition:border-color .15s,transform .1s}.avatar-palette-swatch:hover{transform:scale(1.1)}.avatar-palette-swatch.active{border-color:var(--text-h);outline:2px solid var(--accent);outline-offset:1px}.avatar-color-picker-row{align-items:center;gap:.5rem;margin-top:.25rem;display:flex}.avatar-color-picker-label{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.75rem;overflow:hidden}.avatar-color-picker{border:1px solid var(--border);cursor:pointer;background:var(--bg-3);border-radius:6px;flex-shrink:0;width:40px;height:30px;padding:1px 2px}.avatar-color-picker:focus{border-color:var(--accent);outline:none}.avatar-editor-actions{flex-wrap:wrap;gap:.5rem;margin-top:auto;display:flex}@media (max-width:520px){.avatar-editor-body{flex-direction:column;align-items:center}.avatar-editor-sidebar{flex-flow:wrap;width:100%}.avatar-editor-section{flex:120px}}.typing-indicator{background:var(--bg-3);border-radius:12px;flex-shrink:0;align-self:flex-start;align-items:center;gap:.4rem;width:-moz-fit-content;width:fit-content;max-width:min(70%,22rem);margin:.1rem 0 .15rem;padding:.3rem .7rem;display:inline-flex}.typing-label{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;font-style:italic;overflow:hidden}.chat-header-typing{color:var(--accent);font-style:italic}.typing-dots{align-items:center;gap:3px;display:inline-flex}.typing-dots span{background:var(--accent);opacity:.7;border-radius:50%;width:5px;height:5px;animation:1.2s ease-in-out infinite typing-bounce}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,80%,to{opacity:.5;transform:scaleY(1)}40%{opacity:1;transform:scaleY(1.4)}}.search-bar{background:var(--bg-2);border-bottom:1px solid var(--border-dim);align-items:center;gap:.5rem;padding:.4rem .75rem;display:flex}.search-input{background:var(--bg-3);border:1px solid var(--border);color:var(--text);font-size:.85rem;font-family:var(--sans);border-radius:4px;outline:none;flex:1;padding:.3rem .6rem;transition:border-color .15s}.search-input:focus{border-color:rgba(var(--accent-rgb), .5)}.search-input::placeholder{color:var(--text-dim)}.search-result-count{color:var(--text-dim);white-space:nowrap;flex-shrink:0;font-size:.73rem}.search-clear-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:3px;flex-shrink:0;padding:.15rem .3rem;font-size:.85rem;transition:color .15s}.search-clear-btn:hover{color:var(--text-h)}.group-info-header-actions{align-items:center;gap:.35rem;display:flex}.group-member-item{border-bottom:1px solid var(--border-dim);align-items:center;gap:.5rem;padding:.3rem 0;display:flex}.group-member-item:last-child{border-bottom:none}.group-member-name{color:var(--text-h);flex:1;font-size:.88rem}.group-member-role{text-transform:uppercase;letter-spacing:.8px;color:#e0b840;background:#c896001a;border:1px solid #c8960040;border-radius:3px;flex-shrink:0;padding:.1rem .35rem;font-size:.67rem;font-weight:700}.group-member-actions{flex-shrink:0;align-items:center;gap:.3rem;display:flex}.group-edit-form{background:var(--bg-3);border:1px solid var(--border);border-radius:5px;flex-direction:column;gap:.4rem;margin-bottom:.5rem;padding:.75rem;display:flex}.group-edit-label{text-transform:uppercase;letter-spacing:.8px;color:var(--text-dim);margin-top:.25rem;font-size:.7rem;font-weight:700}.group-edit-label:first-child{margin-top:0}.group-edit-input{background:var(--bg-2);border:1px solid var(--border);color:var(--text);font-size:.85rem;font-family:var(--sans);border-radius:4px;outline:none;padding:.35rem .55rem;transition:border-color .15s}.group-edit-input:focus{border-color:rgba(var(--accent-rgb), .5)}.group-edit-input::placeholder{color:var(--text-dim)}.group-edit-actions{gap:.5rem;margin-top:.25rem;display:flex}.leaderboard-sidebar{flex-direction:column;height:100%;display:flex}.leaderboard-row{border-left:2px solid #0000;align-items:center;gap:.6rem;padding:.5rem 1rem;transition:background .12s;display:flex}.leaderboard-row:hover{background:var(--accent-bg)}.lb-rank{text-align:center;flex-shrink:0;min-width:2.2rem;font-size:.9rem;font-weight:700}.lb-rank-1{color:gold}.lb-rank-2{color:silver}.lb-rank-3{color:#cd7f32}.lb-rank-rest{color:var(--text-dim);font-size:.72rem}.lb-xp{color:var(--accent);white-space:nowrap;flex-shrink:0;font-size:.73rem;font-weight:700}.bubble-sticker{box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important}.sticker-bubble{flex-direction:column;align-items:center;gap:4px;display:flex}.sticker-bubble-img{object-fit:contain;border-radius:8px;width:128px;height:128px;display:block}.sticker-bubble-pack{color:var(--text-dim);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:128px;font-size:.65rem;overflow:hidden}.sticker-picker{background:var(--bg-2);border:1px solid var(--border);width:min(360px,95vw);max-height:min(420px,85vh);box-shadow:0 12px 48px rgba(var(--scrim-rgb), .6);z-index:150;border-radius:14px;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.sticker-picker-empty{color:var(--text-dim);flex-direction:column;align-items:center;gap:10px;padding:2rem 1rem;font-size:.85rem;display:flex}.sticker-manage-link{border:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:8px;padding:6px 14px;font-size:.8rem}.sticker-manage-link:hover{background:color-mix(in srgb, var(--accent) 15%, transparent)}.sticker-pack-tabs{border-bottom:1px solid var(--border);scrollbar-width:none;gap:4px;padding:8px 8px 0;display:flex;overflow-x:auto}.sticker-pack-tabs::-webkit-scrollbar{display:none}.sticker-pack-tab{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px 6px 0 0;flex-shrink:0;padding:4px 8px;font-size:.7rem;font-weight:700;transition:background .15s}.sticker-pack-tab:hover{background:var(--bg-3);color:var(--text)}.sticker-pack-tab.active{background:var(--accent);color:var(--text-inverse)}.sticker-pack-tab--manage{margin-left:auto;padding:4px 6px;font-size:1rem}.sticker-grid{flex:1;grid-template-columns:repeat(4,1fr);gap:6px;min-height:0;padding:10px;display:grid;overflow-y:auto}.sticker-cell{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:4px;transition:background .12s;display:flex}.sticker-cell:hover{background:var(--bg-3)}.sticker-thumb{object-fit:contain;width:58px;height:58px;display:block}.sticker-empty-pack{text-align:center;color:var(--text-dim);grid-column:1/-1;padding:1.5rem;font-size:.82rem}.sticker-manager-overlay{background:rgba(var(--scrim-rgb), .88);z-index:200;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.sticker-manager{background:var(--bg-2);border:1px solid var(--border);width:min(520px,95vw);max-height:85vh;box-shadow:0 12px 48px rgba(var(--scrim-rgb), .5);border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.sticker-manager-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.sticker-manager-header h2{margin:0;font-size:1rem}.sticker-manager-tabs{border-bottom:1px solid var(--border);gap:4px;padding:10px 14px 0;display:flex}.stm-tab{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:8px 8px 0 0;align-items:center;gap:6px;padding:6px 16px;font-size:.83rem;font-weight:600;transition:background .15s;display:flex}.stm-tab:hover{background:var(--bg-3);color:var(--text)}.stm-tab.active{background:var(--accent);color:var(--text-inverse)}.stm-tab-count{background:rgba(var(--tint-rgb), .25);border-radius:99px;padding:1px 7px;font-size:.72rem}.stm-content{flex-direction:column;flex:1;gap:12px;min-height:0;padding:14px;display:flex;overflow-y:auto}.stm-pending-banner{background:color-mix(in srgb, var(--accent) 18%, transparent);border-bottom:1px solid color-mix(in srgb, var(--accent) 40%, transparent);color:var(--text);padding:8px 16px;font-size:.82rem}.stm-section{flex-direction:column;gap:8px;display:flex}.stm-section-title{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:700}.stm-create-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.stm-input{border:1px solid var(--border);background:var(--bg-3);min-width:0;color:var(--text);border-radius:8px;flex:1;padding:6px 10px;font-size:.85rem}.stm-input:focus{border-color:var(--accent);outline:none}.stm-toggle{color:var(--text-dim);cursor:pointer;white-space:nowrap;align-items:center;gap:5px;font-size:.82rem;display:flex}.stm-empty{text-align:center;color:var(--text-dim);padding:2rem;font-size:.85rem}.stm-pack{background:var(--bg-3);border-radius:10px;overflow:hidden}.stm-pack-header{align-items:center;gap:8px;padding:4px 12px 4px 4px;display:flex}.stm-pack-toggle{min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;flex:1;align-items:center;gap:8px;padding:8px;font-family:inherit;display:flex}.stm-pack-toggle:hover{background:rgba(var(--tint-rgb), .05)}.stm-pack-caret{color:var(--text-dim);flex-shrink:0;font-size:.8rem;transition:transform .15s}.stm-pack-caret.is-open{transform:rotate(90deg)}.stm-pack-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.9rem;font-weight:700;overflow:hidden}.stm-pack-meta{color:var(--text-dim);white-space:nowrap;font-size:.73rem}.stm-pack-actions{flex-shrink:0;gap:4px;display:flex}.stm-pack-empty{color:var(--text-dim);padding:.9rem 1rem;font-size:.78rem}.stm-sticker-grid{overscroll-behavior:contain;grid-template-columns:repeat(5,1fr);gap:6px;max-height:min(46vh,340px);padding:8px 12px 12px;display:grid;overflow-y:auto}.stm-sticker-cell{flex-direction:column;align-items:center;gap:2px;display:flex;position:relative}.stm-sticker-cell--preview .stm-sticker-img{opacity:.85}.stm-sticker-img{object-fit:contain;background:var(--bg-2);border-radius:6px;width:52px;height:52px}.stm-sticker-name{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;text-align:center;max-width:52px;font-size:.62rem;overflow:hidden}.stm-sticker-del{background:var(--accent);width:16px;height:16px;color:var(--text-inverse);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.6rem;line-height:1;display:flex;position:absolute;top:-4px;right:-4px}.stm-add-sticker{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;display:flex}.stm-error{color:var(--accent);font-size:.75rem}.stm-upload-pct{color:var(--text-dim);font-size:.75rem}.stm-more-badge{background:var(--bg-2);color:var(--text-dim);border-radius:6px;justify-content:center;align-items:center;min-height:52px;font-size:.72rem;font-weight:700;display:flex}.stm-quick-save{background:color-mix(in srgb, var(--accent) 15%, transparent);border:1px dashed color-mix(in srgb, var(--accent) 60%, transparent);width:calc(100% - 24px);color:var(--accent);cursor:pointer;text-align:center;border-radius:8px;margin:0 12px 10px;padding:6px;font-size:.8rem;transition:background .15s;display:block}.stm-quick-save:hover{background:color-mix(in srgb, var(--accent) 25%, transparent)}.scribble-sticker-btn{border:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:8px;padding:6px 14px;font-size:.82rem;font-weight:600;transition:background .15s}.scribble-sticker-btn:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 18%, transparent)}.scribble-sticker-btn:disabled{opacity:.35;cursor:default}.bubble-image-clickable{cursor:zoom-in}.lightbox-backdrop{z-index:900;background:rgba(var(--scrim-rgb), .92);cursor:zoom-out;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.lightbox-img-wrap{cursor:grab;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.lightbox-img-wrap:active{cursor:grabbing}.lightbox-img{object-fit:contain;transform-origin:50%;will-change:transform;pointer-events:none;max-width:90vw;max-height:90vh;box-shadow:0 8px 40px rgba(var(--scrim-rgb), .7);border-radius:4px;transition:none}.lightbox-close{top:calc(1rem + var(--safe-area-inset-top,env(safe-area-inset-top,0px)));z-index:901;background:rgba(var(--tint-rgb), .12);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:2.4rem;height:2.4rem;font-size:1.1rem;transition:background .15s;display:flex;position:fixed;right:1rem}.lightbox-close:hover{background:rgba(var(--tint-rgb), .22)}.lightbox-hint{z-index:901;color:rgba(var(--tint-rgb), .4);pointer-events:none;white-space:nowrap;font-size:.75rem;position:fixed;bottom:1rem;left:50%;transform:translate(-50%)}@media (max-width:600px){.lightbox-hint{font-size:.65rem}}.video-lightbox-backdrop{cursor:default;padding:calc(.5rem + var(--safe-area-inset-top,env(safe-area-inset-top,0px))) calc(.5rem + var(--safe-area-inset-right,env(safe-area-inset-right,0px))) calc(.5rem + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px))) calc(.5rem + var(--safe-area-inset-left,env(safe-area-inset-left,0px)))}.video-lightbox-video{width:auto;max-width:100%;height:auto;max-height:100%;box-shadow:0 8px 40px rgba(var(--scrim-rgb), .7);background:#000;border-radius:4px}.cal-sidebar{flex-direction:column;gap:.5rem;display:flex}.cal-sidebar-hint{color:var(--text-dim);padding:.75rem 1rem;font-size:.8rem;line-height:1.5}.cal-sidebar-hint p{margin:0 0 .25rem}.cal-tl-entry{border:none;border-left:3px solid var(--accent);width:100%;color:var(--text-h);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:.75rem;padding:.55rem 1rem;transition:background .15s;display:flex}.cal-tl-entry:hover,.cal-tl-entry.selected{background:var(--bg-3)}.cal-tl-entry-icon{font-size:1.4rem}.cal-page{background:var(--bg);flex-direction:column;height:100%;display:flex;overflow:hidden}.cal-toolbar{padding:.6rem 1rem;padding-top:calc(.6rem + var(--safe-area-inset-top,env(safe-area-inset-top,0px)));border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:.5rem;display:flex}.cal-back-btn{display:none}.cal-nav-btn{border:1px solid var(--border);color:var(--text-h);cursor:pointer;background:0 0;border-radius:5px;padding:.2rem .55rem;font-size:1.2rem;line-height:1;transition:background .15s}.cal-nav-btn:hover{background:var(--bg-3)}.cal-month-label{color:var(--text-h);cursor:pointer;letter-spacing:.02em;background:0 0;border:none;border-radius:4px;padding:.15rem .4rem;font-size:1rem;font-weight:700;transition:background .15s}.cal-month-label:hover{background:var(--bg-3)}.cal-toolbar-spacer{flex:1}.cal-invite-badge{background:var(--accent);color:var(--bg);border-radius:999px;padding:.2rem .5rem;font-size:.75rem;font-weight:700}.cal-new-btn{background:var(--accent);color:var(--bg);cursor:pointer;border:none;border-radius:6px;padding:.35rem .85rem;font-size:.82rem;font-weight:700;transition:opacity .15s}.cal-new-btn:hover{opacity:.85}.cal-grid-header{border-bottom:1px solid var(--border);flex-shrink:0;grid-template-columns:repeat(7,1fr);display:grid}.cal-day-label{text-align:center;color:var(--text-dim);letter-spacing:.05em;text-transform:uppercase;padding:.3rem 0;font-size:.72rem;font-weight:700}.cal-grid{padding-bottom:var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px));flex:1;grid-template-rows:repeat(6,1fr);grid-template-columns:repeat(7,1fr);gap:0;display:grid;overflow-y:auto}.cal-cell{border-right:1px solid var(--border);border-bottom:1px solid var(--border);cursor:pointer;flex-direction:column;gap:2px;min-height:80px;padding:.25rem .3rem;transition:background .12s;display:flex;overflow:hidden}.cal-cell:nth-child(7n){border-right:none}.cal-cell:hover{background:var(--bg-3)}.cal-cell-dim{opacity:.4}.cal-cell-today{background:color-mix(in srgb, var(--accent) 10%, transparent)}.cal-cell-today .cal-cell-num{background:var(--accent);color:var(--bg);border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.cal-cell-num{color:var(--text-dim);text-align:center;align-self:flex-start;min-width:20px;padding:0 2px;font-size:.75rem;font-weight:600;line-height:20px}.cal-pill{text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border:none;border-radius:3px;width:100%;padding:1px 4px;font-size:.68rem;font-weight:600;transition:filter .12s;display:block;overflow:hidden}.cal-pill:hover{filter:brightness(1.15)}.cal-pill-busy{color:#f99;background:#ff4d4d33}.cal-pill-free{color:#86efac;background:#4ade8033}.cal-pill-event{background:color-mix(in srgb, var(--accent) 25%, transparent);color:var(--accent)}.cal-pill-contact{background:var(--bg-3);color:var(--text-dim);opacity:.75}.cal-pill-more{color:var(--text-dim);padding-left:2px;font-size:.63rem}.cal-pill-more-cnt{color:var(--text-dim);opacity:.6}.cal-detail-overlay{z-index:500;background:rgba(var(--scrim-rgb), .55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.cal-detail{background:var(--bg-2);border:1px solid var(--border);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:.4rem;min-width:280px;max-width:380px;padding:1.5rem;display:flex;position:relative}.cal-detail-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;font-size:1rem;position:absolute;top:.75rem;right:.75rem}.cal-detail-emoji{font-size:2.5rem}.cal-detail-type{letter-spacing:.1em;color:var(--text-dim);font-size:.65rem;font-weight:800}.cal-detail-title{color:var(--text-h);margin:0;font-size:1.1rem;font-weight:700}.cal-detail-owner{color:var(--text-dim);font-size:.78rem}.cal-detail-date{color:var(--text-dim);font-size:.82rem}.cal-detail-reason{color:var(--text-dim);margin:.25rem 0 0;font-size:.85rem;font-style:italic}.cal-detail-attendees{flex-wrap:wrap;justify-content:center;gap:.35rem;margin-top:.5rem;display:flex}.cal-detail-attendee{background:var(--bg-3);color:var(--text-dim);border-radius:999px;padding:.15rem .5rem;font-size:.73rem}.cal-att-joined{color:#86efac;background:#4ade8033}.cal-att-declined{color:#fca5a5;background:#f8717133}.cal-att-maybe{color:#fde68a;background:#facc1533}.cal-detail-edit{background:var(--accent);color:var(--bg);cursor:pointer;border:none;border-radius:6px;margin-top:.75rem;padding:.4rem 1rem;font-size:.82rem;font-weight:700}.tbe-overlay{z-index:600;background:rgba(var(--scrim-rgb), .65);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.tbe-modal{background:var(--bg-2);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:.9rem;width:100%;max-width:480px;max-height:90vh;padding:1.25rem 1.5rem 1.5rem;display:flex;overflow-y:auto}.tbe-header{align-items:center;gap:.6rem;display:flex}.tbe-preview-emoji{font-size:1.6rem;line-height:1}.tbe-title{color:var(--text-h);flex:1;margin:0;font-size:1.05rem;font-weight:800}.tbe-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.15rem .3rem;font-size:1.1rem;transition:background .12s}.tbe-close:hover{background:var(--bg-3)}.tbe-type-row{gap:.4rem;display:flex}.tbe-type-btn{border:1px solid var(--border);background:var(--bg-3);color:var(--text-dim);cursor:pointer;border-radius:8px;flex:1;padding:.5rem .3rem;font-size:.8rem;font-weight:600;transition:background .12s,border-color .12s,color .12s}.tbe-type-btn:hover{background:var(--bg)}.tbe-type-btn.active.tbe-type-busy{color:#f87171;background:#f871711f;border-color:#f87171}.tbe-type-btn.active.tbe-type-free{color:#4ade80;background:#4ade801f;border-color:#4ade80}.tbe-type-btn.active.tbe-type-event{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.tbe-type-desc{color:var(--text-dim);margin:-.3rem 0 0;font-size:.78rem;font-style:italic}.tbe-label{color:var(--text-dim);letter-spacing:.04em;text-transform:uppercase;flex-direction:column;gap:.3rem;font-size:.78rem;font-weight:700;display:flex}.tbe-optional{text-transform:none;letter-spacing:0;font-style:italic;font-weight:400}.tbe-input{background:var(--bg-3);border:1px solid var(--border);color:var(--text-h);border-radius:6px;outline:none;padding:.5rem .65rem;font-family:inherit;font-size:.9rem;transition:border-color .15s}.tbe-input:focus{border-color:var(--accent)}.tbe-emoji-input{max-width:100px;font-size:1.2rem}.tbe-datetime-row{gap:.75rem;display:flex}.tbe-label-half{flex:1}.tbe-vis-row{gap:.35rem;display:flex}.tbe-vis-btn{border:1px solid var(--border);background:var(--bg-3);color:var(--text-dim);cursor:pointer;text-align:center;border-radius:6px;flex:1;padding:.4rem .2rem;font-size:.75rem;font-weight:600;transition:background .12s,border-color .12s}.tbe-vis-btn:hover{background:var(--bg)}.tbe-vis-btn.active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent)}.tbe-reminder-grid{flex-wrap:wrap;gap:.35rem;display:flex}.tbe-reminder-chip{border:1px solid var(--border);background:var(--bg-3);color:var(--text-dim);cursor:pointer;border-radius:999px;padding:.25rem .6rem;font-size:.75rem;font-weight:600;transition:background .12s,border-color .12s,color .12s}.tbe-reminder-chip:hover{background:var(--bg)}.tbe-reminder-chip.active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.tbe-invite-list{flex-wrap:wrap;gap:.35rem;display:flex}.tbe-invite-chip{border:1px solid var(--border);background:var(--bg-3);color:var(--text-dim);cursor:pointer;border-radius:999px;padding:.25rem .6rem;font-size:.75rem;font-weight:600;transition:background .12s,border-color .12s,color .12s}.tbe-invite-chip:hover{background:var(--bg)}.tbe-invite-chip.active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.tbe-error{color:#f87171;background:#f871711a;border:1px solid #f87171;border-radius:5px;margin:0;padding:.4rem .6rem;font-size:.82rem}.tbe-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:.25rem;display:flex}.tbe-btn{cursor:pointer;border:none;border-radius:7px;padding:.5rem 1rem;font-size:.85rem;font-weight:700;transition:opacity .15s}.tbe-btn:disabled{opacity:.5;cursor:not-allowed}.tbe-btn-delete{color:#f87171;background:#f8717126;border:1px solid #f87171;margin-right:auto}.tbe-btn-delete.confirming{color:var(--bg);background:#f87171}.tbe-btn-cancel{background:var(--bg-3);color:var(--text-dim)}.tbe-btn-save{background:var(--accent);color:var(--bg)}.tbe-btn-save:hover,.tbe-btn-cancel:hover{opacity:.85}.tlc-panel{background:var(--bg);flex-direction:column;height:100%;display:flex;overflow:hidden}.tlc-header{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:.5rem;padding:.7rem 1rem;display:flex}.tlc-title{color:var(--text-h);flex:1;font-size:.95rem;font-weight:800}.tlc-dismiss-all{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:5px;padding:.2rem .55rem;font-size:.73rem;transition:background .12s}.tlc-dismiss-all:hover{background:var(--bg-3)}.tlc-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.15rem .35rem;font-size:1rem}.tlc-close:hover{background:var(--bg-3)}.tlc-empty{color:var(--text-dim);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:2rem;font-size:.85rem;display:flex}.tlc-empty p{margin:0}.tlc-empty-icon{font-size:2.5rem}.tlc-empty-sub{opacity:.7;max-width:260px;font-size:.78rem}.tlc-list{flex-direction:column;flex:1;gap:.4rem;padding:.5rem;display:flex;overflow-y:auto}.tlc-item{background:var(--bg-2);border:1px solid var(--border);border-left:3px solid var(--border);border-radius:8px;align-items:flex-start;gap:.6rem;padding:.65rem .75rem;transition:background .12s;display:flex}.tlc-item:hover{background:var(--bg-3)}.tlc-item-reminder{border-left-color:#facc15}.tlc-item-invite{border-left-color:var(--accent)}.tlc-item-event_updated{border-left-color:#60a5fa}.tlc-item-rsvp{border-left-color:#4ade80}.tlc-item-icon{flex-shrink:0;margin-top:1px;font-size:1.1rem}.tlc-item-body{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.tlc-item-content{color:var(--text-h);font-size:.85rem;line-height:1.35}.tlc-block-emoji{margin-right:.15rem}.tlc-item-meta{align-items:center;gap:.5rem;display:flex}.tlc-item-age{color:var(--text-dim);font-size:.72rem}.tlc-inv-status{border-radius:999px;padding:.1rem .4rem;font-size:.7rem;font-weight:700}.tlc-inv-joined{color:#86efac;background:#4ade8033}.tlc-inv-declined{color:#fca5a5;background:#f8717133}.tlc-inv-maybe{color:#fde68a;background:#facc1533}.tlc-rsvp-prompt{border:1px solid var(--border);color:var(--accent);cursor:pointer;background:0 0;border-radius:5px;align-self:flex-start;padding:.2rem .55rem;font-size:.75rem;font-weight:700;transition:background .12s}.tlc-rsvp-prompt:hover{background:var(--bg-3)}.tlc-rsvp-row{gap:.35rem;margin-top:.25rem;display:flex}.tlc-rsvp-btn{cursor:pointer;border:none;border-radius:5px;padding:.25rem .6rem;font-size:.73rem;font-weight:700;transition:opacity .12s}.tlc-rsvp-btn:hover{opacity:.8}.tlc-rsvp-join{color:#4ade80;background:#4ade8033;border:1px solid #4ade80}.tlc-rsvp-maybe{color:#facc15;background:#facc1533;border:1px solid #facc15}.tlc-rsvp-decline{color:#f87171;background:#f8717133;border:1px solid #f87171}.tlc-item-actions{flex-direction:column;flex-shrink:0;gap:.3rem;display:flex}.tlc-item-goto,.tlc-item-dismiss{cursor:pointer;opacity:.45;background:0 0;border:none;border-radius:4px;padding:.1rem .25rem;font-size:.8rem;transition:opacity .12s,background .12s}.tlc-item-goto:hover,.tlc-item-dismiss:hover{opacity:1;background:var(--bg-3)}.contact-block-emoji{margin-left:.1em;font-size:.9em;display:inline}.tlc-sidebar-entry{border:none;border-left:3px solid var(--accent);width:100%;color:var(--text-h);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:.75rem;margin-bottom:.25rem;padding:.55rem 1rem;transition:background .15s;display:flex}.tlc-sidebar-entry:hover,.tlc-sidebar-entry.selected{background:var(--bg-3)}.tlc-sidebar-icon{justify-content:center;align-items:center;font-size:1.3rem;display:flex}.cal-sidebar .sidebar-header{border-bottom:1px solid var(--border);padding:.65rem 1rem .4rem}@media (max-width:600px){.cal-cell{min-height:56px;padding:.15rem}.cal-cell-num{font-size:.68rem}.cal-pill{padding:1px 2px;font-size:.6rem}.tbe-modal{padding:1rem}.tbe-datetime-row{flex-direction:column}.cal-toolbar{padding:.45rem .65rem;padding-top:calc(.45rem + var(--safe-area-inset-top,env(safe-area-inset-top,0px)));gap:.35rem}.cal-month-label{font-size:.9rem}}.contact-profile-panel{background:var(--bg-2);border:1px solid var(--border);width:min(380px,92vw);box-shadow:0 12px 48px rgba(var(--scrim-rgb), .65), 0 0 0 1px var(--border-dim);border-radius:16px;flex-direction:column;gap:1.1rem;padding:1.5rem;display:flex;position:relative}.contact-profile-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.25rem .4rem;font-size:1rem;line-height:1;transition:color .15s,background .15s;position:absolute;top:.85rem;right:.85rem}.contact-profile-close:hover{color:var(--text);background:var(--bg-3)}.contact-profile-header{align-items:center;gap:1rem;display:flex}.contact-profile-header__info{flex-direction:column;gap:.18rem;min-width:0;display:flex}.contact-profile-header__name{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;font-weight:700;overflow:hidden}.contact-profile-header__handle{color:var(--text-dim);font-size:.8rem}.contact-profile-header__uid{opacity:.6}.contact-profile-header__status{color:var(--text-dim);align-items:center;gap:.3rem;font-size:.78rem;display:flex}.contact-profile-header__status.online{color:var(--success)}.contact-profile-atomi{background:var(--bg-3);border:1px solid var(--border);border-radius:10px;align-items:center;gap:.75rem;padding:.65rem .85rem;display:flex}.contact-profile-atomi__info{flex-direction:column;gap:.2rem;min-width:0;display:flex}.contact-profile-atomi__name{color:var(--text-h);font-size:.9rem;font-weight:600}.contact-profile-atomi__meta{color:var(--text-dim);font-size:.75rem}.contact-profile-section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:.35rem;font-size:.72rem;font-weight:700;display:block}.contact-profile-bio__text{color:var(--text);white-space:pre-wrap;word-break:break-word;margin:0;font-size:.88rem;line-height:1.5}.tune-card{background:var(--bg-3);border:1px solid var(--border);border-radius:10px;align-items:center;gap:.75rem;padding:.5rem .75rem;text-decoration:none;transition:border-color .15s,background .15s;display:flex;overflow:hidden}.tune-card:hover{border-color:var(--accent);background:var(--bg-3)}.tune-card__thumb-wrap{background:var(--bg-3);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:39px;display:flex;overflow:hidden}.tune-card__thumb{object-fit:cover;width:100%;height:100%;display:block}.tune-card__thumb--placeholder{color:var(--text-dim);font-size:1.3rem}.tune-card__title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.83rem;font-weight:500;overflow:hidden}.profile-edit-row{flex-direction:column;gap:.3rem;display:flex}.profile-edit-row label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);font-size:.75rem;font-weight:700}.profile-edit-input{background:var(--bg-3);border:1px solid var(--border);color:var(--text);box-sizing:border-box;resize:none;border-radius:8px;width:100%;padding:.55rem .75rem;font-family:inherit;font-size:.9rem;transition:border-color .15s}.profile-edit-input:focus{border-color:var(--accent);outline:none}.profile-edit-tune-preview{margin-top:.4rem}.profile-edit-save-btn{background:var(--accent);color:var(--text-inverse);cursor:pointer;border:none;border-radius:8px;align-self:flex-start;padding:.5rem 1.2rem;font-size:.88rem;font-weight:600;transition:opacity .15s}.profile-edit-save-btn:hover{opacity:.88}.profile-edit-save-btn:disabled{opacity:.5;cursor:not-allowed}.chat-header-clickable{cursor:pointer;border-radius:8px;flex:1;align-items:center;gap:.6rem;min-width:0;padding:.15rem .25rem;transition:background .15s;display:flex}.chat-header-clickable:hover{background:var(--bg-3)}.admin-overlay{padding-top:var(--safe-area-inset-top,env(safe-area-inset-top,0px));padding-bottom:var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px))}.devstatus-header,.atomi-home__header{padding-top:calc(.75rem + var(--safe-area-inset-top,env(safe-area-inset-top,0px)))}.devstatus-board,.atomi-home,.atomi-creation,.wallet-content,.shop,.admin-panel__body,.profile-card-body{padding-bottom:calc(1rem + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)))}.atomi-creation__confirm-btn{padding-bottom:calc(.5rem + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)))}@media (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]),textarea,select{font-size:max(16px,1rem)!important}}.call-overlay{z-index:980;background:var(--bg);padding-top:calc(1rem + var(--safe-area-inset-top,env(safe-area-inset-top,0px)));padding-bottom:calc(1rem + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)));flex-direction:column;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.call-overlay--ringing-in{background:var(--bg-2)}.call-stage{flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;position:relative;overflow:hidden}.call-remote-video{object-fit:contain;background:var(--bg);width:100%;height:100%}.call-local-video{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--border);background:var(--bg-3);border-radius:8px;width:28%;max-width:180px;position:absolute;bottom:1rem;right:1rem;transform:scaleX(-1)}.call-local-video.is-off{opacity:.25}.call-peer{filter:drop-shadow(0 0 32px var(--glow));justify-content:center;align-items:center;display:flex}.call-info{text-align:center;flex-shrink:0;padding:1rem 1.25rem 0}.call-name{color:var(--text-h);font-size:1.3rem;font-weight:600}.call-status{color:var(--text-dim);font-size:.85rem;font-family:var(--mono);justify-content:center;align-items:center;gap:.45rem;margin-top:.3rem;display:flex}.call-quality{background:var(--text-dim);border-radius:50%;flex-shrink:0;width:8px;height:8px}.call-quality--good{background:var(--success)}.call-quality--ok{background:#fbbf24}.call-quality--poor{background:var(--danger)}.call-transport{background:var(--bg-3);border:1px solid var(--border);border-radius:4px;padding:.1rem .4rem;font-size:.7rem}.call-error{color:var(--danger);max-width:30rem;margin-top:.6rem;font-size:.82rem}.call-disclosure{max-width:26rem;color:var(--text-dim);margin:.9rem auto 0;font-size:.78rem;line-height:1.45}.call-stats{background:var(--bg-2);border:1px solid var(--border);border-radius:8px;flex-shrink:0;width:min(24rem,100% - 2rem);margin-top:.9rem;padding:.7rem .85rem}.call-stats__row{color:var(--text-dim);justify-content:space-between;gap:1rem;padding:.15rem 0;font-size:.78rem;display:flex}.call-stats__row .mono{color:var(--text);font-family:var(--mono)}.call-stats__note{color:var(--text-dim);border-top:1px solid var(--border-dim);margin:.5rem 0 0;padding-top:.5rem;font-size:.7rem;line-height:1.45}.call-controls{flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:.75rem;padding:1.1rem 1rem 0;display:flex}.call-btn{background:var(--bg-3);border:1px solid var(--border);min-width:64px;height:56px;color:var(--text);cursor:pointer;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:0 .5rem;font-size:1.15rem;transition:background .15s,border-color .15s,opacity .15s;display:flex}.call-btn:hover:not(:disabled){border-color:var(--accent);background:var(--accent-bg)}.call-btn:disabled{opacity:.35;cursor:default}.call-btn.is-active{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.call-btn__label{letter-spacing:.4px;text-transform:uppercase;color:var(--text-dim);font-size:.6rem}.call-btn.is-active .call-btn__label{color:var(--accent)}.call-btn--accept{background:color-mix(in srgb, var(--success) 18%, transparent);border-color:var(--success);color:var(--success)}.call-btn--accept .call-btn__label{color:var(--success)}.call-btn--decline{background:rgba(var(--danger-rgb), .15);border-color:var(--danger);color:var(--danger)}.call-btn--decline .call-btn__label{color:var(--danger)}@media (max-width:600px){.call-btn{min-width:56px;height:52px}.call-local-video{width:34%}}.chat-call-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.3rem .4rem;font-size:1rem;transition:color .15s,background .15s}.chat-call-btn:hover:not(:disabled){color:var(--accent);background:var(--accent-bg)}.chat-call-btn:disabled{opacity:.35;cursor:default}.call-start-error{left:50%;bottom:calc(1.25rem + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)));z-index:985;background:var(--bg-2);border:1px solid var(--danger);max-width:min(30rem,100% - 2rem);color:var(--text);box-shadow:0 6px 24px rgba(var(--scrim-rgb), .45);border-radius:8px;align-items:center;gap:.6rem;padding:.6rem .8rem;font-size:.82rem;display:flex;position:fixed;transform:translate(-50%)}.call-start-error__close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:0 .2rem;font-size:.9rem}.call-start-error__close:hover{color:var(--text-h)}.call-share-quality{flex-shrink:0;justify-content:center;gap:.4rem;padding:.6rem 1rem 0;display:flex}.call-quality-btn{background:var(--bg-3);border:1px solid var(--border);color:var(--text-dim);cursor:pointer;border-radius:7px;flex-direction:column;align-items:center;gap:.1rem;padding:.35rem .7rem;font-size:.75rem;transition:border-color .15s,background .15s,color .15s;display:flex}.call-quality-btn:hover{border-color:var(--accent)}.call-quality-btn.is-active{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.call-quality-btn__fps{opacity:.8;font-size:.6rem;font-family:var(--mono)}.atomi-scene{filter:drop-shadow(0 0 32px var(--glow));justify-content:center;align-items:flex-end;gap:clamp(1rem,6vw,3.5rem);display:flex}.atomi-scene__side{flex-direction:column;align-items:center;gap:.5rem;display:flex}.atomi-scene__side--me{opacity:.85;transform:translateY(6px)}.atomi-scene__name{color:var(--text-dim);letter-spacing:.3px;text-overflow:ellipsis;white-space:nowrap;max-width:8rem;font-size:.72rem;overflow:hidden}.call-remote-video.is-hidden{display:none}.call-local-video.is-screen{aspect-ratio:16/9;object-fit:contain;background:var(--bg);border-color:var(--accent);width:32%;max-width:240px;transform:none}.contact-atomi-tag{color:var(--accent);opacity:.85;align-items:center;gap:.15rem;margin-left:.35rem;font-size:.65rem;display:inline-flex}.atomi-nav-btn{background:var(--bg-3);border:1px solid var(--border);cursor:pointer;width:100%;color:var(--text);font-family:var(--sans);border-radius:8px;align-items:center;gap:.5rem;margin-top:.4rem;padding:.45rem .75rem;font-size:.82rem;transition:border-color .15s,background .15s;display:flex}.atomi-nav-btn:hover,.atomi-nav-btn--active{border-color:var(--accent);background:var(--accent-bg);color:var(--text-h)}.atomi-nav-btn__icon{flex-shrink:0;font-size:1rem}.atomi-nav-btn__label{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.atomi-nav-btn__new{color:#fff;letter-spacing:.04em;text-transform:uppercase;background:#6366f1;border-radius:.25rem;flex-shrink:0;padding:.1rem .35rem;font-size:.6rem;font-weight:700}.wallet-widget{background:var(--bg-3);border:1px solid var(--border);cursor:pointer;width:100%;color:var(--text);font-family:var(--sans);border-radius:8px;align-items:center;gap:.5rem;padding:.45rem .75rem;font-size:.82rem;transition:border-color .15s,background .15s;display:flex}.wallet-widget:hover{border-color:var(--accent);background:var(--accent-bg)}.wallet-currency{align-items:center;gap:.2rem;display:flex}.wallet-matter{color:#74d0ff}.wallet-amount{color:var(--text-h);font-weight:700}.wallet-sep{flex:1}.wallet-gift-badge{font-size:1rem;animation:1.4s ease-in-out infinite wallet-pulse}@keyframes wallet-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.25)}}.wallet-modal{flex-direction:column;width:min(780px,96vw);max-height:88vh;display:flex;overflow:hidden}.wallet-content{flex-direction:column;flex:1;min-height:0;display:flex}.wallet-balance-bar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.wallet-pending-gifts-pill{background:var(--accent-bg);border:1px solid var(--accent);color:var(--accent);border-radius:20px;align-items:center;gap:.2rem;padding:.2rem .65rem;font-size:.78rem;animation:1.4s ease-in-out infinite wallet-pulse;display:inline-flex}.wallet-balances{gap:.5rem;margin-left:auto;margin-right:1rem;display:flex}.wallet-balance-chip{background:var(--bg-3);border:1px solid var(--border);border-radius:20px;align-items:center;gap:.3rem;padding:.2rem .65rem;font-size:.82rem;display:flex}.crystal-chip{color:#74d0ff;border-color:#74d0ff4d}.wallet-tabs{border-bottom:1px solid var(--border);flex-shrink:0;display:flex}.wallet-tab{color:var(--text-dim);font-family:var(--sans);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:.65rem .5rem;font-size:.82rem;transition:color .15s,border-color .15s}.wallet-tab:hover{color:var(--text)}.wallet-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.wallet-loading{justify-content:center;align-items:center;padding:3rem 1rem;display:flex}.wallet-body-split{gap:0;padding:0;display:flex;overflow:hidden}.wallet-msg{background:var(--accent-bg);border:1px solid var(--accent);color:var(--text-h);border-radius:6px;margin:0 1rem;padding:.5rem .85rem;font-size:.82rem}.daily-card{flex-direction:column;align-items:center;gap:1.25rem;max-width:420px;margin:0 auto;padding:1.5rem 1rem;display:flex}.daily-streak-display{align-items:center;gap:1rem;display:flex}.daily-streak-icon{font-size:2.8rem}.daily-streak-num{color:var(--text-h);font-size:2.4rem;font-weight:900;line-height:1}.daily-streak-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}.daily-reward-info{text-align:center}.daily-reward-ready{color:var(--success);margin-bottom:.25rem;font-size:.82rem}.daily-reward-amount{color:var(--text-h);font-size:1.4rem;font-weight:700}.daily-reward-wait{color:var(--text-dim);margin-bottom:.25rem;font-size:.82rem}.daily-countdown{color:var(--text-h);font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:700}.daily-claim-btn{width:100%;max-width:260px;padding:.75rem;font-size:.95rem}.daily-streak-tiers{justify-content:center;gap:.5rem;width:100%;display:flex}.streak-tier{background:var(--bg-3);border:1px solid var(--border);color:var(--text-dim);border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:.15rem;padding:.5rem .25rem;font-size:.72rem;transition:border-color .2s;display:flex}.streak-tier.reached{border-color:var(--accent);color:var(--text)}.streak-tier-val{font-size:.78rem;font-weight:700}.streak-tier-day{font-size:.65rem}.msg-streak-row{background:var(--bg-3);border:1px solid var(--border);border-radius:8px;align-items:center;gap:.6rem;width:100%;padding:.5rem .75rem;font-size:.85rem;display:flex}.msg-streak-icon{font-size:1rem}.msg-streak-info{flex:1;align-items:baseline;gap:.35rem;display:flex}.msg-streak-num{color:var(--text);font-size:1rem;font-weight:700}.msg-streak-label{color:var(--text-dim);font-size:.72rem}.msg-streak-bonus{color:var(--accent);font-size:.8rem;font-weight:600}.pending-gifts-section{width:100%}.section-label{text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);margin-bottom:.5rem;font-size:.75rem}.pending-gift-row{background:var(--bg-3);border:1px solid var(--border);border-radius:8px;align-items:center;gap:.75rem;margin-bottom:.5rem;padding:.6rem .75rem;display:flex}.gift-icon{font-size:1.4rem}.gift-info{flex:1;min-width:0}.gift-qty{color:var(--text-h);font-size:.88rem;font-weight:700}.gift-msg{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-style:italic;overflow:hidden}.gift-claim-btn{white-space:nowrap;flex-shrink:0;width:auto!important;margin-top:0!important;padding:.35rem .85rem!important;font-size:.8rem!important}.shop-cats{border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:148px;padding:.75rem 0;display:flex;overflow-y:auto}.shop-cat-btn{color:var(--text-dim);font-family:var(--sans);cursor:pointer;text-align:left;background:0 0;border:none;border-left:3px solid #0000;justify-content:space-between;align-items:center;padding:.6rem 1rem;font-size:.8rem;transition:background .1s,color .1s;display:flex}.shop-cat-btn:hover{background:var(--bg-3);color:var(--text)}.shop-cat-btn.active{color:var(--accent);border-left-color:var(--accent);background:var(--accent-bg)}.shop-cat-count{background:var(--bg-2);color:var(--text-dim);border-radius:10px;padding:0 .35rem;font-size:.68rem}.shop-items{flex:1;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));align-content:start;gap:.85rem;padding:1rem;display:grid;overflow-y:auto}.shop-empty{color:var(--text-dim);text-align:center;grid-column:1/-1;padding:2rem 0;font-size:.88rem}.shop-item{background:var(--bg-3);border:1px solid var(--border);text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:.35rem;padding:.9rem .75rem;transition:border-color .15s,transform .1s;display:flex}.shop-item:hover{border-color:rgba(var(--accent-rgb), .4);transform:translateY(-2px)}.shop-item-icon{font-size:2rem}.shop-item-rarity{text-transform:uppercase;letter-spacing:.07em;font-size:.65rem;font-weight:700}.shop-item-name{color:var(--text-h);font-size:.85rem;font-weight:600}.shop-item-desc{color:var(--text-dim);font-size:.72rem;line-height:1.35}.shop-earned-label{color:var(--text-dim);margin-top:auto;font-size:.72rem;font-style:italic}.shop-currency-toggle{gap:.35rem;margin-top:.25rem;display:flex}.toggle-btn{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:20px;padding:.2rem .55rem;font-size:.8rem}.toggle-btn.active{background:var(--accent-bg);border-color:var(--accent);color:var(--text-h)}.shop-item-price{color:var(--text-h);align-items:center;gap:.25rem;font-size:.82rem;font-weight:600;display:flex}.shop-qty-input{background:var(--bg-2);border:1px solid var(--border);width:42px;color:var(--text-h);text-align:center;border-radius:4px;padding:.1rem .35rem;font-size:.82rem}.shop-buy-btn{width:100%;margin-top:.25rem;padding:.35rem .85rem;font-size:.8rem}.inv-empty{color:var(--text-dim);text-align:center;padding:2.5rem 0}.inv-grid{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:.85rem;display:grid}.inv-card{background:var(--bg-3);border:1px solid var(--border);text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:.3rem;padding:.85rem .7rem;transition:border-color .15s;display:flex;position:relative}.inv-card.inv-equipped{border-color:var(--success)}.inv-equipped-label{text-transform:uppercase;letter-spacing:.06em;color:var(--success);font-size:.6rem;font-weight:700;position:absolute;top:.4rem;right:.4rem}.inv-icon{font-size:1.8rem}.inv-rarity{text-transform:uppercase;letter-spacing:.06em;font-size:.62rem;font-weight:700}.inv-name{color:var(--text-h);font-size:.82rem;font-weight:600}.inv-qty{color:var(--text-dim);font-size:.72rem}.inv-actions{flex-wrap:wrap;justify-content:center;gap:.35rem;margin-top:.35rem;display:flex}.inv-btn{background:var(--bg-2);border:1px solid var(--border);color:var(--text);cursor:pointer;font-size:.72rem;font-family:var(--sans);border-radius:6px;padding:.3rem .65rem;transition:background .1s,border-color .1s}.inv-btn:hover{background:var(--accent-bg);border-color:var(--accent)}.inv-btn-unequip:hover{border-color:var(--danger);color:var(--danger)}.inv-btn:disabled{opacity:.45;cursor:not-allowed}.milestones-list{flex-direction:column;gap:.65rem;display:flex}.milestone-row{background:var(--bg-3);border:1px solid var(--border);border-radius:10px;align-items:center;gap:.85rem;padding:.85rem 1rem;transition:border-color .15s;display:flex}.milestone-row.met{border-color:rgba(var(--accent-rgb), .4)}.milestone-row.claimed{opacity:.55}.milestone-icon{flex-shrink:0;font-size:1.6rem}.milestone-info{flex:1;min-width:0}.milestone-name{color:var(--text-h);font-size:.88rem;font-weight:600}.milestone-desc{color:var(--text-dim);margin-bottom:.4rem;font-size:.75rem}.milestone-bar{background:var(--bg-2);border-radius:2px;height:4px;margin-bottom:.25rem;overflow:hidden}.milestone-bar-fill{background:var(--accent);border-radius:2px;height:100%;transition:width .4s}.milestone-progress-label{color:var(--text-dim);font-size:.68rem}.milestone-reward{color:var(--text-dim);flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.15rem;min-width:60px;font-size:.78rem;display:flex}.milestone-done{color:var(--success);text-align:center;flex-shrink:0;width:28px;font-size:1.1rem}.milestone-claim-btn{white-space:nowrap;flex-shrink:0!important;width:auto!important;margin-top:0!important;padding:.3rem .75rem!important;font-size:.76rem!important}.modal-backdrop{background:rgba(var(--scrim-rgb), .72);z-index:8000;position:fixed;top:0;bottom:0;left:0;right:0}.modal{background:var(--bg-2);border:1px solid var(--border);z-index:8001;box-shadow:0 8px 40px rgba(var(--scrim-rgb), .65), 0 0 0 1px var(--border-dim);border-radius:12px;flex-direction:column;width:min(420px,94vw);max-height:88vh;padding:0;display:flex;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.modal-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:.9rem 1.25rem .75rem;display:flex}.modal-title{color:var(--text-h);margin:0;font-size:1rem;font-weight:700}.modal-close{cursor:pointer;color:var(--text-dim);background:0 0;border:none;border-radius:4px;padding:.2rem .4rem;font-size:1rem;line-height:1;transition:background .15s,color .15s}.modal-close:hover{background:var(--bg-3);color:var(--text)}.gift-modal{width:min(460px,96vw)}.gift-item-display{background:var(--bg-3);border-bottom:1px solid var(--border);color:var(--text-dim);padding:.6rem 1.25rem;font-size:.88rem}.gift-section-label{text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);padding:.75rem 1.25rem .3rem;font-size:.72rem}.gift-contacts{flex-wrap:wrap;gap:.45rem;max-height:160px;padding:0 1.25rem;display:flex;overflow-y:auto}.gift-no-contacts{color:var(--text-dim);padding:.5rem 0;font-size:.82rem}.gift-contact-btn{background:var(--bg-3);border:1px solid var(--border);color:var(--text);font-family:var(--sans);cursor:pointer;border-radius:20px;align-items:center;gap:.45rem;padding:.35rem .65rem;font-size:.82rem;transition:border-color .15s,background .15s;display:flex}.gift-contact-btn:hover{border-color:var(--accent);background:var(--accent-bg)}.gift-contact-btn.selected{border-color:var(--accent);background:var(--accent-dim);color:var(--text-h)}.gift-qty-row{align-items:center;gap:.75rem;padding:0 1.25rem;display:flex}.qty-btn{border:1px solid var(--border);background:var(--bg-3);width:30px;height:30px;color:var(--text-h);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:flex}.qty-btn:disabled{opacity:.35;cursor:not-allowed}.qty-display{color:var(--text-h);text-align:center;min-width:28px;font-size:1.1rem;font-weight:700}.gift-note{background:var(--bg-3);border:1px solid var(--border);width:calc(100% - 2.5rem);color:var(--text);font-family:var(--sans);resize:vertical;border-radius:6px;min-height:60px;margin:0 1.25rem;padding:.55rem .75rem;font-size:.85rem}.gift-err{color:var(--danger);padding:0 1.25rem;font-size:.8rem}.gift-actions{justify-content:flex-end;gap:.65rem;padding:1rem 1.25rem 1.25rem;display:flex}.chat-effect-overlay{pointer-events:none;z-index:90;contain:strict;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.chat-effect-burst{position:absolute;top:0;bottom:0;left:0;right:0}.effect-particle{font-size:var(--size,1rem);will-change:transform, opacity;-webkit-user-select:none;user-select:none;opacity:0;line-height:1;position:absolute}.fx--fall .effect-particle{animation:fx-fall var(--dur,2.8s) linear var(--delay,0s) both}@keyframes fx-fall{0%{opacity:0;transform:translate(0,0)rotate(0)}6%{opacity:var(--peak,1)}88%{opacity:var(--peak,1)}to{transform:translate3d(var(--dx,0px), var(--dy,0px), 0) rotate(var(--rot,0deg));opacity:0}}.fx--rise .effect-particle{animation:fx-rise var(--dur,2.8s) ease-out var(--delay,0s) both}@keyframes fx-rise{0%{opacity:0;transform:translate(0,0)scale(.45)rotate(0)}12%{opacity:var(--peak,1)}72%{opacity:var(--peak,1)}to{transform:translate3d(var(--dx,0px), var(--dy,0px), 0) scale(1.15) rotate(var(--rot,0deg));opacity:0}}.fx--scatter .effect-particle{animation:fx-twinkle var(--dur,2.8s) ease-in-out var(--delay,0s) both}@keyframes fx-twinkle{0%{opacity:0;transform:translate(0,0)scale(.2)rotate(0)}35%{transform:translate3d(calc(var(--dx,0px) * .45), calc(var(--dy,0px) * .45), 0) scale(1.15) rotate(calc(var(--rot,0deg) * .4));opacity:var(--peak,1)}to{transform:translate3d(var(--dx,0px), var(--dy,0px), 0) scale(.3) rotate(var(--rot,0deg));opacity:0}}.fx--burst .effect-particle{animation:fx-burst var(--dur,2.8s) cubic-bezier(.12, .78, .28, 1) var(--delay,0s) both}@keyframes fx-burst{0%{opacity:0;transform:translate(0,0)scale(.25)}10%{opacity:var(--peak,1)}72%{opacity:var(--peak,1)}to{transform:translate3d(var(--dx,0px), var(--dy,0px), 0) scale(1.05) rotate(var(--rot,0deg));opacity:0}}.fx--streak .effect-particle{animation:fx-streak var(--dur,2.8s) cubic-bezier(.35, 0, .65, 1) var(--delay,0s) both}@keyframes fx-streak{0%{transform:translate3d(0, 0, 0) rotate(var(--rot,0deg)) scale(.55);opacity:0}18%{opacity:var(--peak,1)}78%{opacity:var(--peak,1)}to{transform:translate3d(var(--dx,0px), var(--dy,0px), 0) rotate(var(--rot,0deg)) scale(1);opacity:0}}.chat-effect-rain .effect-particle{color:var(--accent);font-family:var(--mono);font-size:calc(var(--size,1rem) * .65);text-shadow:0 0 8px color-mix(in srgb, var(--accent) 55%, transparent);animation-name:fx-fall-straight;animation-timing-function:linear}@keyframes fx-fall-straight{0%{opacity:0;transform:translate(0,0)}8%{opacity:var(--peak,1)}90%{opacity:var(--peak,1)}to{transform:translate3d(calc(var(--dx,0px) * .2), var(--dy,0px), 0);opacity:0}}.chat-effect-snow .effect-particle{color:#eaf2ff;text-shadow:0 0 6px #c8e1ff80;animation-timing-function:ease-in-out}.chat-effect-confetti .effect-particle{animation-timing-function:cubic-bezier(.35,.05,.6,1)}.chat-effect-bubbles .effect-particle{opacity:0;animation-name:fx-bubble}@keyframes fx-bubble{0%{opacity:0;transform:translate(0,0)scale(.35)}12%{opacity:var(--peak,1)}40%{transform:translate3d(calc(var(--dx,0px) * -.6), calc(var(--dy,0px) * .4), 0) scale(.9)}70%{transform:translate3d(calc(var(--dx,0px) * .8), calc(var(--dy,0px) * .72), 0) scale(1.05);opacity:var(--peak,1)}to{transform:translate3d(var(--dx,0px), var(--dy,0px), 0) scale(1.15);opacity:0}}.chat-effect-fireworks .effect-particle,.chat-effect-lightning .effect-particle{filter:drop-shadow(0 0 6px #fff0be8c)}.chat-effect-lightning:before{content:"";background:rgba(var(--tint-rgb), .8);pointer-events:none;animation:.55s ease-out forwards fx-lightning-flash;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes fx-lightning-flash{0%{opacity:0}6%{opacity:1}16%{opacity:.08}26%{opacity:.85}45%{opacity:.04}to{opacity:0}}.chat-effect-shooting-stars .effect-particle{filter:drop-shadow(-14px 6px 10px #b4d2ff8c)}.chat-effect-flower-bloom .effect-particle{animation-name:fx-bloom}@keyframes fx-bloom{0%{opacity:0;transform:translate(0,0)scale(0)rotate(-40deg)}30%{opacity:var(--peak,1);transform:translate(0,0)scale(1.2)rotate(0)}60%{opacity:var(--peak,1);transform:translate(0,0)scale(1)rotate(6deg)}to{transform:translate3d(var(--dx,0px), calc(var(--dy,0px) * -2.2), 0) scale(.85) rotate(var(--rot,0deg));opacity:0}}.chat-effect-glitch:after{content:"";background:repeating-linear-gradient(0deg, transparent, transparent 3px, rgba(var(--accent-rgb), .09) 3px, rgba(var(--accent-rgb), .09) 4px);animation:fx-glitch var(--dur,.9s) steps(1) forwards;pointer-events:none;position:absolute;top:-4%;bottom:-4%;left:-4%;right:-4%}@keyframes fx-glitch{0%{opacity:1;transform:skew(0)}15%{transform:skew(-4deg)translate(-8px)}30%{transform:skew(3deg)translate(6px)}45%{opacity:.7;transform:skew(-1deg)}60%{transform:skew(2deg)translate(-4px)}80%{opacity:.4}to{opacity:0;transform:skew(0)}}.chat-effect-aurora-wave:before,.chat-effect-aurora-wave:after{content:"";pointer-events:none;filter:blur(34px);mix-blend-mode:screen;position:absolute;top:-25%;bottom:-25%;left:-25%;right:-25%}.chat-effect-aurora-wave:before{animation:fx-aurora-a var(--dur,3.6s) ease-in-out both;background:linear-gradient(108deg,#0000 18%,#40f5be42 34%,#6ea0ff4d 50%,#cd78ff3d 66%,#0000 82%)}.chat-effect-aurora-wave:after{animation:fx-aurora-b var(--dur,3.6s) ease-in-out both;background:linear-gradient(72deg,#0000 22%,#78ffe12e 42%,#aa82ff38 60%,#0000 78%)}@keyframes fx-aurora-a{0%{opacity:0;transform:translate(-45%,8%)skew(-10deg)}25%{opacity:1}75%{opacity:1}to{opacity:0;transform:translate(45%,-8%)skew(10deg)}}@keyframes fx-aurora-b{0%{opacity:0;transform:translate(40%,-6%)skew(8deg)}30%{opacity:1}70%{opacity:1}to{opacity:0;transform:translate(-40%,6%)skew(-8deg)}}.chat-effect-rainbow:before{content:"";pointer-events:none;filter:blur(26px);mix-blend-mode:screen;animation:fx-rainbow var(--dur,2.6s) ease-in-out both;background:linear-gradient(100deg,#0000 20%,#ff3c3c4d 32%,#ffaa284d 42%,#fff03c4d 52%,#46dc784d 62%,#46a0ff4d 72%,#be5aff4d 82%,#0000 92%);position:absolute;top:-30%;bottom:-30%;left:-30%;right:-30%}@keyframes fx-rainbow{0%{opacity:0;transform:translate(-55%)rotate(-4deg)}22%{opacity:1}78%{opacity:1}to{opacity:0;transform:translate(55%)rotate(4deg)}}@media (prefers-reduced-motion:reduce){.effect-particle{animation:fx-quiet-fade .9s ease-out var(--delay,0s) both!important}@keyframes fx-quiet-fade{0%,to{opacity:0;transform:none}40%{opacity:var(--peak,1);transform:none}}.chat-effect-glitch:after,.chat-effect-lightning:before,.chat-effect-aurora-wave:before,.chat-effect-aurora-wave:after,.chat-effect-rainbow:before{animation-duration:.9s!important;animation-timing-function:ease-out!important;transform:none!important}}.effect-picker{background:var(--bg-3);border:1px solid var(--border);z-index:80;box-shadow:0 -4px 20px rgba(var(--scrim-rgb), .5);border-radius:10px;flex-wrap:wrap;gap:.4rem;max-width:260px;padding:.6rem;display:flex;position:absolute;bottom:3.8rem;right:.5rem}.effect-picker-empty{color:var(--text-dim);white-space:nowrap;padding:.25rem;font-size:.78rem}.effect-picker-btn{background:var(--bg-2);border:1px solid var(--border);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:.15rem;padding:.45rem .55rem;font-size:1.35rem;transition:border-color .12s,background .12s;display:flex}.effect-picker-btn:hover{border-color:var(--accent);background:var(--accent-bg)}.effect-qty{color:var(--text-dim);font-size:.6rem;font-family:var(--sans)}.btn-ghost{border:1px solid var(--border);color:var(--text-dim);font-family:var(--sans);cursor:pointer;background:0 0;border-radius:6px;padding:.5rem 1.1rem;font-size:.88rem;transition:border-color .12s,color .12s}.btn-ghost:hover{border-color:var(--text-dim);color:var(--text)}.chat-view{position:relative}.item-picker-backdrop{z-index:149;background:rgba(var(--scrim-rgb), .82);position:fixed;top:0;bottom:0;left:0;right:0}.item-picker{background:var(--bg-3);border:1px solid var(--border);z-index:150;box-shadow:0 8px 40px rgba(var(--scrim-rgb), .6);border-radius:12px;flex-direction:column;gap:.4rem;width:min(340px,92vw);max-height:80vh;padding:.75rem .85rem;display:flex;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.item-picker-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:.15rem;padding-bottom:.4rem;font-size:.82rem;font-weight:700;display:flex}.item-picker-close-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:.85rem;line-height:1}.item-picker-close-btn:hover{color:var(--text);background:var(--bg-2)}.item-picker-section-label{text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);padding-bottom:.2rem;font-size:.68rem;font-weight:600}.item-picker-divider{background:var(--border);height:1px;margin:.25rem 0}.item-picker-empty{color:var(--text-dim);padding:.15rem 0;font-size:.78rem}.item-picker-row{flex-wrap:wrap;gap:.35rem;display:flex}.item-picker-btn{background:var(--bg-2);border:1px solid var(--border);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:.12rem;min-width:48px;padding:.4rem .5rem;font-size:1.3rem;transition:border-color .12s,background .12s;display:flex}.item-picker-btn:hover{border-color:var(--accent);background:var(--accent-bg)}.item-picker-btn--gift:hover{background:#ff98001f;border-color:#ff9800}.item-picker-qty{color:var(--text-dim);font-size:.58rem;font-family:var(--sans)}.item-picker-note{background:var(--bg-2);border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--sans);box-sizing:border-box;border-radius:6px;margin-top:.2rem;padding:.4rem .6rem;font-size:.8rem}.item-picker-note::placeholder{color:var(--text-dim)}.item-picker-note:focus{border-color:var(--accent);outline:none}.bubble-gift{background:0 0!important;padding:0!important}.gift-msg-card{background:linear-gradient(135deg, var(--bg-3) 0%, #ff980014 100%);border:1px solid #ff98004d;border-radius:10px;align-items:flex-start;gap:.75rem;min-width:200px;max-width:280px;padding:.75rem 1rem;display:flex}.gift-msg-card--incoming{background:linear-gradient(135deg, var(--bg-3) 0%, #ff980026 100%);border-color:#ff980099}.gift-msg-icon{flex-shrink:0;margin-top:.1rem;font-size:2rem;line-height:1}.gift-msg-body{flex-direction:column;gap:.2rem;min-width:0;display:flex}.gift-msg-label{text-transform:uppercase;letter-spacing:.06em;color:#ff9800;font-size:.72rem;font-weight:700}.gift-msg-name{color:var(--text-h);font-size:.9rem;font-weight:600}.gift-msg-note{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;font-style:italic;overflow:hidden}.gift-msg-status{color:var(--text-dim);margin-top:.15rem;font-size:.72rem}.gift-msg-actions{flex-wrap:wrap;gap:.4rem;margin-top:.35rem;display:flex}.gift-msg-btn{white-space:nowrap;cursor:pointer;font-family:var(--sans);border:1px solid #0000;border-radius:6px;flex-shrink:0;transition:background .12s,border-color .12s;width:auto!important;margin-top:0!important;padding:.3rem .75rem!important;font-size:.78rem!important}.gift-msg-btn--decline{background:var(--bg-2);border-color:var(--border);color:var(--text-dim)}.gift-msg-btn--decline:hover{border-color:var(--danger);color:var(--danger)}.avatar-frame--frame_plain{outline-offset:1px;border-radius:3px;outline:2px solid #c8c8c88c}.avatar-frame--frame_pixel{outline:3px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 1px rgba(var(--accent-rgb), .35);border-radius:0}.avatar-frame--frame_neon{border-radius:4px;animation:2s ease-in-out infinite neon-pulse}@keyframes neon-pulse{0%,to{box-shadow:0 0 4px 2px rgba(var(--accent-rgb), .7), 0 0 8px 3px rgba(var(--accent-rgb), .35)}50%{box-shadow:0 0 8px 4px rgba(var(--accent-rgb), .9), 0 0 16px 6px rgba(var(--accent-rgb), .5)}}.avatar-frame--frame_circuit{outline-offset:2px;border-radius:2px;outline:2px solid #00e5ff;box-shadow:0 0 6px 2px #00e5ff80,0 0 12px 4px #00e5ff40}.avatar-frame--frame_rose_gold{outline-offset:2px;border-radius:6px;outline:2px solid #c9956c;box-shadow:0 0 6px 2px #c9956c80,0 0 12px 4px #c9956c40}.avatar-frame--frame_holographic{border-radius:4px;animation:3s linear infinite holo-shift}@keyframes holo-shift{0%{outline-offset:2px;outline:2px solid #ff0080cc;box-shadow:0 0 6px 3px #ff008099}25%{outline-offset:2px;outline:2px solid #00ffc8cc;box-shadow:0 0 6px 3px #00ffc899}50%{outline-offset:2px;outline:2px solid #0080ffcc;box-shadow:0 0 6px 3px #0080ff99}75%{outline-offset:2px;outline:2px solid #ffc800cc;box-shadow:0 0 6px 3px #ffc80099}to{outline-offset:2px;outline:2px solid #ff0080cc;box-shadow:0 0 6px 3px #ff008099}}.avatar-frame--frame_starfield{border-radius:4px;animation:2.5s ease-in-out infinite starfield-glow}@keyframes starfield-glow{0%,to{outline-offset:2px;outline:2px solid #b4a0ffb3;box-shadow:0 0 4px 2px #b4a0ff80,0 0 10px 4px #503ca04d}50%{outline-offset:2px;outline:2px solid #dcd2ffe6;box-shadow:0 0 8px 4px #dcd2ffb3,0 0 16px 6px #7864c866}}.avatar-frame--frame_flames{border-radius:4px;animation:1.2s ease-in-out infinite flames-flicker}@keyframes flames-flicker{0%{outline-offset:2px;outline:2px solid #ff6400e6;box-shadow:0 0 5px 3px #ff6400b3,0 0 12px 5px #ff320066}33%{outline-offset:2px;outline:2px solid #ffc800e6;box-shadow:0 0 7px 4px #ffc800b3,0 0 14px 6px #ff640066}66%{outline-offset:2px;outline:2px solid #ff3200e6;box-shadow:0 0 5px 3px #ff3200b3,0 0 10px 5px #c8000066}to{outline-offset:2px;outline:2px solid #ff6400e6;box-shadow:0 0 5px 3px #ff6400b3,0 0 12px 5px #ff320066}}.avatar-frame--frame_vines{outline-offset:2px;border-radius:6px;outline:2px solid #4ade80;box-shadow:0 0 5px 2px #4ade8066,0 0 10px 4px #16653440}.avatar-frame--frame_glitch_anim{border-radius:2px;animation:1.8s step-end infinite glitch-frame}@keyframes glitch-frame{0%,88%{outline-offset:2px;outline:2px solid #ff0050e6;box-shadow:0 0 0 2px #ff0050cc}90%{outline-offset:2px;outline:2px solid #00ffc8e6;box-shadow:-2px 0 0 2px #00ffc8cc}93%{outline-offset:2px;outline:2px solid #0064ffe6;box-shadow:2px 0 0 2px #0064ffcc}96%{outline-offset:2px;outline:2px solid #ffff00e6;box-shadow:0 0 0 2px #ff0c}to{outline-offset:2px;outline:2px solid #ff0050e6;box-shadow:0 0 0 2px #ff0050cc}}.avatar-frame--frame_aurora{border-radius:6px;animation:4s ease-in-out infinite aurora-wave}@keyframes aurora-wave{0%{outline-offset:2px;outline:2px solid #00e6c8cc;box-shadow:0 0 8px 3px #00e6c899,0 0 16px 6px #6400ff40}33%{outline-offset:2px;outline:2px solid #6400ffcc;box-shadow:0 0 8px 3px #6400ff99,0 0 16px 6px #00c8ff40}66%{outline-offset:2px;outline:2px solid #00c8ffcc;box-shadow:0 0 8px 3px #00c8ff99,0 0 16px 6px #00e69640}to{outline-offset:2px;outline:2px solid #00e6c8cc;box-shadow:0 0 8px 3px #00e6c899,0 0 16px 6px #6400ff40}}.avatar-frame--frame_cosmos{border-radius:50%;animation:5s linear infinite cosmos-orbit}@keyframes cosmos-orbit{0%{outline-offset:2px;outline:2px solid #ffc850b3;box-shadow:0 -4px 8px 2px #ffc85099,0 0 12px 4px #643cc859}25%{outline-offset:2px;outline:2px solid #b464ffb3;box-shadow:4px 0 8px 2px #b464ff99,0 0 12px 4px #ffc85040}50%{outline-offset:2px;outline:2px solid #ffc850b3;box-shadow:0 4px 8px 2px #ffc85099,0 0 12px 4px #643cc859}75%{outline-offset:2px;outline:2px solid #b464ffb3;box-shadow:-4px 0 8px 2px #b464ff99,0 0 12px 4px #ffc85040}to{outline-offset:2px;outline:2px solid #ffc850b3;box-shadow:0 -4px 8px 2px #ffc85099,0 0 12px 4px #643cc859}}.avatar-frame--frame_void_pulse{border-radius:4px;animation:2s ease-in-out infinite void-pulse}@keyframes void-pulse{0%,to{outline-offset:2px;outline:2px solid #7800c8b3;box-shadow:0 0 4px 2px #500078cc,0 0 10px 4px #28005066}50%{outline-offset:3px;outline:2px solid #b400ffe6;box-shadow:0 0 10px 5px #8c00dccc,0 0 20px 8px #50008c66}}.avatar-frame--frame_rainbow{border-radius:4px;animation:2s linear infinite rainbow-spin}@keyframes rainbow-spin{0%{outline-offset:2px;outline:2px solid #ff1a1a;box-shadow:0 0 6px 3px #ff1a1a80}14%{outline-offset:2px;outline:2px solid #ff8c1a;box-shadow:0 0 6px 3px #ff8c1a80}28%{outline-offset:2px;outline:2px solid #ff0;box-shadow:0 0 6px 3px #ffff0080}42%{outline-offset:2px;outline:2px solid #0c0;box-shadow:0 0 6px 3px #00cc0080}57%{outline-offset:2px;outline:2px solid #0af;box-shadow:0 0 6px 3px #00aaff80}71%{outline-offset:2px;outline:2px solid #73f;box-shadow:0 0 6px 3px #7733ff80}85%{outline-offset:2px;outline:2px solid #ff1ad9;box-shadow:0 0 6px 3px #ff1ad980}to{outline-offset:2px;outline:2px solid #ff1a1a;box-shadow:0 0 6px 3px #ff1a1a80}}.frame-shop-preview{background:var(--bg-3);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex;position:relative}.frame-shop-preview-avatar{-webkit-user-select:none;user-select:none;font-size:1.6rem;line-height:1}.frame-shop-preview.frame_plain{outline-offset:1px;border-radius:3px;outline:2px solid #c8c8c88c}.frame-shop-preview.frame_pixel{outline:3px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 1px rgba(var(--accent-rgb), .35);border-radius:0}.frame-shop-preview.frame_neon{border-radius:4px;animation:2s ease-in-out infinite neon-pulse}.frame-shop-preview.frame_circuit{outline-offset:2px;border-radius:2px;outline:2px solid #00e5ff;box-shadow:0 0 6px 2px #00e5ff80,0 0 12px 4px #00e5ff40}.frame-shop-preview.frame_rose_gold{outline-offset:2px;border-radius:6px;outline:2px solid #c9956c;box-shadow:0 0 6px 2px #c9956c80}.frame-shop-preview.frame_holographic{border-radius:4px;animation:3s linear infinite holo-shift}.frame-shop-preview.frame_starfield{border-radius:4px;animation:2.5s ease-in-out infinite starfield-glow}.frame-shop-preview.frame_flames{border-radius:4px;animation:1.2s ease-in-out infinite flames-flicker}.frame-shop-preview.frame_vines{outline-offset:2px;border-radius:6px;outline:2px solid #4ade80;box-shadow:0 0 5px 2px #4ade8066}.frame-shop-preview.frame_glitch_anim{border-radius:2px;animation:1.8s step-end infinite glitch-frame}.frame-shop-preview.frame_aurora{border-radius:6px;animation:4s ease-in-out infinite aurora-wave}.frame-shop-preview.frame_cosmos{border-radius:50%;animation:5s linear infinite cosmos-orbit}.frame-shop-preview.frame_void_pulse{border-radius:4px;animation:2s ease-in-out infinite void-pulse}.frame-shop-preview.frame_rainbow{border-radius:4px;animation:2s linear infinite rainbow-spin}.gift-msg-status--claimed{color:var(--success)!important}.gift-msg-status--declined{text-decoration:line-through;color:var(--text-dim)!important}.admin-panel{flex-direction:column;gap:1.25rem;padding:.75rem 0;display:flex}.admin-msg{border-radius:6px;padding:.45rem .85rem;font-size:.82rem}.admin-msg--ok{color:var(--success);background:#4caf501f;border:1px solid #4caf5059}.admin-msg--err{background:rgba(var(--accent-rgb), .1);border:1px solid rgba(var(--accent-rgb), .35);color:var(--danger)}.admin-section{background:var(--bg-3);border:1px solid var(--border);border-radius:10px;padding:.85rem 1rem}.admin-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin-bottom:.65rem;font-size:.7rem;font-weight:700}.admin-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.admin-grid{flex-direction:column;gap:.5rem;display:flex}.admin-input{background:var(--bg-2);border:1px solid var(--border);min-width:120px;color:var(--text);font-family:var(--sans);border-radius:6px;flex:1;padding:.35rem .65rem;font-size:.82rem}.admin-input--sm{flex:0 0 80px;min-width:60px}.admin-input:focus{border-color:var(--accent);outline:none}.admin-select{background:var(--bg-2);border:1px solid var(--border);color:var(--text);font-family:var(--sans);cursor:pointer;border-radius:6px;padding:.35rem .5rem;font-size:.82rem}.admin-btn{background:var(--accent-bg);border:1px solid var(--accent);color:var(--accent);font-family:var(--sans);cursor:pointer;white-space:nowrap;border-radius:6px;padding:.35rem .85rem;font-size:.8rem;transition:background .12s}.admin-btn:hover{background:var(--accent);color:var(--text-inverse)}.admin-btn--danger{border-color:var(--danger);color:var(--danger);background:rgba(var(--accent-rgb), .08)}.admin-btn--danger:hover{background:var(--danger);color:var(--text-inverse)}.admin-check{color:var(--text-dim);cursor:pointer;align-items:center;gap:.4rem;font-size:.82rem;display:flex}.admin-users-list{flex-direction:column;gap:.35rem;max-height:220px;display:flex;overflow-y:auto}.admin-user-row{background:var(--bg-2);border-radius:6px;align-items:center;gap:.6rem;padding:.3rem .4rem;display:flex}.admin-user-name{color:var(--text-h);font-size:.85rem;font-weight:600}.admin-user-tag{color:var(--text-dim);flex:1;font-size:.75rem}.admin-badge{text-transform:uppercase;letter-spacing:.07em;background:var(--accent-bg);border:1px solid var(--accent);color:var(--accent);border-radius:10px;padding:.1rem .45rem;font-size:.6rem;font-weight:700}.admin-panel{flex-direction:column;height:100%;display:flex;overflow:hidden}.admin-panel__header{flex-shrink:0;align-items:center;gap:1rem;padding:.75rem 1rem 0;display:flex}.admin-panel__title{color:var(--text-h);margin:0;font-size:1rem;font-weight:700}.admin-panel__msg{color:var(--success);background:#4ade801a;border-radius:6px;flex:1;padding:.2rem .5rem;font-size:.8rem}.admin-panel__tabs{border-bottom:1px solid var(--border);flex-shrink:0;gap:.25rem;padding:.5rem 1rem;display:flex}.admin-panel__body{flex:1;padding:.75rem 1rem;overflow-y:auto}.admin-tab{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:.3rem .85rem;font-size:.8rem;transition:background .12s,color .12s}.admin-tab:hover{background:var(--bg-3);color:var(--text)}.admin-tab.active{background:var(--accent-bg);border-color:var(--accent);color:var(--accent);font-weight:600}.admin-section__toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.admin-form{background:var(--bg-3);border:1px solid var(--border);border-radius:10px;margin-bottom:1rem;padding:1rem}.admin-form__title{text-transform:uppercase;letter-spacing:.07em;color:var(--accent);margin:0 0 .75rem;font-size:.78rem;font-weight:700}.admin-form__hint{color:var(--text-dim);margin:-.35rem 0 .85rem;font-size:.8rem;line-height:1.5}.admin-form__hint code{background:var(--bg-2);border:1px solid var(--border);color:var(--text);border-radius:4px;padding:.05rem .3rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.admin-form__grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.6rem;display:grid}.admin-form__grid label{color:var(--text-dim);flex-direction:column;gap:.25rem;font-size:.78rem;display:flex}.admin-form__grid label input,.admin-form__grid label select,.admin-form__grid label textarea{background:var(--bg-2);border:1px solid var(--border);color:var(--text);font-family:var(--sans);border-radius:6px;padding:.3rem .55rem;font-size:.82rem}.admin-form__grid label input:focus,.admin-form__grid label select:focus,.admin-form__grid label textarea:focus{border-color:var(--accent);outline:none}.admin-form__wide{grid-column:1/-1}.admin-form__checkbox{color:var(--text-dim);cursor:pointer;align-items:center;gap:.4rem;flex-direction:row!important;display:flex!important}.admin-form__checkboxes{flex-wrap:wrap;grid-column:1/-1;gap:1rem;display:flex}.admin-form__actions{gap:.5rem;margin-top:.75rem;display:flex}.admin-btn--primary{background:var(--accent);color:var(--text-inverse);border-color:var(--accent)}.admin-btn--primary:hover{background:color-mix(in srgb, var(--accent) 80%, white)}.admin-btn--sm{padding:.2rem .55rem;font-size:.75rem}.admin-btn--xs{padding:.1rem .4rem;font-size:.7rem}.admin-table{border-collapse:collapse;width:100%;font-size:.8rem}.admin-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);border-bottom:1px solid var(--border);padding:.35rem .5rem;font-size:.7rem}.admin-table td{border-bottom:1px solid rgba(var(--tint-rgb), .04);vertical-align:middle;padding:.35rem .5rem}.admin-table tr:hover td{background:var(--bg-3)}.admin-table__row--inactive td{opacity:.45}.admin-table__actions{white-space:nowrap;gap:.3rem;display:flex}.admin-table__sprites{text-align:center;color:var(--text-dim)}.admin-dim-tabs{gap:.25rem;display:flex}.admin-quiz-list{flex-direction:column;gap:.4rem;display:flex}.admin-quiz-q{border:1px solid var(--border);border-radius:8px;overflow:hidden}.admin-quiz-q--inactive{opacity:.5}.admin-quiz-q__header{background:var(--bg-3);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.75rem;padding:.55rem .75rem;display:flex}.admin-quiz-q__header:hover{background:var(--bg-2)}.admin-quiz-q__num{color:var(--text-dim);min-width:2rem;font-size:.7rem}.admin-quiz-q__text{color:var(--text-h);flex:1;font-size:.83rem}.admin-quiz-q__ans-count{color:var(--text-dim);background:var(--bg-2);border-radius:4px;padding:.1rem .4rem;font-size:.72rem}.admin-quiz-q__body{background:var(--bg);border-top:1px solid var(--border);padding:.6rem .75rem}.admin-quiz-q__actions{gap:.35rem;margin-bottom:.5rem;display:flex}.admin-ans-list{flex-direction:column;gap:.3rem;display:flex}.admin-ans-row{background:var(--bg-3);border-radius:5px;align-items:center;gap:.5rem;padding:.3rem .4rem;font-size:.8rem;display:flex}.admin-ans-dir{font-family:var(--mono);color:var(--accent);min-width:1.8rem;font-size:.75rem;font-weight:700}.admin-ans-text{color:var(--text);flex:1}.sprite-upload-field{flex-direction:column;gap:.35rem;display:flex}.sprite-upload-field__label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:600}.sprite-upload-field__row{align-items:flex-start;gap:.6rem;display:flex}.sprite-upload-field__thumb{border:2px dashed var(--border);cursor:pointer;background:var(--bg-3);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:border-color .15s;display:flex;position:relative;overflow:hidden}.sprite-upload-field__thumb:hover{border-color:var(--accent)}.sprite-upload-field__thumb--empty .sprite-upload-field__plus{color:var(--text-dim);font-size:1.4rem;line-height:1}.sprite-upload-field__progress-overlay{background:rgba(var(--scrim-rgb), .6);align-items:flex-end;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.sprite-upload-field__progress-bar{background:var(--accent);height:4px;transition:width .1s linear}.sprite-upload-field__url-col{flex-direction:column;flex:1;gap:.35rem;min-width:0;display:flex}.sprite-upload-field__url-input{background:var(--bg-3);border:1px solid var(--border);width:100%;color:var(--text);font-size:.75rem;font-family:var(--mono);border-radius:6px;padding:.3rem .5rem}.sprite-upload-field__url-input:focus{border-color:var(--accent);outline:none}.sprite-upload-field__error{color:#f87171;margin-top:.2rem;font-size:.72rem}.admin-form__sprites{background:var(--bg-2);border-radius:8px;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding:.75rem;display:flex}.anchor-editor{flex-direction:column;gap:.6rem;margin-bottom:.75rem;display:flex}.anchor-editor__slots{flex-wrap:wrap;gap:.4rem;display:flex}.anchor-editor__slot-btn{border:1.5px solid var(--border);background:var(--bg-3);color:var(--text-dim);cursor:pointer;border-radius:5px;align-items:center;gap:.3rem;padding:.25rem .55rem;font-size:.72rem;transition:border-color .12s,color .12s;display:flex}.anchor-editor__slot-btn.defined{color:var(--text)}.anchor-editor__slot-btn.selected{background:var(--accent-bg)}.anchor-editor__slot-btn:hover{border-color:var(--accent);color:var(--text)}.anchor-editor__slot-remove{opacity:.7;margin-left:.1rem;font-size:.85rem;line-height:1}.anchor-editor__slot-remove:hover{opacity:1;color:#f87171}.anchor-editor__canvas{border:1.5px solid var(--border);background:repeating-conic-gradient(rgba(var(--tint-rgb), .04) 0% 25%, transparent 0% 50%) 0 0 / 16px 16px;cursor:crosshair;-webkit-user-select:none;user-select:none;border-radius:8px;flex-shrink:0;position:relative;overflow:hidden}.anchor-editor__no-sprite{width:100%;height:100%;color:var(--text-dim);opacity:.5;justify-content:center;align-items:center;font-size:.8rem;display:flex}.anchor-editor__box{cursor:move;box-sizing:border-box;border:1.5px solid #0000;border-radius:3px;justify-content:flex-start;align-items:flex-start;padding:2px;display:flex;position:absolute}.anchor-editor__box.selected{z-index:10;box-shadow:0 0 0 1px #fff}.anchor-editor__box-label{color:rgba(var(--tint-rgb), .9);text-shadow:0 1px 2px rgba(var(--scrim-rgb), .8);pointer-events:none;white-space:nowrap;font-size:.55rem;font-weight:700;line-height:1}.anchor-editor__resize-handle{background:rgba(var(--tint-rgb), .7);cursor:nwse-resize;z-index:5;border-radius:2px 0;width:10px;height:10px;position:absolute;bottom:0;right:0}.anchor-editor__inputs{background:var(--bg-3);border-radius:7px;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem .6rem;display:flex}.anchor-editor__input-group{color:var(--text-dim);align-items:center;gap:.3rem;font-size:.72rem;display:flex}.anchor-editor__input-group input{text-align:right;background:var(--bg-2);border:1px solid var(--border);width:60px;color:var(--text);border-radius:5px;padding:.2rem .35rem;font-size:.75rem}.anchor-editor__input-group input:focus{border-color:var(--accent);outline:none}.anchor-editor__raw{color:var(--text-dim);font-size:.72rem}.anchor-editor__raw summary{cursor:pointer;opacity:.65;padding:.15rem 0}.anchor-editor__raw summary:hover{opacity:1}.anchor-editor__raw-input{background:var(--bg-3);border:1px solid var(--border);width:100%;font-family:var(--mono);color:var(--text);resize:vertical;border-radius:6px;margin-top:.3rem;padding:.4rem;font-size:.72rem}.admin-form__section-title{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);margin:.75rem 0 .35rem;padding-bottom:.25rem;font-size:.7rem;font-weight:700}.admin-form__color-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.admin-form__color-hex{font-family:var(--mono);color:var(--text-dim);font-size:.75rem}.admin-form__hint{color:var(--text-dim);margin-left:.15rem;font-size:.68rem}.admin-form__warn{color:#fbbf24;margin-left:.25rem;font-size:.7rem}.admin-input--error{border-color:#f87171!important}.admin-ans-dir--bad{color:#f87171!important}.admin-form__preview-json{color:var(--text-dim);background:var(--bg-2);border-radius:5px;margin-top:.3rem;padding:.3rem .5rem;font-size:.7rem}.admin-form__preview-json code{font-family:var(--mono);color:var(--accent);font-size:.7rem}.admin-launcher{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:2rem 1rem;display:flex}.admin-launcher__hint{color:var(--text-dim);max-width:280px;font-size:.82rem;line-height:1.5}.admin-launcher__open{padding:.6rem 1.4rem;font-size:.95rem}.admin-overlay{z-index:9000;background:var(--bg);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.admin-overlay__inner{flex-direction:column;height:100%;display:flex;position:relative;overflow:hidden}.admin-overlay__close{z-index:10;background:var(--bg-2);border:1px solid var(--border);width:32px;height:32px;color:var(--text-dim);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;transition:background .15s,color .15s;display:flex;position:absolute;top:12px;right:16px}.admin-overlay__close:hover{background:var(--bg-3);color:var(--text)}.admin-overlay .admin-panel{flex-direction:column;height:100%;display:flex;overflow:hidden}.admin-overlay .admin-panel__header{flex-shrink:0;padding:.75rem 3rem .75rem 1.25rem}.admin-overlay .admin-panel__tabs{flex-shrink:0;padding:0 1.25rem}.admin-overlay .admin-panel__body{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:1rem 1.25rem 2rem;overflow-y:auto}.atomi-creation__empty{text-align:center;color:var(--text-dim);flex-direction:column;align-items:center;gap:.6rem;padding:3rem 1.5rem;display:flex}.atomi-creation__empty-icon{opacity:.45;font-size:2.5rem;line-height:1}.atomi-creation__empty p{margin:0;font-size:.9rem}.atomi-creation__empty-sub{opacity:.65;font-size:.75rem!important}.wallet-overlay{z-index:7000;background:var(--bg);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.wallet-overlay__inner{flex-direction:column;width:100%;max-width:1100px;height:100%;margin:0 auto;display:flex;overflow:hidden}.wallet-overlay__header{padding:calc(var(--safe-area-inset-top,env(safe-area-inset-top,0px)) + .65rem) 1rem .5rem;border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:.5rem;display:flex}.wallet-overlay__header .wallet-balance-bar{background:0 0;border:none;flex:1;gap:.5rem;padding:0}.wallet-overlay__close{background:var(--bg-2);border:1px solid var(--border);width:32px;height:32px;color:var(--text-dim);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;transition:background .15s,color .15s;display:flex}.wallet-overlay__close:hover{background:var(--bg-3);color:var(--text)}.wallet-outer-tabs{border-bottom:1px solid var(--border);flex-shrink:0;gap:0;padding:.5rem 1rem 0;display:flex}.wallet-outer-tab{color:var(--text-dim);cursor:pointer;letter-spacing:.02em;background:0 0;border:none;border-bottom:2px solid #0000;padding:.45rem 1.25rem;font-size:.9rem;font-weight:600;transition:color .15s,border-color .15s}.wallet-outer-tab:hover{color:var(--text)}.wallet-outer-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.wallet-subtabs{flex-shrink:0;gap:.25rem;padding:.5rem 1rem 0;display:flex}.wallet-subtab{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:20px;padding:.3rem .9rem;font-size:.8rem;transition:background .12s,color .12s,border-color .12s}.wallet-subtab:hover{color:var(--text);border-color:var(--accent)}.wallet-subtab.active{background:var(--accent);border-color:var(--accent);color:var(--text-inverse);font-weight:600}.wallet-body{flex:1;padding:.75rem 1rem 2rem;overflow-y:auto}.wallet-body--shop{flex-direction:row;gap:0;padding:0;display:flex;overflow:hidden}.wallet-body--shop .shop-cats{border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:.25rem;width:140px;padding:.75rem .5rem;display:flex;overflow-y:auto}.wallet-body--shop .shop-items{flex:1;padding:.75rem 1rem;overflow-y:auto}@media (max-width:600px){.wallet-body--shop{flex-direction:column}.wallet-body--shop .shop-cats{border-right:none;border-bottom:1px solid var(--border);-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-direction:row;gap:.35rem;width:100%;padding:.5rem .75rem;overflow:auto hidden}.wallet-body--shop .shop-cats::-webkit-scrollbar{display:none}.wallet-body--shop .shop-cat-btn{white-space:nowrap;flex-shrink:0}.wallet-body--shop .shop-items{padding:.65rem .75rem}}.inv-cats{flex-wrap:wrap;gap:.3rem;margin-bottom:.75rem;display:flex}.inv-cat-btn{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:16px;padding:.22rem .7rem;font-size:.75rem;transition:background .12s,color .12s,border-color .12s}.inv-cat-btn:hover{color:var(--text);border-color:var(--accent)}.inv-cat-btn.active{background:var(--accent);border-color:var(--accent);color:var(--text-inverse);font-weight:600}.wallet-pending-gifts-pill{background:var(--accent-bg);border:1px solid var(--accent-dim);color:var(--accent);white-space:nowrap;border-radius:12px;padding:.2rem .55rem;font-size:.75rem;font-weight:600}.atomi-creation__quit{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:6px;padding:.25rem .6rem;font-size:.72rem;transition:color .12s,border-color .12s;position:absolute;top:.75rem;right:.75rem}.atomi-creation__quit:hover{color:var(--text);border-color:var(--accent)}.atomi-creation{padding:calc(var(--safe-area-inset-top,env(safe-area-inset-top,0px)) + 2rem) 1.5rem calc(var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)) + 2rem);box-sizing:border-box;flex-direction:column;align-items:center;gap:1.5rem;width:100%;max-width:420px;margin:0 auto;display:flex;position:relative;overflow-x:hidden}.atomi-creation__header{text-align:center}.atomi-creation__title{color:var(--text-h);margin:0 0 .4rem;font-size:1.5rem;font-weight:700}.atomi-creation__subtitle{color:var(--text-dim);margin:0;font-size:.875rem}.atomi-question{flex-direction:column;align-items:center;gap:1.25rem;width:100%;animation:.25s atomi-fadein;display:flex}.atomi-question__number{color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem}.atomi-creation__progress{justify-content:center;align-items:center;gap:.5rem;display:flex}.atomi-creation__dot{background:#6366f133;border:1.5px solid #6366f159;border-radius:50%;width:8px;height:8px;transition:background .2s,transform .2s}.atomi-creation__dot--done{background:#6366f1;border-color:#6366f1}.atomi-creation__dot--active{background:#818cf8;border-color:#818cf8;transform:scale(1.3);box-shadow:0 0 6px #818cf899}.atomi-question__text{color:var(--text-h);text-align:center;margin:0;font-size:1.1rem;font-weight:600;line-height:1.45}.atomi-question__options{flex-direction:column;gap:.75rem;width:100%;display:flex}.atomi-question__opt{color:var(--text-h);cursor:pointer;text-align:left;background:#6366f114;border:1.5px solid #6366f159;border-radius:.75rem;padding:.875rem 1.25rem;font-size:.9rem;transition:background .15s,border-color .15s,transform .1s}.atomi-question__opt:hover{background:#6366f133;border-color:#6366f199;transform:translateY(-1px)}.atomi-question__opt:active{transform:translateY(0)}.atomi-creation__reveal{flex-direction:column;align-items:center;gap:1rem;width:100%;animation:.35s atomi-fadein;display:flex}.atomi-creation__sprite-wrap{background:#6366f114;border:1.5px solid #6366f140;border-radius:1rem;padding:1rem;display:inline-block;position:relative}.atomi-creation__reveal-emoji{filter:drop-shadow(0 1px 3px rgba(var(--scrim-rgb), .4));font-size:1.2rem;line-height:1;position:absolute;bottom:-6px;right:-6px}.atomi-creation__type-title{color:var(--text-h);margin:0;font-size:1.25rem;font-weight:700}.atomi-creation__type-desc{color:var(--text-dim);text-align:center;margin:0;font-size:.875rem;line-height:1.5}.atomi-creation__name-input{background:rgba(var(--tint-rgb), .05);width:100%;color:var(--text-h);box-sizing:border-box;border:1.5px solid #94a3b840;border-radius:.6rem;outline:none;padding:.75rem 1rem;font-size:.95rem}.atomi-creation__name-input:focus{border-color:#6366f199}.atomi-creation__confirm-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6366f1 0%,#818cf8 100%);border:none;border-radius:.75rem;width:100%;padding:.875rem;font-size:.95rem;font-weight:600;transition:opacity .15s,transform .1s}.atomi-creation__confirm-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.atomi-creation__confirm-btn:disabled{opacity:.6;cursor:not-allowed}.atomi-creation__restart-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:.4rem;padding:.25rem .5rem;font-size:.8rem;transition:color .15s}.atomi-creation__restart-btn:hover{color:var(--text-h)}.atomi-home{flex-direction:column;height:100%;display:flex;overflow:hidden}.atomi-home__header{padding:calc(var(--safe-area-inset-top,env(safe-area-inset-top,0px)) + 1rem) 1.25rem .75rem;border-bottom:1px solid #94a3b81a}.atomi-home__title-row{align-items:center;gap:.25rem;margin-bottom:.75rem;display:flex}.atomi-home__name-row{align-items:baseline;gap:.5rem;display:flex}.atomi-home__name{color:var(--text-h);font-size:1.1rem;font-weight:700}.atomi-home__rename-btn{color:var(--text-dim);cursor:pointer;opacity:0;background:0 0;border:none;padding:0 .15rem;font-size:.85rem;line-height:1;transition:opacity .15s,color .15s}.atomi-home__name-row:hover .atomi-home__rename-btn{opacity:1}.atomi-home__rename-btn:hover{color:var(--accent)}.atomi-home__name-input{color:var(--text-h);background:rgba(var(--tint-rgb), .07);border:1px solid var(--accent);border-radius:4px;outline:none;width:10ch;padding:.1rem .4rem;font-size:1.1rem;font-weight:700}.atomi-home__name-input:focus{box-shadow:0 0 0 2px #818cf84d}.atomi-home__type{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.atomi-home__stats{flex-direction:column;gap:.5rem;display:flex}.atomi-home__stat{align-items:center;gap:.5rem;display:flex}.atomi-home__stat-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;min-width:3rem;font-size:.7rem}.atomi-home__xp-bar,.atomi-home__mood-bar{background:rgba(var(--tint-rgb), .08);border-radius:3px;flex:1;height:6px;overflow:hidden}.atomi-home__xp-fill{background:linear-gradient(90deg,#6366f1,#818cf8);border-radius:3px;height:100%;transition:width .4s}.atomi-home__mood-fill{border-radius:3px;height:100%;transition:width .4s,background .4s}.atomi-home__stat-sub{min-width:8rem;color:var(--text-dim);font-size:.65rem}.atomi-home__stage{background:#6366f108;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1.5rem 0 .75rem;display:flex;position:relative}.atomi-home__evo-badge{letter-spacing:.05em;text-transform:uppercase;border-radius:1rem;padding:.2rem .6rem;font-size:.7rem;font-weight:700}.atomi-home__evo-badge--1{color:#818cf8;background:#818cf833;border:1px solid #818cf880}.atomi-home__evo-badge--2{color:#f0abfc;background:#f0abfc33;border:1px solid #f0abfc80;animation:2s ease-in-out infinite atomi-pulse}.atomi-home__feedback{color:#fff;pointer-events:none;background:#6366f1e6;border-radius:1rem;padding:.3rem .75rem;font-size:.8rem;font-weight:600;animation:.2s atomi-pop;position:absolute;top:.5rem;left:50%;transform:translate(-50%)}.atomi-home__tabs{border-bottom:1px solid #94a3b81a;display:flex}.atomi-home__tab{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:.625rem;font-size:.8rem;font-weight:500;transition:color .15s}.atomi-home__tab--active{color:var(--text-h);border-bottom-color:#6366f1}.atomi-home__care,.atomi-home__food-list,.atomi-home__accessory-list{padding:1rem 1.25rem calc(var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)) + 1rem);flex-direction:column;flex:1;gap:.75rem;display:flex;overflow-y:auto}.atomi-home__action-btn{color:var(--text-h);cursor:pointer;text-align:left;background:#6366f112;border:1.5px solid #6366f140;border-radius:.75rem;align-items:center;gap:.875rem;padding:.875rem 1rem;transition:background .15s;display:flex}.atomi-home__action-btn:hover{background:#6366f126}.atomi-home__action-btn--cd{opacity:.6;background:rgba(var(--tint-rgb), .03);border-color:#94a3b826}.atomi-home__action-btn--cd:hover{background:rgba(var(--tint-rgb), .05)}.atomi-home__action-icon{flex-shrink:0;font-size:1.5rem}.atomi-home__action-text{flex:1;min-width:0}.atomi-home__action-label{align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:flex}.atomi-home__action-cost{color:#facc15;letter-spacing:.02em;background:#facc151f;border:1px solid #facc1540;border-radius:.3rem;padding:.05rem .35rem;font-size:.7rem;font-weight:700}.atomi-home__action-sub{color:var(--text-dim);margin-top:.2rem;font-size:.75rem}.atomi-home__action-cd{color:#f87171;font-weight:600}.atomi-home__care-hint{color:var(--text-dim);text-align:center;padding:.5rem;font-size:.75rem}.atomi-home__food-row,.atomi-home__acc-row{background:rgba(var(--tint-rgb), .03);border:1px solid #94a3b81a;border-radius:.6rem;justify-content:space-between;align-items:center;padding:.625rem .875rem;display:flex}.atomi-home__acc-row--on{background:#6366f112;border-color:#6366f166}.atomi-home__food-info,.atomi-home__acc-info{align-items:center;gap:.5rem;display:flex}.atomi-home__food-name,.atomi-home__acc-name{color:var(--text-h);font-size:.875rem}.atomi-home__food-qty{color:var(--text-dim);font-size:.75rem}.atomi-home__acc-badge{color:#fff;letter-spacing:.04em;background:#6366f1;border-radius:.25rem;padding:.1rem .35rem;font-size:.65rem;font-weight:700}.atomi-home__feed-btn,.atomi-home__acc-btn{color:#818cf8;cursor:pointer;background:#6366f11f;border:1.5px solid #6366f180;border-radius:.5rem;padding:.35rem .875rem;font-size:.8rem;font-weight:600;transition:background .15s}.atomi-home__feed-btn:hover,.atomi-home__acc-btn:hover{background:#6366f140}.atomi-home__acc-btn--remove{color:#f87171;background:#f871711a;border-color:#f8717180}.atomi-home__acc-btn--remove:hover{background:#f8717133}.atomi-home__empty{color:var(--text-dim);text-align:center;margin:0;padding:1rem;font-size:.8rem}.atomi-call-banner{z-index:2000;width:min(400px,100vw - 2rem);animation:.25s atomi-slide-down;position:fixed;top:1rem;left:50%;transform:translate(-50%)}.atomi-call-banner__inner{box-shadow:0 8px 32px rgba(var(--scrim-rgb), .45);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f0f19f7;border:1.5px solid #6366f180;border-radius:1rem;align-items:center;gap:.875rem;padding:.875rem 1rem;display:flex}.atomi-call-banner__sprites{flex-shrink:0}.atomi-call-banner__text{flex-direction:column;flex:1;gap:.15rem;display:flex}.atomi-call-banner__label{color:var(--text-h);font-size:.8rem;font-weight:700}.atomi-call-banner__sub{color:var(--text-dim);font-size:.7rem}.atomi-call-banner__actions{flex-shrink:0;gap:.5rem;display:flex}.atomi-call-banner__accept{color:#fff;cursor:pointer;background:#6366f1;border:none;border-radius:.5rem;padding:.4rem .875rem;font-size:.8rem;font-weight:600}.atomi-call-banner__decline{color:var(--text-dim);cursor:pointer;background:0 0;border:1.5px solid #94a3b840;border-radius:.5rem;padding:.4rem .875rem;font-size:.8rem}.atomi-call-waiting{background:#6366f114;border:1px dashed #6366f159;border-radius:.75rem;align-items:center;gap:.75rem;margin:0 .75rem;padding:.75rem 1rem;display:flex}.atomi-call-waiting__label{color:var(--text-dim);flex:1;font-size:.8rem}.atomi-call-waiting__cancel{color:#f87171;cursor:pointer;background:0 0;border:1.5px solid #f8717166;border-radius:.4rem;padding:.3rem .75rem;font-size:.75rem}.atomi-call-active{background:#6366f112;border:1.5px solid #6366f14d;border-radius:.875rem;flex-direction:column;align-items:center;gap:.75rem;margin:0 .75rem;padding:1rem;display:flex}.atomi-call-active__stage{width:100%}.atomi-call-active__pair{justify-content:center;align-items:flex-end;gap:.75rem;display:flex}.atomi-call-active__participant{flex-direction:column;align-items:center;gap:.375rem;display:flex}.atomi-call-active__label{color:var(--text-dim);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:6rem;font-size:.7rem;overflow:hidden}.atomi-call-active__hearts{color:#f472b6;flex-direction:column;justify-content:center;align-items:center;gap:.1rem;padding-bottom:1.25rem;font-size:.9rem;line-height:1;display:flex}.atomi-call-active__hearts span:first-child{opacity:.5;animation:1.8s ease-in-out infinite atomi-pulse}.atomi-call-active__hearts span:nth-child(2){opacity:1;animation:1.8s ease-in-out .3s infinite atomi-pulse}.atomi-call-active__hearts span:nth-child(3){opacity:.5;animation:1.8s ease-in-out .6s infinite atomi-pulse}.atomi-call-active__end{color:#f87171;cursor:pointer;background:#f871711a;border:1.5px solid #f8717173;border-radius:1rem;padding:.375rem 1.25rem;font-size:.8rem;font-weight:600;transition:background .15s}.atomi-call-active__end:hover{background:#f8717133}.atomi-call-btn{cursor:pointer;background:#6366f11f;border:none;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1rem;transition:background .15s;display:flex}.atomi-call-btn:hover:not(.atomi-call-btn--disabled){background:#6366f140}.atomi-call-btn--disabled{opacity:.4;cursor:not-allowed}.atomi-sidebar-tab{border-radius:.5rem;justify-content:center;align-items:center;padding:.5rem;transition:background .15s;display:flex}.atomi-sidebar-tab:hover{background:#6366f11f}.atomi-evo-glow--spark_fox canvas{filter:drop-shadow(0 0 4px #fde047)}.atomi-evo-glow--ember_wolf canvas{filter:drop-shadow(0 0 5px #f97316)drop-shadow(0 0 10px #ef4444)}.atomi-evo-glow--frost_hawk canvas{filter:drop-shadow(0 0 5px #7dd3fc)drop-shadow(0 0 10px #bae6fd)}.atomi-evo-glow--shadow_moth canvas{filter:drop-shadow(0 0 4px #7c3aed)}.atomi-evo-glow--crystal_golem canvas{filter:drop-shadow(0 0 4px #22d3ee)}.atomi-evo-glow--dawn_sprite canvas{filter:drop-shadow(0 0 4px #fcd34d)}.atomi-evo-glow--midnight_wisp canvas{filter:drop-shadow(0 0 4px #6366f1)}.atomi-evo-glow--pixel_bunny canvas{filter:drop-shadow(0 0 4px #fda4af)}.atomi-evo-glow--void_cat canvas{filter:drop-shadow(0 0 5px #818cf8)drop-shadow(0 0 10px #4338ca)}.atomi-evo-glow2--spark_fox canvas{filter:drop-shadow(0 0 6px #fde047)drop-shadow(0 0 12px #f59e0b)}.atomi-evo-glow2--ember_wolf canvas{filter:drop-shadow(0 0 8px #ef4444)drop-shadow(0 0 14px #fde047)}.atomi-evo-glow2--frost_hawk canvas{filter:drop-shadow(0 0 8px #bae6fd)drop-shadow(0 0 14px #f0abfc)}.atomi-evo-glow2--shadow_moth canvas{filter:drop-shadow(0 0 6px #a78bfa)drop-shadow(0 0 12px #f0abfc)}.atomi-evo-glow2--crystal_golem canvas{filter:drop-shadow(0 0 6px #22d3ee)drop-shadow(0 0 12px #f0abfc)}.atomi-evo-glow2--dawn_sprite canvas{filter:drop-shadow(0 0 6px #fde047)drop-shadow(0 0 12px #f0abfc)}.atomi-evo-glow2--midnight_wisp canvas{filter:drop-shadow(0 0 6px #6366f1)drop-shadow(0 0 12px #818cf8)}.atomi-evo-glow2--pixel_bunny canvas{filter:drop-shadow(0 0 6px #fda4af)drop-shadow(0 0 12px #f0abfc)}.atomi-evo-glow2--void_cat canvas{filter:drop-shadow(0 0 8px #6366f1)drop-shadow(0 0 14px #f0abfc)}@keyframes atomi-fadein{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes atomi-pop{0%{opacity:0;transform:translate(-50%)scale(.8)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes atomi-slide-down{0%{opacity:0;transform:translate(-50%)translateY(-12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes atomi-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.15)}}.atomi-home__care-hints{flex-direction:column;gap:.35rem;display:flex}.atomi-home__last-care{color:var(--text-dim);text-align:center;font-size:.72rem}.atomi-home__last-care--warn{color:#f87171;font-weight:600}.atomi-call-banner__sprite-wrap{flex-direction:column;align-items:center;gap:.2rem;display:flex}.atomi-call-banner__sprite-name{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;text-align:center;max-width:52px;font-size:.65rem;overflow:hidden}.atomi-call-banner__paw{align-self:center;margin:0 .15rem;font-size:1.1rem}.profile-atomi-card{background:#6366f114;border:1px solid #6366f12e;border-radius:.75rem;align-items:center;gap:.85rem;margin-bottom:1rem;padding:.75rem 1rem;display:flex}.profile-atomi-card__sprite{flex-shrink:0}.profile-atomi-card__info{flex-direction:column;gap:.2rem;min-width:0;display:flex}.profile-atomi-card__name{color:var(--text-h);align-items:center;gap:.3rem;font-size:.95rem;font-weight:600;display:flex}.profile-atomi-card__evo{font-size:.85rem}.profile-atomi-card__evo--1{filter:drop-shadow(0 0 3px #818cf8)}.profile-atomi-card__evo--2{filter:drop-shadow(0 0 4px #f0abfc);animation:2s ease-in-out infinite atomi-pulse}.profile-atomi-card__type{color:var(--text-dim);font-size:.75rem}.profile-atomi-card__stats{align-items:center;gap:.75rem;margin-top:.1rem;display:flex}.profile-atomi-card__level{color:var(--accent);background:#6366f11f;border-radius:.3rem;padding:.1rem .4rem;font-size:.75rem;font-weight:600}.profile-atomi-card__mood{font-size:.75rem;font-weight:600}.atomi-home__evo-badge--3{color:#fbbf24;background:linear-gradient(135deg,#fbbf2440,#ea580c40);border:1px solid #fbbf2499;animation:1.6s ease-in-out infinite atomi-pulse}.profile-atomi-card__evo--3{filter:drop-shadow(0 0 5px #fbbf24);animation:1.6s ease-in-out infinite atomi-pulse}.atomi-home__archetype{color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;margin-top:.05rem;font-size:.7rem}.atomi-sprite{flex-shrink:0;display:inline-block;position:relative}.atomi-sprite canvas{z-index:1;display:block;position:relative}.atomi-sprite-placeholder{background:#6366f114;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;display:flex}.atomi-sprite-placeholder--missing{color:var(--text-dim);background:#ef444414;font-size:2rem}.atomi-effect-overlay{pointer-events:none;border-radius:inherit;z-index:0;position:absolute;top:0;bottom:0;left:0;right:0}.atomi-effect--glow-soft{box-shadow:0 0 12px 4px color-mix(in srgb, var(--effect-color,#818cf8) 40%, transparent);border-radius:50%}.atomi-effect--glow-bright{box-shadow:0 0 24px 8px color-mix(in srgb, var(--effect-color,#c084fc) 60%, transparent);border-radius:50%}.atomi-effect--aura-pulse{border-radius:50%;animation:2s ease-in-out infinite atomi-aura-pulse}@keyframes atomi-aura-pulse{0%,to{box-shadow:0 0 10px 2px color-mix(in srgb, var(--effect-color,#818cf8) 35%, transparent)}50%{box-shadow:0 0 22px 8px color-mix(in srgb, var(--effect-color,#818cf8) 55%, transparent)}}.atomi-effect--shimmer:after{content:"";background:linear-gradient(120deg,#0000 30%,#ffffff4d 50%,#0000 70%);animation:2.4s ease-in-out infinite atomi-shimmer;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes atomi-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.atomi-effect--particles-sparkle:before{content:"✨";font-size:.9rem;animation:1.8s ease-in-out infinite atomi-sparkle-pop;position:absolute;top:-6px;right:-4px}@keyframes atomi-sparkle-pop{0%,to{opacity:0;transform:scale(.6)}50%{opacity:1;transform:scale(1.1)}}.atomi-effect--particles-ember:before{content:"🔥";font-size:.8rem;animation:1.4s ease-in-out infinite alternate atomi-ember;position:absolute;bottom:-4px;left:50%;transform:translate(-50%)}@keyframes atomi-ember{0%{opacity:.5;transform:translate(-50%)scale(.8)}to{opacity:1;transform:translate(-50%)scale(1.1)}}.atomi-effect--particles-frost:before{content:"❄️";font-size:.85rem;animation:3s linear infinite atomi-frost-spin;position:absolute;top:-4px;left:50%;transform:translate(-50%)}@keyframes atomi-frost-spin{0%{transform:translate(-50%)rotate(0)}to{transform:translate(-50%)rotate(360deg)}}.atomi-effect--particles-leaves:before{content:"🍃";font-size:.85rem;animation:2.2s ease-in-out infinite alternate atomi-leaf-sway;position:absolute;top:0;right:-6px}@keyframes atomi-leaf-sway{0%{transform:rotate(-15deg)scale(.9)}to{transform:rotate(15deg)scale(1.05)}}
