:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;min-height:100dvh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 #ff4d4db3}70%{transform:scale(1.1);box-shadow:0 0 0 10px #ff4d4d00}to{transform:scale(1);box-shadow:0 0 #ff4d4d00}}canvas{display:block;width:100vw!important;height:100vh!important;height:100dvh!important;position:absolute;top:0;left:0}.container{width:100vw;height:100vh;height:100dvh;background:var(--bg-page);overflow:hidden;position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--page-text);--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--radius-pill: 999px;--accent: #2f6fe0;--accent-contrast: #ffffff;--accent-soft: color-mix(in srgb, var(--accent) 16%, transparent);--accent-shadow: 0 10px 24px color-mix(in srgb, var(--accent) 28%, transparent);--glass-blur: blur(24px) saturate(1.4)}body[data-scene=cafe] .container{--accent: #c06a14}body[data-scene=forest] .container{--accent: #2f8a4c}body[data-scene=space] .container{--accent: #6d5ce8}body[data-scene=seaside] .container{--accent: #d9573d}body[data-scene=fireplace] .container{--accent: #c4542a}body[data-scene=hotel] .container{--accent: #7a8a2e}body[data-scene=veranda] .container{--accent: #a85a3c}body[data-scene=snow] .container{--accent: #3a86b8}body[data-scene=garden] .container{--accent: #2a8f7f}body[data-scene=bund] .container{--accent: #c04a9a}body[data-scene=room_bedroom] .container{--accent: #8a6a4a}body[data-scene=room_teahouse] .container{--accent: #6f8a3a}body[data-scene=room_sitting] .container{--accent: #9a5a3c}body[data-scene=room_loft] .container{--accent: #7a7368}body[data-scene=room_kleeblatt] .container{--accent: #a35de0}body[data-scene=room_vintage] .container{--accent: #9c3f3f}.conversation-list,.right-panel,.settings-menu,.profile-card,.workshop-card,.workshop-item-list,.coin-history,.onboarding-overlay .onboarding-body{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.container.dark-mode{--bg-page: radial-gradient(circle at top left, rgba(41, 82, 155, .18), transparent 25%), linear-gradient(135deg, #02060f 0%, #08151f 55%, #0b1e2a 100%);--page-text: #ffffff;--subtle-text: rgba(255, 255, 255, .68);--panel-bg: rgba(18, 22, 34, .82);--panel-border: rgba(255, 255, 255, .08);--scrollbar-thumb: rgba(255, 255, 255, .22);--panel-shadow: 0 30px 120px rgba(0, 0, 0, .35);--header-border: rgba(255, 255, 255, .1);--glass-bg: rgba(16, 20, 30, .72);--glass-modal-bg: rgba(16, 20, 30, .8);--glass-btn-bg: rgba(16, 20, 30, .5);--glass-border: rgba(255, 255, 255, .14);--glass-shadow: 0 18px 50px rgba(0, 0, 0, .35);--bubble-ai-bg: rgba(255, 255, 255, .12);--bubble-ai-text: #f5f7ff;--input-area-bg: rgba(0, 0, 0, .12);--input-bg: rgba(255, 255, 255, .08);--input-border: rgba(255, 255, 255, .08);--input-text: white;--input-focus-bg: rgba(255, 255, 255, .14);--input-focus-border: color-mix(in srgb, var(--accent) 60%, transparent);--option-bg: rgba(11, 17, 30, .98);--option-hover-bg: color-mix(in srgb, var(--accent) 22%, transparent);--loading-bubble-bg: rgba(255, 255, 255, .12);--right-panel-shadow: -20px 20px 80px rgba(0, 0, 0, .24);--icon-button-bg: rgba(255, 255, 255, .1);--icon-button-color: white;--theme-toggle-bg: rgba(255, 255, 255, .1);--theme-toggle-color: white}.container.light-mode{--bg-page: radial-gradient(circle at top left, rgba(255, 235, 179, .45), transparent 25%), linear-gradient(135deg, #f7f5e8 0%, #f2ebd5 55%, #ece0ba 100%);--page-text: #1f2937;--subtle-text: rgba(31, 41, 55, .7);--panel-bg: rgba(255, 255, 255, .95);--panel-border: rgba(148, 163, 184, .3);--scrollbar-thumb: rgba(15, 23, 42, .2);--panel-shadow: 0 30px 80px rgba(15, 23, 42, .12);--header-border: rgba(148, 163, 184, .32);--glass-bg: rgba(255, 255, 255, .72);--glass-modal-bg: rgba(255, 255, 255, .8);--glass-btn-bg: rgba(255, 255, 255, .58);--glass-border: rgba(255, 255, 255, .65);--glass-shadow: 0 18px 50px rgba(30, 24, 10, .16);--bubble-ai-bg: rgba(255, 255, 255, .82);--bubble-ai-text: #334155;--input-area-bg: rgba(255, 255, 255, .3);--input-bg: rgba(255, 255, 255, .7);--input-border: rgba(209, 213, 219, .9);--input-text: #1f2937;--input-focus-bg: var(--accent-soft);--input-focus-border: color-mix(in srgb, var(--accent) 55%, transparent);--option-bg: rgba(255, 255, 255, .98);--option-hover-bg: color-mix(in srgb, var(--accent) 14%, transparent);--loading-bubble-bg: rgba(255, 255, 255, .9);--right-panel-shadow: -20px 20px 80px rgba(15, 23, 42, .12);--icon-button-bg: rgba(15, 23, 42, .08);--icon-button-color: #1f2937;--theme-toggle-bg: rgba(15, 23, 42, .08);--theme-toggle-color: #1f2937}.coin-icon{color:#f59e0b;vertical-align:-.15em;flex-shrink:0}.chat-panel{position:absolute;top:20px;left:20px;width:380px;height:calc(100vh - 40px);height:calc(100dvh - 40px);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-lg);display:flex;flex-direction:column;border:1px solid var(--glass-border);z-index:5;overflow:hidden;box-sizing:border-box;box-shadow:var(--glass-shadow);transition:left .2s ease,transform .25s ease,opacity .25s ease}.chat-panel.sidebar-open{left:296px}.chat-panel.collapsed{transform:translate(-110%);opacity:0;pointer-events:none}.chat-panel-tab{position:fixed;top:50%;transform:translateY(-50%);left:400px;width:26px;height:64px;padding:0;border-radius:0 var(--radius-md) var(--radius-md) 0;border:1px solid var(--glass-border);border-left:none;background:var(--glass-btn-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);color:var(--icon-button-color);box-shadow:0 4px 12px #0000001f;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:9997;transition:left .25s ease,background .2s ease}.chat-panel-tab:hover{background:var(--option-hover-bg)}.chat-panel-tab.sidebar-open{left:676px}.chat-panel-tab.collapsed{left:0}@media(max-width:900px){.chat-panel-tab,.chat-panel-tab.sidebar-open,.chat-panel-tab.collapsed{left:0}.chat-panel-tab,.right-panel-tab{width:18px;height:56px}.chat-panel-tab svg,.right-panel-tab svg{width:14px;height:14px}.chat-panel-tab.peer-panel-open,.right-panel-tab.peer-panel-open{display:none}}.conversation-sidebar{position:absolute;top:20px;left:20px;width:260px;height:calc(100vh - 40px);height:calc(100dvh - 40px);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-lg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);z-index:6;display:flex;flex-direction:column;gap:10px;padding:16px;box-sizing:border-box;overflow:hidden}.conversation-sidebar-header{display:flex;align-items:center;justify-content:space-between;color:var(--page-text);font-size:15px;font-weight:600}.new-conversation-button{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--panel-border);background:var(--input-bg);color:var(--page-text);font-size:14px;cursor:pointer}.new-conversation-button:hover{background:var(--input-focus-bg);border-color:var(--input-focus-border)}.conversation-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.conversation-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--page-text);font-size:13px;text-align:left;cursor:pointer;width:100%;box-sizing:border-box}.conversation-item:hover{background:var(--option-hover-bg)}.conversation-item.active{background:var(--option-hover-bg);font-weight:600}.conversation-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.conversation-item-delete{display:none;align-items:center;justify-content:center;padding:4px;border-radius:8px;color:var(--subtle-text);flex-shrink:0}.conversation-item:hover .conversation-item-delete{display:flex}.conversation-item-delete:hover{color:#e08585}.chat-header{padding:18px 22px 14px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--header-border);flex-shrink:0}.chat-header-title{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;color:var(--page-text);min-width:0}.chat-header-title span{color:var(--page-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid var(--panel-border)}.user-avatar-fallback{display:inline-flex;align-items:center;justify-content:center;background:var(--input-bg);color:var(--page-text);font-size:11px;font-weight:800}.chat-header-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.chat-mode-switch{display:inline-flex;padding:2px;border-radius:var(--radius-pill);background:var(--icon-button-bg)}.chat-mode-switch button{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--subtle-text);font-size:12px;cursor:pointer;transition:background .2s ease,color .2s ease}.chat-mode-switch button.active{background:var(--accent);color:var(--accent-contrast)}.chat-header-subtitle{padding:0 22px 14px;color:var(--subtle-text);font-size:13px;line-height:1.5}.message-list{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:10px;scrollbar-width:none}.message-row{display:flex;width:100%}.message-row.user{justify-content:flex-end}.message-row.ai{justify-content:flex-start}.message-bubble{padding:14px 18px;border-radius:var(--radius-lg);max-width:78%;font-size:15px;line-height:1.7;box-shadow:0 8px 24px #0000001a;transition:transform .2s ease,background .2s ease}.message-bubble:hover{transform:translateY(-1px)}.user-bubble{background:var(--accent);color:var(--accent-contrast);border-bottom-right-radius:6px}.ai-bubble{background:var(--bubble-ai-bg);color:var(--bubble-ai-text);border-bottom-left-radius:6px}.bubble-text{white-space:pre-wrap}.loading-row{display:flex;justify-content:flex-start;margin-bottom:12px}.loading-bubble{display:inline-flex;align-items:center;gap:4px;padding:10px 14px;border-radius:var(--radius-lg);background:var(--loading-bubble-bg);box-shadow:0 12px 30px #00000024}.loading-dot{width:6px;height:6px;border-radius:50%;background:#e6ecff;opacity:.35;animation:loading-dot 1s infinite ease-in-out}.loading-dot:nth-child(2){animation-delay:.15s}.loading-dot:nth-child(3){animation-delay:.3s}@keyframes loading-dot{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-6px)}}.input-area{padding:14px 18px 16px;display:flex;gap:10px;align-items:center;border-top:1px solid var(--input-border);box-sizing:border-box;background:var(--input-area-bg)}.message-list::-webkit-scrollbar{display:none}.voice-captions{display:none}@media(max-width:900px){.voice-captions{position:fixed;left:16px;right:16px;bottom:96px;z-index:9998;pointer-events:none;max-height:34vh;max-height:34dvh;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}.voice-captions.overflowing{-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 2.5em);mask-image:linear-gradient(to bottom,transparent 0,#000 2.5em)}.voice-captions-inner{flex-shrink:0;display:flex;flex-direction:column;gap:8px}.voice-caption{margin:0;max-width:80%;padding:8px 14px;font-size:15px;line-height:1.5;white-space:pre-wrap;word-break:break-word;border-radius:var(--radius-md);border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--page-text);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:0 8px 24px #0000002e;animation:voice-caption-in .3s ease-out}.voice-caption.ai{align-self:flex-start;border-bottom-left-radius:6px}.voice-caption.user{align-self:flex-end;border-bottom-right-radius:6px;background:color-mix(in srgb,var(--accent) 38%,var(--glass-bg))}}@keyframes voice-caption-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.input-field{flex:1;min-width:0;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);padding:0 16px;height:52px;color:var(--input-text);outline:none;font-size:15px;transition:border .2s ease,background .2s ease}.input-field:focus{background:var(--input-focus-bg);border-color:var(--input-focus-border)}.input-field option{color:var(--input-text);background:var(--option-bg)}.input-field option:hover,.input-field option:focus{background:var(--option-hover-bg);color:var(--input-text)}.theme-toggle{background:var(--theme-toggle-bg);color:var(--theme-toggle-color);border:1px solid var(--panel-border);border-radius:14px;padding:8px 12px;cursor:pointer;font-size:13px;font-weight:600;transition:transform .2s ease,background .2s ease;width:100%}.theme-toggle:hover{transform:translateY(-1px)}.theme-toggle-secondary{background:transparent;border-color:var(--panel-border);color:var(--theme-toggle-color)}.send-button{background:var(--accent);color:var(--accent-contrast);border:none;border-radius:var(--radius-md);width:52px;height:52px;min-width:52px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;box-shadow:var(--accent-shadow)}.send-button:disabled{opacity:.55;cursor:not-allowed}.section-label{color:var(--section-label-color);font-size:12.5px;margin-bottom:6px;text-align:center;letter-spacing:.08em}.right-panel .input-field{font-size:15px;padding:12px 14px}.right-panel .theme-toggle{font-size:15px;padding:10px 14px}.theme-corner-toggle{position:absolute;bottom:50px;right:calc(min(220px,calc(100vw - 40px)) + 34px);z-index:15;width:60px;height:60px;border-radius:50%;border:1px solid var(--panel-border);background:var(--theme-toggle-bg);color:var(--theme-toggle-color);display:inline-flex;align-items:center;justify-content:center;box-shadow:0 20px 45px #00000029;cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease}.theme-corner-toggle svg{width:50px;height:50px;stroke-width:2.6}.theme-corner-toggle:hover{transform:translateY(-1px)}.auth-shell{display:grid;place-items:center;padding:20px;box-sizing:border-box}.auth-theme-toggle{top:22px;right:22px;bottom:auto}.auth-language-toggle{position:absolute;top:22px;right:22px;z-index:15;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--panel-border);background:var(--panel-bg);color:var(--page-text);font-family:inherit;font-size:14px;font-weight:700;box-shadow:0 12px 30px #00000024;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);cursor:pointer;transition:transform .2s ease,border-color .2s ease}.auth-language-toggle:hover{transform:translateY(-1px);border-color:var(--input-focus-border)}@media(max-width:900px){.auth-language-toggle{top:14px;right:14px}.auth-page{padding-top:68px;padding-bottom:max(64px,calc(env(safe-area-inset-bottom) + 24px))}}.auth-page{overflow-y:auto;-webkit-overflow-scrolling:touch}.auth-page .auth-card{margin:auto}.auth-card{width:min(420px,calc(100vw - 40px));padding:28px;border:1px solid var(--glass-border);border-radius:var(--radius-lg);background:var(--glass-modal-bg);color:var(--page-text);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-sizing:border-box}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:8px;font-size:24px;font-weight:800}.auth-muted{margin:0 0 22px;color:var(--subtle-text);font-size:14px;line-height:1.6}.auth-label{display:block;margin:14px 0 7px;color:var(--subtle-text);font-size:13px;font-weight:700}.auth-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.auth-label-row .auth-label{margin:14px 0 7px}.auth-inline-link{border:none;background:transparent;color:var(--input-focus-border);font-size:13px;font-weight:600;cursor:pointer;padding:0}.auth-inline-link:hover{text-decoration:underline}.auth-consent{display:flex;align-items:flex-start;gap:8px;margin:14px 0 4px;color:var(--page-text);font-size:13px;line-height:1.5;cursor:pointer}.auth-consent input{flex-shrink:0;width:16px;height:16px;margin:1px 0 0;accent-color:var(--input-focus-border)}.auth-consent .auth-inline-link,.auth-legal-note .auth-inline-link{font-size:inherit}.auth-consent label{cursor:pointer}.app-modal-card.privacy-modal{max-width:640px;max-height:min(760px,calc(100dvh - 40px));display:flex;flex-direction:column;text-align:left}.app-modal-card.privacy-modal .privacy-modal-title{margin:0 0 12px}.privacy-modal-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:6px;font-size:14px;line-height:1.7}.privacy-modal-body .updated{margin-top:0;color:var(--subtle-text);font-size:13px}.app-modal-card.privacy-modal .privacy-modal-body h2{margin:20px 0 6px;font-size:16px}.privacy-modal-body p,.privacy-modal-body li{font-size:14px}.privacy-modal-body ul{padding-left:1.3em}.privacy-modal-body a{color:var(--input-focus-border)}.privacy-modal-body .table-wrap{overflow-x:auto}.privacy-modal-body table{width:100%;border-collapse:collapse;font-size:13px}.privacy-modal-body th,.privacy-modal-body td{padding:6px 8px;border:1px solid var(--panel-border);text-align:left;vertical-align:top}.privacy-modal-body th{color:var(--subtle-text);font-weight:600}.privacy-modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:16px}.privacy-modal-hint{margin-right:auto;color:var(--subtle-text);font-size:13px}.privacy-modal-actions .auth-switch{width:auto;margin:0;padding:10px 20px}.privacy-modal-actions .app-modal-confirm-btn:disabled{opacity:.45;box-shadow:none;cursor:not-allowed;transform:none}@media(max-width:480px){.app-modal-overlay:has(.privacy-modal){padding:12px}.app-modal-card.privacy-modal{max-height:calc(100dvh - 24px)}}.auth-legal-note{margin:10px 0 16px;color:var(--page-text);opacity:.7;font-size:12px;line-height:1.5;text-align:center}.auth-input{width:100%;box-sizing:border-box}.auth-google-button{width:100%;height:48px;margin:4px 0 14px;border:1px solid var(--panel-border);border-radius:14px;background:var(--input-bg);color:var(--page-text);display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:800}.auth-google-button:hover{border-color:var(--input-focus-border);background:var(--input-focus-bg)}.auth-google-button:disabled{opacity:.55;cursor:not-allowed}.auth-divider{display:flex;align-items:center;gap:12px;margin:8px 0 4px;color:var(--subtle-text);font-size:12px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--panel-border)}.auth-password-field{position:relative}.auth-password-input{padding-right:48px}.auth-password-toggle{position:absolute;top:50%;right:8px;width:36px;height:36px;padding:0;border:none;border-radius:10px;background:transparent;color:var(--subtle-text);display:inline-flex;align-items:center;justify-content:center;transform:translateY(-50%)}.auth-password-toggle:hover{background:var(--input-focus-bg);color:var(--page-text)}.auth-alert,.auth-message{margin:14px 0;padding:12px 14px;border:1px solid var(--panel-border);border-radius:12px;background:var(--input-bg);color:var(--page-text);font-size:13px;line-height:1.5}.auth-submit{width:100%;height:48px;margin-top:18px;border:none;border-radius:14px;background:var(--accent);color:var(--accent-contrast);font-weight:800}.auth-submit:disabled{opacity:.55;cursor:not-allowed}.auth-switch{width:100%;margin-top:12px;border:1px solid var(--panel-border);border-radius:14px;background:transparent;color:var(--page-text);font-size:14px}@media(max-width:900px){.theme-corner-toggle{position:static;margin:0 auto 16px;right:auto;top:auto}}.auth-captcha{display:flex;justify-content:center}.auth-captcha.is-interactive{margin-top:14px}.auth-captcha:empty{display:none}.container.landing{overflow-x:hidden;overflow-y:auto;scroll-behavior:smooth;line-height:1.7;--landing-muted: color-mix(in srgb, var(--page-text) 72%, transparent)}@media(prefers-reduced-motion:reduce){.container.landing{scroll-behavior:auto}}.landing h1,.landing h2,.landing h3,.landing p{margin:0}.landing-hero{position:relative;display:flex;flex-direction:column;height:100dvh;min-height:560px;color:#fff;background:#1a1d26;overflow:hidden}.landing-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 20%}.landing-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0a0e18d1,#0a0e188c 38%,#0a0e1800 66%)}.landing-nav{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px clamp(16px,5vw,72px)}.landing-brand{display:inline-flex;align-items:center;gap:10px;font-size:18px;font-weight:700;white-space:nowrap}.landing-nav-actions{display:inline-flex;gap:8px}.landing-nav-button{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px;border:1px solid rgba(255,255,255,.4);border-radius:var(--radius-pill);background:#0a0e1859;color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer;white-space:nowrap}.landing-nav-button:hover{background:#0a0e1899}.landing-hero-copy{position:relative;z-index:1;margin:auto 0;padding:0 clamp(16px,5vw,72px) 48px;max-width:600px;box-sizing:content-box}.landing-eyebrow{font-size:15px;font-weight:700;opacity:.9}.landing h1{margin:8px 0 16px;font-size:clamp(38px,5.4vw,68px);line-height:1.18;white-space:pre-line}.landing-hero-body{font-size:clamp(16px,1.4vw,19px)}.landing-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:28px}.landing-primary{min-height:52px;padding:0 32px;border:none;border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-contrast);font:inherit;font-size:17px;font-weight:700;box-shadow:var(--accent-shadow);cursor:pointer;transition:transform .2s ease}.landing-primary:hover{transform:translateY(-1px)}.landing-secondary{color:inherit;font-weight:700;text-underline-offset:4px}.landing-features,.landing-more,.landing-cta{max-width:1120px;margin:0 auto;padding:0 clamp(16px,5vw,40px)}.landing-features{display:flex;flex-direction:column;gap:clamp(56px,9vw,112px);padding-top:clamp(56px,9vw,112px);padding-bottom:clamp(56px,9vw,112px)}.landing-feature{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(24px,5vw,64px)}.landing-feature:nth-child(2n){grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.landing-feature:nth-child(2n) .landing-feature-copy{order:2}.landing-feature img{display:block;width:100%;height:auto;border-radius:var(--radius-lg);border:1px solid var(--panel-border);box-shadow:0 18px 48px #00000029}.landing h2{font-size:clamp(26px,3vw,36px);line-height:1.3}.landing-feature-copy p,.landing-cta p{margin-top:12px;font-size:17px;color:var(--landing-muted)}.landing-more h2{text-align:center}.landing-more-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-top:28px}.landing-card{padding:24px;border:1px solid var(--panel-border);border-radius:var(--radius-lg);background:var(--panel-bg)}.landing-card svg{color:var(--accent)}.landing-card h3{margin-top:10px;font-size:18px}.landing-card p{margin-top:6px;font-size:15px;color:var(--landing-muted)}.landing-cta{padding-top:clamp(64px,9vw,112px);padding-bottom:clamp(64px,9vw,112px);text-align:center}.landing-cta .landing-primary{margin-top:24px}.landing-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 24px;padding:24px clamp(16px,5vw,40px) 32px;border-top:1px solid var(--panel-border);font-size:14px;color:var(--landing-muted)}.landing-footer a{color:inherit;font-weight:700}.landing-line{display:flex;align-items:center;justify-content:space-between;gap:32px;max-width:1040px;margin:clamp(56px,8vw,96px) auto 0;padding:32px clamp(24px,5vw,48px);border:1px solid var(--panel-border);border-radius:var(--radius-lg);background:var(--panel-bg);box-sizing:border-box}.landing-line-copy p{margin-top:8px;font-size:17px;color:var(--landing-muted)}.landing-line-button{display:inline-flex;align-items:center;gap:8px;min-height:48px;margin-top:20px;padding:0 24px;border-radius:var(--radius-pill);background:#06c755;color:#06281a;font-weight:700;text-decoration:none}.landing-line-qr{flex:none;width:176px;height:176px;border-radius:var(--radius-sm);background:#fff}.landing-back-to-top{position:fixed;right:clamp(16px,3vw,32px);bottom:clamp(16px,3vw,32px);z-index:20;display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid var(--panel-border);border-radius:50%;background:var(--panel-bg);color:var(--page-text);box-shadow:0 10px 28px #0003;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);cursor:pointer}.landing-back-to-top:hover{color:var(--accent)}@media(max-width:760px){.landing-hero-image{object-position:68% 12%}.landing-hero:after{background:linear-gradient(180deg,#0a0e1859,#0a0e1800 24%,#0a0e1826 32%,#0a0e18db 54%)}.landing-hero-copy{margin:auto 0 0;padding-bottom:32px;max-width:none;box-sizing:border-box}.landing h1{font-size:34px}.landing-line{margin-left:16px;margin-right:16px}.landing-line-qr{display:none}.landing-feature,.landing-feature:nth-child(2n){grid-template-columns:minmax(0,1fr)}.landing-feature:nth-child(2n) .landing-feature-copy{order:0}.landing-brand{font-size:15px;gap:6px}.landing-nav-button{padding:0 12px}}.right-panel{display:flex;flex-direction:column;gap:8px;padding:12px;width:220px;max-width:220px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;overflow-x:hidden;box-sizing:border-box;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-right:none;border-radius:var(--radius-lg) 0 0 var(--radius-lg);position:absolute;right:0;top:50%;transform:translateY(-50%);box-shadow:var(--right-panel-shadow);transition:transform .25s ease}.right-panel.collapsed{transform:translateY(-50%) translate(110%);pointer-events:none}.right-panel-tab{position:fixed;top:50%;transform:translateY(-50%);right:220px;width:26px;height:64px;padding:0;border-radius:var(--radius-md) 0 0 var(--radius-md);border:1px solid var(--glass-border);border-right:none;background:var(--glass-btn-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);color:var(--icon-button-color);box-shadow:0 4px 12px #0000001f;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:9997;transition:right .25s ease,background .2s ease}.right-panel-tab:hover{background:var(--option-hover-bg)}.right-panel-tab.collapsed{right:0}@media(max-width:900px){.conversation-sidebar,.chat-panel{top:78px;left:12px;right:12px;width:auto;height:calc(100vh - 90px);height:calc(100dvh - 90px)}.chat-panel.sidebar-open{left:12px;transform:translate(calc(-100% - 24px));visibility:hidden;pointer-events:none;transition:transform .25s ease,visibility 0s linear .25s}.chat-panel-tab.sidebar-open{display:none}.right-panel{left:12px;right:12px;width:auto;max-width:none}.right-panel-tab,.right-panel-tab.collapsed{right:0}}@media(max-width:480px){.conversation-sidebar,.chat-panel{top:56px;height:calc(100vh - 68px);height:calc(100dvh - 68px)}.chat-header{padding:14px 14px 12px}.chat-header-title{gap:8px;font-size:16px}}.panel-select{width:100%;margin-bottom:4px}.panel-select:last-child{margin-bottom:0}.icon-button{background:var(--icon-button-bg);color:var(--icon-button-color);border:none;border-radius:var(--radius-md);width:50px;height:50px;min-width:50px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease;padding:0}.clear-button{background:transparent;border:none;color:var(--icon-button-color);cursor:pointer;display:flex;align-items:center;padding:5px;opacity:.6}.clear-button:hover{opacity:1}.button-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;width:100%}.voice-button{display:inline-flex;align-items:center;justify-content:center;padding:8px 10px;font-size:13px;text-align:center;border-radius:8px;white-space:nowrap;min-height:36px;line-height:1.2}.voice-button.active{background:var(--accent);border:1px solid white}.custom-avatar-panel{display:flex;flex-direction:column;gap:6px;width:100%;overflow-x:hidden;flex-shrink:0}.custom-avatar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%}.custom-avatar-button{width:100%;min-width:0;box-sizing:border-box;border:1px solid var(--panel-border);background:var(--input-bg);color:var(--input-text);cursor:pointer}.custom-avatar-button:hover{border-color:var(--input-focus-border);background:var(--input-focus-bg)}.custom-avatar-button:disabled,.custom-avatar-button.disabled{opacity:.5;cursor:not-allowed}.custom-avatar-name-form{display:flex;flex-direction:column;gap:6px;padding:10px;border:1px solid var(--input-focus-border);border-radius:10px;background:var(--input-focus-bg)}.custom-avatar-name-form .input-field{width:100%;box-sizing:border-box}.custom-avatar-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.custom-avatar-item{display:flex;align-items:stretch;gap:6px;min-width:0}.custom-avatar-select{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid var(--panel-border);border-radius:8px;background:var(--input-bg);color:var(--input-text);font-size:13px;text-align:left;cursor:pointer}.custom-avatar-select:hover{border-color:var(--input-focus-border)}.custom-avatar-item.selected .custom-avatar-select{border-color:var(--accent);background:var(--accent-soft)}.custom-avatar-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-avatar-source{flex-shrink:0;font-size:11px;color:var(--subtle-text)}.custom-avatar-delete{flex-shrink:0;min-width:34px;padding:0 8px;border:1px solid var(--panel-border);border-radius:8px;background:var(--input-bg);color:var(--subtle-text);font-size:12px;cursor:pointer}.custom-avatar-delete:hover,.custom-avatar-delete.confirming{border-color:#ef444499;color:#ef4444}.custom-avatar-hint,.custom-avatar-error{margin:0;font-size:12px;line-height:1.5;color:var(--subtle-text)}.custom-avatar-error{color:#ef4444}.action-button{padding:6px 4px;font-size:12px;text-align:center;border-radius:8px;white-space:nowrap;background:#6496ff4d;border:1px solid rgba(100,150,255,.5);color:#ffffffe6;cursor:pointer;transition:all .2s ease}.action-button:hover{background:#6496ff80;border-color:#6496ffcc;transform:scale(1.05)}.action-button:active{background:#6496ffb3;transform:scale(.95)}.recording{animation:pulse-red 1.5s infinite;background:#ff4d4d!important;color:#fff}.voice-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:var(--radius-pill);border:none;font-weight:700;cursor:pointer;transition:all .3s ease;font-size:16px;white-space:nowrap}.voice-btn.idle{background-color:var(--accent);color:var(--accent-contrast);box-shadow:var(--accent-shadow)}.voice-btn.active{background-color:#ff4d4f;color:#fff;box-shadow:0 0 15px #ff4d4f80;animation:pulse-red 1.5s infinite}.dot{width:10px;height:10px;border-radius:50%;background-color:#fff}.voice-btn.connecting{background-color:#6c8ebf;color:#fff;box-shadow:0 4px 6px #6c8ebf33}.voice-btn.connecting:disabled{cursor:progress}.voice-btn.connecting .dot,.voice-btn.active .dot{animation:blink 1s infinite}.voice-btn-countdown{padding:2px 8px;border-radius:999px;background:#ffffff38;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}@keyframes pulse-red{0%{box-shadow:0 0 #ff4d4fb3}70%{box-shadow:0 0 0 15px #ff4d4f00}to{box-shadow:0 0 #ff4d4f00}}.avatar-loading{display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none;-webkit-user-select:none;user-select:none}.avatar-loading-spinner{width:44px;height:44px;border-radius:50%;border:4px solid rgba(255,255,255,.25);border-top-color:#fff;animation:avatar-spin .8s linear infinite}.avatar-loading-text{font-size:13px;font-weight:600;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.45);white-space:nowrap}@keyframes avatar-spin{to{transform:rotate(360deg)}}.mobile-voice-fab{display:none}@media(max-width:900px){.mobile-voice-fab{display:flex;position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:9998;font-size:15px;padding:12px 24px}}@keyframes blink{50%{opacity:.3}}.avaturn-overlay{position:fixed;inset:0;z-index:10000;background:#000000b8;display:flex;justify-content:center;align-items:center;padding:20px}.avaturn-panel{width:100%;max-width:1200px;height:90vh;height:90dvh;border-radius:20px;overflow:hidden;background:#121212fa;border:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column}.avaturn-header{padding:16px 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.12);color:#fff;font-size:16px;font-weight:600}.avaturn-close{background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:10px 14px;cursor:pointer}.avaturn-status{padding:12px 18px;font-size:13px;color:#ffffffd9;min-height:36px}.avaturn-error{color:#ff6b6b}.avaturn-line-hint{margin-top:8px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;color:#ffd166}.avaturn-line-hint button{background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:6px 12px;cursor:pointer}.avaturn-sdk-container{flex:1;min-height:0}.avaturn-iframe{width:100%;height:100%;border:none}.voice-record-overlay{position:fixed;inset:0;z-index:10001;background:#000000b8;display:flex;justify-content:center;align-items:center;padding:20px}.voice-record-panel{width:100%;max-width:480px;border-radius:20px;background:var(--panel-bg);border:1px solid var(--panel-border);box-shadow:var(--panel-shadow);padding:20px;display:flex;flex-direction:column;gap:16px}.voice-record-header{display:flex;justify-content:space-between;align-items:center;color:var(--page-text);font-size:15px;font-weight:600}.voice-record-passage{color:var(--page-text);font-size:18px;line-height:1.8;margin:0;padding:16px;border-radius:14px;background:var(--input-bg);border:1px solid var(--input-border)}.voice-record-footer{display:flex;justify-content:space-between;align-items:center;gap:12px}.voice-record-timer{color:var(--subtle-text);font-size:14px}.voice-record-name-input{height:auto;padding:14px 16px}.voice-record-panel .avaturn-close{background:var(--input-bg);color:var(--page-text);border:1px solid var(--panel-border)}.utility-toolbar{position:fixed;top:24px;right:24px;z-index:9998;display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:10px;max-width:calc(100vw - 48px)}.token-chip{font-weight:700;font-variant-numeric:tabular-nums}.token-chip svg{color:#f59e0b}.user-chip{padding:4px 14px 4px 4px;max-width:220px}.user-chip .user-avatar{width:30px;height:30px;font-size:13px}.user-chip-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.utility-widget{position:relative}.settings-menu{position:absolute;top:calc(100% + 10px);right:0;background:var(--glass-modal-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);padding:10px;border-radius:var(--radius-lg);box-shadow:var(--glass-shadow);display:flex;flex-direction:column;gap:2px;min-width:200px;max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);overflow-y:auto;z-index:9999}.settings-menu-hidden{display:none}.settings-menu .utility-widget,.settings-menu .utility-btn{width:100%;box-sizing:border-box;justify-content:flex-start}.settings-menu .utility-btn{position:relative;background:transparent;border-color:transparent;border-radius:var(--radius-sm);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.settings-menu .utility-btn:before{content:"";position:absolute;top:-2px;left:12px;right:12px;height:1px;background:var(--header-border);pointer-events:none}.settings-menu>.utility-btn:first-child:before{display:none}.settings-menu .utility-btn:hover{background:var(--option-hover-bg)}.utility-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:var(--radius-pill);border:1px solid var(--glass-border);background:var(--glass-btn-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);color:var(--icon-button-color);font-size:14px;font-weight:500;cursor:pointer;box-shadow:0 4px 12px #0000001f;transition:background .2s ease,transform .2s ease;white-space:nowrap}.utility-btn:hover{background:var(--option-hover-bg)}.utility-btn svg{width:18px;height:18px;flex-shrink:0}.utility-btn.active{background:#1e293b;color:#fef08a;border-color:transparent}.settings-trigger{padding:10px;border-radius:50%}.utility-dropdown{position:absolute;top:calc(100% + 10px);right:0;background:var(--glass-modal-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);padding:10px;border-radius:var(--radius-md);box-shadow:var(--glass-shadow);display:flex;flex-direction:column;gap:6px;min-width:150px;z-index:9999}.utility-dropdown-floating{position:fixed;top:76px;right:24px}@media(max-width:480px){.utility-dropdown-floating{top:60px;right:12px}}.utility-dropdown-label{font-size:12px;color:var(--subtle-text);padding:0 8px 4px;text-align:center}.utility-option-btn{padding:8px 12px;border:none;background:transparent;border-radius:8px;cursor:pointer;font-size:14px;color:var(--page-text);text-align:left;transition:background-color .2s ease}.utility-option-btn:hover{background:var(--option-hover-bg)}.utility-option-btn.danger{color:#ef4444;text-align:center}.utility-option-btn.danger:hover{background:#ef44441f}@media(max-width:480px){.utility-toolbar{top:12px;right:12px;gap:8px}.utility-btn{padding:8px 12px;font-size:12.5px}.utility-btn svg{width:16px;height:16px}.settings-trigger{padding:8px}.user-chip{padding:3px;border-radius:50%}.user-chip .user-avatar{width:26px;height:26px}.user-chip-name,.toolbar-icon-btn .utility-btn-label{display:none}.toolbar-icon-btn{padding:8px;border-radius:50%}}.app-modal-overlay{position:fixed;inset:0;background:#0000004d;display:flex;justify-content:center;align-items:center;z-index:9999;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:20px;box-sizing:border-box}.app-modal-card{background:var(--glass-modal-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);color:var(--page-text);padding:clamp(20px,5vw,32px) clamp(18px,4vw,28px);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--glass-shadow);border:1px solid var(--glass-border);max-width:420px;width:100%;box-sizing:border-box}.app-modal-card h2{margin:0 0 8px;font-size:clamp(18px,4vw,22px);font-weight:600}.app-modal-subtitle{color:var(--subtle-text);font-size:clamp(13px,3vw,15px);margin-bottom:24px}.mood-button-group{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.mood-btn{padding:10px 16px;font-size:14px;cursor:pointer;border:1px solid var(--panel-border);border-radius:10px;background:var(--input-bg);color:var(--page-text);transition:background .2s ease,border-color .2s ease;display:flex;align-items:center;gap:6px}.mood-btn:hover{background:var(--input-focus-bg);border-color:var(--input-focus-border)}.mood-quote-text{color:var(--page-text);font-size:clamp(14px,3.5vw,17px);line-height:1.6;margin:20px 0 24px;padding:12px 16px;background:var(--input-bg);border-radius:10px}.app-modal-confirm-btn{padding:10px 32px;font-size:15px;font-weight:600;cursor:pointer;border:none;border-radius:999px;background:var(--accent);color:var(--accent-contrast);box-shadow:var(--accent-shadow);transition:transform .15s ease}.app-modal-confirm-btn:hover{transform:translateY(-1px)}.survey-prompt-open{display:inline-block;text-decoration:none}.survey-prompt-secondary{display:flex;justify-content:center;gap:20px;margin-top:16px}.survey-prompt-secondary button{padding:4px 2px;font-size:14px;cursor:pointer;border:none;background:none;color:var(--subtle-text)}.survey-prompt-secondary button:hover{color:var(--page-text);text-decoration:underline}.checkin-timeline{--checkin-accent: #f0a83a;--checkin-accent-strong: #e07a5f;margin:0 0 22px;padding:14px 12px 12px;background:var(--input-bg);border:1px solid var(--panel-border);border-radius:12px;text-align:left}.checkin-timeline-header{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:14px;padding:0 4px}.checkin-timeline-title{font-weight:600;font-size:14px}.checkin-timeline-streak{font-size:13px;font-weight:600;color:var(--checkin-accent-strong)}.checkin-timeline-track{--checkin-node-size: 34px;position:relative;display:grid;grid-template-columns:repeat(var(--checkin-columns, 7),minmax(0,1fr));list-style:none;margin:0;padding:0}.checkin-timeline-line{position:absolute;top:calc(var(--checkin-node-size) / 2 - 2px);left:calc(50% / var(--checkin-columns, 7));right:calc(50% / var(--checkin-columns, 7));height:4px;border-radius:999px;background:var(--panel-border);overflow:hidden}.checkin-timeline-line-fill{display:block;height:100%;background:linear-gradient(90deg,var(--checkin-accent),var(--checkin-accent-strong));transition:width .6s ease}.checkin-day{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}.checkin-day-node{width:var(--checkin-node-size);height:var(--checkin-node-size);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;background:var(--panel-bg);border:2px solid var(--panel-border);color:var(--subtle-text);box-sizing:border-box;transition:background .3s ease,border-color .3s ease,transform .3s ease}.checkin-day.done .checkin-day-node{background:linear-gradient(135deg,var(--checkin-accent),var(--checkin-accent-strong));border-color:transparent;color:#fff}.checkin-day.today .checkin-day-node{border-color:var(--checkin-accent);color:var(--checkin-accent-strong);animation:checkin-pulse 1.6s ease-in-out infinite}.checkin-day.is-today .checkin-day-node{transform:scale(1.12)}.checkin-day-label{font-size:11px;color:var(--subtle-text);white-space:nowrap}.checkin-day.is-today .checkin-day-label{color:var(--checkin-accent-strong);font-weight:700}@keyframes checkin-pulse{0%,to{box-shadow:0 0 #f0a83a73}50%{box-shadow:0 0 0 6px #f0a83a00}}@media(prefers-reduced-motion:reduce){.checkin-day.today .checkin-day-node{animation:none}.checkin-timeline-line-fill{transition:none}}@media(max-width:400px){.checkin-timeline{padding:12px 6px 10px}.checkin-timeline-track{--checkin-node-size: 30px}.checkin-day-node{font-size:11px}.checkin-day-label{font-size:10px}}.workshop-card{background:var(--glass-modal-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:var(--radius-lg);color:var(--page-text);width:100%;max-width:420px;height:85vh;height:85dvh;overflow-y:auto;padding:24px;box-sizing:border-box;display:flex;flex-direction:column;gap:14px}.workshop-header{display:flex;justify-content:space-between;align-items:center}.workshop-header h2{margin:0;font-size:1.2rem}.workshop-balance{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 10px;padding:12px 16px;border-radius:var(--radius-md);background:var(--input-bg);border:1px solid var(--panel-border);font-weight:700}.workshop-balance-text{display:flex;align-items:center;gap:6px;white-space:nowrap}.workshop-coin-count{color:#f59e0b;font-size:1.1rem;font-variant-numeric:tabular-nums}.workshop-streak{padding:4px 10px;border-radius:var(--radius-pill);border:1px solid var(--accent);background:var(--accent-soft);color:var(--page-text);font-size:.8rem;font-weight:700;cursor:pointer;white-space:nowrap;margin-left:auto}.workshop-tabs{display:flex;gap:4px;padding:3px;border-radius:var(--radius-pill);background:var(--icon-button-bg)}.workshop-tab{flex:1;padding:8px 6px;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--subtle-text);font-weight:700;white-space:nowrap;cursor:pointer;transition:background .2s ease,color .2s ease}.workshop-tab.active{background:var(--accent);color:var(--accent-contrast)}.workshop-unequip{width:100%;padding:8px;border:1px solid var(--panel-border);border-radius:var(--radius-md);background:var(--input-bg);color:var(--page-text);font-weight:700;cursor:pointer}.workshop-item-list{display:flex;flex-direction:column;gap:10px;flex:1;min-height:0;overflow-y:auto}.workshop-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--radius-md);background:var(--input-bg);border:1px solid var(--panel-border)}.workshop-item-icon{font-size:2rem}.workshop-item-info{flex:1;min-width:0}.workshop-item-name{font-weight:700;margin-bottom:4px}.workshop-item-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:var(--radius-pill);background:var(--accent-soft);border:1px solid var(--accent);font-size:.7rem;vertical-align:middle}.workshop-item-price{display:flex;align-items:center;gap:4px;font-size:.9rem;font-weight:700;color:var(--subtle-text)}.workshop-item-credit{font-size:.7rem;color:var(--subtle-text);margin-top:4px;line-height:1.4}.workshop-item-credit a{color:inherit}.workshop-item-btn{flex-shrink:0;padding:8px 16px;border:1px solid transparent;border-radius:var(--radius-pill);background:var(--icon-button-bg);color:var(--subtle-text);font-weight:700;cursor:pointer}.workshop-item-btn:disabled{cursor:not-allowed;opacity:.7}.workshop-item-btn.primary{background:var(--accent);color:var(--accent-contrast);box-shadow:var(--accent-shadow)}.workshop-item-btn.soft{background:var(--accent-soft);border-color:var(--accent);color:var(--page-text)}.workshop-item-btn.secondary{color:var(--page-text);border-color:var(--panel-border)}@media(max-width:480px){.workshop-overlay{padding:12px}.workshop-card{padding:18px 16px}.workshop-balance{padding:10px 12px;font-size:14px}.workshop-coin-count{font-size:1rem}.workshop-tab{padding:8px 4px;font-size:13px}}.coin-history{color:var(--page-text);flex:1;min-height:0;overflow-y:auto}.coin-history .checkin-timeline{margin-bottom:16px}.coin-history-heading{margin:0 0 8px;font-size:.95rem;font-weight:700}.coin-history-empty{margin:12px 0;font-size:.85rem;color:var(--subtle-text);text-align:center}.coin-history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.coin-history-row{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--input-bg);border:1px solid var(--panel-border);border-radius:var(--radius-md)}.coin-history-icon{font-size:1.3rem}.coin-history-calendar{display:flex;flex-direction:column;width:28px;border-radius:6px;overflow:hidden;border:1px solid var(--panel-border);background:var(--glass-modal-bg);text-align:center;line-height:1}.coin-history-calendar-month{padding:2px 0;background:var(--accent);color:var(--accent-contrast);font-size:8px;font-weight:700;white-space:nowrap}.coin-history-calendar-day{padding:3px 0 4px;font-size:13px;font-weight:700;color:var(--page-text);font-variant-numeric:tabular-nums}.coin-history-info,.coin-history-amounts{display:flex;flex-direction:column;gap:2px}.coin-history-info{flex:1;min-width:0}.coin-history-label{font-weight:700;font-size:.9rem;overflow-wrap:anywhere}.coin-history-time,.coin-history-balance{font-size:.75rem;color:var(--subtle-text)}.coin-history-amounts{align-items:flex-end;white-space:nowrap}.coin-history-amount{font-weight:700;font-size:1rem}.coin-history-amount.gain{color:#3f9a5a}.coin-history-amount.spend{color:#e0604f}.admin-card{background:var(--panel-bg);color:var(--page-text);border:1px solid var(--panel-border);border-radius:16px;box-shadow:var(--panel-shadow);width:100%;height:85vh;height:85dvh;max-height:960px;display:flex;flex-direction:column;padding:clamp(16px,4vw,28px);box-sizing:border-box}.admin-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.admin-tab-panel{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--admin-scrollbar) transparent;margin-right:calc(-1*clamp(16px,4vw,28px) + 4px);padding-right:calc(clamp(16px,4vw,28px) - 14px)}.admin-tab-panel::-webkit-scrollbar{width:10px}.admin-tab-panel::-webkit-scrollbar-thumb{background:var(--admin-scrollbar);border:3px solid transparent;background-clip:padding-box;border-radius:999px}@media(max-width:640px){.admin-card{height:auto;max-height:85dvh;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.admin-card>*{flex-shrink:0}.admin-tab-panel{overflow:visible;margin-right:0;padding-right:0}.admin-card-header{position:sticky;top:calc(-1*clamp(16px,4vw,28px));z-index:2;margin-top:calc(-1*clamp(16px,4vw,28px));padding:clamp(16px,4vw,28px) 0 8px;background:var(--panel-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}}.admin-card-header h2{display:flex;align-items:center;gap:8px;margin:0;font-size:clamp(17px,4vw,20px)}.admin-card-header-actions{display:flex;align-items:center;gap:4px}.admin-summary{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.admin-summary-item{flex:1;min-width:140px;background:var(--input-bg);border:1px solid var(--panel-border);border-radius:10px;padding:10px 14px;display:flex;flex-direction:column;gap:4px}.admin-summary-label{font-size:12px;color:var(--subtle-text)}.admin-summary-value{font-size:20px;font-weight:700}.admin-error{color:#ef4444;font-size:14px;margin:0 0 12px}.admin-table-wrap{overflow-x:auto;border:1px solid var(--panel-border);border-radius:10px}.admin-table{width:100%;border-collapse:collapse;font-size:13.5px;white-space:nowrap}.admin-table th,.admin-table td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--panel-border)}.admin-table th{position:sticky;top:0;background:var(--option-bg);color:var(--subtle-text);font-weight:600}.admin-table tbody tr:hover{background:var(--option-hover-bg)}.admin-muted{color:var(--subtle-text)}.admin-banned-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;font-size:11px;font-weight:600;color:#b45309;background:#f59e0b26;white-space:nowrap}.admin-delete-btn:hover:not(:disabled){color:#ef4444}.admin-row-actions{display:flex;gap:2px;justify-content:flex-end}.admin-ban-btn:hover:not(:disabled){color:#f59e0b}.admin-unban-btn{color:#f59e0b}.admin-unban-btn:hover:not(:disabled){color:#22c55e}.admin-ban-btn:disabled,.admin-unban-btn:disabled,.admin-delete-btn:disabled{opacity:.4;cursor:not-allowed}.admin-tabs{display:flex;gap:4px;margin-bottom:12px;border-bottom:1px solid var(--panel-border)}.admin-tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--subtle-text);font:inherit;font-size:14px;padding:8px 12px;margin-bottom:-1px;cursor:pointer}.admin-tab.active{color:var(--page-text);border-bottom-color:var(--chart-series-1);font-weight:600}.light-mode .admin-card{--admin-scrollbar: rgba(15, 23, 42, .18);--chart-series-1: #2a78d6;--chart-series-2: #eb6834;--chart-grid: rgba(15, 23, 42, .08);--chart-baseline: rgba(15, 23, 42, .25)}.dark-mode .admin-card{--admin-scrollbar: rgba(255, 255, 255, .2);--chart-series-1: #3987e5;--chart-series-2: #d95926;--chart-grid: rgba(255, 255, 255, .08);--chart-baseline: rgba(255, 255, 255, .22)}.admin-charts{display:flex;flex-direction:column;gap:12px}.admin-charts-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.admin-charts-note{margin:0;font-size:12px;color:var(--subtle-text)}.admin-chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:12px}.admin-chart{margin:0;background:var(--input-bg);border:1px solid var(--panel-border);border-radius:10px;padding:12px 14px;min-width:0}.admin-chart-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:8px}.admin-chart-title{font-size:13.5px;font-weight:600}figure>.admin-chart-title{margin-bottom:8px}.admin-chart-plot{position:relative;width:100%}.admin-chart-plot svg{display:block}.admin-chart-gridline{stroke:var(--chart-grid);stroke-width:1}.admin-chart-baseline{stroke:var(--chart-baseline);stroke-width:1}.admin-chart-tick{fill:var(--subtle-text);font-size:11px;font-variant-numeric:tabular-nums}.admin-chart-line{fill:none;stroke:var(--chart-series-1);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.admin-chart-area{fill:var(--chart-series-1);opacity:.1}.admin-chart-dot{fill:var(--chart-series-1);stroke:var(--option-bg);stroke-width:2}.admin-chart-crosshair{stroke:var(--chart-baseline);stroke-width:1}.admin-chart-tooltip{position:absolute;pointer-events:none;background:var(--option-bg);border:1px solid var(--panel-border);border-radius:8px;box-shadow:0 6px 20px #0000002e;padding:6px 10px;font-size:12px;white-space:nowrap;z-index:1}.admin-chart-tooltip-date{color:var(--subtle-text);margin-bottom:2px}.admin-chart-tooltip-value{font-size:14px;font-weight:700}.admin-chart-tooltip-row{display:flex;align-items:center;gap:6px}.admin-chart-tooltip-row b{margin-left:auto;padding-left:12px}.admin-chart-legend{display:flex;gap:12px;font-size:12px;color:var(--subtle-text)}.admin-chart-legend-item{display:inline-flex;align-items:center;gap:6px}.admin-chart-swatch{width:10px;height:10px;border-radius:3px;flex-shrink:0}.admin-chart-empty{margin:24px 0;text-align:center;font-size:13px;color:var(--subtle-text)}.admin-barlist{display:flex;flex-direction:column;gap:8px}.admin-barlist-row{display:grid;grid-template-columns:minmax(0,120px) 1fr auto;align-items:center;gap:10px;font-size:12.5px}.admin-barlist-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-barlist-track{height:14px;display:flex}.admin-barlist-bar{min-width:2px;height:100%;background:var(--chart-series-1);border-radius:0 4px 4px 0}.admin-barlist-value{color:var(--subtle-text);font-variant-numeric:tabular-nums;text-align:right}.admin-segmented{display:inline-flex;border:1px solid var(--panel-border);border-radius:8px;overflow:hidden}.admin-segmented button{background:none;border:none;color:var(--subtle-text);font:inherit;font-size:12px;padding:4px 10px;cursor:pointer}.admin-segmented button.active{background:var(--option-hover-bg);color:var(--page-text);font-weight:600}.admin-empty{text-align:center;color:var(--subtle-text);padding:24px!important}.spin{animation:admin-spin .8s linear infinite}@keyframes admin-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-models{display:flex;flex-direction:column;gap:8px}.admin-model-row{display:grid;grid-template-columns:minmax(0,1fr) 280px 84px 28px;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:var(--input-bg)}.admin-model-text{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-model-label{font-size:14px;font-weight:600}.admin-model-desc{font-size:12px;color:var(--subtle-text)}.admin-model-price{font-size:12px;color:var(--page-text);font-variant-numeric:tabular-nums}.admin-model-row select{width:100%;padding:6px 8px;border-radius:8px;border:1px solid var(--panel-border);background:var(--panel-bg);color:inherit;font-size:13px;font-variant-numeric:tabular-nums}.admin-quota-input{display:flex;align-items:center;gap:8px}.admin-quota-input input{flex:1;min-width:0;padding:6px 8px;border-radius:8px;border:1px solid var(--panel-border);background:var(--panel-bg);color:inherit;font-size:13px;font-variant-numeric:tabular-nums}.admin-quota-unit{flex:0 0 56px;font-size:12px;color:var(--subtle-text)}.admin-model-source{justify-self:stretch;text-align:center;font-size:11px;padding:2px 0;border-radius:999px;color:var(--subtle-text);border:1px solid var(--panel-border);white-space:nowrap}.admin-model-source.admin{color:var(--chart-series-1);border-color:currentColor}.admin-model-reset{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}@media(max-width:640px){.admin-model-row{grid-template-columns:minmax(0,1fr) 84px 28px}.admin-model-text{grid-column:1 / -1}}.admin-error-table .admin-error-message{min-width:280px;white-space:normal;word-break:break-word}.onboarding-shell{overflow-y:auto;align-items:flex-start;padding-top:48px;padding-bottom:48px}.onboarding-card{width:min(680px,calc(100vw - 40px));display:flex;flex-direction:column}.onboarding-header,.onboarding-footer{flex-shrink:0}.onboarding-overlay .onboarding-card{height:min(760px,calc(100vh - 40px));height:min(760px,calc(100dvh - 40px));overflow:hidden}.onboarding-overlay .onboarding-body{flex:1;min-height:0;overflow-y:auto;margin:0 -6px;padding:0 6px}@media(max-width:900px){.onboarding-overlay{padding:12px}.onboarding-overlay .onboarding-card{width:100%;height:calc(100dvh - 24px);padding:20px 18px 16px}}.onboarding-dialog-title{margin:0;font-size:1.2rem}.onboarding-top-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.onboarding-top-row .auth-brand{margin-bottom:0}.onboarding-skip-link{border:none;background:transparent;color:var(--subtle-text);font-size:12.5px;cursor:pointer;padding:4px 0;white-space:nowrap}.onboarding-skip-link:hover{color:var(--page-text);text-decoration:underline}.onboarding-steps{display:flex;gap:8px;margin:16px 0 20px;padding:0;list-style:none}.onboarding-steps li{flex:1;min-width:0}.onboarding-step-tab{width:100%;display:flex;flex-direction:column;gap:6px;padding:0;border:none;background:transparent;color:var(--subtle-text);font-size:12px;font-weight:600;text-align:left;cursor:pointer}.onboarding-step-tab:disabled{cursor:default}.onboarding-step-tab:disabled:not(.current){opacity:.5}.onboarding-step-tab:not(:disabled):hover{color:var(--page-text)}.onboarding-step-bar{height:5px;border-radius:var(--radius-pill);background:var(--panel-border);transition:background .2s ease}.onboarding-step-tab.active .onboarding-step-bar{background:var(--accent)}.onboarding-step-tab.current{color:var(--page-text);font-weight:800}.onboarding-step-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:480px){.onboarding-steps{gap:6px}.onboarding-step-tab{font-size:11.5px}}.onboarding-row-label{margin:12px 0 0}.onboarding-step{display:flex;flex-direction:column;gap:4px}.onboarding-step-title{margin:0;font-size:clamp(19px,4vw,23px);font-weight:800}.onboarding-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin:14px 0}.onboarding-pick-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px 10px;border:1px solid var(--panel-border);border-radius:14px;background:var(--input-bg);color:var(--page-text);font-size:14px;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease;position:relative}.onboarding-model-credit{margin:-6px 0 12px;font-size:12px;color:var(--subtle-text)}.onboarding-model-credit a{color:inherit;text-decoration:underline}.onboarding-pick-card:hover{border-color:var(--input-focus-border);transform:translateY(-1px)}.onboarding-pick-card.selected{border-color:var(--accent);background:var(--accent-soft)}.onboarding-pick-icon{font-size:30px;line-height:1}.onboarding-voice-card{position:relative;display:flex}.onboarding-voice-card .onboarding-pick-card{flex:1;min-width:0;justify-content:flex-start;padding-bottom:44px}.onboarding-voice-traits{margin-top:-4px;font-size:11.5px;font-weight:500;line-height:1.4;color:var(--subtle-text);text-align:center}.onboarding-voice-card .onboarding-pick-card:hover{transform:none}.onboarding-voice-play{position:absolute;left:50%;bottom:10px;transform:translate(-50%);width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;border:1px solid var(--panel-border);border-radius:50%;background:var(--glass-btn-bg);color:var(--page-text);cursor:pointer;transition:background .15s ease,color .15s ease}.onboarding-voice-play:hover{background:var(--option-hover-bg)}.onboarding-voice-play.playing{background:var(--accent);border-color:transparent;color:var(--accent-contrast)}.onboarding-toggle-row{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}.onboarding-toggle-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:999px;border:1px solid var(--panel-border);background:var(--input-bg);color:var(--page-text);font-size:13.5px;font-weight:600;cursor:pointer}.onboarding-toggle-btn:hover{background:var(--input-focus-bg)}.onboarding-toggle-btn.selected{border-color:var(--accent);background:var(--accent-soft)}.onboarding-avatar-preview{width:100%;height:220px;border-radius:16px;overflow:hidden;border:1px solid var(--panel-border);background:var(--input-bg);position:relative;margin:10px 0}.onboarding-avatar-preview canvas{width:100%!important;height:100%!important;position:relative!important;top:0!important;left:0!important}.onboarding-clone-wrap{margin:10px 0;display:flex;flex-direction:column;gap:8px}.onboarding-nav-row{display:flex;gap:10px;margin-top:20px}.onboarding-footer{margin-top:0;padding-top:16px;border-top:1px solid var(--header-border)}.onboarding-back-btn{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--panel-border);border-radius:14px;background:transparent;color:var(--page-text);font-size:14px;padding:0 18px;cursor:pointer}.onboarding-back-btn:hover{background:var(--input-focus-bg)}.onboarding-next-btn{flex:1;width:auto;margin-top:0;display:inline-flex;align-items:center;justify-content:center;gap:6px}.onboarding-summary{margin:14px 0;display:flex;flex-direction:column;gap:10px}.onboarding-summary-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--panel-border);border-radius:12px;background:var(--input-bg);font-size:14px}.onboarding-summary-label{flex-shrink:0;color:var(--subtle-text)}.onboarding-summary-dirty{flex-shrink:0;width:8px;height:8px;margin-left:auto;border-radius:50%;background:var(--accent)}.onboarding-summary-dirty+.onboarding-summary-value{margin-left:0}.onboarding-summary-value{margin-left:auto;text-align:right;min-width:0}.onboarding-summary-edit{flex-shrink:0;color:var(--accent)}.onboarding-prompt-field{margin-top:4px}.onboarding-prompt-input{width:100%;height:auto;min-height:110px;padding:12px 14px;box-sizing:border-box;resize:vertical;font-family:inherit;line-height:1.6}.onboarding-prompt-meta{display:flex;align-items:center;gap:12px;margin-top:4px}.onboarding-prompt-count{margin-left:auto;color:var(--subtle-text);font-size:12px;text-align:right;font-variant-numeric:tabular-nums}.onboarding-summary-prompt{max-width:60%;text-align:right;white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.onboarding-pick-card.voice-mine{border-color:#f59e0b99}.onboarding-pick-card.voice-mine.selected{border-color:var(--accent)}.voice-mine-badge{padding:2px 8px;border-radius:999px;background:#f59e0b2e;color:#d97706;font-size:11px;font-weight:700;white-space:nowrap}.character-carousel{margin:12px 0 8px}.character-carousel-stage{position:relative;height:300px;overflow:hidden;touch-action:pan-y;-webkit-user-select:none;user-select:none}.character-carousel-card{position:absolute;top:0;left:50%;width:190px;height:280px;margin-left:-95px;padding:0;display:flex;flex-direction:column;border:2px solid var(--panel-border);border-radius:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 10%,transparent),transparent),var(--option-bg);color:var(--page-text);overflow:hidden;cursor:pointer;transform:translate(calc(var(--offset) * 64%)) scale(calc(1 - var(--abs-offset) * .18));opacity:calc(1 - var(--abs-offset) * .45);z-index:calc(10 - var(--abs-offset));transition:transform .35s ease,opacity .35s ease,border-color .2s ease}.character-carousel-card.center{border-color:var(--accent);box-shadow:0 10px 28px #0000002e}.character-carousel-visual{flex:1;min-height:0;position:relative;display:flex;align-items:flex-end;justify-content:center}.character-carousel-visual img{width:100%;height:100%;object-fit:cover;object-position:top center;pointer-events:none}.character-carousel-visual canvas{width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important}.character-carousel-initial{align-self:center;font-size:56px;font-weight:700;color:var(--subtle-text)}.character-carousel-name{padding:8px 10px 10px;font-size:15px;font-weight:700;text-align:center}.character-carousel-arrow{position:absolute;top:50%;z-index:20;width:38px;height:38px;margin-top:-24px;padding:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;border:1px solid var(--panel-border);border-radius:50%;background:var(--input-bg);color:var(--page-text);cursor:pointer;box-shadow:0 4px 12px #00000026;transition:transform .15s ease,border-color .15s ease}.character-carousel-arrow:hover{border-color:var(--input-focus-border);transform:scale(1.06)}.character-carousel-arrow.prev{left:4px}.character-carousel-arrow.next{right:4px}.character-carousel-dots{display:flex;justify-content:center;gap:6px;margin-top:6px}.character-carousel-dot{width:7px;height:7px;padding:0;border:none;border-radius:50%;background:var(--subtle-text);opacity:.35;cursor:pointer;transition:width .2s ease,background .2s ease,opacity .2s ease}.character-carousel-dot.active{width:18px;border-radius:4px;background:var(--accent);opacity:1}@media(prefers-reduced-motion:reduce){.character-carousel-card{transition:none}}.character-carousel-arrow svg{flex-shrink:0}.profile-card{background:var(--glass-modal-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);color:var(--page-text);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--glass-shadow);width:100%;max-width:520px;max-height:85vh;max-height:85dvh;overflow-y:auto;padding:clamp(18px,4vw,28px);box-sizing:border-box;text-align:left}.profile-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.profile-card-header h2{margin:0;font-size:1.2rem}.profile-identity{display:flex;align-items:center;gap:14px}.profile-avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid var(--panel-border);font-size:22px}.profile-identity-text{min-width:0}.profile-name{font-size:16px;font-weight:800}.profile-email{margin-top:3px;color:var(--subtle-text);font-size:13px;overflow-wrap:anywhere}.profile-section{margin-top:22px;padding-top:18px;border-top:1px solid var(--panel-border)}.profile-section h3{margin:0;font-size:15px}.profile-section-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.profile-section-desc{margin:6px 0 0;color:var(--subtle-text);font-size:13px;line-height:1.5}.profile-success{border-color:#22c55e73}.profile-error{border-color:#ef444473}.profile-danger-link{border:none;background:transparent;color:#ef4444;font-size:13px;font-weight:700;cursor:pointer;padding:0}.profile-danger-link:hover:not(:disabled){text-decoration:underline}.profile-danger-link:disabled{opacity:.55;cursor:not-allowed}.profile-empty{margin:14px 0 0;padding:16px;border:1px dashed var(--panel-border);border-radius:12px;color:var(--subtle-text);font-size:13px;text-align:center}.memory-list{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.memory-item{display:flex;align-items:center;gap:10px;padding:10px 8px 10px 14px;border:1px solid var(--input-border);border-radius:12px;background:var(--input-bg)}.memory-item-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.memory-item-key{color:var(--subtle-text);font-size:12px}.memory-item-value{font-size:14px;overflow-wrap:anywhere}.memory-item .clear-button:disabled{opacity:.3;cursor:not-allowed}.profile-avatar-button{position:relative;flex-shrink:0;padding:0;border:none;background:transparent;border-radius:50%;cursor:pointer}.profile-avatar-button:disabled{cursor:wait;opacity:.6}.profile-avatar-button:hover:not(:disabled) .profile-avatar{filter:brightness(.85)}.profile-avatar-badge{position:absolute;right:-2px;bottom:-2px;width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--input-focus-border);color:#fff;border:2px solid var(--panel-bg)}.profile-avatar-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:8px}.profile-avatar-actions .auth-inline-link:disabled{opacity:.55;cursor:wait}.profile-line-action{margin-top:12px}.profile-line-action .custom-avatar-button{gap:6px;min-height:42px}.profile-sign-out-btn{width:100%;height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(239,68,68,.45);border-radius:12px;background:transparent;color:#ef4444;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:background .2s ease}.profile-sign-out-btn:hover{background:#ef44441a}.profile-section-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--panel-border);border-radius:12px;background:var(--input-bg);color:var(--page-text);font-family:inherit;font-size:15px;font-weight:700;text-align:left;cursor:pointer;transition:background .2s ease,border-color .2s ease}.profile-section-toggle:hover{background:var(--input-focus-bg);border-color:var(--input-focus-border)}.profile-section-toggle[aria-expanded=true]{margin-bottom:4px}.profile-section-chevron{flex-shrink:0;color:var(--subtle-text);transition:transform .2s ease}.profile-section-chevron.open{transform:rotate(180deg)}.profile-section-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;margin-left:8px;padding:0 6px;border-radius:999px;background:var(--input-focus-bg);color:var(--page-text);font-size:12px;font-weight:700;vertical-align:middle}.profile-section-title-row .profile-section-desc{flex:1}.profile-danger-toggle{color:#ef4444}.profile-delete-account-btn{margin-top:12px}.profile-delete-account-btn:disabled{opacity:.55;cursor:not-allowed}.profile-delete-account-btn:disabled:hover{background:transparent}.phone-ar-overlay{position:fixed;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:max(16px,env(safe-area-inset-top)) 16px max(20px,env(safe-area-inset-bottom));box-sizing:border-box;color:#f1f5f9;font-size:15px;line-height:1.5;pointer-events:none}.phone-ar-hint{align-self:center;margin:0;padding:8px 14px;border-radius:999px;background:#141826b8;text-align:center}.phone-ar-bottom{display:flex;flex-direction:column;gap:8px;margin-top:auto;margin-bottom:12px}.phone-ar-status{align-self:flex-start;margin:0;padding:4px 10px;border-radius:999px;background:#141826b8;color:#fcd34d;font-size:13px}.phone-ar-captions{display:flex;flex-direction:column;gap:6px;max-height:30vh;overflow:hidden;justify-content:flex-end}.phone-ar-caption{margin:0;padding:8px 12px;border-radius:12px;background:#141826b8;overflow-wrap:anywhere}.phone-ar-caption.user{align-self:flex-end;background:#4f46e5c7}.phone-ar-controls{display:flex;gap:10px}.phone-ar-btn{pointer-events:auto;min-height:48px;padding:0 18px;border:none;border-radius:14px;color:#fff;font-size:16px;font-weight:600;cursor:pointer}.phone-ar-btn.start-call{flex:1;background:#16a34a}.phone-ar-btn.end-call{flex:1;background:#dc2626}.phone-ar-btn.exit{margin-left:auto;background:#475569e6}.phone-ar-btn:disabled{opacity:.5}
