*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;width:100%;min-height:100vh;min-height:calc(100lvh + 200px);overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}html{-webkit-text-size-adjust:100%}button{font:inherit;color:inherit;cursor:pointer}input,textarea{font:inherit;color:inherit}a{color:inherit}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: 0px;--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}@media all and (display-mode: standalone),all and (display-mode: fullscreen){:root{--safe-bottom: env(safe-area-inset-bottom, 0px)}}:root{--kb-height: 0px;--gap-1: 4px;--gap-2: 8px;--gap-3: 12px;--gap-4: 16px;--gap-5: 20px;--gap-6: 24px;--gap-7: 32px;--rad-sm: 10px;--rad-md: 14px;--rad-lg: 18px;--rad-xl: 24px;--nav-height: 64px;--header-min-height: 56px;--t-fast: .14s;--t-norm: .22s;--t-slow: .32s;--ease: cubic-bezier(.2, .8, .2, 1)}:root,[data-theme=lavender]{--bg-1: #0F0816;--bg-2: #1A1025;--bg-3: #2A1A3D;--accent: #B650CF;--accent-2: #8050FF;--accent-soft: rgba(182, 80, 207, .18);--text: #FFFFFF;--muted: #B5A8C7;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .16);--surface-1: rgba(255, 255, 255, .06);--surface-2: rgba(255, 255, 255, .04);--surface-3: rgba(255, 255, 255, .025);--surface-hover: rgba(255, 255, 255, .05);--bubble-bot: rgba(70, 40, 100, .55);--bubble-user: linear-gradient(135deg, #5B2A75 0%, #8050FF 100%);--error: #FF6B6B}[data-theme=sunset]{--bg-1: #14060D;--bg-2: #2D101C;--bg-3: #4A1A30;--accent: #FF8FA3;--accent-2: #E85F88;--accent-soft: rgba(255, 143, 163, .18);--text: #FFF6F8;--muted: #C9A6B0;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .16);--bubble-bot: rgba(80, 30, 50, .55);--bubble-user: linear-gradient(135deg, #993355 0%, #FF8FA3 100%);--error: #FF6B6B}[data-theme=gold]{--bg-1: #0E0905;--bg-2: #1F1610;--bg-3: #38271A;--accent: #FFC857;--accent-2: #D4A737;--accent-soft: rgba(255, 200, 87, .18);--text: #FFF8E8;--muted: #C9B894;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .16);--bubble-bot: rgba(70, 50, 30, .55);--bubble-user: linear-gradient(135deg, #8B6622 0%, #FFC857 100%);--error: #FF6B6B}[data-theme=ocean]{--bg-1: #061015;--bg-2: #0E1F2C;--bg-3: #173646;--accent: #4ECDC4;--accent-2: #2EA8B0;--accent-soft: rgba(78, 205, 196, .18);--text: #EAF5F5;--muted: #94B0B5;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .16);--bubble-bot: rgba(30, 60, 70, .55);--bubble-user: linear-gradient(135deg, #1F6B6E 0%, #4ECDC4 100%);--error: #FF6B6B}[data-theme=emerald]{--bg-1: #050D08;--bg-2: #0E1F14;--bg-3: #163B23;--accent: #5BCC75;--accent-2: #2E9C50;--accent-soft: rgba(91, 204, 117, .18);--text: #EFF8F0;--muted: #95B59B;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .16);--bubble-bot: rgba(25, 60, 35, .55);--bubble-user: linear-gradient(135deg, #1F6638 0%, #5BCC75 100%);--error: #FF6B6B}[data-theme=indigo]{--bg-1: #08081A;--bg-2: #131432;--bg-3: #232658;--accent: #8794FF;--accent-2: #5563E0;--accent-soft: rgba(135, 148, 255, .18);--text: #ECEEFF;--muted: #9499C0;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .16);--bubble-bot: rgba(40, 45, 90, .55);--bubble-user: linear-gradient(135deg, #3F4AAA 0%, #8794FF 100%);--error: #FF6B6B}[data-theme-mode=light] .glass{box-shadow:0 6px 24px #00000014}[data-theme-mode=light] .msg.user{color:var(--chat-msg-color, #fff)}[data-theme-mode=light] .msg.bot:before{box-shadow:0 4px 14px #0000000f}[data-theme-mode=light] .msg.system,[data-theme-mode=light] .msg.error{background:#0000000a}[data-theme-mode=light] .chat-screen[data-has-bg=true] .msg.bot:before{background:#ffffffc7;border-color:#00000014}[data-theme-mode=light] .chat-screen[data-has-bg=true] .msg.bot{color:var(--chat-msg-color, #1a1a1a)}html{background:var(--bg-1)}body{background:radial-gradient(ellipse at 0% 0%,var(--bg-3) 0%,transparent 55%),radial-gradient(ellipse at 100% 0%,var(--bg-3) 0%,transparent 55%),radial-gradient(ellipse at 50% 100%,var(--accent-soft) 0%,transparent 60%),var(--bg-1);background-attachment:fixed}.app-shell{position:relative;width:100%;padding-left:var(--safe-left);padding-right:var(--safe-right)}.screen{display:none;min-height:100vh;min-height:100lvh}.screen.active{display:block;animation:screen-fade-in .18s var(--ease)}@keyframes screen-fade-in{0%{opacity:0}to{opacity:1}}.screen[data-screen=chats].active>.screen-body,.screen[data-screen=catalog].active>.screen-body{animation:screen-body-rise .26s cubic-bezier(.2,.8,.2,1) both}@keyframes screen-body-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.screen[data-screen=chats].active>.screen-body,.screen[data-screen=catalog].active>.screen-body{animation:none}}.page-header{position:sticky;top:0;z-index:10;display:flex;flex-direction:column;gap:var(--gap-2);padding:calc(var(--gap-4) + var(--safe-top)) var(--gap-5) var(--gap-3)}.page-header .brand-row{display:flex;align-items:center;gap:8px}.page-header .brand-row .spacer{flex:1}.page-header .title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.page-header .title-row .page-title{flex:1;min-width:0}.page-header .page-title{margin:2px 2px 4px;font-size:22px;font-weight:700;letter-spacing:-.01em}.page-header .page-search{display:flex;align-items:center;gap:10px;padding:11px 14px;margin-top:4px;border-radius:14px;height:44px;box-sizing:border-box}.page-header .page-search input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:var(--text);font-size:15px;line-height:1.2;font-family:inherit}.page-header .page-search input::placeholder{color:var(--muted);opacity:1}.page-header .page-search svg{flex-shrink:0;color:var(--muted)}.hdr-pills{display:flex;align-items:center;gap:8px}.hdr-pill{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px 0 11px;border-radius:999px;background:var(--surface-1, rgba(255,255,255,.06));border:1px solid var(--border);color:var(--text);font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:inset 0 1px #ffffff0f;transition:background .14s ease,border-color .14s ease,transform .12s ease}.hdr-pill:active{transform:scale(.96)}@media (hover: hover) and (pointer: fine){.hdr-pill:hover{background:var(--surface-2, rgba(255,255,255,.1))}}.hdr-pill svg{flex:none}.hdr-pill-gem svg{color:#ff4f80;filter:drop-shadow(0 1px 3px rgba(255,45,111,.45))}.hdr-pill-premium{color:var(--muted)}.hdr-pill-premium svg{color:var(--muted)}.hdr-pill-premium.is-active{color:var(--text);border-color:color-mix(in srgb,#f5b731 45%,var(--border));background:color-mix(in srgb,#f5b731 10%,var(--surface-1, rgba(255,255,255,.06)))}.hdr-pill-premium.is-active svg{color:#ffd166;filter:drop-shadow(0 1px 3px rgba(245,158,11,.45))}.brand{font-family:Brush Script MT,Comic Sans MS,cursive;font-size:30px;background:linear-gradient(120deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:400;font-style:italic}.screen-body{padding:var(--gap-1) var(--gap-4) calc(var(--nav-height) + var(--safe-bottom) + var(--gap-4) + var(--kb-height))}body[data-active-screen=auth] .screen-body,body[data-active-screen=chat] .screen-body,body[data-active-screen=character-detail] .screen-body,body[data-authed=no] .screen-body{padding-bottom:calc(var(--safe-bottom) + var(--gap-4) + var(--kb-height))}body[data-active-screen=home] .screen[data-screen=home] .screen-body{padding-bottom:calc(var(--nav-height) + var(--safe-bottom) + var(--gap-7) + var(--kb-height))}.glass{background:var(--surface-2, rgba(255, 255, 255, .04));backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);border:1px solid var(--border);border-radius:18px;box-shadow:0 6px 24px #00000040}.glass-soft{background:var(--surface-3, rgba(255, 255, 255, .025));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:14px}.glass-pop{animation:bubble-in .28s cubic-bezier(.2,.8,.2,1)}@keyframes bubble-in{0%{opacity:0;transform:scale(.92) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes bubble-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.94)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:14px;border:1px solid transparent;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;font-weight:600;font-size:14px;transition:transform .12s ease,box-shadow .12s ease,opacity .12s ease;box-shadow:0 6px 20px var(--accent-soft)}.btn:hover{transform:translateY(-1px)}.btn:active{transform:scale(.97)}.btn[disabled],.btn.disabled{opacity:.5;pointer-events:none}.btn-ghost{background:#ffffff0d;border-color:var(--border);color:var(--text);font-weight:500;box-shadow:none;backdrop-filter:blur(8px)}.btn-ghost:hover{background:#ffffff14}.btn-icon{padding:0;width:40px;height:40px;border-radius:50%;background:#ffffff0f;border:1px solid var(--border);color:var(--text);backdrop-filter:blur(10px);display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,transform .12s ease}.btn-icon:hover{background:#ffffff1a}.btn-icon:active{transform:scale(.92)}.btn-icon.accent{background:linear-gradient(135deg,var(--accent),var(--accent-2));border-color:transparent;color:#fff}.btn-pill{height:40px;padding:0 14px 0 12px;border-radius:999px;background:#ffffff0f;border:1px solid var(--border);color:var(--text);backdrop-filter:blur(10px);display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;line-height:1;transition:background .15s ease,transform .12s ease}.btn-pill:hover{background:#ffffff1a}.btn-pill:active{transform:scale(.96)}.btn-pill.accent{background:linear-gradient(135deg,var(--accent),var(--accent-2));border-color:transparent;color:#fff;box-shadow:0 4px 14px #00000040}.btn-pill svg{display:block}.btn-block{width:100%}.btn-danger{background:linear-gradient(135deg,#b23a48,#842f3d);box-shadow:0 6px 20px #b23a484d}.bottom-nav{position:fixed;left:0;right:0;bottom:var(--kb-height);z-index:50;display:flex;justify-content:center;pointer-events:none;transition:bottom var(--t-norm) var(--ease)}.bottom-nav:before{content:"";position:absolute;inset:0;background:#0f0816b3;-webkit-backdrop-filter:blur(28px) saturate(160%);backdrop-filter:blur(28px) saturate(160%);border-top:1px solid var(--border);pointer-events:none;z-index:-1}[data-theme-mode=light] .bottom-nav:before{background:#ffffffc7}.bottom-nav-inner{pointer-events:auto}body[data-active-screen=auth] .bottom-nav,body[data-authed=no] .bottom-nav{display:none}.bottom-nav-inner{width:100%;max-width:480px;padding:var(--gap-2) var(--gap-3) calc(var(--gap-2) + var(--safe-bottom));display:flex;align-items:stretch}:root[data-kb-open=true] .bottom-nav-inner{padding-bottom:var(--gap-2)}.nav-tab{flex:1;border:none;background:transparent;padding:8px 4px;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--muted);font-size:11px;position:relative;transition:color .15s ease}.nav-tab .ic-wrap{width:44px;height:36px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease}.nav-tab.active{color:var(--text)}.nav-tab.active .ic-wrap{background:linear-gradient(135deg,var(--accent),var(--accent-2));transform:scale(1.05);box-shadow:0 4px 16px var(--accent-soft);color:#fff}.nav-tab svg{width:22px;height:22px}.screen[data-screen=auth]{position:relative;isolation:isolate;background-color:#0c0618}.screen[data-screen=auth]:before{content:"";position:fixed;inset:0;z-index:-2;background:url(/static/favicon/wallpaper.png?v=2026-05-11) center / cover no-repeat;pointer-events:none}.screen[data-screen=auth]:after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(120% 80% at 50% 60%,#08041200,#08041273 75%,#080412b3),linear-gradient(180deg,#0804122e,#0804128c),linear-gradient(135deg,color-mix(in srgb,var(--accent) 55%,transparent),color-mix(in srgb,var(--accent-2) 55%,transparent));background-blend-mode:normal,normal,color}.auth-wrap{min-height:100lvh;min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:calc(var(--gap-6) + var(--safe-top)) var(--gap-6) calc(var(--gap-7) + var(--safe-bottom) + var(--kb-height));transition:padding-bottom var(--t-norm) var(--ease)}.auth-card{padding:28px 22px;display:flex;flex-direction:column;gap:14px}.auth-card h2{margin:0 0 4px;font-size:22px;font-weight:700}.auth-card .subtitle{margin:0 0 8px;color:var(--muted);font-size:13px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12px;color:var(--muted);letter-spacing:.02em;text-transform:uppercase}.field input,.field textarea{width:100%;padding:12px 14px;border-radius:12px;background:#ffffff0a;border:1px solid var(--border);color:var(--text);outline:none;transition:border-color .15s ease,background .15s ease}.field input:focus,.field textarea:focus{border-color:var(--accent);background:#ffffff0f}.field textarea{min-height:84px;resize:vertical}.tabs{display:flex;gap:6px;background:#ffffff0a;padding:4px;border-radius:14px;border:1px solid var(--border)}.tab-btn{flex:1;border:none;background:transparent;color:var(--muted);padding:10px;border-radius:10px;font-weight:500;font-size:13px;transition:background .15s ease,color .15s ease}.tab-btn.active{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.auth-status{font-size:12px;color:var(--muted);min-height:16px}.auth-status.error{color:var(--error)}.auth-status.ok{color:var(--accent)}.auth-sep{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin:4px 0 -2px}.auth-sep:before,.auth-sep:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent)}.btn-google{height:48px;padding:0 16px;border-radius:12px;background:#fff;color:#1f1f1f;border:1px solid rgba(0,0,0,.08);display:inline-flex;align-items:center;justify-content:center;gap:12px;font-size:15px;font-weight:500;letter-spacing:.01em;cursor:pointer;transition:background .15s ease,transform .12s ease,box-shadow .15s ease;box-shadow:0 1px 2px #0000002e}.btn-google:hover{background:#f7f8fa;box-shadow:0 2px 8px #00000040}.btn-google:active{transform:scale(.98)}.btn-google:disabled{opacity:.6;cursor:not-allowed}.btn-google .g-logo{width:18px;height:18px;flex-shrink:0}.chat-list{display:flex;flex-direction:column;gap:10px}.chat-row{display:flex;align-items:center;gap:14px;padding:12px 14px;cursor:pointer;transition:transform .15s ease,background .15s ease;position:relative;-webkit-tap-highlight-color:transparent}@media (hover: hover) and (pointer: fine){.chat-row:hover{background:var(--surface-hover, rgba(255,255,255,.05))}}.chat-row:active{transform:scale(.985)}.chat-row .avatar{width:52px;height:52px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--bg-3),var(--accent-soft));display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--text);font-size:18px;overflow:hidden;border:1px solid var(--border-strong)}.chat-row .avatar img{width:100%;height:100%;object-fit:cover}.chat-row .info{flex:1;min-width:0}.chat-row .info .top{display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-row .name{font-weight:600;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}.chat-row .time{font-size:11px;color:var(--muted);flex-shrink:0}.chat-row .preview{color:var(--muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.chat-row .pin-btn{flex-shrink:0;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:50%;color:var(--muted);cursor:pointer;padding:0;transition:color .15s ease,background .15s ease,transform .15s ease;-webkit-tap-highlight-color:transparent}@media (hover: hover) and (pointer: fine){.chat-row .pin-btn:hover{color:var(--text);background:#ffffff0f}}.chat-row .pin-btn:active{transform:scale(.92)}.chat-row .pin-btn svg{display:block;fill:none;stroke:currentColor;transition:fill .15s ease,stroke .15s ease}.chat-row .pin-btn.active{color:#ff5e87}.chat-row .pin-btn.active svg{fill:#ff5e87;stroke:#ff5e87}.chat-row.pinned{background:#ff5e870f}@media (hover: hover) and (pointer: fine){.chat-row.pinned:hover{background:#ff5e871a}}.empty-state{text-align:center;padding:60px 20px;color:var(--muted)}.empty-state .ic-wrap{width:64px;height:64px;margin:0 auto 16px;background:var(--accent-soft);border-radius:24px;display:flex;align-items:center;justify-content:center;color:var(--accent)}.empty-state h3{color:var(--text);margin:0 0 8px;font-size:17px}.empty-state p{margin:0;font-size:13px;line-height:1.5}.msg-search{margin-top:18px;transition:opacity .16s ease}.msg-search.is-loading{opacity:.55}.msg-search-head{display:flex;align-items:center;gap:8px;margin:0 4px 10px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.msg-search-n{font-weight:500;letter-spacing:0;text-transform:none;padding:1px 7px;border-radius:999px;background:#ffffff12;color:var(--muted)}.srch-row{align-items:flex-start}.srch-row .avatar{margin-top:2px;width:44px;height:44px;font-size:15px}.srch-row .name{font-size:15px}.srch-role{font-weight:500;color:var(--muted)}.srch-avatar-role{width:100%;height:100%;display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}.srch-avatar-role.is-user{color:var(--accent)}.srch-snippet{margin-top:3px;color:var(--muted);font-size:13px;line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere}.srch-hit{background:color-mix(in srgb,var(--accent) 30%,transparent);color:var(--text);border-radius:4px;padding:0 2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}@supports not (background: color-mix(in srgb,red 30%,transparent)){.srch-hit{background:var(--accent-soft, rgba(182, 80, 207, .32))}}.srch-count{flex-shrink:0;align-self:center;font-size:11px;font-weight:600;padding:2px 7px;border-radius:999px;color:var(--muted);background:#ffffff12}.srch-note{padding:18px 12px;text-align:center;color:var(--muted);font-size:13px;line-height:1.5}.chat-header>:not(.chat-search-bar):not(.chat-search-panel){transition:opacity .16s ease,transform .2s var(--ease, ease),box-shadow .12s ease}.chat-header.is-searching>:not(.chat-search-bar):not(.chat-search-panel){opacity:0;transform:translateY(-6px);pointer-events:none}.chat-search-bar{position:absolute;inset:0;display:flex;align-items:center;gap:10px;padding:calc(var(--gap-3) + var(--safe-top)) var(--gap-4) var(--gap-3);box-sizing:border-box;opacity:0;transform:translateY(6px);visibility:hidden;pointer-events:none;transition:opacity .16s ease,transform .2s var(--ease, ease),visibility 0s linear .2s}.chat-header.is-searching .chat-search-bar{opacity:1;transform:none;visibility:visible;pointer-events:auto;transition:opacity .18s ease 40ms,transform .22s var(--ease, ease) 40ms,visibility 0s}.chat-search-field{flex:1;min-width:0;height:40px;display:flex;align-items:center;gap:8px;padding:0 12px;border-radius:12px;background:#ffffff14;border:1px solid var(--border);box-sizing:border-box;transition:border-color .15s ease,background .15s ease}.chat-search-field:focus-within{border-color:color-mix(in srgb,var(--accent) 60%,transparent);background:#ffffff1a}.chat-search-field>svg{flex-shrink:0;color:var(--muted)}.chat-search-field input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:var(--text);font-size:15px;line-height:1.2;font-family:inherit;-webkit-appearance:none;appearance:none;-webkit-user-select:text;user-select:text}.chat-search-field input::placeholder{color:var(--muted);opacity:1}.chat-search-field input::-webkit-search-cancel-button,.chat-search-field input::-webkit-search-decoration{-webkit-appearance:none;display:none}.chat-search-clear{flex-shrink:0;width:22px;height:22px;border-radius:50%;border:0;padding:0;display:inline-flex;align-items:center;justify-content:center;background:#ffffff24;color:var(--text);cursor:pointer}.chat-search-clear:active{transform:scale(.9)}.chat-search-nav{flex-shrink:0;display:flex;align-items:center;gap:2px}.chat-search-nav[hidden],.chat-search-clear[hidden]{display:none}.chat-search-nav .btn-icon{width:34px;height:34px;background:transparent;border-color:transparent;backdrop-filter:none}.chat-search-nav .btn-icon:disabled{opacity:.35;pointer-events:none}.chat-search-pos{font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted);margin-right:4px;white-space:nowrap}.rot180{transform:rotate(180deg)}.chat-search-panel{position:absolute;top:100%;left:0;right:0;max-height:min(56vh,460px,calc(100vh - var(--kb-height, 0px) - 150px));overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:#0f0816eb;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border-bottom:1px solid var(--border);border-radius:0 0 18px 18px;box-shadow:0 18px 40px #00000059;opacity:0;transform:translateY(-8px);transition:opacity .18s ease,transform .22s var(--ease, ease);pointer-events:none}.chat-search-panel.is-open{opacity:1;transform:none;pointer-events:auto}.chat-search-panel.is-loading>*{opacity:.55}.chat-search-panel .srch-note{padding:22px 16px}.srch-compact-list{display:flex;flex-direction:column}.srch-row.is-compact{gap:12px;padding:10px var(--gap-4);border-radius:0;border-bottom:1px solid var(--border);background:transparent}.srch-row.is-compact:last-child{border-bottom:0}.srch-row.is-compact:active{transform:none;background:#ffffff0d}.srch-row.is-compact .avatar{width:36px;height:36px;margin-top:1px;background:#ffffff0f;border-color:transparent}.srch-row.is-compact .name{font-size:14px}.srch-row.is-compact .srch-snippet{font-size:13px;margin-top:2px}.cat-section{margin-bottom:26px}.cat-filterbar{display:flex;align-items:center;gap:10px;margin:0 0 16px;margin-left:calc(var(--gap-3) * -1);margin-right:calc(var(--gap-3) * -1);padding-left:var(--gap-3);padding-right:var(--gap-3)}.cat-filter-btn{flex-shrink:0;width:40px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid var(--border-strong);background:#ffffff0d;color:var(--text);cursor:pointer;position:relative;transition:background .16s ease,border-color .16s ease,transform .16s ease;-webkit-tap-highlight-color:transparent}.cat-filter-btn:hover{background:#ffffff17;border-color:color-mix(in srgb,var(--accent) 50%,var(--border-strong))}.cat-filter-btn:active{transform:scale(.94)}.cat-filter-btn.has-filters{border-color:color-mix(in srgb,var(--accent) 70%,var(--border-strong));background:color-mix(in srgb,var(--accent) 14%,rgba(255,255,255,.05));color:#fff}.cat-filter-dot{position:absolute;top:6px;right:6px;width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 0 0 2px var(--bg-1)}.cat-chips-row{flex:1;min-width:0;display:flex;align-items:center;gap:8px;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 28px),transparent 100%);-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 28px),transparent 100%)}.cat-chips-row::-webkit-scrollbar{display:none}.cat-chip{flex-shrink:0;padding:7px 14px;border-radius:999px;border:1px solid var(--border);background:#ffffff0a;color:var(--text);font-size:13px;white-space:nowrap;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .16s ease;-webkit-tap-highlight-color:transparent}.cat-chip:active{transform:scale(.96)}.cat-chip.active{background:linear-gradient(135deg,var(--accent),var(--accent-2));border-color:transparent;color:#fff}.cat-sort-group{display:flex;flex-direction:column;margin-bottom:18px}.cat-sort-group+.cat-sort-group{border-top:1px solid var(--border);padding-top:18px}.cat-sort-group .group-title{margin:0 4px 12px;font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);font-weight:600}.cat-sort-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.cat-sort-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:10px;padding:16px 8px 12px;border-radius:18px;border:1.5px solid var(--border-strong);background:#ffffff08;color:var(--text);font-size:12.5px;font-weight:500;text-align:center;line-height:1.2;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .16s ease,box-shadow .22s ease;-webkit-tap-highlight-color:transparent;user-select:none}.cat-sort-card:hover{background:#ffffff0f;border-color:color-mix(in srgb,var(--accent) 35%,var(--border-strong))}.cat-sort-card:active{transform:scale(.96)}.cat-sort-card .csc-ic{width:44px;height:44px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff0d;color:var(--text);transition:background .18s ease,color .18s ease,transform .22s ease}.cat-sort-card .csc-label{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.cat-sort-card .csc-check{position:absolute;top:6px;right:6px;width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;display:none;align-items:center;justify-content:center;box-shadow:0 2px 6px color-mix(in srgb,var(--accent) 60%,transparent)}.cat-sort-card .csc-check svg{display:block}.cat-sort-card.active{border-color:color-mix(in srgb,var(--accent) 80%,var(--border-strong));background:color-mix(in srgb,var(--accent) 12%,rgba(255,255,255,.04));box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent)}.cat-sort-card.active .csc-ic{background:color-mix(in srgb,var(--accent) 22%,rgba(255,255,255,.04));color:var(--accent)}.cat-sort-card.active .csc-check{display:inline-flex}.cat-flt-list{display:flex;flex-direction:column;gap:10px}.cat-flt-row{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:16px;border:1px solid var(--border);background:#ffffff08;color:var(--text);font-size:14.5px;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .16s ease;-webkit-tap-highlight-color:transparent;user-select:none}.cat-flt-row:hover{background:#ffffff0f}.cat-flt-row:active{transform:scale(.99)}.cat-flt-row.active{border-color:color-mix(in srgb,var(--accent) 50%,var(--border-strong));background:color-mix(in srgb,var(--accent) 8%,rgba(255,255,255,.04))}.cat-flt-row .cfr-ic{width:36px;height:36px;border-radius:12px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:#ffffff0d;color:var(--text);transition:background .18s ease,color .18s ease}.cat-flt-row[data-flag=with_image] .cfr-ic{color:#ff5e87;background:#ff5e871f}.cat-flt-row[data-flag=official] .cfr-ic{color:#b78bff;background:#b78bff1f}.cat-flt-row[data-flag=liked] .cfr-ic{color:#ff6f9b;background:#ff6f9b1f}.cat-flt-row .cfr-label{flex:1;min-width:0}.cat-flt-row .cfr-toggle{position:relative;width:46px;height:26px;flex-shrink:0;border-radius:999px;background:#ffffff1a;border:1px solid var(--border);transition:background .2s ease,border-color .2s ease}.cat-flt-row .cfr-toggle:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#d6d6e1;box-shadow:0 2px 6px #0000004d;transition:transform .22s cubic-bezier(.2,.8,.2,1),background .2s ease}.cat-flt-row.active .cfr-toggle{background:linear-gradient(135deg,var(--accent),var(--accent-2));border-color:transparent}.cat-flt-row.active .cfr-toggle:after{background:#fff;transform:translate(20px)}.cat-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:minmax(0,auto);grid-auto-flow:dense;gap:12px}@keyframes cat-card-in{0%{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.cat-card.cat-enter{animation:cat-card-in .46s cubic-bezier(.22,.7,.2,1) both;will-change:opacity,transform}@media (prefers-reduced-motion: reduce){.cat-card.cat-enter{animation:none}}.cat-more-loader{display:inline-flex;align-items:center;justify-content:center;padding:6px 0 2px}.cat-card{padding:0;overflow:hidden;position:relative;cursor:pointer;border:1px solid var(--border);background:#ffffff0a;border-radius:18px;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);box-shadow:0 6px 22px #00000038;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s cubic-bezier(.2,.8,.2,1),border-color .22s ease}.cat-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #00000052;border-color:var(--border-strong)}.cat-card.tall{aspect-ratio:3/4;grid-row:span 2}.cat-card.tall .cover{position:absolute;inset:0;background:linear-gradient(135deg,var(--bg-3),var(--accent-soft))}.cat-card.tall .cover img{width:100%;height:100%;object-fit:cover}.cat-card.tall .veil{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.78) 100%)}.cat-card.tall .meta{position:absolute;left:14px;right:14px;bottom:12px;color:#fff}.cat-card.tall .meta h4{margin:0 0 3px;font-size:15px;font-weight:700;text-shadow:0 1px 4px rgba(0,0,0,.5)}.cat-card.tall .meta p{margin:0;font-size:11px;color:#ffffffe0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-shadow:0 1px 3px rgba(0,0,0,.5)}.cat-card.tall .badge{position:absolute;top:10px;left:10px;background:#0000008c;color:#fff;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:600;display:inline-flex;align-items:center;gap:4px;backdrop-filter:blur(10px)}.cat-card.short{grid-row:span 1;aspect-ratio:auto;padding:14px 16px;display:flex;flex-direction:column;justify-content:space-between;gap:8px;background:linear-gradient(135deg,var(--bg-3),var(--bg-2));min-height:110px;text-align:left}.cat-card.short h4{margin:0 0 4px;font-size:15px;font-weight:700;color:var(--text)}.cat-card.short p{margin:0;font-size:12px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35}.cat-card.short .footer{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px}.cat-card.short .like{display:inline-flex;align-items:center;gap:4px}.chat-screen:focus,.chat-screen:focus-visible,.screen-body:focus,.screen-body:focus-visible{outline:none}.chat-screen.active{position:fixed;top:0;left:0;right:0;height:calc(100vh - var(--kb-height));height:calc(100svh - var(--kb-height));height:calc(100dvh - var(--kb-height));z-index:100;display:flex;flex-direction:column;background:radial-gradient(circle at 20% 15%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 38%),radial-gradient(circle at 85% 75%,color-mix(in srgb,var(--accent-2) 14%,transparent),transparent 42%),linear-gradient(160deg,var(--bg-1) 0%,var(--bg-2) 50%,var(--bg-1) 100%);transition:height var(--t-norm) var(--ease),transform .22s cubic-bezier(.2,.8,.2,1);transform:translateZ(0);will-change:transform;min-height:0;animation:none;overflow:hidden}.chat-screen.entering,.chat-screen.exiting{pointer-events:none}.chat-screen.entering,.chat-screen.exiting{transform:translate3d(100%,0,0)}.chat-screen.dragging{transition:height var(--t-norm) var(--ease)}.chat-screen .screen-body{flex:1 1 0;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain;padding:0 var(--gap-3) calc(var(--composer-h, 0px) + 12px)!important;position:relative;z-index:1}.chat-bg-layer{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:var(--chat-bg-image, none);background-size:cover;background-position:center;background-repeat:no-repeat;opacity:0;transition:opacity .25s ease}.chat-bg-layer:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,var(--chat-bg-dim, .4))}.chat-screen[data-has-bg=true] .chat-bg-layer{opacity:1}.chat-screen[data-has-bg=true] .chat-header{background:#00000059}.chat-bg-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s ease;pointer-events:none;display:none}.chat-bg-layer[data-video=true] .chat-bg-video{display:block}.chat-bg-layer[data-video=true][data-video-playing=true] .chat-bg-video{opacity:1}.chat-screen[data-bg-video=true] .msg.bot:before{backdrop-filter:none;-webkit-backdrop-filter:none;background:#181224c7}.chat-screen[data-bg-video=true] .msg.user:before{backdrop-filter:none;-webkit-backdrop-filter:none}.chat-header{position:relative;z-index:2}.chat-header{flex-shrink:0;display:flex;align-items:center;gap:var(--gap-3);padding:calc(var(--gap-3) + var(--safe-top)) var(--gap-4) var(--gap-3);background:#0f0816b3;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border-bottom:1px solid var(--border);z-index:5}.chat-header,.chat-header *,.pinned-strip,.pinned-strip *,.quick-replies,.quick-replies *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.chat-header .avatar{width:36px;height:36px;border-radius:50%;background:var(--accent-soft);overflow:hidden;flex-shrink:0;padding:0;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:var(--text);position:relative;transition:transform .12s ease,box-shadow .12s ease}.chat-header .avatar:hover{transform:scale(1.06);box-shadow:0 0 0 2px var(--accent)}.chat-header .avatar img{width:100%;height:100%;object-fit:cover}.chat-header .avatar img:not([src]),.chat-header .avatar img[src=""]{display:none}.avatar-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:14px}.chat-header .title{flex:1;min-width:0}.chat-header .title .name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.messages{display:flex;flex-direction:column;gap:8px;padding:16px 4px 8px;min-height:100%}.msg{max-width:78%;padding:10px 14px;border-radius:18px;word-wrap:break-word;white-space:pre-wrap;position:relative;animation:msg-in .22s cubic-bezier(.2,.8,.2,1)}@keyframes msg-in{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.msg.bot,.msg.user{z-index:0}.msg.bot:before,.msg.user:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;opacity:var(--chat-bubble-alpha, 1)}.msg.bot{align-self:flex-start;border-bottom-left-radius:6px;color:var(--chat-msg-color, inherit)}.msg.bot:before{background:var(--surface-1, rgba(255, 255, 255, .06));border:1px solid var(--border);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);box-shadow:0 4px 18px #0000002e}.msg.user{align-self:flex-end;border-bottom-right-radius:6px;color:var(--chat-msg-color, #fff)}.msg.user:before{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 75%,transparent),color-mix(in srgb,var(--accent-2) 75%,transparent));border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);box-shadow:0 4px 18px var(--accent-soft);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.msg.bot:before{background:#261a36f0}.msg.user:before{background:linear-gradient(135deg,var(--accent),var(--accent-2));border:1px solid rgba(255,255,255,.14)}[data-theme-mode=light] .msg.bot:before{background:#fffffff0;border:1px solid rgba(0,0,0,.08)}}.chat-screen[data-has-bg=true] .msg.bot:before{background:#140c1e6b;border-color:#ffffff1f}.chat-screen[data-has-bg=true] .msg.user:before{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 65%,transparent),color-mix(in srgb,var(--accent-2) 65%,transparent))}.msg.system,.msg.error,.msg.info{align-self:center;background:#ffffff0a;border:1px dashed var(--border);color:var(--muted);font-size:12px;border-radius:12px;text-align:center;max-width:92%}.msg.error{color:var(--error);border-color:var(--error)}.msg.bot.error:before{content:none}.msg.info{color:color-mix(in srgb,var(--accent) 78%,var(--text));border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 8%,transparent)}[data-theme-mode=light] .msg.info{background:color-mix(in srgb,var(--accent) 7%,#ffffff)}.msg-row.img-suggest{display:flex;justify-content:center;padding:4px 0}.img-suggest-card{position:relative;width:100%;max-width:420px;padding:14px 16px 12px;border-radius:18px 18px 18px 6px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 16%,transparent),color-mix(in srgb,var(--accent-2) 10%,transparent)),var(--surface-1, rgba(255, 255, 255, .06));border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);box-shadow:0 6px 22px #0000002e,0 0 0 1px #ffffff05 inset;animation:msg-in .24s cubic-bezier(.2,.8,.2,1)}.img-suggest-head{display:flex;align-items:center;gap:8px;color:var(--text);font-weight:600;font-size:14px;margin-bottom:4px}.img-suggest-ic{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;flex-shrink:0;box-shadow:0 4px 12px var(--accent-soft)}.img-suggest-title{line-height:1.25}.img-suggest-sub{font-size:13px;line-height:1.4;color:var(--muted);margin-bottom:12px}.img-suggest-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.img-suggest-cta{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:999px;border:0;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 6px 18px var(--accent-soft);transition:transform .14s ease,filter .16s ease,box-shadow .16s ease;-webkit-tap-highlight-color:transparent}.img-suggest-cta:hover{filter:brightness(1.06)}.img-suggest-cta:active{transform:scale(.97)}.img-suggest-dismiss{background:transparent;border:0;padding:4px 2px;color:var(--muted);font-size:12px;font-family:inherit;cursor:pointer;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--muted) 40%,transparent);text-underline-offset:3px;opacity:.85;transition:opacity .14s ease,color .14s ease;-webkit-tap-highlight-color:transparent}.img-suggest-dismiss:hover{opacity:1;color:var(--text)}.img-suggest-dismiss:active{opacity:.7}.msg strong{font-weight:700}.msg em{font-style:italic}.msg a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;word-break:break-word}.msg a:hover{opacity:.85}.msg code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em;padding:1px 6px;border-radius:6px;background:#0000002e}[data-theme-mode=light] .msg.bot code{background:#0000000f}.msg pre{margin:6px 0 2px;padding:10px 12px;border-radius:10px;background:#00000038;overflow-x:auto;white-space:pre;font-size:.92em;line-height:1.45}[data-theme-mode=light] .msg.bot pre{background:#0000000f}.msg pre code{background:transparent;padding:0;border-radius:0;font-size:1em}.msg.typing{display:inline-flex;align-items:center;gap:5px;padding:14px 16px;min-height:44px}.msg.typing .dot{width:7px;height:7px;border-radius:50%;background:#ffffffb3;animation:typing-bounce 1.2s infinite ease-in-out both}.msg.typing .dot:nth-child(1){animation-delay:-.32s}.msg.typing .dot:nth-child(2){animation-delay:-.16s}.msg.typing .dot:nth-child(3){animation-delay:0s}@keyframes typing-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.msg.typing .recover-note{font-size:12px;line-height:1.3;color:#ffffff8c;margin-left:8px;animation:recover-note-in .4s ease}@keyframes recover-note-in{0%{opacity:0}to{opacity:1}}.msg-row.cv-skip{content-visibility:hidden}.msg-row{display:flex;align-items:flex-end;gap:8px;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.msg-row .msg{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.msg-row.bot{justify-content:flex-start}.msg-row.user{justify-content:flex-end}.msg-row .mini-avatar{width:28px;height:28px;border-radius:50%;flex-shrink:0;overflow:hidden;background:var(--bg-3);border:1px solid var(--border)}.msg-row .mini-avatar img{width:100%;height:100%;object-fit:cover}.msg-row.user .mini-avatar{display:none}.msg-row .time{font-size:10px;color:#ffffff80;align-self:flex-end;flex-shrink:0}.msg-kebab{position:absolute;bottom:7px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--border-strong);border-radius:50%;background:var(--surface, rgba(26, 16, 37, .92));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--muted);cursor:pointer;z-index:3;opacity:0;visibility:hidden;transform:scale(.8);transition:opacity .13s ease,transform .13s ease,background .13s ease,color .13s ease;-webkit-tap-highlight-color:transparent}.msg.bot .msg-kebab{right:-34px}.msg.user .msg-kebab{left:-34px}.msg-row.show-actions .msg-kebab{opacity:1;visibility:visible;transform:scale(1)}.msg-kebab:hover{background:#ffffff1f;color:var(--text)}.msg-kebab:active{transform:scale(.92)}.composer{display:none;flex-direction:column;align-items:center;position:absolute;left:0;right:0;bottom:0;z-index:3;pointer-events:none}body[data-active-screen=chat] .chat-screen .composer{display:flex}.composer>*{pointer-events:auto}.composer-inner{width:100%;max-width:480px;position:relative;padding:var(--gap-2) var(--gap-3) calc(var(--gap-3) + var(--safe-bottom));background:transparent;border-top:none;display:flex;align-items:flex-end;gap:var(--gap-2)}:root[data-kb-open=true] .composer-inner{padding-bottom:var(--gap-3)}.quick-replies{width:100%;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;box-shadow:none;display:flex;justify-content:center;pointer-events:none;position:relative}.quick-replies[hidden]{display:none}.scroll-down-fab{position:absolute;right:14px;bottom:calc(var(--composer-h, 64px) + 14px);z-index:7;width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#140c1eb8;color:var(--fg, #fff);border:1px solid var(--border-strong, rgba(255,255,255,.16));backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);cursor:pointer;box-shadow:0 8px 24px #00000059;opacity:0;visibility:hidden;transform:translateY(10px) scale(.9);pointer-events:none;transition:opacity .22s ease,transform .22s cubic-bezier(.22,.61,.36,1),background .15s ease,visibility .22s}.scroll-down-fab.is-visible{opacity:.92;visibility:visible;transform:translateY(0) scale(1);pointer-events:auto}.scroll-down-fab.is-visible:hover{opacity:1;background:#1e142dd1;transform:translateY(-1px) scale(1)}.scroll-down-fab.is-visible:active{transform:scale(.94)}.quick-replies.is-busy .quick-reply{opacity:.5;cursor:not-allowed;filter:saturate(.6)}.quick-replies-scroll{pointer-events:auto;display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;border-radius:0;width:100%;max-width:480px;min-width:0;padding:4px calc(var(--gap-3) + 44px + var(--gap-2)) 4px calc(var(--gap-3) + 44px + var(--gap-2));scrollbar-width:none;-ms-overflow-style:none;-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 44px),transparent 100%);mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 44px),transparent 100%)}.quick-replies-scroll::-webkit-scrollbar{display:none}.quick-reply{flex:0 0 auto;scroll-snap-align:start;min-height:36px;padding:8px 14px;border-radius:999px;max-width:min(160px,40vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.2;background:#0f08166b;-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);border:1px solid var(--border);color:var(--text);cursor:pointer;transition:background .16s ease,transform .12s ease,border-color .16s ease}.chat-screen[data-has-bg=true] .quick-reply{background:#0f08168c}.quick-reply:hover,.quick-reply:focus-visible{outline:none;background:#0f08169e;border-color:var(--accent)}.quick-reply:active{transform:scale(.96)}.quick-replies-more{display:none!important}.composer textarea{flex:1;resize:none;min-height:44px;max-height:140px;padding:11px 14px;border-radius:22px;font-size:16px;background:#0f08166b;-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);border:1px solid var(--border);color:var(--text);outline:none;line-height:1.4}.chat-screen[data-has-bg=true] .composer textarea{background:#0f08168c}.composer textarea:focus{border-color:var(--accent)}.composer .send-btn{width:44px;height:44px;flex-shrink:0;padding:0;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));border:none;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px var(--accent-soft)}.composer .send-btn:active{transform:scale(.92)}.composer .send-btn.is-busy{opacity:.5;cursor:not-allowed;filter:saturate(.6)}.composer .send-btn{position:relative}.composer .send-btn .send-paid-badge{position:absolute;top:-4px;right:-4px;width:17px;height:17px;border-radius:50%;background:linear-gradient(135deg,#ff5e87,#ff2d6f);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px var(--bg-1),0 2px 6px #ff2d6f66;pointer-events:none}.composer .send-btn .send-paid-badge svg{width:10px;height:10px}.composer .send-btn.is-busy:active{transform:none}@keyframes shake-blocked{0%,to{transform:translate(0)}15%{transform:translate(-6px)}30%{transform:translate(6px)}45%{transform:translate(-4px)}60%{transform:translate(4px)}75%{transform:translate(-2px)}90%{transform:translate(2px)}}.shake-blocked{animation:shake-blocked .38s cubic-bezier(.36,.07,.19,.97) both}@media (prefers-reduced-motion: reduce){.shake-blocked{animation:none}}.composer .attach-btn{width:44px;height:44px;flex-shrink:0;padding:0;border-radius:50%;border:1px solid var(--border);background:#0f08166b;-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);color:color-mix(in srgb,var(--accent) 85%,#fff);display:flex;align-items:center;justify-content:center;transition:transform .16s ease,background .2s ease,border-color .2s ease,color .2s ease}.chat-screen[data-has-bg=true] .composer .attach-btn{background:#0f08168c}.composer .attach-btn:hover,.composer .attach-btn:focus-visible{outline:none;background:#0f08168c;border-color:var(--accent);color:#fff}.composer .attach-btn:active{transform:scale(.92)}.composer .attach-btn:disabled{opacity:.45;cursor:not-allowed}.composer .attach-btn-ic{transition:transform .22s cubic-bezier(.4,1.3,.6,1)}.composer.is-attach-open .attach-btn{background:var(--accent-soft, rgba(255, 90, 140, .12));border-color:var(--accent);color:#fff}.composer.is-attach-open .attach-btn-ic{transform:rotate(45deg)}.composer,.composer *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.composer textarea#msgInput{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.composer .attach-menu{position:absolute;left:var(--gap-3);bottom:calc(100% - 6px);width:min(320px,calc(100% - var(--gap-3) * 2));display:flex;flex-direction:column;gap:6px;padding:8px;background:color-mix(in srgb,var(--bg-elev) 92%,transparent);border:1px solid var(--border);border-radius:18px;box-shadow:0 16px 40px #00000059;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px) scale(.98);transform-origin:22px 100%;z-index:3;transition:opacity .18s ease,transform .22s cubic-bezier(.4,1.3,.6,1),visibility 0s linear .22s}.composer.is-attach-open .attach-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);transition:opacity .18s ease,transform .26s cubic-bezier(.4,1.3,.6,1),visibility 0s linear 0s}.composer .attach-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border:none;background:transparent;border-radius:12px;color:var(--text);text-align:left;cursor:pointer;width:100%;opacity:0;transform:translateY(6px);transition:opacity .2s ease,transform .24s cubic-bezier(.4,1.3,.6,1),background .16s ease}.composer.is-attach-open .attach-item{opacity:1;transform:translateY(0)}.composer.is-attach-open .attach-item:nth-child(1){transition-delay:60ms}.composer.is-attach-open .attach-item:nth-child(2){transition-delay:.11s}.composer .attach-item:hover,.composer .attach-item:focus-visible{outline:none;background:#ffffff0f}.composer .attach-item:active{background:#ffffff1a}.composer .attach-ic{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.composer .attach-ic-photo{background:linear-gradient(135deg,#c75ad9,#7b4bff)}.composer .attach-ic-spark{background:linear-gradient(135deg,#ff8fb3,#c061ff)}.composer .attach-text{display:flex;flex-direction:column;min-width:0}.composer .attach-title{font-size:15px;font-weight:600;line-height:1.2}.composer .attach-sub{font-size:12px;color:var(--muted);margin-top:2px}.image-attach-overlay{position:fixed;inset:0;z-index:300;background:#0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;padding:20px;animation:fade-in .18s ease}.image-attach-overlay.open{display:flex}.image-attach-dialog{position:relative;width:100%;max-width:420px;background:#140c1efa;border:1px solid var(--border-strong);border-radius:16px;padding:12px 12px 10px;display:flex;flex-direction:column;gap:10px;box-shadow:0 20px 60px #00000073;animation:confirm-in .22s var(--ease)}.image-attach-close{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;border:none;background:#ffffff14;color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;transition:background .16s ease,transform .16s ease}.image-attach-close:hover{background:#ffffff29}.image-attach-close:active{transform:scale(.92)}.image-attach-preview{position:relative;width:100%;display:flex;align-items:center;justify-content:center;background:#00000040;border-radius:12px;overflow:hidden;max-height:min(56vh,460px);min-height:160px}.image-attach-preview img{display:block;max-width:100%;max-height:min(56vh,460px);width:auto;height:auto;object-fit:contain}.image-attach-preview.is-uploading:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);background-size:200% 100%;animation:imageAttachShimmer 1.2s linear infinite}@keyframes imageAttachShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.image-attach-bar{display:flex;align-items:flex-end;gap:8px}.image-attach-caption{flex:1;min-width:0;resize:none;min-height:40px;max-height:120px;padding:10px 14px;border-radius:20px;border:1px solid var(--border);background:#ffffff0a;color:var(--text);font:inherit;outline:none;line-height:1.35;transition:border-color .16s ease,background .16s ease}.image-attach-caption:focus{border-color:var(--accent, #4a9eff);background:#ffffff0f}.image-attach-send{flex-shrink:0;width:40px;height:40px;border-radius:50%;border:none;background:var(--accent, linear-gradient(135deg, #b388ff, #7c4dff));color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .16s ease,opacity .16s ease,filter .16s ease}.image-attach-send:hover:not(:disabled){filter:brightness(1.1)}.image-attach-send:active:not(:disabled){transform:scale(.92)}.image-attach-send:disabled{opacity:.45;cursor:not-allowed}.image-attach-send svg{display:block}.msg.user .msg-attached-image,.msg.bot .msg-attached-image{display:block;width:100%;max-width:240px;max-height:320px;object-fit:cover;border-radius:12px;margin:0 0 6px;cursor:zoom-in;background:#00000026}.msg.user .msg-attached-image:only-child,.msg.bot .msg-attached-image:only-child{margin-bottom:0}.msg.user:has(.msg-attached-image){padding:6px;max-width:min(252px,78%)}.msg.user:has(.msg-attached-image):before{background:#ffffff0f}.msg-attached-text{padding:2px 8px 4px}.popover-overlay{position:fixed;inset:0;z-index:100;background:#00000059;backdrop-filter:blur(2px);display:none;animation:fade-in .18s ease}.popover-overlay.open{display:block}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.popover{position:absolute;top:64px;right:14px;min-width:240px;padding:6px;background:#140c1ed9;backdrop-filter:blur(28px) saturate(160%);-webkit-backdrop-filter:blur(28px) saturate(160%);border:1px solid var(--border-strong);border-radius:16px;box-shadow:0 16px 40px #0006;animation:bubble-in .22s cubic-bezier(.2,.8,.2,1);transform-origin:top right}#chatMenu{max-height:calc(100vh - 78px);max-height:calc(100dvh - 78px - env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.popover-item{display:flex;align-items:center;gap:14px;padding:10px 12px;border-radius:10px;cursor:pointer;border:none;background:transparent;color:var(--text);width:100%;text-align:left;font-size:14px;transition:background .15s ease}.popover-item:hover{background:#ffffff0f}.popover-item[hidden]{display:none!important}.popover,.popover *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.popover-item .ic-wrap{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);flex-shrink:0}.popover-item.danger{color:var(--error)}.popover-item.danger .ic-wrap{background:#ff6b6b1f;color:var(--error)}.popover-item .label .desc{font-size:11px;color:var(--muted);margin-top:1px}.msg-edit-textarea{width:100%;min-height:120px;resize:vertical;box-sizing:border-box;padding:12px 14px;border-radius:12px;border:1px solid var(--border, rgba(255,255,255,.12));background:var(--bg-2, rgba(255,255,255,.04));color:var(--text, #fff);font:inherit;line-height:1.5}.msg-edit-textarea:focus{outline:none;border-color:var(--accent)}.msg-edit-note{margin-top:10px;font-size:12px;line-height:1.4;color:var(--muted)}.sheet-actions{display:flex;gap:10px;width:100%}.sheet-actions .btn{flex:1}.choice-list{display:flex;flex-direction:column;gap:10px}.choice-item{display:flex;align-items:flex-start;gap:14px;width:100%;text-align:left;padding:14px;border-radius:14px;background:#ffffff0a;border:1px solid var(--border);color:var(--text);cursor:pointer;font:inherit;transition:background .16s ease,border-color .16s ease,transform .12s ease}.choice-item:hover{background:#ffffff12}.choice-item:active{transform:scale(.985)}.choice-ic{flex:0 0 42px;width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent)}.choice-text{display:flex;flex-direction:column;gap:3px;min-width:0}.choice-title{font-size:15px;font-weight:600;line-height:1.25}.choice-desc{font-size:12.5px;line-height:1.4;color:var(--muted)}.choice-item.danger{border-color:#ff6b6b4d}.choice-item.danger:hover{background:#ff6b6b14}.choice-item.danger .choice-ic{background:#ff6b6b1f;color:var(--error)}.choice-item.danger .choice-title{color:var(--error)}[data-theme-mode=light] .choice-item{background:#00000008}[data-theme-mode=light] .choice-item:hover{background:#0000000d}.sheet-overlay{position:fixed;top:0;left:0;right:0;bottom:var(--kb-height);z-index:200;background:#0000008c;backdrop-filter:blur(4px);display:none;animation:fade-in .2s ease;transition:bottom var(--t-norm) var(--ease)}.sheet-overlay.open{display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:480px;max-height:calc(100vh - var(--kb-height) - max(var(--safe-top) + 24px,60px));max-height:calc(100dvh - var(--kb-height) - max(var(--safe-top) + 24px,60px));background:#140c1eeb;backdrop-filter:blur(28px) saturate(160%);-webkit-backdrop-filter:blur(28px) saturate(160%);border-top:1px solid var(--border-strong);border-radius:var(--rad-xl) var(--rad-xl) 0 0;display:flex;flex-direction:column;animation:sheet-in .28s var(--ease);transition:max-height var(--t-norm) var(--ease)}@keyframes sheet-in{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}.sheet-handle{width:36px;height:4px;background:#fff3;border-radius:2px;margin:10px auto;flex-shrink:0}.sheet-header{display:flex;align-items:center;gap:10px;padding:4px 18px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.sheet-header h3{margin:0;font-size:17px;font-weight:600;flex:1}.sheet-body{flex:1;overflow-y:auto;padding:16px 18px 20px}.sheet-skel{display:flex;flex-direction:column;gap:10px}.sheet-skel-card{height:66px;border-radius:14px;background:linear-gradient(90deg,#ffffff0d,#ffffff1a,#ffffff0d);background-size:200% 100%;animation:skel-shimmer 1.4s linear infinite}.sheet-skel-card:nth-child(2){height:48px}.sheet-skel-card:last-child{height:96px}@media (prefers-reduced-motion: reduce){.sheet-skel-card{animation:none}}.sheet-body-in{animation:sheet-body-in .2s ease both}@keyframes sheet-body-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.sheet-body-in{animation:none}}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.sheet-footer{display:flex;gap:var(--gap-2);padding:var(--gap-3) var(--gap-5) calc(var(--gap-3) + var(--safe-bottom));border-top:1px solid var(--border);flex-shrink:0}:root[data-kb-open=true] .sheet-footer{padding-bottom:var(--gap-3)}.settings-form{display:flex;flex-direction:column;gap:14px}.settings-tabs{display:flex;gap:6px;padding:4px;background:#ffffff0a;border:1px solid var(--border);border-radius:14px}.settings-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 12px;border:none;background:transparent;border-radius:10px;color:var(--muted);font-size:14px;font-weight:500;transition:all .2s var(--ease)}.settings-tab .ic{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.settings-tab.active{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;box-shadow:0 4px 14px var(--accent-soft)}.settings-tab:not(.active):active{background:#ffffff0f}.settings-pane{display:none;flex-direction:column;gap:14px}.settings-pane.active{display:flex;animation:pane-in .22s var(--ease)}@keyframes pane-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.notice{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:14px;font-size:13px;line-height:1.45;border:1px solid var(--border);background:#ffffff0a}.notice.override{border-color:var(--accent);background:var(--accent-soft)}.notice-ic{flex-shrink:0;width:20px;height:20px;fill:none;stroke:var(--accent);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;margin-top:1px}.notice-text{display:flex;flex-direction:column;gap:2px;flex:1}.notice-text b{font-weight:600}.notice-text span{color:var(--muted);font-size:12px;line-height:1.5}.notice .row-mini{margin-top:10px}.form-field{display:flex;flex-direction:column;gap:12px;padding:14px;background:#ffffff08;border:1px solid var(--border);border-radius:16px}.form-field .head{display:flex;align-items:center;gap:10px}.prompt-edit-btn{flex-shrink:0;margin-left:auto;width:30px;height:30px;border-radius:9px;border:1px solid var(--border);background:#ffffff0d;color:var(--text-dim, #9a93b0);font-size:14px;cursor:pointer;transition:color .14s ease,border-color .14s ease}.prompt-edit-btn:hover,.prompt-edit-btn.active{color:var(--accent, #7a5cff);border-color:var(--accent, #7a5cff)}.prompt-editor{display:flex;flex-direction:column;gap:12px;padding:10px;border-radius:12px;border:1px dashed color-mix(in srgb,var(--accent, #7a5cff) 45%,transparent);background:#7a5cff0d}.prompt-editor[hidden]{display:none}.prompt-editor-row{display:flex;flex-direction:column;gap:6px}.prompt-editor-head{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600}.prompt-editor-name code{font-size:11px;color:var(--text-dim, #9a93b0)}.prompt-editor-mark{font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:999px;color:#ffce8a;background:#ffb45024}.prompt-editor-ta{font-size:12px;line-height:1.45;min-height:72px;resize:vertical}.prompt-editor-btns{display:flex;gap:8px;justify-content:flex-end}.prompt-editor-btns .btn{padding:6px 14px;font-size:12.5px}.form-field .ic-badge{flex-shrink:0;width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);border:1px solid rgba(255,255,255,.06)}.form-field .ic-badge svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.form-field .head-text{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.form-field .head .lbl{font-weight:600;font-size:14px}.form-field .head .desc{color:var(--muted);font-size:12px;line-height:1.4}.choice-grid{display:grid;grid-template-columns:repeat(var(--n, 3),minmax(0,1fr));gap:6px}.choice-btn{min-width:0;padding:10px 6px;border-radius:12px;border:1px solid var(--border);background:#ffffff0a;color:var(--text);font-size:clamp(11px,3.4vw,13px);line-height:1.15;display:flex;align-items:center;justify-content:center;transition:all .18s var(--ease)}.choice-btn span{display:block;width:100%;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.choice-btn:not(.selected):active{background:#ffffff14}.choice-btn.selected{background:linear-gradient(135deg,var(--accent),var(--accent-2));border-color:transparent;color:#fff;box-shadow:0 4px 14px var(--accent-soft)}.form-field .field-input{width:100%;padding:11px 13px;border-radius:12px;background:#ffffff0d;border:1px solid var(--border);color:var(--text);outline:none;font:inherit;transition:border-color .18s ease,background .18s ease}.form-field textarea.field-input{min-height:64px;resize:vertical}.form-field .field-input:focus{border-color:var(--accent);background:#ffffff12}.model-field{position:relative}.model-trigger{width:100%;display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:12px;background:#ffffff0d;border:1px solid var(--border);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .18s ease,background .18s ease}.model-trigger:hover{background:#ffffff12}.model-field.is-open .model-trigger,.model-trigger:focus-visible{border-color:var(--accent);outline:none}.model-trigger-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.model-trigger-name{font-weight:600;font-size:14.5px;line-height:1.25;color:var(--text)}.model-trigger-sub{font-size:12.5px;line-height:1.35;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-trigger-chev{flex:0 0 12px;width:12px;height:8px;color:var(--text-muted);opacity:.7;transition:transform .2s ease,color .2s ease}.model-field.is-open .model-trigger-chev{transform:rotate(180deg);color:var(--accent);opacity:1}.model-pop{display:none;position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;flex-direction:column;gap:2px;padding:6px;border-radius:14px;background:var(--surface, #1a1a22);border:1px solid var(--border-strong);box-shadow:0 18px 40px #00000073}.model-field.is-open .model-pop{display:flex;animation:model-pop-in .14s ease-out}@keyframes model-pop-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.model-opt{display:flex;align-items:flex-start;gap:10px;width:100%;padding:10px 12px;border-radius:10px;background:transparent;border:1px solid transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease}.model-opt:hover{background:#ffffff0d}.artgen .model-opt{align-items:center}.model-opt.selected{background:#6366f11a;border-color:#6366f159}.model-opt-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.model-opt-name{font-weight:600;font-size:14px;line-height:1.3;color:var(--text)}.model-opt-desc{font-size:12px;line-height:1.4;color:var(--text-muted)}.model-more-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:9px 12px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--text-muted);font:inherit;font-size:13px;text-align:left;cursor:pointer;transition:background .14s ease,color .14s ease}.model-more-toggle:hover{background:#ffffff0d;color:var(--text)}.model-more-count{padding:0 7px;border-radius:999px;background:#ffffff14;font-size:11px;font-weight:700;line-height:18px}.model-more-chev{width:12px;height:8px;margin-left:auto;flex-shrink:0;transition:transform .2s ease}.model-more-toggle.is-open .model-more-chev{transform:rotate(180deg)}.model-more-group{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}.model-more-group.is-open{grid-template-rows:1fr}.model-more-inner{min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:2px}.model-price-badge{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:1.5px 7px;border-radius:999px;background:#ff2d6f24;color:#ff6d92;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;vertical-align:1px}.model-price-badge svg{width:11px;height:11px;flex-shrink:0}.model-price-badge[hidden],.model-opt .model-limit-badge{display:none}.model-opt.is-exhausted .model-limit-badge{display:inline-flex}.model-opt-limit-note{display:none}.model-opt.is-exhausted .model-opt-limit-note{display:block;font-size:11px;font-weight:600;color:#ff6d92}.model-quota-pill{display:none;align-items:center;gap:3px;width:fit-content;margin-top:5px;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:600;letter-spacing:.1px;color:var(--muted);background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 13%,transparent),color-mix(in srgb,var(--accent) 5%,transparent));border:1px solid color-mix(in srgb,var(--accent) 24%,transparent);box-shadow:inset 0 1px #ffffff0f}.model-opt.has-quota-pill:not(.is-exhausted):not(.model-opt--locked) .model-quota-pill{display:inline-flex}.model-quota-num{font-weight:800;font-variant-numeric:tabular-nums;color:color-mix(in srgb,var(--accent) 82%,var(--text))}.model-opt--locked .model-opt-name,.model-opt--locked .model-opt-desc{opacity:.55}.model-opt--locked .model-opt-check,.model-lock-badge{display:none}.model-opt--locked .model-lock-badge{display:inline-flex;align-items:center;margin-left:6px;color:var(--muted);vertical-align:-1px}.model-lock-badge svg{width:13px;height:13px}.model-opt-lock-note{display:none}.model-opt--locked .model-opt-lock-note{display:block;font-size:11px;font-weight:600;color:color-mix(in srgb,var(--accent) 80%,var(--text))}.model-trigger-name{display:flex;align-items:center;min-width:0}.model-trigger-name .model-trigger-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-trigger-name .model-price-badge{flex-shrink:0}.model-opt-check{flex:0 0 18px;width:18px;height:18px;margin-top:2px;color:var(--accent);opacity:0;transition:opacity .14s ease}.model-opt.selected .model-opt-check{opacity:1}[data-theme-mode=light] .model-trigger{background:#0000000a}[data-theme-mode=light] .model-trigger:hover{background:#0000000f}[data-theme-mode=light] .model-pop{background:#fff;border-color:#0000001f;box-shadow:0 14px 36px #00000026}[data-theme-mode=light] .model-opt:hover{background:#0000000a}[data-theme-mode=light] .model-opt.selected{background:#6366f114}.slider-row{display:flex;align-items:center;gap:12px}.slider-row input[type=range]{flex:1;-webkit-appearance:none;appearance:none;height:4px;background:var(--border-strong);border-radius:2px}.slider-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));cursor:pointer;box-shadow:0 2px 8px var(--accent-soft)}.slider-row input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--accent),var(--accent-2));cursor:pointer;box-shadow:0 2px 8px var(--accent-soft)}.slider-row .val{min-width:40px;text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.named-slider{display:flex;flex-direction:column;gap:12px}.named-slider-status{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600}.ns-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px currentColor;transition:background .2s ease}.ns-label{transition:color .2s ease}.ns-range{-webkit-appearance:none;appearance:none;height:6px;border-radius:3px;background:var(--border-strong);outline:none;width:100%;margin:0}.ns-range::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:#fff;border:3px solid var(--accent);cursor:pointer;box-shadow:0 2px 10px #0000004d;transition:transform .12s ease}.ns-range::-webkit-slider-thumb:active{transform:scale(1.15)}.ns-range::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#fff;border:3px solid var(--accent);cursor:pointer;box-shadow:0 2px 10px #0000004d}.ns-val{margin-left:auto;font-size:13px;font-variant-numeric:tabular-nums;font-weight:600;color:var(--muted);letter-spacing:.02em}.confirm-overlay{position:fixed;inset:0;z-index:300;background:#0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;padding:20px;animation:fade-in .18s ease}.confirm-overlay.open{display:flex}.confirm-card{width:100%;max-width:360px;background:#140c1efa;border:1px solid var(--border-strong);border-radius:18px;padding:22px 22px 18px;display:flex;flex-direction:column;gap:8px;box-shadow:0 20px 60px #00000073;animation:confirm-in .22s var(--ease)}@keyframes confirm-in{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.confirm-card h3{margin:0;font-size:17px;font-weight:600}.confirm-card p{margin:0;line-height:1.45}.confirm-actions{display:flex;gap:8px;margin-top:14px}.confirm-actions .btn{flex:1}.confirm-actions.is-stacked{flex-direction:column-reverse;align-items:stretch;gap:12px}.confirm-cancel-link{flex:none;align-self:center;font-size:12px;font-family:inherit;color:var(--muted);background:none;border:none;padding:2px 8px;cursor:pointer;text-decoration:underline;text-underline-offset:2px;opacity:.75}.confirm-cancel-link:hover{opacity:1}.counter{text-align:right;font-size:11px;color:var(--muted);margin-top:4px}.counter.over{color:var(--error)}.hue-picker{display:flex;flex-direction:column;gap:14px}.hue-readout{display:flex;align-items:center;gap:12px}.hue-swatch{width:44px;height:44px;border-radius:12px;border:1px solid var(--border);background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 6px 20px color-mix(in srgb,var(--accent) 35%,transparent);transition:background .2s ease,box-shadow .2s ease;flex-shrink:0}.hue-info{display:flex;flex-direction:column;gap:2px}.hue-label{font-size:12.5px;color:var(--muted)}.hue-value{font-size:16px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.hue-slider-wrap{padding:4px 0}.hue-range{-webkit-appearance:none;appearance:none;width:100%;height:18px;background:transparent;cursor:pointer;margin:0}.hue-range::-webkit-slider-runnable-track{height:14px;border-radius:999px;background:linear-gradient(to right,#db5757,#dbdb57,#57db57,#57dbdb,#5757db,#db57db,#db5757);border:1px solid var(--border);box-shadow:inset 0 1px #ffffff14}.hue-range::-moz-range-track{height:14px;border-radius:999px;background:linear-gradient(to right,#db5757,#dbdb57,#57db57,#57dbdb,#5757db,#db57db,#db5757);border:1px solid var(--border)}.hue-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:26px;height:26px;border-radius:50%;background:var(--accent);border:3px solid #fff;box-shadow:0 2px 8px #00000073;margin-top:-7px;cursor:grab;transition:transform .12s ease}.hue-range::-webkit-slider-thumb:active{transform:scale(1.08);cursor:grabbing}.hue-range::-moz-range-thumb{width:26px;height:26px;border-radius:50%;background:var(--accent);border:3px solid #fff;box-shadow:0 2px 8px #00000073;cursor:grab}.hue-range:focus-visible::-webkit-slider-thumb{outline:2px solid var(--accent);outline-offset:3px}.hue-range-sat::-webkit-slider-runnable-track{background:linear-gradient(to right,hsl(0,0%,55%) 0%,var(--accent) 83%,var(--accent-2) 100%)}.hue-range-sat::-moz-range-track{background:linear-gradient(to right,hsl(0,0%,55%) 0%,var(--accent) 83%,var(--accent-2) 100%)}.hue-presets{display:flex;gap:8px;flex-wrap:wrap}.hue-preset{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:transform .14s ease,border-color .14s ease}.hue-preset:active{transform:scale(.92)}.hue-preset.selected{border-color:#fff;box-shadow:0 2px 8px #0006}.section-card{padding:14px 16px;margin-bottom:12px}.section-card h3{font-size:13px;font-weight:600;margin:0 0 10px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.upload-zone{position:relative;min-height:160px;border-radius:16px;border:2px dashed var(--border-strong);background:#ffffff08;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:22px 16px;cursor:pointer;transition:background .15s ease,border-color .15s ease;text-align:center;overflow:hidden}.upload-zone:hover{border-color:var(--accent);background:var(--accent-soft)}.upload-zone .ic-wrap{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent)}.upload-zone .ic-wrap svg{width:22px;height:22px;display:block}.upload-zone .placeholder{display:flex;flex-direction:column;align-items:center;gap:8px}.upload-zone .upload-text{font-weight:600;font-size:14px}.upload-zone .upload-hint{font-size:12px;color:var(--muted)}.upload-zone input[type=file]{display:none}.upload-zone.has-image{border-style:solid;border-color:var(--border);padding:0;min-height:200px}.upload-zone.has-image .preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:14px}.upload-zone.has-image .placeholder{display:none}.upload-zone .remove-btn{position:absolute;top:10px;right:10px;background:#000000a6;color:#fff;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2}.upload-zone .uploading{position:absolute;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;border-radius:14px;color:#fff;font-size:13px;z-index:3;gap:10px}.dim-preview{position:relative;border-radius:14px;overflow:hidden;margin-top:12px;aspect-ratio:16/9;background-size:cover;background-position:center;border:1px solid var(--border)}.dim-preview:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,var(--preview-dim, .4));transition:background .1s ease}.dim-preview .sample{position:absolute;left:12px;right:12px;bottom:10px;z-index:2;color:#fff;font-size:13px;text-shadow:0 1px 4px rgba(0,0,0,.7)}.dim-preview.empty{background:linear-gradient(135deg,var(--bg-3),var(--accent-soft));display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:12px}.dim-preview.empty:after{display:none}.dim-preview video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}.theme-sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:22px 0 10px}.theme-sec-head .ttl{font-weight:700;font-size:15px}.theme-sec-head .sub{font-size:12px;color:var(--muted)}.theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.theme-card{position:relative;aspect-ratio:9 / 14;border-radius:14px;overflow:hidden;border:2px solid transparent;background:var(--bg-3) center / cover no-repeat;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .16s ease,transform .16s ease}.theme-card:active{transform:scale(.97)}.theme-card.is-selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.theme-card .theme-name{position:absolute;left:0;right:0;bottom:0;padding:18px 8px 8px;font-size:12px;font-weight:600;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.7);background:linear-gradient(to top,rgba(0,0,0,.65),transparent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.theme-card .theme-check{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;background:var(--accent);color:#fff;display:none;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000059}.theme-card .theme-check svg{width:12px;height:12px}.theme-card.is-selected .theme-check{display:flex}.theme-card .theme-anim{position:absolute;top:6px;left:6px;font-size:10px;font-weight:700;letter-spacing:.04em;padding:2px 6px;border-radius:999px;background:#00000080;color:#fff;backdrop-filter:none}.theme-card.is-locked{cursor:default}.theme-card.is-locked:after{content:"";position:absolute;inset:0;background:#0a08108c}.theme-card .theme-lock{position:absolute;inset:0;z-index:2;display:none;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#fff;text-align:center;padding:8px}.theme-card .theme-lock svg{width:20px;height:20px;opacity:.9}.theme-card .theme-lock .hint{font-size:11px;line-height:1.3;opacity:.85}.theme-card.is-locked .theme-lock{display:flex}.theme-card.is-locked .theme-name{display:none}.theme-grid-empty{font-size:12px;color:var(--muted);padding:14px;text-align:center;border:1px dashed var(--border);border-radius:14px}.char-info-sheet{display:flex;flex-direction:column;gap:0}.char-info-subtitle{margin:-4px 0 16px;color:var(--muted);font-size:13px}.char-info-card{display:grid;grid-template-columns:116px 1fr;gap:18px;align-items:center}.char-info-avatar-col{position:relative;width:110px;height:110px;display:flex;align-items:center;justify-content:center}.char-info-avatar{position:relative;width:110px;height:110px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:42px;font-weight:700;color:#fff;border:3px solid var(--accent);box-shadow:0 8px 32px var(--accent-soft)}.char-info-avatar img{width:100%;height:100%;object-fit:cover;display:block}.char-info-avatar-cam{position:absolute;right:-4px;bottom:-4px;width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;border:3px solid var(--bg);cursor:pointer;box-shadow:0 4px 14px var(--accent-soft);transition:transform .12s ease,background .12s ease;z-index:2}.char-info-avatar-cam:hover{transform:scale(1.05)}.char-info-avatar-cam:active{transform:scale(.96)}.char-info-name-col{min-width:0}.char-info-field-label{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}.char-info-input-wrap{position:relative}.char-info-input{width:100%;padding:12px 38px 12px 14px;border-radius:14px;background:#ffffff0a;border:1px solid var(--border);color:var(--text);font-size:15px;font-weight:500;outline:none;transition:border-color .15s ease,background .15s ease}.char-info-input:focus{border-color:var(--accent);background:#ffffff0f}[data-theme-mode=light] .char-info-input{background:#00000008}[data-theme-mode=light] .char-info-input:focus{background:#0000000d}.char-info-input-ic{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none;display:inline-flex}.char-info-field-hint{margin-top:6px;font-size:12px;color:var(--muted)}.char-info-divider{height:1px;background:var(--border);margin:22px 0 18px}.char-info-section{display:flex;flex-direction:column;gap:8px}.char-info-section-title{font-size:16px;font-weight:700}.char-info-section-sub{font-size:13px;color:var(--muted);margin-bottom:4px}.char-info-upload{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:28px 16px;border:2px dashed var(--border-strong);border-radius:18px;cursor:pointer;text-align:center;background:#ffffff05;transition:background .15s ease,border-color .15s ease}.char-info-upload:hover,.char-info-upload.is-drag{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 5%,transparent)}.char-info-upload input[type=file]{display:none}.char-info-upload-ic{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);margin-bottom:4px}.char-info-upload-title{font-weight:600;font-size:15px}.char-info-upload-hint{font-size:12px;color:var(--muted)}.char-info-delete{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:6px 0;font-size:14px;font-weight:500;color:var(--error);background:transparent;border:none;cursor:pointer;margin-top:10px}.char-info-delete:hover{opacity:.85}.char-info-footer{display:grid;grid-template-columns:minmax(120px,auto) 1fr;gap:10px;width:100%}.char-info-footer .btn{width:100%;padding:14px 16px;font-size:15px}.avatar-crop{display:flex;flex-direction:column;gap:14px}.avatar-crop-subtitle{margin:-4px 0 0;color:var(--muted);font-size:13px;text-align:center;line-height:1.45}.avatar-crop-subtitle b{color:var(--text);font-weight:600}.avatar-crop-stage{position:relative;width:100%;max-width:360px;margin:0 auto;aspect-ratio:1 / 1;border-radius:20px;overflow:hidden;background:#000;touch-action:none;cursor:grab;user-select:none}.avatar-crop-stage:active{cursor:grabbing}.avatar-crop-img{position:absolute;top:50%;left:50%;transform-origin:center;pointer-events:none;max-width:none;max-height:none;-webkit-user-drag:none}.avatar-crop-mask{position:absolute;inset:0;pointer-events:none}.avatar-crop-grid{position:absolute;inset:0;background-image:linear-gradient(to right,rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.18) 1px,transparent 1px);background-size:33.333% 33.333%;background-position:0 0;opacity:.9;mix-blend-mode:difference}.avatar-crop-circle{position:absolute;top:50%;left:50%;width:86%;height:86%;transform:translate(-50%,-50%);border-radius:50%;border:2px solid var(--accent);box-shadow:0 0 0 9999px #00000073}.avatar-crop-zoom{display:grid;grid-template-columns:26px 1fr 26px;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;background:#ffffff0a;border:1px solid var(--border);width:100%;max-width:360px;margin:4px auto 0}[data-theme-mode=light] .avatar-crop-zoom{background:#00000008}.avatar-crop-zoom-ic{display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}.avatar-crop-zoom input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:4px;border-radius:999px;background:var(--border-strong);outline:none}.avatar-crop-zoom input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--accent);border:2px solid var(--bg);cursor:pointer;box-shadow:0 2px 8px var(--accent-soft)}.avatar-crop-zoom input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--accent);border:2px solid var(--bg);cursor:pointer}.avatar-crop-hint{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:12px;font-size:13px;color:var(--muted);line-height:1.4;padding:4px 6px 0}.avatar-crop-hint b{color:var(--text);font-weight:600}.avatar-crop-hint-ic{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.avatar-crop-footer{display:grid;grid-template-columns:minmax(120px,auto) 1fr;gap:10px;width:100%}.avatar-crop-footer .btn{width:100%;padding:14px 16px;font-size:15px}.memory-list{display:flex;flex-direction:column;gap:10px}.memory-item{padding:12px 14px}.memory-item .head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.memory-item .num{font-size:12px;color:var(--muted);font-weight:600}.memory-textwrap{position:relative}.memory-item textarea{width:100%;min-height:70px;background:transparent;border:1px solid var(--border);border-radius:10px;padding:8px 10px 22px;color:var(--text);outline:none;resize:vertical}.memory-item.dirty textarea{border-color:var(--accent)}.memory-item.is-readonly textarea{cursor:default;opacity:.85}.memory-counter{position:absolute;right:10px;bottom:6px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;pointer-events:none;background:linear-gradient(180deg,transparent 0%,var(--bg) 60%);padding:2px 4px;border-radius:6px}.memory-counter.is-over{color:var(--error);font-weight:600}.memory-locked-card{width:100%;text-align:center;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 8%,transparent) 0%,transparent 100%);border:1px solid var(--border-strong);border-radius:16px;padding:20px 18px 18px;margin-bottom:14px}.memory-locked-ic{width:56px;height:56px;border-radius:50%;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.memory-locked-title{font-size:17px;font-weight:700;margin-bottom:8px;line-height:1.25}.memory-locked-desc{font-size:13px;color:var(--muted);line-height:1.5;margin-bottom:16px;max-width:360px;margin-left:auto;margin-right:auto}.memory-locked-cta{display:inline-flex;align-items:center;gap:8px}.memory-list.is-teaser{filter:blur(4px);opacity:.55;pointer-events:none;user-select:none}.memory-list.is-teaser .memory-counter,.memory-list.is-teaser .head .btn{display:none}.toast{position:fixed;left:50%;bottom:100px;transform:translate(-50%) translateY(20px);background:#140c1eeb;backdrop-filter:blur(20px);border:1px solid var(--border-strong);padding:10px 16px;border-radius:12px;font-size:13px;z-index:300;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}.toast.show{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0)}.toast.error{border-color:var(--error);color:var(--error)}.row-flex{display:flex;gap:8px}.row-flex.center{align-items:center}.muted{color:var(--muted)}.small{font-size:12px}.hidden{display:none!important}.spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.history-top-loader{display:flex;align-items:center;justify-content:center;padding:10px 0 6px;min-height:28px}.history-top-spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;display:inline-block;opacity:.85}@keyframes historyPrependIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.msg-row.history-prepend-in{animation:historyPrependIn .26s ease both}@media (prefers-reduced-motion: reduce){.msg-row.history-prepend-in{animation:none}}@media (max-width: 360px){.brand{font-size:26px}}.screen[data-screen=character-detail] .screen-body{padding:0 0 calc(72px + var(--safe-bottom) + var(--gap-4) + var(--kb-height));scroll-behavior:smooth}.screen[data-screen=character-detail].active{position:fixed;top:0;left:0;right:0;height:calc(100vh - var(--kb-height));height:calc(100svh - var(--kb-height));height:calc(100dvh - var(--kb-height));z-index:100;display:flex;flex-direction:column;background:var(--bg-1);transition:height var(--t-norm) var(--ease),transform .22s cubic-bezier(.2,.8,.2,1);transform:translateZ(0);will-change:transform;min-height:0;overflow:hidden;animation:none}.screen[data-screen=character-detail].active .screen-body{flex:1 1 0;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain}.screen[data-screen=character-detail].entering,.screen[data-screen=character-detail].exiting{pointer-events:none}.screen[data-screen=character-detail].entering,.screen[data-screen=character-detail].exiting{transform:translate3d(100%,0,0)}.screen[data-screen=character-detail].dragging{transition:height var(--t-norm) var(--ease)}.char-detail{display:block;width:100%}.char-detail-footer{position:fixed;left:0;right:0;bottom:0;z-index:50;display:none;justify-content:center;pointer-events:none;transition:bottom var(--t-norm) var(--ease)}body[data-active-screen=character-detail] .char-detail-footer{display:flex}.char-detail-footer:empty{display:none!important}.char-detail-footer>*{pointer-events:auto}.char-detail-footer-inner{width:100%;max-width:480px;padding:var(--gap-3) var(--gap-4) calc(var(--gap-3) + var(--safe-bottom));display:flex;gap:var(--gap-2);background:#0f0816bf;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);border-top:1px solid var(--border);pointer-events:auto}.char-detail-footer-inner .btn{flex:1}:root[data-kb-open=true] .char-detail-footer-inner{padding-bottom:var(--gap-3)}.char-detail .hero{position:relative;width:100%;height:0;padding-top:100%;overflow:hidden;background:linear-gradient(135deg,var(--bg-3),var(--accent-soft));border-bottom-left-radius:var(--rad-xl);border-bottom-right-radius:var(--rad-xl);display:block}.char-detail .hero img,.char-detail .hero .hero-veil{position:absolute;inset:0;width:100%;height:100%;display:block}.char-detail .hero img{object-fit:cover}.char-detail .hero-veil{position:absolute;inset:0;background:linear-gradient(180deg,#000000d9,#0000008c calc(var(--safe-top) + 28px),#0000 calc(var(--safe-top) + 80px) 60%,#000000d9);pointer-events:none}.char-detail .hero-back{position:absolute;top:calc(var(--gap-3) + var(--safe-top));left:calc(var(--gap-3) + var(--safe-left));z-index:2;background:#00000073;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.char-detail .compact-header{display:flex;align-items:center;gap:var(--gap-2);padding:calc(var(--gap-3) + var(--safe-top)) var(--gap-5) var(--gap-3)}.char-detail-content{padding:var(--gap-4) var(--gap-5) var(--gap-2);display:flex;flex-direction:column;gap:var(--gap-3)}.char-detail h2{font-size:24px;font-weight:700;margin:0;letter-spacing:-.01em;line-height:1.2}.char-detail .meta-row{display:flex;align-items:center;gap:var(--gap-2);flex-wrap:wrap}.char-detail .category-pill{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:600;margin:0}.char-detail .description{font-size:15px;line-height:1.6;color:var(--text);margin:0;white-space:pre-wrap;word-wrap:break-word}.char-detail .stats{display:flex;gap:var(--gap-2);align-items:center;margin:0;font-size:13px;color:var(--muted)}.char-detail .tags{display:flex;flex-wrap:wrap;gap:6px;margin:0}.char-detail .tag{padding:6px 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:500}@media (min-width: 768px){.app-shell{max-width:720px;margin:0 auto}.screen-body,.page-header,.screen-header{padding-left:var(--gap-6);padding-right:var(--gap-6)}.screen[data-screen=catalog] .screen-body{max-width:980px;width:100%;margin:0 auto}.cat-grid{grid-template-columns:repeat(3,1fr);gap:14px}.composer-inner,.bottom-nav-inner,.char-detail-footer-inner{max-width:720px}.chat-list{gap:12px}.chat-row{padding:14px 16px}.screen[data-screen=character-detail] .screen-body{max-width:720px;margin-left:auto;margin-right:auto;width:100%}.char-detail .hero{padding-top:62.5%;border-radius:var(--rad-xl);margin:var(--gap-5) var(--gap-6) 0;width:auto}.char-detail .hero-back{top:var(--gap-3);left:var(--gap-3)}.char-detail-content{padding:var(--gap-5) var(--gap-6) var(--gap-2)}}@media (min-width: 1100px){.app-shell,.composer-inner,.bottom-nav-inner,.char-detail-footer-inner{max-width:860px}.screen[data-screen=catalog] .screen-body{max-width:1100px}.cat-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1400px){.app-shell,.composer-inner,.bottom-nav-inner,.char-detail-footer-inner{max-width:920px}}.toggle{position:relative;flex-shrink:0}.toggle input{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.toggle-track{display:inline-block;width:46px;height:26px;background:#ffffff14;border:1px solid var(--border);border-radius:999px;position:relative;transition:background .18s ease,border-color .18s ease}.toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;box-shadow:0 2px 6px #0000004d;transition:transform .18s cubic-bezier(.2,.8,.2,1)}.toggle input:checked+.toggle-track{background:linear-gradient(135deg,var(--accent),var(--accent-2));border-color:transparent}.toggle input:checked+.toggle-track .toggle-thumb{transform:translate(20px)}.row-link{display:flex;align-items:center;gap:12px;width:100%;margin-top:10px;padding:10px 12px;background:#ffffff0a;border:1px solid var(--border);border-radius:14px;color:var(--text);cursor:pointer;text-align:left;transition:background .16s ease,border-color .16s ease,transform .16s ease}.row-link:active{transform:scale(.99)}@media (hover: hover) and (pointer: fine){.row-link:hover{background:#ffffff12;border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}}.row-link-ic{width:34px;height:34px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 22%,transparent),color-mix(in srgb,var(--accent-2) 22%,transparent));color:var(--accent)}.row-link-ic svg{width:18px;height:18px}.row-link-text{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.row-link-title{font-size:15px;font-weight:600;color:var(--text)}.row-link-chev{flex-shrink:0;color:var(--text-dim);opacity:.7}.like-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;background:#140e1e8c;border:1px solid var(--border);color:var(--text);border-radius:999px;cursor:pointer;backdrop-filter:blur(10px);transition:transform .16s ease,background .16s ease,color .16s ease;font-size:12.5px;font-weight:600;line-height:1}.like-btn svg{width:16px;height:16px;transition:fill .16s ease,transform .22s cubic-bezier(.2,.8,.2,1);fill:none}.like-btn:hover{background:#140e1eb3;transform:translateY(-1px)}.like-btn.liked{color:#ff5b87;border-color:#ff5b8766}.like-btn.liked svg{fill:currentColor;transform:scale(1.08)}.cat-card .like-btn.on-card{position:absolute;top:10px;right:10px;z-index:3}.cat-card.short .like-btn.on-card{top:8px;right:8px}.fn-wrap{display:flex;flex-direction:column;gap:14px;padding-bottom:8px;animation:fn-fade-in .36s ease-out both}@keyframes fn-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fn-lead{margin:0 4px 4px;color:var(--muted);font-size:14px;line-height:1.45}.fn-stats{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(4px,1.5vw,8px);padding:clamp(10px,3vw,14px) clamp(10px,3.5vw,16px);border-radius:18px;position:relative;overflow:hidden}.fn-stats:before{content:"";position:absolute;inset:0;background:radial-gradient(120% 80% at 0% 0%,color-mix(in srgb,var(--accent) 22%,transparent) 0%,transparent 55%),radial-gradient(120% 80% at 100% 100%,color-mix(in srgb,var(--accent-2) 18%,transparent) 0%,transparent 55%);opacity:.7;pointer-events:none}.fn-stat{position:relative;display:flex;align-items:center;gap:clamp(6px,2vw,10px);min-width:0}.fn-stats-divider{width:1px;height:30px;background:var(--border-strong);opacity:.6}.fn-stat-ic{width:clamp(32px,9.5vw,38px);height:clamp(32px,9.5vw,38px);border-radius:12px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 35%,transparent),inset 0 1px #ffffff2e}.fn-stat-ic>svg{width:clamp(18px,5.4vw,22px);height:clamp(18px,5.4vw,22px)}.fn-ic-gem{background:linear-gradient(135deg,#ff5e87,#ff2d6f);color:#fff;box-shadow:0 4px 14px #ff2d6f59,inset 0 1px #ffffff38}.fn-ic-crown{background:linear-gradient(135deg,#ffd166,#f59e0b);color:#2a1408;box-shadow:0 4px 14px #f59e0b52,inset 0 1px #ffffff80}.fn-stat-text{min-width:0;flex:1 1 auto}.fn-stat-value{font-size:clamp(15px,4.2vw,18px);font-weight:700;letter-spacing:.1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fn-stat-label{font-size:clamp(11px,3vw,12px);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fn-stat-label-accent{color:#ffd76e;font-weight:600}.fn-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;position:relative;overflow:hidden;transition:transform .22s cubic-bezier(.2,.7,.3,1),box-shadow .22s ease,background .22s ease;animation:fn-card-in .36s cubic-bezier(.2,.8,.25,1) both}.fn-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(180deg,#ffffff0d,#fff0 60%);opacity:.6}.fn-card:hover{transform:translateY(-1px);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 18%,transparent)}.fn-card:active{transform:scale(.99)}@keyframes fn-card-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fn-card-ic{width:52px;height:52px;border-radius:14px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:#fff;position:relative;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 70%,#6a1b8a),color-mix(in srgb,var(--accent-2) 70%,#2a1052));box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 28%,transparent),inset 0 1px #ffffff2e,inset 0 -1px #0000002e}.fn-card-ic:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(80% 60% at 25% 20%,#ffffff40,#fff0 70%);pointer-events:none}.fn-card-body{flex:1;min-width:0}.fn-card-title{font-weight:600;font-size:15px;line-height:1.25;color:var(--text);margin-bottom:3px}.fn-card-desc{font-size:12.5px;line-height:1.35;color:var(--muted)}.fn-add{flex-shrink:0;width:38px;height:38px;border-radius:50%;border:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;background:linear-gradient(135deg,#ff5e87,#c61c66);box-shadow:0 6px 16px #ff2d6f73,inset 0 1px #ffffff40;transition:transform .16s ease,box-shadow .22s ease,filter .22s ease;-webkit-tap-highlight-color:transparent}.fn-add:hover{filter:brightness(1.08);box-shadow:0 8px 22px #ff2d6f8c,inset 0 1px #ffffff4d}.fn-add:active{transform:scale(.92)}.fn-add svg{display:block}.fn-bundle{display:flex;align-items:center;gap:12px;padding:14px;border-radius:22px;position:relative;overflow:hidden;margin-top:4px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border-strong))}.fn-bundle:before{content:"";position:absolute;inset:0;background:radial-gradient(120% 80% at 0% 0%,color-mix(in srgb,var(--accent) 28%,transparent) 0%,transparent 60%),radial-gradient(120% 80% at 100% 100%,color-mix(in srgb,var(--accent-2) 24%,transparent) 0%,transparent 60%);opacity:.85;pointer-events:none}.fn-bundle-ic{position:relative;width:56px;height:56px;border-radius:16px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#ff5e87,#c61c66);box-shadow:0 8px 22px #ff2d6f73,inset 0 1px #ffffff38}.fn-bundle-body{position:relative;flex:1;min-width:0}.fn-bundle-title{font-weight:700;font-size:15px;line-height:1.2}.fn-bundle-desc{font-size:12.5px;line-height:1.35;color:var(--muted);margin-top:2px}.fn-bundle-btn{position:relative;flex-shrink:0;border:0;cursor:pointer;padding:12px 18px;border-radius:999px;font-size:14px;font-weight:700;letter-spacing:.2px;color:#fff;isolation:isolate;overflow:hidden;background:linear-gradient(120deg,#ff5e87,#c61c66,#7b3cff);background-size:220% 220%;background-position:0% 50%;box-shadow:0 10px 26px #ff2d6f73,0 4px 12px #7b3cff40,inset 0 1px #ffffff47;animation:fn-btn-flow 6s ease-in-out infinite,fn-btn-pulse 2.6s ease-in-out infinite;transition:transform .16s ease,filter .2s ease;-webkit-tap-highlight-color:transparent}.fn-bundle-btn:hover{filter:brightness(1.08)}.fn-bundle-btn:active{transform:scale(.97)}.fn-bundle-btn-label{position:relative;z-index:2}.fn-bundle-btn-shine{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(120deg,transparent 0%,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%,transparent 100%);background-size:250% 100%;background-position:200% 0;mix-blend-mode:screen;animation:fn-btn-shine 3.4s ease-in-out infinite}@keyframes fn-btn-flow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes fn-btn-pulse{0%,to{box-shadow:0 10px 26px #ff2d6f73,0 4px 12px #7b3cff40,inset 0 1px #ffffff47}50%{box-shadow:0 14px 34px #ff2d6fa6,0 6px 18px #7b3cff59,inset 0 1px #ffffff52}}@keyframes fn-btn-shine{0%{background-position:200% 0}60%{background-position:-50% 0}to{background-position:-50% 0}}@media (prefers-reduced-motion: reduce){.fn-bundle-btn,.fn-bundle-btn-shine,.fn-card,.fn-wrap{animation:none}}@media (max-width: 380px){.fn-card-ic{width:46px;height:46px;border-radius:12px}.fn-card-title{font-size:14px}.fn-bundle-btn{padding:11px 14px;font-size:13px}}.bundle-sheet{display:flex;flex-direction:column;gap:14px}.bundle-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.bundle-list-row{display:flex;align-items:baseline;gap:10px;padding:8px 0;font-size:14px;color:var(--text);border-bottom:1px dashed color-mix(in srgb,var(--text) 8%,transparent)}.bundle-list-row:last-child{border-bottom:none}.bundle-list-name{flex:1;min-width:0;display:inline-flex;align-items:baseline;gap:8px;flex-wrap:wrap}.bundle-list-hint{display:inline-flex;align-items:center;font-size:11px;font-weight:600;line-height:1;padding:3px 7px;border-radius:999px;color:var(--accent, #7a5cff);background:color-mix(in srgb,var(--accent, #7a5cff) 12%,transparent)}.bundle-list-price{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;color:var(--muted);font-variant-numeric:tabular-nums}.bundle-totals{display:flex;flex-direction:column;gap:6px;padding-top:12px;border-top:1px solid var(--border)}.bundle-totals-row{display:flex;align-items:baseline;justify-content:space-between;font-size:14px;color:var(--muted)}.bundle-totals-row>span:last-child{display:inline-flex;align-items:center;gap:4px;font-variant-numeric:tabular-nums}.bundle-totals-strike{text-decoration:line-through;opacity:.7}.bundle-totals-discount{color:var(--accent, #ff7ab8)}.bundle-totals-final{margin-top:4px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--text) 8%,transparent);font-size:16px;font-weight:600;color:var(--text)}.bundle-gem-amt{font-variant-numeric:tabular-nums}.bundle-gem-ic{color:#6bd2ff;flex-shrink:0}.bundle-buy-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.bundle-buy-btn svg{color:#aef0ff}.home-hero{margin:4px 4px 18px;animation:home-fade-in .38s ease-out both}@keyframes home-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.home-greet{margin:0;font-size:26px;line-height:1.18;font-weight:700;letter-spacing:-.2px;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;text-shadow:0 2px 16px rgba(0,0,0,.4)}.home-greet .home-name{color:transparent;background:linear-gradient(135deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;max-width:60vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}.home-quote{margin:8px 0 0;font-size:13.5px;line-height:1.45;color:var(--muted);max-width:36ch;transition:opacity .32s ease}.home-quote.is-changing{opacity:0}.home-section{margin-bottom:22px}.home-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 4px 12px}.home-section-head h3{margin:0;font-size:15px;font-weight:600;color:var(--text)}.home-section-accent{background:linear-gradient(135deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.see-all{background:transparent;border:0;color:var(--muted);font-size:13px;display:inline-flex;align-items:center;gap:4px;cursor:pointer;padding:4px 6px;border-radius:8px;transition:color .16s ease,background .16s ease;-webkit-tap-highlight-color:transparent}.see-all:hover{color:var(--text);background:#ffffff0d}.see-all svg{transform:rotate(180deg);opacity:.7}.home-mood-row{display:flex;align-items:center;gap:10px;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:4px;margin:0 -4px;mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 28px),transparent 100%);-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 28px),transparent 100%)}.home-mood-row::-webkit-scrollbar{display:none}.home-mood-chip{flex-shrink:0;display:inline-flex;align-items:center;gap:8px;padding:9px 14px 9px 10px;border-radius:999px;border:1px solid var(--border-strong);background:#ffffff0a;color:var(--text);font-size:13.5px;font-weight:500;white-space:nowrap;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .16s ease,box-shadow .22s ease;-webkit-tap-highlight-color:transparent}.home-mood-chip:active{transform:scale(.96)}.home-mood-chip .hmc-ic{width:26px;height:26px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff0f;color:var(--text);flex-shrink:0;transition:background .18s ease,color .18s ease}.home-mood-chip.active{border-color:color-mix(in srgb,var(--accent) 70%,transparent);background:color-mix(in srgb,var(--accent) 14%,rgba(255,255,255,.04));box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 14%,transparent)}.home-mood-chip.active .hmc-ic{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.home-rail{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;scroll-snap-type:x proximity;scrollbar-width:none;padding:4px 4px 8px;margin:0 -4px}.home-rail::-webkit-scrollbar{display:none}.home-rail-empty,.home-rail-skel{display:flex;gap:12px;padding:4px}.home-card{flex:0 0 auto;width:138px;scroll-snap-align:start;position:relative;display:flex;flex-direction:column;gap:8px;padding:0;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .22s cubic-bezier(.22,1,.36,1)}.home-card:hover{transform:translateY(-2px)}.home-card:active{transform:scale(.98)}.home-card .hc-img{position:relative;width:100%;aspect-ratio:3 / 4;border-radius:16px;overflow:hidden;background:linear-gradient(135deg,var(--bg-3),var(--accent-soft));border:1px solid var(--border-strong);box-shadow:0 8px 22px #00000059}.home-card .hc-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}.home-card:hover .hc-img img{transform:scale(1.04)}.home-card .hc-img .hc-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:38px;font-weight:700;color:var(--text);opacity:.55}.home-card .hc-rank,.home-card .hc-new{position:absolute;top:8px;left:8px;z-index:2;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;letter-spacing:.4px}.home-card .hc-rank{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 50%,transparent)}.home-card .hc-new{padding:3px 8px;border-radius:999px;background:linear-gradient(135deg,#ff5e87,#c61c66);color:#fff;text-transform:uppercase;font-size:10.5px;box-shadow:0 4px 12px #ff2d6f73}.home-card .hc-likes{position:absolute;bottom:8px;left:8px;z-index:2;display:inline-flex;align-items:center;gap:4px;padding:4px 8px 4px 6px;border-radius:999px;background:#0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-size:12px;font-weight:600}.home-card .hc-likes svg{color:#ff5e87}.home-card .hc-name{font-weight:700;font-size:14px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-card .hc-desc{font-size:12px;line-height:1.35;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.home-rail-empty .empty-state{flex:1;text-align:center;padding:22px}.home-card-skel{flex:0 0 auto;width:138px}.home-card-skel .skel-img,.home-card-skel .skel-line{background:linear-gradient(90deg,#ffffff0d,#ffffff1a,#ffffff0d);background-size:200% 100%;animation:skel-shimmer 1.4s linear infinite;border-radius:12px}.home-card-skel .skel-img{width:100%;aspect-ratio:3 / 4;border-radius:16px;margin-bottom:8px}.home-card-skel .skel-line{height:12px;margin-top:6px}.home-card-skel .skel-line.short{width:60%}@keyframes skel-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.home-offer-carousel{position:relative;width:100%;margin-top:6px;isolation:isolate}.home-offer-carousel:before{content:"";position:absolute;z-index:-1;inset:14px 10px -2px;border-radius:22px;box-shadow:0 12px 30px color-mix(in srgb,var(--accent) 22%,transparent),0 4px 14px #00000059;pointer-events:none}.home-offer-track{display:flex;width:100%;gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none}.home-offer-track::-webkit-scrollbar{display:none}.home-offer-track.is-dragging{cursor:grabbing;scroll-snap-type:none}.home-offer-track.is-dragging .home-offer-slide{cursor:grabbing}.home-offer-slide{flex:0 0 100%;width:100%;scroll-snap-align:start;padding:0;background:transparent;cursor:pointer;line-height:0;-webkit-tap-highlight-color:transparent;position:relative;border-radius:22px;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border-strong));transition:border-color .2s ease,filter .2s ease}@media (hover: hover) and (pointer: fine){.home-offer-slide:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--border-strong));filter:brightness(1.04)}}.home-offer-slide:active{filter:brightness(.97)}.home-offer-slide:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.home-offer-img{display:block;width:100%;height:auto;pointer-events:none;user-select:none;border-radius:inherit}.home-offer-dots{position:absolute;bottom:8px;left:0;right:0;display:flex;justify-content:center;gap:6px;z-index:10;pointer-events:none}.home-offer-dot{width:6px;height:6px;border-radius:50%;background:#fff6;border:none;padding:0;transition:background .3s,transform .3s;pointer-events:auto;cursor:pointer}.home-offer-dot.active{background:#fff;transform:scale(1.2)}@media (max-width: 380px){.home-greet{font-size:22px}.home-card,.home-card-skel{width:124px}.home-offer-slide{border-radius:18px}}.artgen-lead{margin:0 0 6px;font-size:13px;color:var(--muted);text-align:center}.artgen-section{margin-top:14px}.artgen-section h4{margin:0 0 8px;font-size:13px;color:var(--muted);font-weight:600;letter-spacing:.2px;display:flex;align-items:center;gap:6px}.artgen-section h4 .help{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffff0d;color:var(--muted);font-size:10px;cursor:help}.artgen-refs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.artgen-ref{position:relative;aspect-ratio:1 / 1;border-radius:16px;border:1px dashed var(--border-strong);background:radial-gradient(120% 120% at 30% 20%,color-mix(in srgb,var(--accent) 14%,transparent) 0%,transparent 70%),#ffffff08;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;text-align:center;padding:10px;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .16s ease;overflow:hidden}.artgen-ref:hover{border-color:color-mix(in srgb,var(--accent) 60%,var(--border-strong));background:radial-gradient(120% 120% at 30% 20%,color-mix(in srgb,var(--accent) 22%,transparent) 0%,transparent 70%),#ffffff0d}.artgen-ref.has-image{border-style:solid;border-color:color-mix(in srgb,var(--accent) 35%,var(--border-strong));background:transparent;padding:0}.artgen-ref img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}.artgen-ref-ic{width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--accent) 18%,rgba(255,255,255,.04));color:color-mix(in srgb,var(--accent) 85%,#fff);display:flex;align-items:center;justify-content:center}.artgen-ref-label{font-size:12px;color:var(--text);font-weight:600}.artgen-ref-hint{font-size:10px;color:var(--muted);line-height:1.2}.artgen-ref-name{position:absolute;left:8px;right:8px;bottom:8px;z-index:2;font-size:11px;font-weight:600;text-align:center;padding:4px 6px;border-radius:8px;background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff}.artgen-ref-clear{position:absolute;top:6px;right:6px;z-index:3;width:22px;height:22px;border-radius:50%;border:none;background:#0009;color:#fff;display:none;align-items:center;justify-content:center;cursor:pointer}.artgen-ref.has-image .artgen-ref-clear{display:flex}.artgen-ref-clear:hover{background:#000c}.artgen-ref input[type=file]{display:none}.artgen-ref:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 70%,#fff);outline-offset:2px}.artgen-ref.busy{pointer-events:none;opacity:.7}.artgen-ref.busy:after{content:"";position:absolute;inset:0;z-index:4;background:#00000073;border-radius:inherit;background-image:radial-gradient(circle at 50% 50%,transparent 0,transparent 20px,rgba(255,255,255,.05) 20px,rgba(255,255,255,.05) 22px,transparent 22px);animation:artgen-spin 1.2s linear infinite}@keyframes artgen-spin{to{transform:rotate(360deg)}}.artgen-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.artgen-chip{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px 10px;border-radius:14px;border:1px solid var(--border);background:#ffffff08;color:var(--text);cursor:pointer;transition:border-color .18s ease,background .18s ease}.artgen-chip:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:#ffffff0d}.artgen-chip.active{border-color:color-mix(in srgb,var(--accent) 70%,transparent);background:radial-gradient(120% 120% at 30% 20%,color-mix(in srgb,var(--accent) 22%,transparent) 0%,transparent 70%),#ffffff0d;color:#fff}.artgen-chip-ic{width:28px;height:28px;border-radius:8px;border:1.5px solid color-mix(in srgb,var(--accent) 65%,var(--border-strong));display:block;background:#00000040}.artgen-chip[data-aspect="3:4"] .artgen-chip-ic{width:21px;height:28px}.artgen-chip[data-aspect="9:16"] .artgen-chip-ic{width:16px;height:28px}.artgen-chip[data-aspect="16:9"] .artgen-chip-ic{width:32px;height:18px}.artgen-chip[data-aspect="1:1"] .artgen-chip-ic{width:24px;height:24px}.artgen-chip-label{font-size:12px;font-weight:600}.artgen-chip-sub{font-size:10px;color:var(--muted)}.artgen-styles{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.artgen-style{position:relative;aspect-ratio:1 / 1;border-radius:14px;border:1px solid var(--border);background:linear-gradient(to top,#0000008c,#0000001a 45%,#0000),var(--style-img, none) center/cover no-repeat,#1a1124;display:flex;align-items:flex-end;justify-content:center;padding:8px;cursor:pointer;overflow:hidden;transition:transform .16s ease,border-color .18s ease,box-shadow .18s ease}.artgen-style[data-style=realism]{--style-img: url(/static/img/realism.webp?v=2026-05-11)}.artgen-style[data-style=anime]{--style-img: url(/static/img/anime.webp?v=2026-05-11)}.artgen-style[data-style=novel]{--style-img: url(/static/img/novel.webp?v=2026-05-11)}.artgen-style[data-style=romance]{--style-img: url(/static/img/romantic.webp?v=2026-05-11)}.artgen-style:hover{transform:translateY(-1px)}.artgen-style.active{border-color:color-mix(in srgb,var(--accent) 80%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 40%,transparent),0 8px 22px color-mix(in srgb,var(--accent) 25%,transparent)}.artgen-style-label{position:relative;z-index:1;font-size:12px;font-weight:700;color:#fff;padding:4px 8px;background:#00000073;border-radius:8px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.artgen-intent{width:100%;resize:none;min-height:44px;max-height:100px;padding:11px 14px;border-radius:14px;background:#ffffff0a;border:1px solid var(--border);color:var(--text);font-family:inherit;font-size:13px;line-height:1.4;outline:none}.artgen-intent:focus{border-color:var(--accent)}.artgen-submit{width:100%;padding:14px 16px;border-radius:16px;border:none;font-size:15px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 55%,transparent);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:transform .16s ease,opacity .2s ease}.artgen-submit:hover{transform:translateY(-1px)}.artgen-submit:active{transform:scale(.98)}.artgen-submit:disabled{opacity:.55;cursor:not-allowed;transform:none}.msg.image-msg{padding:4px;max-width:min(88%,360px);position:relative}.msg.image-msg:before{background:#ffffff0a}.img-kebab{position:absolute;top:10px;right:10px;width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#0000006b;color:#fff;border:none;cursor:pointer;opacity:.85;z-index:3;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:opacity .15s,background .15s,transform .15s}.img-kebab:hover{opacity:1;background:#0000009e;transform:scale(1.05)}.img-kebab:active{transform:scale(.95)}.msg.image-msg img{display:block;width:100%;height:auto;border-radius:14px;cursor:zoom-in;opacity:1;transition:opacity .4s ease}.msg.image-msg.img-pending img{opacity:0}.msg.image-msg.loading,.msg.image-msg.img-pending{position:relative;overflow:hidden;width:min(88%,360px);background:radial-gradient(120% 90% at 30% 20%,rgba(255,255,255,.07),transparent 60%),radial-gradient(120% 90% at 80% 80%,var(--accent-soft, rgba(150,120,255,.1)),transparent 55%),#ffffff0a;backdrop-filter:blur(14px) saturate(120%);-webkit-backdrop-filter:blur(14px) saturate(120%)}.msg.image-msg.loading:after,.msg.image-msg.img-pending:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,#ffffff0a,#ffffff1f,#ffffff0a 80%);background-size:200% 100%;animation:artgen-shimmer 1.4s linear infinite}@keyframes artgen-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.msg.image-msg video{display:block;width:100%;height:auto;border-radius:14px;opacity:1;transition:opacity .4s ease}.msg.image-msg.img-pending video{opacity:0}.msg.image-msg.video-loading .video-gen-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;font-size:13px;font-weight:600;color:#ffffffd1;background:#00000061;border-radius:999px;padding:8px 14px;white-space:nowrap;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.img-animate-btn{position:absolute;right:12px;bottom:12px;z-index:3;display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:999px;font-size:13px;font-weight:700;letter-spacing:.2px;color:#fff;cursor:pointer;overflow:hidden;background:linear-gradient(115deg,#6d5bff,#a94dff,#ff5c9d 60%,#a94dff,#6d5bff);background-size:300% 100%;animation:animate-btn-flow 3.2s linear infinite;box-shadow:0 4px 16px #7e57ff73,inset 0 0 0 1px #ffffff38;transition:transform .15s ease,box-shadow .15s ease;-webkit-tap-highlight-color:transparent}.img-animate-btn svg{flex:0 0 auto}.img-animate-btn:after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.45) 50%,transparent 100%);transform:skew(-20deg);animation:animate-btn-sheen 2.6s ease-in-out infinite;pointer-events:none}.img-animate-btn.anim-paused,.img-animate-btn.anim-paused:after{animation-play-state:paused}.img-animate-btn:hover{transform:scale(1.05);box-shadow:0 6px 22px #7e57ff99,inset 0 0 0 1px #ffffff4d}.img-animate-btn:active{transform:scale(.96)}@keyframes animate-btn-flow{0%{background-position:0% 0}to{background-position:300% 0}}@keyframes animate-btn-sheen{0%,55%{left:-60%}85%,to{left:130%}}.animate-sheet .animate-preview{position:relative;width:132px;margin:0 auto 14px;border-radius:14px;overflow:hidden;box-shadow:0 6px 22px #00000059}.animate-sheet .animate-preview img{display:block;width:100%;height:auto}.animate-sheet .animate-preview-badge{position:absolute;left:50%;bottom:6px;transform:translate(-50%);font-size:10px;font-weight:600;color:#ffffffe6;background:#00000080;border-radius:999px;padding:3px 8px;white-space:nowrap;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.animate-sheet .slider-row{display:flex;align-items:center;gap:12px}.animate-sheet .slider-row input[type=range]{flex:1}.animate-sheet .slider-row .val{min-width:52px;text-align:right;font-size:13px;font-weight:600;color:var(--text, #fff);font-variant-numeric:tabular-nums}video.share-gallery-img{display:block;max-width:min(88%,360px);border-radius:14px}.img-lightbox{position:fixed;inset:0;z-index:200;display:none;background:#000000d9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);align-items:center;justify-content:center;padding:24px}.img-lightbox.open{display:flex}.img-lightbox img{max-width:100%;max-height:100%;border-radius:12px;box-shadow:0 16px 50px #0009}.img-lightbox-close{position:absolute;top:calc(env(safe-area-inset-top,0) + 16px);right:16px;width:40px;height:40px;border-radius:50%;border:none;background:#ffffff1f;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}@media (max-width: 380px){.artgen-styles{grid-template-columns:repeat(2,1fr)}}.gem-add{width:clamp(30px,8.5vw,36px);height:clamp(30px,8.5vw,36px);border-radius:50%;border:0;background:linear-gradient(135deg,#ff5e87,#ff2d6f);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;margin-left:auto;flex-shrink:0;box-shadow:0 6px 18px color-mix(in srgb,#ff2d6f 45%,transparent),inset 0 1px #fff3;transition:transform .14s ease,box-shadow .2s ease}.gem-add:active{transform:scale(.92)}.gem-add>svg{width:clamp(16px,5vw,20px);height:clamp(16px,5vw,20px)}@media (hover: hover) and (pointer: fine){.gem-add:hover{transform:scale(1.06);box-shadow:0 8px 24px color-mix(in srgb,#ff2d6f 60%,transparent),inset 0 1px #ffffff40}}:root{--topup-pink: #ff2f6e;--topup-pink-soft: #ff5e87;--topup-pink-deep: #c9265a;--topup-gold: #ffc857;--topup-gold-deep: #d4a737;--topup-card-bg: rgba(20, 12, 22, .55)}.topup-subtitle{margin:-6px 0 10px;font-size:13px;color:var(--muted)}.topup-promo{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(8px,2.5vw,12px);align-items:center;padding:4px 4px 12px;margin-bottom:12px;border-bottom:1px solid var(--border);background:transparent;border-radius:0}.topup-promo-ic{width:clamp(30px,9vw,36px);height:clamp(30px,9vw,36px);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--topup-pink-soft);background:#ff2f6e14;border:1px solid rgba(255,47,110,.25)}.topup-promo-ic svg{width:clamp(16px,5vw,20px);height:clamp(16px,5vw,20px)}.topup-promo-text{min-width:0}.topup-promo-tag{font-size:clamp(10px,3vw,11.5px);font-weight:700;color:var(--topup-pink-soft);line-height:1.1;white-space:nowrap}.topup-promo-title{font-size:clamp(14px,4.6vw,19px);font-weight:800;color:var(--text);line-height:1.1;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topup-promo-title b{color:var(--topup-pink);font-weight:800}.topup-promo-sub{font-size:clamp(10px,3vw,11.5px);color:var(--muted);margin-top:3px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topup-promo-timer{display:flex;align-items:center;gap:6px;flex-shrink:0}.topup-promo-timer-ic{width:clamp(20px,6vw,24px);height:clamp(20px,6vw,24px);display:inline-flex;align-items:center;justify-content:center;color:var(--topup-pink-soft);flex-shrink:0}.topup-promo-timer-ic svg{width:clamp(16px,5vw,20px);height:clamp(16px,5vw,20px)}.topup-promo-timer-text{line-height:1.1;text-align:right}.topup-promo-timer-label{font-size:clamp(9px,2.6vw,10.5px);color:var(--muted);margin-bottom:1px;white-space:nowrap}.topup-promo-timer-value{font-size:clamp(13px,4vw,16px);font-weight:800;color:var(--topup-pink);font-variant-numeric:tabular-nums;letter-spacing:.3px;white-space:nowrap}.topup-list{display:flex;flex-direction:column;gap:7px}.topup-pkg{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto auto auto;gap:10px;align-items:center;padding:9px 12px;border-radius:16px;background:var(--topup-card-bg);border:2px solid transparent;outline:1px solid var(--border);outline-offset:-1px;cursor:pointer;text-align:left;transition:border-color .18s ease,background .18s ease,transform .12s ease,box-shadow .18s ease;overflow:hidden}.topup-pkg:active{transform:scale(.99)}.topup-pkg.selected{border-color:var(--topup-pink);outline-color:transparent;box-shadow:0 0 0 3px #ff2f6e1a}.topup-pkg.highlight{border-color:#ffc85773;outline-color:transparent;background:radial-gradient(circle at 0% 100%,rgba(255,200,87,.1),transparent 60%),var(--topup-card-bg)}.topup-pkg.highlight.selected{border-color:#ffc857d9;box-shadow:0 0 0 3px #ffc85724}.topup-pkg-ic{width:48px;height:48px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:var(--topup-pink-soft);background:radial-gradient(circle at 50% 30%,#ff5e8747,#ff2f6e1a 70%);border:1px solid rgba(255,47,110,.42);box-shadow:inset 0 0 16px #ff2f6e2e}.topup-pkg-ic svg{width:26px;height:26px;filter:drop-shadow(0 0 5px rgba(255,47,110,.3))}.topup-pkg.highlight .topup-pkg-ic{color:var(--topup-gold);background:radial-gradient(circle at 50% 30%,#ffc85747,#d4a7371a 70%);border-color:#ffc85773;box-shadow:inset 0 0 16px #ffc8572e}.topup-pkg.highlight .topup-pkg-ic svg{filter:drop-shadow(0 0 5px rgba(255,200,87,.35))}.topup-pkg-info{min-width:0;display:flex;flex-direction:column;gap:1px}.topup-pkg-amount{font-size:19px;font-weight:800;color:var(--text);line-height:1.05;letter-spacing:-.01em}.topup-pkg-unit{font-size:11.5px;color:var(--muted);margin-bottom:3px}.topup-pkg-badge{display:inline-flex;align-items:center;align-self:flex-start;font-size:10.5px;font-weight:600;color:var(--text);background:#6a3c828c;border:1px solid rgba(180,110,200,.35);padding:3px 8px;border-radius:7px;margin-top:1px;letter-spacing:.01em}.topup-pkg.highlight .topup-pkg-badge{color:#1a1408;background:linear-gradient(135deg,#ffd97a,var(--topup-gold));border-color:#00000026}.topup-pkg-discount{font-size:12px;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--topup-pink-soft),var(--topup-pink));padding:4px 9px;border-radius:7px;white-space:nowrap;letter-spacing:.01em;box-shadow:0 3px 8px #ff2f6e47;transition:background .18s ease,box-shadow .18s ease,color .18s ease}.topup-pkg.selected .topup-pkg-discount{color:var(--topup-pink);background:transparent;border:1px solid rgba(255,47,110,.55);padding:3px 8px;box-shadow:none}.topup-pkg.highlight.selected .topup-pkg-discount{color:var(--topup-gold);border-color:#ffc857a6}.topup-pkg-discount--ghost{visibility:hidden}.topup-pkg-prices{text-align:right;min-width:80px;display:flex;flex-direction:column;align-items:flex-end;gap:1px}.topup-pkg-price-now{font-size:19px;font-weight:800;color:var(--text);line-height:1.05;letter-spacing:-.01em}.topup-pkg.selected .topup-pkg-price-now{color:var(--topup-pink)}.topup-pkg.highlight .topup-pkg-price-now{color:var(--topup-gold)}.topup-pkg-price-old{position:relative;font-size:12px;color:var(--muted);font-weight:600;text-decoration:none}.topup-pkg-price-old:after{content:"";position:absolute;left:-2px;right:-2px;top:55%;height:1.5px;background:var(--topup-pink);transform:rotate(-8deg)}.topup-pkg-radio{width:22px;height:22px;border-radius:50%;border:2px solid rgba(255,255,255,.3);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;transition:border-color .16s ease,background .16s ease;background:#ffffff05}.topup-pkg-radio:after{content:"";width:10px;height:10px;border-radius:50%;background:var(--topup-pink);transform:scale(0);transition:transform .16s ease}.topup-pkg.selected .topup-pkg-radio{border-color:var(--topup-pink);background:transparent}.topup-pkg.selected .topup-pkg-radio:after{transform:scale(1)}.topup-pkg.highlight.selected .topup-pkg-radio{border-color:var(--topup-gold)}.topup-pkg.highlight.selected .topup-pkg-radio:after{background:var(--topup-gold)}.topup-pkg.highlight:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 35%,rgba(255,200,87,.18) 50%,transparent 65%);transform:translate(-100%);animation:topup-shimmer 3.8s ease-in-out infinite}@keyframes topup-shimmer{0%{transform:translate(-100%)}60%{transform:translate(100%)}to{transform:translate(100%)}}.topup-perks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(6px,2vw,12px);margin-top:10px;padding:12px 4px 2px;border-top:1px solid var(--border)}.topup-perk{display:flex;align-items:flex-start;gap:clamp(6px,1.6vw,8px);min-width:0}.topup-perk-ic{width:clamp(22px,6vw,26px);height:clamp(22px,6vw,26px);border-radius:7px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;color:var(--topup-pink-soft);background:#ff2f6e1a;border:1px solid rgba(255,47,110,.28)}.topup-perk-ic svg{width:clamp(12px,3.2vw,14px);height:clamp(12px,3.2vw,14px)}.topup-perk-text{display:flex;flex-direction:column;gap:1px;min-width:0;font-size:clamp(9.5px,2.6vw,10.5px);color:var(--muted);line-height:1.25;word-break:break-word}.topup-perk-text b{font-size:clamp(10px,2.8vw,11px);font-weight:700;color:var(--text);line-height:1.2}.topup-footer{display:flex;flex-direction:column;flex:1;gap:6px}.topup-pay-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:13px 18px;border-radius:13px;border:0;font-size:16px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--topup-pink-soft),var(--topup-pink));cursor:pointer;box-shadow:0 8px 22px #ff2f6e5c,inset 0 1px #ffffff38;transition:transform .12s ease,box-shadow .2s ease}.topup-pay-btn:active{transform:scale(.99)}.topup-pay-btn:disabled{opacity:.6;cursor:not-allowed}.topup-pay-btn svg{color:#fff}.topup-pay-hint{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:11px;text-align:center}.topup-pay-hint-line{margin:0;line-height:1.5}.topup-pay-hint-ic{display:inline-block;vertical-align:-2px;margin-right:6px;color:var(--muted);flex-shrink:0}.topup-pay-hint a{color:var(--accent, #7a5cff);text-decoration:underline;text-underline-offset:2px;white-space:nowrap}.topup-pay-hint a:hover{text-decoration-thickness:2px}@media (max-width: 480px){.topup-pkg{grid-template-columns:56px minmax(0,1fr) auto auto;gap:10px;padding:12px}.topup-pkg-ic{width:56px;height:56px}.topup-pkg-ic svg{width:30px;height:30px}.topup-pkg-amount,.topup-pkg-price-now{font-size:19px}.topup-pkg-radio{display:none}}@media (max-width: 360px){.topup-pkg-discount{font-size:11.5px;padding:4px 8px}}.things-sheet{display:flex;flex-direction:column;gap:14px;--td-pink: var(--accent, #ff3a7a);--td-pink-soft: color-mix(in srgb, var(--td-pink) 24%, transparent);--td-pink-faint: color-mix(in srgb, var(--td-pink) 12%, transparent);--td-pink-glow: color-mix(in srgb, var(--td-pink) 38%, transparent)}.things-sub{margin:-2px 0 4px;color:var(--muted);font-size:13.5px;line-height:1.5}.things-list{display:flex;flex-direction:column;gap:10px}.things-slot{display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:stretch;padding:10px;border-radius:16px;background:#ffffff08;border:1px solid var(--border);transition:border-color .18s ease,background .18s ease}.things-slot:focus-within{border-color:var(--td-pink-soft);background:color-mix(in srgb,var(--td-pink) 5%,rgba(255,255,255,.03))}.things-slot-num{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--td-pink-soft);background:color-mix(in srgb,var(--td-pink) 8%,transparent);color:var(--td-pink);font-weight:700;font-size:16px;align-self:flex-start}.things-slot-num.is-muted{border-color:var(--border);background:#ffffff0a;color:var(--muted)}.things-slot-body{min-width:0;display:flex;flex-direction:column}.things-slot-input{position:relative;width:100%}.things-slot-ta{width:100%;min-height:110px;resize:vertical;padding:10px 14px 26px;border-radius:12px;background:transparent;border:1px solid transparent;color:var(--text);font:inherit;outline:none;line-height:1.45;display:block}.things-slot-ta:focus{border-color:var(--td-pink-faint)}.things-slot-counter{position:absolute;right:10px;bottom:6px;pointer-events:none;color:var(--muted);font-size:11.5px;letter-spacing:.2px;background:linear-gradient(to top,color-mix(in srgb,var(--bg, #0d0810) 92%,transparent) 60%,transparent);padding:2px 6px;border-radius:6px}.things-slot-counter.over{color:#ff5e5e}.things-slot.is-locked{grid-template-columns:44px 1fr;gap:12px;padding:12px;border-style:dashed;border-color:var(--td-pink-soft);background:color-mix(in srgb,var(--td-pink) 4%,rgba(255,255,255,.02))}.things-slot-lock{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:#ffffff0a;border:1px solid var(--border);color:var(--muted);align-self:center}.things-locked-info{min-width:0;display:flex;flex-direction:column;gap:2px;align-self:center}.things-locked-title{color:var(--text);font-weight:600;font-size:14px}.things-locked-sub{color:var(--muted);font-size:12.5px;line-height:1.4}.things-cta{display:grid;grid-template-columns:44px 1fr 16px;gap:12px;align-items:center;padding:12px;border-radius:16px;background:color-mix(in srgb,var(--td-pink) 8%,rgba(255,255,255,.02));border:1px solid var(--td-pink-soft);color:var(--text);text-align:left;cursor:pointer;transition:transform .12s ease,background .18s ease,box-shadow .18s ease}.things-cta:hover{background:color-mix(in srgb,var(--td-pink) 14%,rgba(255,255,255,.02));box-shadow:0 4px 22px -12px var(--td-pink-glow)}.things-cta:active{transform:scale(.99)}.things-cta-ic{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:color-mix(in srgb,var(--td-pink) 22%,rgba(255,255,255,.03));border:1px solid var(--td-pink-soft);color:var(--td-pink)}.things-cta-text{min-width:0;display:flex;flex-direction:column;gap:2px}.things-cta-title{font-weight:700;font-size:14px;color:var(--text)}.things-cta-sub{font-size:12.5px;color:var(--muted);line-height:1.4}.things-cta-chev{color:var(--muted)}.things-foot{display:flex;justify-content:space-between;align-items:center;padding:10px 4px 0;border-top:1px solid var(--border);margin-top:2px;font-size:12.5px;color:var(--muted);gap:12px;flex-wrap:wrap}.things-foot-left{display:inline-flex;align-items:center;gap:6px}.things-foot-left svg{color:var(--muted)}.things-foot-right b{color:var(--td-pink)}.things-foot-left b{color:var(--text)}@media (max-width: 480px){.things-slot{padding:8px;gap:8px}.things-slot-num{width:40px;height:40px;font-size:15px}.things-slot.is-locked{grid-template-columns:40px 1fr;gap:10px;padding:10px}.things-slot-lock{width:40px;height:40px}.things-cta{grid-template-columns:40px 1fr 14px;padding:10px}.things-cta-ic{width:40px;height:40px}}.qr-sheet{display:flex;flex-direction:column;gap:14px}.qr-toggle-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:#ffffff0a;border:1px solid var(--border);cursor:pointer;user-select:none}.qr-toggle-label{flex:1;font-size:14px;color:var(--text)}.qr-toggle-hint{display:block;font-size:12px;color:var(--muted);margin-top:2px;font-weight:400}.qr-toggle-row input[type=checkbox]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.qr-toggle-track{position:relative;width:42px;height:24px;border-radius:12px;background:#ffffff1f;border:1px solid var(--border);flex-shrink:0;transition:background .2s ease,border-color .2s ease}.qr-toggle-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s cubic-bezier(.4,1.3,.6,1);box-shadow:0 1px 4px #0000004d}.qr-toggle-row input:checked~.qr-toggle-track{background:var(--accent);border-color:var(--accent)}.qr-toggle-row input:checked~.qr-toggle-track .qr-toggle-thumb{transform:translate(18px)}.qr-toggle-row input:focus-visible~.qr-toggle-track{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.qr-list{display:flex;flex-direction:column;gap:8px}.qr-row{display:flex;align-items:center;gap:8px}.qr-input{flex:1;min-width:0;padding:10px 14px;border-radius:14px;background:#ffffff0d;border:1px solid var(--border);color:var(--text);outline:none;font-size:14px;line-height:1.3;transition:border-color .16s ease}.qr-input:focus{border-color:var(--accent)}.qr-row-del{flex:0 0 auto;width:32px;height:32px;padding:0;border-radius:50%;border:1px solid var(--border);background:#ffffff0a;color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .12s ease}.qr-row-del:hover,.qr-row-del:focus-visible{outline:none;background:color-mix(in srgb,var(--error, #e54f6d) 18%,transparent);border-color:var(--error, #e54f6d);color:#fff}.qr-row-del:active{transform:scale(.92)}.qr-add{margin-top:4px}.qr-add[disabled]{opacity:.55;cursor:not-allowed}.fn-section{margin-top:18px}.fn-section:first-child{margin-top:6px}.fn-section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px;padding:0 4px;gap:12px}.fn-section-title{font-size:14px;font-weight:700;color:var(--text);margin:0;letter-spacing:.2px}.fn-section-hint{font-size:11.5px;color:var(--muted);text-transform:lowercase}.fn-live-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.fn-live-skeleton{list-style:none;padding:14px;border-radius:16px;background:#ffffff08;border:1px dashed var(--border);color:var(--muted);text-align:center;font-size:13px}.fn-ic-things{background:color-mix(in srgb,var(--accent, #ff3a7a) 14%,transparent);color:var(--accent, #ff3a7a);border:1px solid color-mix(in srgb,var(--accent, #ff3a7a) 24%,transparent)}.fn-ic-memory{background:color-mix(in srgb,#8b6cff 16%,transparent);color:#b9a4ff;border:1px solid color-mix(in srgb,#8b6cff 28%,transparent)}[data-theme-mode=light] .fn-ic-memory{color:#6948ff}.fn-ic-image{background:color-mix(in srgb,#6b8bff 16%,transparent);color:#a8bfff;border:1px solid color-mix(in srgb,#6b8bff 28%,transparent)}[data-theme-mode=light] .fn-ic-image{color:#4763d6}.fn-ic-requests{background:color-mix(in srgb,#ff7ab8 16%,transparent);color:#ffaad6;border:1px solid color-mix(in srgb,#ff7ab8 28%,transparent)}[data-theme-mode=light] .fn-ic-requests{color:#c44a8a}.fn-card.is-clickable{cursor:pointer}.fn-add.is-disabled{opacity:.55;cursor:not-allowed}.fn-gated{position:relative}.fn-gated.is-locked>.fn-gated-content{filter:blur(7px) saturate(.85);opacity:.7;pointer-events:none;user-select:none;transition:filter .24s ease,opacity .24s ease}.fn-gate{position:absolute;inset:0 0 calc(var(--nav-height) + var(--safe-bottom)) 0;z-index:2;display:flex;align-items:center;justify-content:center;padding:12px 14px 28px}.fn-gate[hidden]{display:none}.fn-gated.is-locked{position:relative;min-height:calc(100dvh - var(--nav-height) - var(--safe-bottom) - 150px);overflow:hidden}.fn-gated.is-locked>.fn-gated-content{max-height:100%}.fn-gate-card{width:min(100%,360px);padding:26px 22px 22px;border-radius:22px;text-align:center;background:color-mix(in srgb,var(--bg-2) 84%,transparent);border:1px solid color-mix(in srgb,#f5b731 35%,var(--border));box-shadow:0 20px 50px #00000059,0 0 0 1px #ffffff08 inset;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);animation:fn-fade-in .32s ease-out both}.fn-gate-lock{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:14px;border-radius:18px;background:linear-gradient(135deg,#ffd166,#f59e0b);color:#2a1408;box-shadow:0 8px 24px #f59e0b59,inset 0 1px #ffffff80}.fn-gate-title{font-size:19px;line-height:1.25;font-weight:700;letter-spacing:-.01em;color:var(--text);margin-bottom:8px}.fn-gate-text{font-size:14px;line-height:1.5;color:var(--muted);margin:0 0 18px}.fn-gate-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;height:46px;border:0;border-radius:14px;background:linear-gradient(135deg,#ffd166,#f59e0b);color:#2a1408;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 8px 22px #f59e0b52;transition:transform .12s ease,filter .14s ease}.fn-gate-btn:active{transform:scale(.98)}@media (hover: hover) and (pointer: fine){.fn-gate-btn:hover{filter:brightness(1.05)}}.fn-gate-note{margin:12px 0 0;font-size:12px;color:var(--muted);opacity:.8}.fn-gate-promo{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:0 0 16px;padding:12px 6px;border-radius:16px;background:color-mix(in srgb,var(--bg-1) 45%,transparent);border:1px dashed color-mix(in srgb,var(--text) 16%,transparent)}.fn-gate-promo-side{min-width:0;text-align:center}.fn-gate-promo-cut{position:relative;align-self:stretch;width:0;border-left:1px dashed color-mix(in srgb,var(--text) 18%,transparent)}.fn-gate-promo-cut:before,.fn-gate-promo-cut:after{content:"";position:absolute;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:var(--bg-2)}.fn-gate-promo-cut:before{top:-19px}.fn-gate-promo-cut:after{bottom:-19px}.fn-gate-promo-value{font-size:26px;font-weight:800;line-height:1.05;letter-spacing:-.02em;color:var(--accent)}.fn-gate-promo-sub{margin-top:4px;font-size:11px;line-height:1.3;color:var(--muted)}.fn-gate-timer-digits{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:baseline;justify-items:center;font-variant-numeric:tabular-nums}.fn-gate-timer-digits b{font-size:24px;font-weight:700;line-height:1.05;letter-spacing:.02em;color:var(--text);font-family:ui-monospace,SF Mono,Menlo,monospace}.fn-gate-timer-digits i{padding:0 3px;font-style:normal;font-size:18px;font-weight:600;color:color-mix(in srgb,var(--text) 45%,transparent)}.fn-gate-timer-labels{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;justify-items:center;margin-top:4px;font-size:10px;color:var(--muted)}.fn-gate-timer-labels span:nth-child(2){grid-column:3}.fn-gate-timer-labels span:nth-child(3){grid-column:5}.feature-buy-sheet{--fb-pink: var(--accent, #ff3a7a);--fb-soft: color-mix(in srgb, var(--fb-pink) 22%, transparent);--fb-faint: color-mix(in srgb, var(--fb-pink) 10%, transparent);display:flex;flex-direction:column;gap:14px}.fb-head{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center;padding:12px;border-radius:16px;background:#ffffff08;border:1px solid var(--border)}.fb-head-ic{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--fb-pink) 16%,rgba(255,255,255,.02));border:1px solid var(--fb-soft);color:var(--fb-pink)}.fb-head-text{min-width:0}.fb-head-title{font-weight:700;font-size:15px;color:var(--text)}.fb-head-sub{margin-top:4px;font-size:12.5px;color:var(--muted);line-height:1.4}.fb-state{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:14px;background:#ffffff06;border:1px solid var(--border)}.fb-state-row{display:flex;justify-content:space-between;font-size:13px}.fb-state-row span{color:var(--muted)}.fb-state-row b{color:var(--text);font-weight:700}.fb-section-title{font-size:12.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;padding:0 4px}.fb-slider-block{display:flex;flex-direction:column;gap:6px;padding:14px 14px 12px;border-radius:16px;background:#ffffff08;border:1px solid var(--border)}.fb-slider-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.fb-slider-value{font-size:13px;color:var(--muted)}.fb-slider-value b{color:var(--fb-pink);font-size:16px;font-weight:800;margin-right:2px}.fb-slider-wrap{padding:4px 12px 0;position:relative}.fb-slider-marks{position:relative;height:16px;margin:6px 12px 0}.fb-mark{position:absolute;transform:translate(-50%);font-size:11.5px;color:var(--muted);font-weight:700;letter-spacing:.2px;transition:color .18s ease}.fb-mark.is-owned{color:color-mix(in srgb,var(--fb-pink) 70%,var(--muted))}.fb-mark.is-selected{color:var(--fb-pink)}.fb-slider{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:999px;background:linear-gradient(to right,var(--fb-pink) 0%,var(--fb-pink) calc(var(--fb-progress, 50%)),rgba(255,255,255,.08) calc(var(--fb-progress, 50%)),rgba(255,255,255,.08) 100%);outline:none;margin:4px 0 0;cursor:pointer}.fb-slider:disabled{cursor:not-allowed;opacity:.85}.fb-slider::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--fb-pink);border:3px solid #fff;box-shadow:0 2px 10px color-mix(in srgb,var(--fb-pink) 50%,transparent);cursor:pointer}.fb-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--fb-pink);border:3px solid #fff;box-shadow:0 2px 10px color-mix(in srgb,var(--fb-pink) 50%,transparent);cursor:pointer}.fb-slider-ticks{display:flex;justify-content:space-between;font-size:11.5px;color:var(--muted);padding:4px 6px 0}.fb-slider-ticks b{color:var(--text);font-weight:700}.fb-note{font-size:12.5px;line-height:1.45;color:var(--muted);padding:10px 14px;border-radius:12px;background:color-mix(in srgb,var(--fb-pink) 4%,rgba(255,255,255,.02));border:1px dashed var(--fb-soft)}.fb-note b{color:var(--text);font-weight:700}.fb-buy.is-disabled{background:#ffffff0f!important;color:var(--muted)!important;box-shadow:none!important;pointer-events:none}.fb-summary{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:16px;background:color-mix(in srgb,var(--fb-pink) 5%,rgba(255,255,255,.02));border:1px solid var(--fb-soft)}.fb-summary-row{display:flex;justify-content:space-between;align-items:center;font-size:13px}.fb-summary-row span{color:var(--muted)}.fb-summary-row b{color:var(--text);font-weight:700}.fb-summary-row.is-muted b{color:var(--muted);font-weight:600}.fb-summary-row.is-muted s{color:var(--muted)}.fb-summary-total{display:flex;justify-content:space-between;align-items:center;margin-top:4px;padding-top:10px;border-top:1px dashed var(--fb-soft);font-size:14px}.fb-summary-total span{color:var(--text);font-weight:700;letter-spacing:.2px}.fb-summary-total b{display:inline-flex;align-items:center;gap:6px;font-size:18px;color:var(--fb-pink);font-weight:800}.fb-summary-total b svg{color:var(--fb-pink)}.fb-buy{background:var(--fb-pink)!important;color:#fff!important;font-weight:700!important;border:none!important;height:48px;font-size:15px;box-shadow:0 8px 22px -10px color-mix(in srgb,var(--fb-pink) 70%,transparent)}.fb-buy.is-loading{opacity:.75;pointer-events:none}.feature-buy-bool{--fbb-pink: var(--accent, #ff3a7a);--fbb-pink2: var(--accent-2, var(--accent, #ff3a7a));--fbb-soft: color-mix(in srgb, var(--fbb-pink) 22%, transparent);--fbb-faint: color-mix(in srgb, var(--fbb-pink) 8%, transparent);--fbb-tint: color-mix(in srgb, var(--fbb-pink) 5%, rgba(255,255,255,.02));display:flex;flex-direction:column;gap:14px}.fbb-hero{display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:center;padding:18px;border-radius:18px;background:radial-gradient(120% 120% at 0% 0%,color-mix(in srgb,var(--fbb-pink) 12%,transparent) 0%,transparent 70%),color-mix(in srgb,var(--fbb-pink) 4%,rgba(255,255,255,.02));border:1px solid var(--fbb-soft)}.fbb-hero-ic{width:64px;height:64px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--fbb-pink) 18%,rgba(255,255,255,.02));border:1px solid var(--fbb-soft);color:var(--fbb-pink)}.fbb-hero-text{min-width:0}.fbb-hero-title{font-weight:700;font-size:16px;color:var(--text);line-height:1.25}.fbb-hero-sub{margin-top:6px;font-size:13px;color:var(--muted);line-height:1.45}.fbb-meta{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;padding:16px 4px;border-radius:18px;background:#ffffff06;border:1px solid var(--border)}[data-theme-mode=light] .fbb-meta{background:#00000005}.fbb-meta-cell{display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 10px;text-align:center;border-left:1px solid var(--border);min-width:0}.fbb-meta-cell:first-child{border-left:none}.fbb-meta-head{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted)}.fbb-meta-ic{display:inline-flex;color:var(--fbb-pink)}.fbb-meta-val{font-size:14px;font-weight:700;color:var(--text);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.fbb-meta-val b{font-size:16px;font-weight:800}.fbb-meta-val-sub{font-weight:500;font-size:12px;color:var(--muted)}.fbb-meta-val.is-active{color:#5bcc75}.fbb-meta-val.is-expired{color:#ffb347}.fbb-meta-val.is-off{color:var(--fbb-pink)}.fbb-perks{display:grid;grid-template-columns:36px 1fr;gap:14px;align-items:flex-start;padding:16px;border-radius:18px;background:#ffffff06;border:1px solid var(--border)}[data-theme-mode=light] .fbb-perks{background:#00000005}.fbb-perks-ic{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--fbb-pink) 16%,transparent);color:var(--fbb-pink);border:1px solid var(--fbb-soft)}.fbb-perks-title{font-weight:700;font-size:14px;color:var(--text)}.fbb-perks-desc{margin-top:4px;font-size:13px;color:var(--muted);line-height:1.45}.fbb-warning{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:center;padding:12px 14px;font-size:12.5px;line-height:1.45;color:var(--muted);border-radius:14px;background:var(--fbb-faint);border:1px dashed var(--fbb-soft)}.fbb-warning-ic{color:var(--fbb-pink);display:inline-flex}.fbb-total{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-radius:16px;background:#ffffff06;border:1px solid var(--border)}[data-theme-mode=light] .fbb-total{background:#00000005}.fbb-total-label{font-weight:700;font-size:15px;color:var(--text)}.fbb-total-price{display:inline-flex;align-items:baseline;gap:6px;color:var(--fbb-pink)}.fbb-total-price svg{align-self:center;color:var(--fbb-pink)}.fbb-total-price b{font-size:22px;font-weight:800;color:var(--fbb-pink);line-height:1}.fbb-total-cur{font-size:13px;color:var(--muted);font-weight:500}.fbb-total-strike{margin-left:6px;font-size:12px;color:var(--muted);text-decoration:line-through}.fbb-buy{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;width:100%;height:56px;border:none!important;border-radius:18px!important;background:linear-gradient(135deg,var(--fbb-pink),var(--fbb-pink2))!important;color:#fff!important;font-size:16px;font-weight:700!important;letter-spacing:.2px;box-shadow:0 14px 32px -14px color-mix(in srgb,var(--fbb-pink) 70%,transparent);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,opacity .12s ease}.fbb-buy:hover{transform:translateY(-1px)}.fbb-buy:active{transform:translateY(0)}.fbb-buy.is-disabled,.fbb-buy:disabled{background:#ffffff0f!important;color:var(--muted)!important;box-shadow:none!important;cursor:not-allowed;pointer-events:none}.fbb-buy.is-loading{opacity:.75;pointer-events:none}.fbb-buy .fbb-buy-label b{font-weight:800}.fbb-secure{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:12px;color:var(--muted);margin-top:-4px}.fbb-secure svg{color:var(--muted)}.sheet:has(.persona-form){max-height:calc(100vh - var(--kb-height) - max(var(--safe-top) + 60px,100px));max-height:calc(100dvh - var(--kb-height) - max(var(--safe-top) + 60px,100px))}.persona-form{display:flex;flex-direction:column;gap:16px}.pf-note{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--accent) 6%,rgba(255,255,255,.02));border:1px dashed color-mix(in srgb,var(--accent) 30%,transparent);font-size:13px;line-height:1.45;color:var(--muted)}.pf-note b{color:var(--text);font-weight:600}.pf-note-ic{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}.pf-field{display:flex;flex-direction:column;gap:6px}.pf-label{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text)}.pf-req{color:var(--accent);font-weight:700}.pf-tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,rgba(255,255,255,.04));color:color-mix(in srgb,var(--accent) 60%,var(--muted));font-size:11px;font-weight:500;letter-spacing:.2px}.pf-input-wrap{position:relative}.pf-input{width:100%;padding:12px 14px;border-radius:14px;background:#ffffff0a;border:1px solid var(--border);color:var(--text);font-size:14px;font-family:inherit;outline:none;transition:border-color .15s ease,background .15s ease}[data-theme-mode=light] .pf-input{background:#00000008}.pf-input:focus{border-color:var(--accent);background:#ffffff0f}[data-theme-mode=light] .pf-input:focus{background:#0000000d}.pf-input::placeholder{color:var(--muted)}.pf-textarea{resize:vertical;min-height:64px;line-height:1.45;padding-right:14px;padding-bottom:28px}.pf-textarea-lg{min-height:110px}.pf-counter{position:absolute;right:12px;bottom:8px;font-size:11px;color:var(--muted);pointer-events:none;background:linear-gradient(to right,transparent 0,color-mix(in srgb,var(--bg) 80%,transparent) 12%,color-mix(in srgb,var(--bg) 80%,transparent) 100%);padding:2px 4px;border-radius:6px}.pf-input:not(.pf-textarea){padding-right:70px}.pf-input:not(.pf-textarea)+.pf-counter{top:50%;bottom:auto;transform:translateY(-50%);background:transparent;padding:0}.pf-hint{font-size:12px;color:var(--muted);line-height:1.45}.pf-select-wrap{position:relative}.pf-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:38px;cursor:pointer}.pf-select-caret{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none;display:inline-flex}.pf-upload{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:28px 16px;border:2px dashed var(--border-strong);border-radius:18px;background:#ffffff05;cursor:pointer;text-align:center;overflow:hidden;min-height:168px;transition:background .15s ease,border-color .15s ease}.pf-upload:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 5%,transparent)}.pf-upload-placeholder{display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;z-index:1}.pf-upload-ic{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);margin-bottom:4px}.pf-upload-title{font-weight:600;font-size:14px;color:var(--text)}.pf-upload-hint{font-size:12px;color:var(--muted)}.pf-upload.has-image .pf-upload-placeholder{background:#00000073;padding:10px 14px;border-radius:14px;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.pf-upload.has-image .pf-upload-placeholder *{color:#fff}.pf-upload.has-image .pf-upload-ic{background:#ffffff29;color:#fff}.pf-upload-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.pf-link-danger{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;background:transparent;border:none;color:var(--error);font-size:13px;font-weight:500;cursor:pointer;padding:4px 0}.pf-link-danger:hover{opacity:.85}.persona-footer{width:100%}.pf-submit{width:100%;height:52px;font-size:15px;font-weight:700;border-radius:16px;border:none;background:linear-gradient(135deg,var(--accent),var(--accent-2))!important;color:#fff!important;box-shadow:0 14px 32px -14px color-mix(in srgb,var(--accent) 70%,transparent);transition:transform .12s ease,opacity .12s ease;cursor:pointer}.pf-submit:hover:not(:disabled){transform:translateY(-1px)}.pf-submit:disabled{background:#ffffff0f!important;color:var(--muted)!important;box-shadow:none!important;cursor:not-allowed}.pf-submit.is-loading{opacity:.75;pointer-events:none}.pf-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:12px;background:#ffffff0a;border:1px solid var(--border);margin-bottom:10px}[data-theme-mode=light] .pf-tabs{background:#00000008}.pf-tab{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:10px;border:none;background:transparent;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease;font-family:inherit}.pf-tab:hover:not(.is-active){color:var(--text)}.pf-tab.is-active{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;box-shadow:0 4px 14px var(--accent-soft)}.pf-tab-pane[hidden]{display:none!important}.pf-sub{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.pf-sub:last-child{margin-bottom:6px}.pf-sub-label{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--muted);letter-spacing:.2px}body.cp-widget-open:before{content:"";position:fixed;inset:0;background:#0000008c;z-index:9998;pointer-events:none;animation:cpDimFadeIn .15s ease-out}@keyframes cpDimFadeIn{0%{opacity:0}to{opacity:1}}body.cp-widget-open .bottom-nav{visibility:hidden}.premium-card{display:flex;flex-direction:column;gap:12px}.premium-card-loading{padding:4px 2px}.premium-card-head{display:flex;align-items:center;gap:12px}.premium-card-ic{width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:color-mix(in srgb,var(--accent, #7a5cff) 18%,transparent);color:var(--accent, #7a5cff)}.premium-card-ic-active{background:linear-gradient(135deg,#ffd56b,#ff9d33);color:#4a2a00;box-shadow:0 6px 18px color-mix(in srgb,#ff9d33 40%,transparent),inset 0 1px #ffffff73}.premium-card-text{display:flex;flex-direction:column;gap:2px;min-width:0}.premium-card-title{font-weight:700;font-size:15px}.premium-card-desc{font-size:13px;color:var(--muted)}.premium-card.is-active .premium-card-desc{color:var(--text);font-weight:500}.premium-card-line{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text);padding:6px 0}.premium-card-line.muted{color:var(--muted)}.premium-card-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px}.membership-root{display:flex;flex-direction:column;gap:16px}.membership-head{display:flex;align-items:center;gap:12px}.membership-crown{width:52px;height:52px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ffd56b,#ff9d33);color:#4a2a00;flex-shrink:0;box-shadow:0 8px 22px color-mix(in srgb,#ff9d33 38%,transparent),inset 0 1px #ffffff80}.membership-head-text{display:flex;flex-direction:column;gap:4px;min-width:0}.membership-name{font-size:17px;font-weight:700}.membership-desc{font-size:13px;color:var(--muted);line-height:1.45}.membership-periods{display:flex;flex-direction:column;gap:8px}.promo-box{margin-top:4px;display:flex;flex-direction:column;gap:8px}.paywall-card .promo-box{margin:0 20px 10px}.promo-toggle{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;padding:4px 2px;background:none;border:none;color:var(--text-dim, #9a93b0);font-size:13px;font-weight:600;cursor:pointer;transition:color .14s ease}.promo-toggle[hidden]{display:none}.promo-toggle:hover{color:var(--text)}.promo-toggle svg{opacity:.8}.promo-row{display:flex;gap:8px}.promo-row[hidden],.promo-status[hidden]{display:none}.promo-input{flex:1;min-width:0;padding:11px 14px;border-radius:12px;border:1.5px solid var(--surface-2, rgba(255, 255, 255, .12));background:var(--surface-1, rgba(255, 255, 255, .06));color:var(--text);font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;outline:none;transition:border-color .14s ease}.promo-input::placeholder{text-transform:none;letter-spacing:normal;font-weight:500;color:var(--text-dim, #9a93b0)}.promo-input:focus{border-color:var(--accent, #7a5cff)}.promo-input:disabled{opacity:.65}.promo-apply{flex-shrink:0;padding:0 16px;border-radius:12px;border:none;background:var(--surface-2, rgba(255, 255, 255, .1));color:var(--text);font-size:13px;font-weight:700;cursor:pointer;transition:background .14s ease,opacity .14s ease}.promo-apply:hover{background:var(--surface-3, rgba(255, 255, 255, .16))}.promo-apply:disabled{opacity:.6;cursor:default}.promo-status{font-size:12.5px;line-height:1.45;padding:9px 12px;border-radius:10px}.promo-status.is-ok{color:#7fe0a8;background:#3cc8821a;border:1px solid rgba(60,200,130,.22)}.promo-status.is-ok s{opacity:.65}.promo-status.is-err{color:#ff9aa4;background:#ff5a6417;border:1px solid rgba(255,90,100,.2)}.promo-status-note{display:inline-block;margin-top:3px;color:var(--text-dim, #9a93b0)}.membership-period{position:relative;display:flex;flex-direction:column;gap:6px;padding:14px 14px 14px 16px;border-radius:14px;background:var(--surface-1, rgba(255, 255, 255, .06));border:1.5px solid transparent;cursor:pointer;color:var(--text);transition:border-color .14s ease,background .14s ease}.membership-period input[type=radio]{position:absolute;opacity:0;pointer-events:none}.membership-period.is-selected{border-color:var(--accent, #7a5cff);background:color-mix(in srgb,var(--accent, #7a5cff) 14%,transparent)}.membership-period-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.membership-period-label{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px}.membership-period-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.2px;background:color-mix(in srgb,var(--accent, #7a5cff) 18%,transparent);color:var(--accent, #7a5cff)}.membership-period-prices{display:inline-flex;align-items:baseline;gap:8px}.membership-period-old{font-size:12.5px;color:var(--muted);text-decoration:line-through}.membership-period-price{font-size:16px;font-weight:700}.membership-period-foot{display:flex;justify-content:flex-end}.membership-period-discount{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;background:color-mix(in srgb,#2bb673 18%,transparent);color:#2bb673}.paywall-overlay{position:fixed;inset:0;z-index:200;background:#000000c7;display:none;align-items:flex-start;justify-content:center;padding:16px;overflow-y:auto;-webkit-overflow-scrolling:touch}.paywall-overlay.open{display:flex}.paywall-card{position:relative;width:100%;max-width:460px;margin:auto;background:#15101a;border-radius:22px;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);box-shadow:0 24px 60px #0009;display:flex;flex-direction:column}.paywall-close{position:absolute;top:14px;right:14px;z-index:4;width:36px;height:36px;border-radius:999px;background:#00000073;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .14s ease}.paywall-close:hover{background:#000000a6}.paywall-hero{position:relative;width:100%;isolation:isolate;overflow:hidden}.paywall-hero-content{position:relative;z-index:2;padding:20px 14px 18px 18px;display:flex;flex-direction:column;gap:8px;max-width:64%}.paywall-card.no-image .paywall-hero-content{max-width:none;padding-right:56px}.paywall-hero-img-side{position:absolute;top:0;right:0;bottom:0;width:54%;z-index:1;pointer-events:none}.paywall-hero-img-side img{display:block;width:100%;height:100%;object-fit:cover;object-position:right center}.paywall-hero-tint{display:none}.paywall-chip{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;max-width:none;width:max-content;padding:5px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 28%,rgba(0,0,0,.45));color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.35px;text-transform:uppercase;white-space:nowrap}.paywall-chip-offer{background:color-mix(in srgb,#f5b731 20%,rgba(0,0,0,.5));border:1px solid color-mix(in srgb,#f5b731 35%,transparent)}.paywall-chip-offer svg{color:#ffd166}.paywall-chip-offer b{font-variant-numeric:tabular-nums;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11.5px;letter-spacing:0}.paywall-title{margin:6px 0 0;color:#fff;font-size:26px;font-weight:800;line-height:1.08;letter-spacing:-.01em}.paywall-title-accent{background:linear-gradient(120deg,var(--accent) 0%,var(--accent-2) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.paywall-lead{margin:10px 0 0;color:#ffffffdb;font-size:13px;line-height:1.45}.paywall-lead-accent{color:var(--accent, #d39bff);font-weight:600}.paywall-perks-title{padding:14px 18px 4px;font-size:12.5px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;color:var(--accent, #d39bff)}.paywall-perks{padding:0 14px 2px;display:flex;flex-direction:column;gap:4px}.paywall-perk{display:flex;gap:10px;align-items:center;padding:8px 11px;border-radius:12px;background:color-mix(in srgb,var(--text) 4%,transparent)}.paywall-perk-ic{flex:0 0 32px;width:32px;height:32px;border-radius:9px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent, #d39bff);display:inline-flex;align-items:center;justify-content:center}.paywall-perk-text{display:flex;flex-direction:column;gap:1px}.paywall-perk-text b{color:var(--text);font-size:13.5px;font-weight:600}.paywall-perk-text span{color:var(--muted);font-size:11.5px;line-height:1.35}.paywall-periods{padding:16px 14px 8px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.paywall-period{position:relative;padding:18px 8px 10px;border-radius:14px;background:color-mix(in srgb,var(--text) 5%,transparent);border:1.5px solid transparent;cursor:pointer;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;transition:border-color .14s ease,background .14s ease,transform .14s ease;color:var(--text)}.paywall-period:hover{transform:translateY(-1px)}.paywall-period.is-selected{border-color:var(--accent, #c97aff);background:color-mix(in srgb,var(--accent) 14%,transparent)}.paywall-period-name{font-size:13px;font-weight:600;color:var(--text)}.paywall-period-price{font-size:19px;font-weight:800;letter-spacing:-.01em;color:var(--text)}.paywall-period-per{font-size:11px;color:var(--muted)}.paywall-period-old{font-size:11px;color:var(--muted);text-decoration:line-through}.paywall-period-discount{display:inline-flex;align-items:center;padding:1px 7px;margin-top:2px;border-radius:999px;font-size:10.5px;font-weight:700;background:color-mix(in srgb,#2bb673 22%,transparent);color:#5fdca0}.paywall-period-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);padding:3px 9px;border-radius:999px;background:linear-gradient(120deg,var(--accent) 0%,var(--accent-2) 100%);color:#fff;font-size:10.5px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;white-space:nowrap;box-shadow:0 4px 10px color-mix(in srgb,var(--accent) 35%,transparent)}.paywall-pay-wrap{padding:12px 16px 6px}.paywall-pay{width:100%;padding:16px 18px;border:none;border-radius:999px;background:linear-gradient(120deg,var(--accent) 0%,var(--accent-2) 100%);color:#fff;font-size:16px;font-weight:700;letter-spacing:.2px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 14px 28px color-mix(in srgb,var(--accent) 30%,transparent);transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.paywall-pay:hover{transform:translateY(-1px)}.paywall-pay:disabled{opacity:.6;cursor:progress;transform:none}.paywall-footer{padding:12px 18px 18px;display:flex;flex-direction:column;gap:8px}.paywall-footer-line{margin:0;color:var(--muted);font-size:11.5px;line-height:1.5;text-align:center}.paywall-footer-ic{display:inline-block;vertical-align:-2px;margin-right:6px;color:var(--muted);flex-shrink:0}.paywall-footer-line a{color:var(--accent, #d39bff);text-decoration:underline;text-underline-offset:2px;white-space:nowrap}.paywall-footer-line a:hover{text-decoration-thickness:2px}@media (max-width: 380px){.paywall-title{font-size:22px}.paywall-lead{font-size:12.5px}.paywall-period-price{font-size:17px}.paywall-perk-text b{font-size:13px}.paywall-chip{font-size:10px;padding:4px 8px}.paywall-hero-content{max-width:66%;padding:16px 10px 14px 14px}.paywall-hero-img-side{width:50%}}.membership-manage{display:flex;flex-direction:column;gap:16px}.membership-info{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:14px;background:color-mix(in srgb,var(--text) 4%,transparent)}.membership-info-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px}.membership-info-label{color:var(--muted)}.membership-info-value{font-weight:600}.membership-info-value.is-on{color:#2bb673}.membership-info-value.is-off{color:var(--muted)}.membership-manage-hint{line-height:1.45}.profile-hero{display:flex;align-items:center;gap:16px;padding:18px;margin-bottom:14px}.profile-hero-avatar{position:relative;width:78px;height:78px;border-radius:50%;border:0;padding:0;background:transparent;cursor:pointer;flex-shrink:0}.profile-hero-avatar-img{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));font-size:32px;font-weight:700;color:#fff;box-shadow:0 8px 30px var(--accent-soft);overflow:hidden;text-transform:uppercase}.profile-hero-avatar-img img{width:100%;height:100%;object-fit:cover;display:block}.profile-hero-avatar-img.is-uploading{opacity:.55;transition:opacity .15s ease}.profile-hero-avatar-edit{position:absolute;right:-2px;bottom:-2px;width:26px;height:26px;border-radius:50%;background:var(--surface, #1a1a22);border:2px solid var(--bg, #0e0e16);color:var(--text);display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000059}.profile-hero-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.profile-hero-name{font-size:18px;font-weight:700;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-hero-email{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px}.profile-hero-userid{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;max-width:100%;margin-bottom:8px;padding:2px 6px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:12px;font-family:inherit;line-height:1.2;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .14s ease,color .14s ease}.profile-hero-userid:hover{background:var(--surface-1, rgba(255,255,255,.06));color:var(--text)}.profile-hero-userid:active{transform:scale(.97)}.profile-hero-userid-label{opacity:.7}.profile-hero-userid-value{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.profile-hero-userid-ic{opacity:.7;flex-shrink:0}.profile-section .profile-section-head{display:inline-flex;align-items:center;gap:8px;padding:0 4px 10px;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.6px;text-transform:uppercase}.profile-section-ic{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--surface-1, rgba(255,255,255,.06));color:var(--muted)}.profile-section h3{display:none}.row-link-flat{margin-top:0;background:transparent;border:0;border-radius:0;padding:12px 4px;border-top:1px solid var(--border)}.row-link-flat:first-of-type{border-top:0}@media (hover: hover) and (pointer: fine){.row-link-flat:hover{background:#ffffff08}}.row-link-value{display:inline-flex;align-items:center;gap:8px;margin-left:auto;color:var(--muted);font-size:14px;max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-hue-dot{width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 30%,transparent);flex-shrink:0}.profile-stats-root{display:flex;flex-direction:column;gap:16px;padding-bottom:8px}.profile-stats-root.is-loading [data-stat]{opacity:.5;animation:profileStatsPulse 1.1s ease-in-out infinite}@keyframes profileStatsPulse{0%,to{opacity:.35}50%{opacity:.7}}.profile-stats-lead{margin:0;font-size:13px;line-height:1.45;color:var(--muted)}.profile-stats-dashboard{position:relative;border-radius:18px;padding:16px;background:var(--surface-1, rgba(255, 255, 255, .03));border:1px solid var(--border);overflow:hidden;box-shadow:0 8px 32px #0003,inset 0 1px #ffffff0d}.profile-db-glow{position:absolute;inset:0;background:radial-gradient(circle at 50% -20%,color-mix(in srgb,var(--accent) 18%,transparent) 0%,transparent 70%);pointer-events:none}.profile-db-header{display:flex;align-items:center;margin-bottom:16px;position:relative;z-index:1}.profile-db-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--muted)}.profile-db-metrics{display:flex;align-items:center;position:relative;z-index:1}.profile-db-col{flex:1;display:flex;flex-direction:column;gap:4px}.profile-db-divider{width:1px;align-self:stretch;background:var(--border);opacity:.6;margin:2px 14px;flex-shrink:0}.profile-db-value{font-size:clamp(28px,7.5vw,36px);font-weight:800;letter-spacing:-.03em;line-height:1;color:#fff;font-variant-numeric:tabular-nums}.profile-db-label{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.profile-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.profile-stats-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:14px;border-radius:16px;background:var(--surface-1, rgba(255, 255, 255, .03));border:1px solid var(--border);min-width:0}.profile-stats-card.is-wide{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:space-between;gap:16px}.profile-stats-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.profile-stats-card-left{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.profile-stats-card-val{font-size:clamp(20px,5.5vw,24px);font-weight:700;letter-spacing:-.02em;line-height:1;color:#fff;font-variant-numeric:tabular-nums}.profile-stats-card-lbl{font-size:12px;line-height:1.35;color:var(--muted)}.profile-stats-card.is-wide .profile-stats-card-lbl{font-size:13px;font-weight:500}.profile-stats-ic{width:32px;height:32px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 25%,transparent)}.profile-stats-ic>svg{width:16px;height:16px}.profile-stats-ic.tone-gem{background:linear-gradient(135deg,#ff5e87,#ff2d6f);color:#160810;box-shadow:0 4px 12px #ff2d6f40}.profile-stats-ic.tone-gold{background:linear-gradient(135deg,#ffd166,#f59e0b);color:#2a1408;box-shadow:0 4px 12px #f59e0b38}.profile-stats-ic.tone-violet{background:linear-gradient(135deg,#a78bfa,#7c3aed);color:#fff;box-shadow:0 4px 12px #7c3aed40}.profile-logout-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;margin-top:12px;background:transparent;border:1px solid color-mix(in srgb,var(--error) 38%,var(--border));color:var(--error);font-weight:600}@media (hover: hover) and (pointer: fine){.profile-logout-btn:hover{background:color-mix(in srgb,var(--error) 8%,transparent);border-color:color-mix(in srgb,var(--error) 55%,var(--border))}}.profile-hero-name-btn{display:inline-flex;align-items:center;gap:8px;max-width:100%;padding:0;margin:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.profile-hero-name-btn .profile-hero-name{min-width:0}.profile-hero-name-ic{flex:none;color:var(--muted);opacity:.7;transition:color .14s ease,opacity .14s ease}.profile-hero-name-btn:active .profile-hero-name-ic,.profile-hero-name-btn:hover .profile-hero-name-ic{color:var(--accent);opacity:1}.profile-tabs{position:relative;display:grid;grid-template-columns:repeat(2,1fr);padding:4px;margin:0 0 14px;border-radius:14px;background:var(--surface-1, rgba(255,255,255,.06));border:1px solid var(--border);isolation:isolate}.profile-tab{position:relative;z-index:1;padding:9px 6px;border:0;border-radius:10px;background:none;color:var(--muted);font-size:13.5px;font-weight:600;letter-spacing:.1px;cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:color .18s ease}.profile-tab.active{color:var(--text)}.profile-tab-ink{position:absolute;z-index:0;top:4px;bottom:4px;left:4px;width:calc((100% - 8px)/2);border-radius:10px;background:var(--surface-2, rgba(255,255,255,.1));border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:0 2px 10px #0000002e,inset 0 1px #ffffff0d;transform:translate(calc(var(--ptab-index, 0) * 100%));transition:transform .26s cubic-bezier(.22,.61,.36,1);pointer-events:none}@media (prefers-reduced-motion: reduce){.profile-tab-ink{transition:none}}.profile-panel[hidden]{display:none}.profile-panel.active{animation:profile-panel-in .22s ease both}@keyframes profile-panel-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.profile-panel.active{animation:none}}.row-link-flat.row-flash{animation:profile-row-flash 1.6s ease both}@keyframes profile-row-flash{0%{background:color-mix(in srgb,var(--accent) 22%,transparent)}to{background:transparent}}.profile-panel .profile-logout-btn{margin-top:16px}.profile-sheet-lead{margin:0 0 12px;color:var(--muted);font-size:13.5px;line-height:1.45}.profile-sheet-section{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.profile-sheet-section-title{font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}.font-options{display:flex;flex-direction:column;gap:8px}.font-option{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:var(--surface-1, rgba(255,255,255,.06));border:1.5px solid transparent;cursor:pointer;color:var(--text);transition:border-color .14s ease,background .14s ease}.font-option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.font-option.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.font-option-sample{font-size:18px;font-weight:600;flex-shrink:0;width:32px;text-align:center}.font-option-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.font-option-name{font-size:14px;font-weight:600}.font-option-desc{font-size:12px;color:var(--muted)}.font-option-check{flex-shrink:0;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--border);display:inline-flex;align-items:center;justify-content:center}.font-option.is-selected .font-option-check{border-color:var(--accent);background:var(--accent);color:#fff}.font-size-row{display:flex;gap:8px}.font-size-btn{flex:1;padding:10px 4px;border-radius:12px;background:var(--surface-1, rgba(255,255,255,.06));border:1.5px solid transparent;color:var(--text);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;transition:border-color .14s ease,background .14s ease}.font-size-btn.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.font-size-btn-letter{font-weight:700;line-height:1}.font-size-btn-label{font-size:11px;color:var(--muted)}.font-preview{margin-top:4px;padding:14px 16px;border-radius:16px 16px 6px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 75%,transparent),color-mix(in srgb,var(--accent-2) 75%,transparent));border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);color:#fff;box-shadow:0 4px 18px var(--accent-soft)}.font-preview-label{display:block;font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;opacity:.75;margin-bottom:6px}.font-preview-text{font-family:var(--chat-font-family, inherit);font-size:var(--chat-font-size, 15px);line-height:1.45;padding:10px 14px;border-radius:18px 18px 18px 6px;background:rgba(255,255,255,calc(.08 * var(--pv-alpha, 1)));border:1px solid rgba(255,255,255,calc(.14 * var(--pv-alpha, 1)));color:var(--pv-color, inherit)}.text-color-row{display:flex;flex-wrap:wrap;gap:10px}.text-color-swatch{width:44px;height:44px;border-radius:50%;border:2px solid var(--border);background:var(--swatch, transparent);cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.text-color-swatch:active{transform:scale(.92)}.text-color-swatch.is-selected{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 30%,transparent)}.text-color-swatch.is-auto{background:#ffffff0f;color:var(--text);font-weight:700;font-size:16px}.text-color-swatch svg{color:var(--check, #fff)}.bubble-op-row{display:flex;align-items:center;gap:12px}.bubble-op-row input[type=range]{flex:1;-webkit-appearance:none;appearance:none;height:4px;border-radius:999px;background:var(--border-strong);outline:none}.bubble-op-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));cursor:pointer;box-shadow:0 2px 8px var(--accent-soft)}.bubble-op-row input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--accent),var(--accent-2));cursor:pointer;box-shadow:0 2px 8px var(--accent-soft)}.bubble-op-row .bubble-op-val{min-width:86px;text-align:right;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text)}.msg{font-family:var(--chat-font-family, inherit);font-size:var(--chat-font-size, 15px)}.profile-cpdebug-row{margin-top:8px}.profile-cpdebug-row[hidden]{display:none}.profile-expert-row{cursor:default;transform:none!important}@media (hover: hover) and (pointer: fine){.profile-expert-row:hover{background:transparent}}.profile-expert-switch{padding:0;background:none;border:none;border-radius:0;flex:none}.expert-guide-lead{margin:0 0 14px;font-size:14px;line-height:1.5;color:var(--muted)}.expert-guide-card{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;margin-bottom:10px;border-radius:14px;background:#ffffff0a;border:1px solid var(--border)}.expert-guide-ic{width:32px;height:32px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.expert-guide-ic svg{width:16px;height:16px}.expert-guide-body{min-width:0}.expert-guide-title{font-size:14.5px;font-weight:600;margin-bottom:3px}.expert-guide-text{font-size:13.5px;line-height:1.5;color:var(--muted)}.sheet-footer>.expert-guide-footer{flex:1;display:flex;flex-direction:column;align-items:stretch;gap:10px}.expert-guide-footer .confirm-cancel-link{align-self:center}.cp-badge{margin-top:6px;font-size:10px;line-height:1;opacity:.45;letter-spacing:.02em;user-select:none;white-space:nowrap}.auth-link{display:inline-block;margin:10px auto 0;padding:6px 8px;background:transparent;border:0;color:var(--accent, #7a5cff);font-size:13.5px;font-weight:500;cursor:pointer;text-align:center}.auth-link:hover{text-decoration:underline}.auth-link:disabled{opacity:.5;cursor:default}#authForgotBtn{display:block;width:100%}.pwreset-root{display:flex;flex-direction:column;gap:12px}.pwreset-lead{margin:0 0 4px;color:var(--muted);font-size:14px;line-height:1.45}.auth-consents{display:flex;flex-direction:column;gap:10px;margin:4px 0 8px;padding:12px;background:var(--surface-1, rgba(255, 255, 255, .04));border:1px solid var(--border, rgba(255, 255, 255, .08));border-radius:12px}.consent-row{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.45;color:var(--text);cursor:pointer;user-select:none}.consent-row input[type=checkbox]{flex:0 0 auto;width:18px;height:18px;margin-top:2px;accent-color:var(--accent, #7a5cff);cursor:pointer}.consent-row a{color:var(--accent, #7a5cff);text-decoration:none}.consent-row a:hover{text-decoration:underline}.legal-gate-overlay{position:fixed;inset:0;background:#08060ec7;backdrop-filter:blur(6px);z-index:12000;display:flex;align-items:center;justify-content:center;padding:16px}.legal-gate-card{width:100%;max-width:460px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;background:var(--surface, #18171d);border:1px solid var(--border, rgba(255, 255, 255, .08));border-radius:18px;box-shadow:0 24px 60px #00000073;overflow:hidden}.legal-gate-head{padding:22px 22px 8px}.legal-gate-head h2{margin:0 0 8px;font-size:20px;line-height:1.3}.legal-gate-head p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}.legal-gate-body{padding:14px 22px 4px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.legal-gate-body .consent-row{font-size:14px}.legal-gate-foot{padding:14px 22px 22px;display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--border, rgba(255, 255, 255, .06));background:var(--surface, #18171d)}.legal-gate-foot .btn{width:100%}.legal-gate-foot .legal-gate-meta{margin:0;font-size:12px;color:var(--muted);text-align:center}.rollout-gate{position:fixed;inset:0;background:#08060eeb;backdrop-filter:blur(8px);z-index:13000;display:flex;align-items:center;justify-content:center;padding:24px}.rollout-gate[hidden]{display:none}.rollout-gate-card{width:100%;max-width:420px;background:var(--surface, #18171d);border:1px solid var(--border, rgba(255, 255, 255, .08));border-radius:18px;box-shadow:0 24px 60px #00000080;padding:28px 24px 22px;text-align:center}.rollout-gate-card h2{margin:0 0 12px;font-size:22px;line-height:1.3}.rollout-gate-text{margin:0 0 22px;color:var(--muted);font-size:15px;line-height:1.55}.rollout-gate-actions{display:flex;flex-direction:column;gap:10px}.rollout-gate-actions .btn{width:100%}.pwa-install-card{position:fixed;bottom:calc(var(--nav-height) + var(--safe-bottom) + 10px);left:50%;transform:translate(-50%);width:calc(100% - 24px);max-width:460px;z-index:140;background:#120a1cf7;-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%);border:1px solid var(--border-strong);border-radius:var(--rad-xl);padding:14px 16px 12px;display:flex;flex-direction:column;gap:10px;animation:pwa-card-in .32s var(--ease) both}.pwa-install-card[hidden]{display:none}@keyframes pwa-card-in{0%{transform:translate(-50%) translateY(18px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.pwa-install-close{position:absolute;top:10px;right:10px;background:none;border:none;color:var(--muted);cursor:pointer;padding:4px;line-height:1;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .15s}.pwa-install-close:hover{background:#ffffff14}.pwa-install-head{display:flex;align-items:center;gap:12px;padding-right:28px}.pwa-install-icon{width:44px;height:44px;border-radius:10px;flex-shrink:0;object-fit:cover}.pwa-install-title{font-size:15px;font-weight:600;color:var(--text);margin-bottom:2px;line-height:1.3}.pwa-install-sub{font-size:12px;color:var(--muted);line-height:1.3}.pwa-install-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}.pwa-install-steps li{font-size:13px;color:var(--text);display:flex;align-items:center;gap:8px;line-height:1.4}.pwa-step-num{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#ffffff1a;font-size:11px;font-weight:700;flex-shrink:0;color:var(--accent)}.pwa-step-icon{display:inline-flex;vertical-align:middle;flex-shrink:0;color:var(--accent)}.pwa-install-dismiss{font-size:12px;color:var(--muted);background:none;border:none;padding:0;cursor:pointer;text-align:left;align-self:flex-start;text-decoration:underline;text-underline-offset:2px;opacity:.75}.pwa-install-dismiss:hover{opacity:1}.chat-screen.active~.notif-card,.screen[data-screen=chat].active~.notif-card{bottom:calc(var(--composer-h, 84px) + var(--safe-bottom) + var(--kb-height, 0px) + 12px)}.notif-card{z-index:160}.notif-card-actions{display:flex;align-items:center;gap:12px;margin-top:4px}.notif-card-actions .btn{padding:8px 16px;font-size:14px}.notif-card-actions .pwa-install-dismiss{align-self:center;margin:0}.chat-row .unread-dot{display:inline-block;width:10px;height:10px;margin-left:6px;vertical-align:middle;border-radius:50%;background:var(--accent, #ff5fa3);box-shadow:0 0 #ff5fa38c;animation:charmy-unread-pulse 1.8s ease-out infinite}.chat-row.has-unread .name{font-weight:600}@keyframes charmy-unread-pulse{0%{box-shadow:0 0 #ff5fa38c}70%{box-shadow:0 0 0 8px #ff5fa300}to{box-shadow:0 0 #ff5fa300}}.charmy-import{display:flex;flex-direction:column;gap:24px}.charmy-import-step{display:flex;flex-direction:column;gap:10px}.charmy-import-step[hidden]{display:none!important}.charmy-import-step-head{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted, rgba(255,255,255,.55))}.charmy-import-step-num{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);font-size:12px;font-weight:700;letter-spacing:0}.charmy-import-help{margin:0;font-size:14px;line-height:1.4;color:var(--muted, rgba(255,255,255,.6))}.charmy-import-help code{padding:1px 6px;border-radius:6px;background:#ffffff14;font-size:.92em}.charmy-import-filebtn{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;border-radius:14px;background:#ffffff0f;border:1px dashed rgba(255,255,255,.18);cursor:pointer;font-size:14px;font-weight:500;transition:background .15s,border-color .15s}.charmy-import-filebtn:hover{background:#ffffff1a;border-color:#ffffff47}.charmy-import-filebtn input[type=file]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0)}#charmyFileLabel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px}.charmy-import-error{min-height:18px;font-size:13px;line-height:1.3;color:var(--danger, #ff6b8b)}.charmy-import-controls{display:flex;gap:14px;padding:2px 2px 0}.charmy-import-controls .link-btn{background:none;border:0;padding:0;color:var(--accent);font-size:13px;cursor:pointer}.charmy-import-controls .link-btn:hover{text-decoration:underline}.charmy-import-list{display:flex;flex-direction:column;gap:10px}.charmy-card{position:relative;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);cursor:pointer;transition:background .15s,border-color .15s}.charmy-card:hover{background:#ffffff14}.charmy-card input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.charmy-card-body{flex:1;min-width:0}.charmy-card-name{font-size:15px;font-weight:600;color:var(--fg, #fff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.charmy-card-check{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:transparent;border:1.5px solid rgba(255,255,255,.25);color:transparent;flex:0 0 auto;transition:background .15s,border-color .15s,color .15s,transform .15s}.charmy-card.is-selected{background:color-mix(in srgb,var(--accent) 10%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.charmy-card.is-selected .charmy-card-check{background:var(--accent);border-color:var(--accent);color:#fff;transform:scale(1.04)}.pinned-strip[hidden]{display:none!important}.pinned-strip{position:relative;z-index:4;flex-shrink:0;display:flex;align-items:center;gap:10px;padding:8px 12px;background:#0f0816c7;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border-bottom:1px solid var(--border);animation:pinned-slide-in .22s var(--ease, ease)}@keyframes pinned-slide-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.pinned-bars{display:flex;flex-direction:column;gap:2px;width:3px;align-self:stretch;flex-shrink:0;border-radius:2px;overflow:hidden}.pinned-bars>.seg{flex:1 1 0;min-height:6px;background:color-mix(in srgb,var(--accent) 35%,transparent)}.pinned-bars>.seg.active{background:var(--accent)}.pinned-content{flex:1 1 auto;display:flex;flex-direction:column;gap:2px;align-items:flex-start;text-align:left;background:transparent;border:none;padding:0;cursor:pointer;min-width:0;color:var(--fg)}.pinned-meta{display:flex;align-items:baseline;gap:6px;font-size:11px;color:var(--accent);font-weight:600;letter-spacing:.02em}.pinned-counter{color:var(--muted);font-weight:500}.pinned-preview{font-size:13px;color:var(--fg);opacity:.9;line-height:1.3;max-width:100%;display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pinned-list-btn{flex-shrink:0;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--muted);border-radius:8px;cursor:pointer;transition:background .12s,color .12s}.pinned-list-btn:hover{background:#ffffff12;color:var(--fg)}@keyframes msg-flash-anim{0%{background:color-mix(in srgb,var(--accent) 30%,transparent)}60%{background:color-mix(in srgb,var(--accent) 18%,transparent)}to{background:transparent}}.msg-row.msg-flash{border-radius:14px;animation:msg-flash-anim 1.6s ease-out}.msg-popover{position:fixed!important;transform-origin:top left;min-width:220px}.msg-row.is-context-target .msg{box-shadow:0 0 0 1.5px color-mix(in srgb,var(--accent) 40%,transparent),0 10px 30px #00000047;filter:brightness(1.04)}.msg-row .msg{transition:box-shadow .2s ease,filter .2s ease}.pinned-list-item{display:flex;align-items:flex-start;gap:10px;padding:12px 8px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .12s}.pinned-list-item:hover{background:#ffffff0a}.pinned-list-item:last-child{border-bottom:none}.pinned-list-item .pli-body{flex:1 1 auto;min-width:0}.pinned-list-item .pli-role{font-size:11px;font-weight:600;color:var(--accent);letter-spacing:.02em;margin-bottom:2px}.pinned-list-item .pli-text{font-size:13px;color:var(--fg);line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.pinned-list-item .pli-unpin{flex-shrink:0;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--muted);border-radius:8px;cursor:pointer;transition:background .12s,color .12s}.pinned-list-item .pli-unpin:hover{background:#ff6b6b1f;color:var(--error)}.pinned-list-empty{padding:24px 8px;text-align:center;color:var(--muted);font-size:14px}.anote-sheet{display:flex;flex-direction:column;gap:20px}.anote-lead{margin:0;font-size:14.5px;line-height:1.5;color:var(--text-dim, var(--muted))}.anote-toggle{display:flex;align-items:center;gap:16px;padding:16px;border-radius:16px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);cursor:pointer;user-select:none}.anote-toggle-ic{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;color:#a87bff;flex-shrink:0}.anote-toggle-ic svg{width:28px;height:28px;stroke-width:2px}.anote-toggle-text{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.anote-toggle-title{font-size:16px;font-weight:500;color:#fff}.anote-toggle-sub{font-size:13px;color:#ffffff80;line-height:1.4}.anote-switch{position:relative;display:inline-block;width:50px;height:30px;flex-shrink:0}.anote-switch input{opacity:0;width:0;height:0}.anote-switch-track{position:absolute;cursor:pointer;inset:0;background-color:#ffffff1a;transition:.3s;border-radius:30px}.anote-switch-thumb{position:absolute;content:"";height:26px;width:26px;left:2px;bottom:2px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0003}.anote-switch input:checked+.anote-switch-track{background-color:#a87bff}.anote-switch input:checked+.anote-switch-track .anote-switch-thumb{transform:translate(20px)}.anote-section-title{font-size:17px;font-weight:600;color:#fff;margin-top:8px;margin-bottom:-16px}.anote-section-sub{font-size:13.5px;color:#ffffff80;margin-bottom:2px}.anote-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (max-width: 380px){.anote-grid{grid-template-columns:1fr}}.anote-card{display:flex;align-items:flex-start;gap:14px;padding:16px 14px;border-radius:16px;background:#ffffff08;border:1.5px solid transparent;cursor:pointer;text-align:left;transition:border-color .2s,background .2s,transform .1s;color:inherit;font:inherit;-webkit-tap-highlight-color:transparent;min-width:0}.anote-card:hover{background:#ffffff0d}.anote-card:active{transform:scale(.98)}.anote-card.selected{border-color:#a87bff;background:#a87bff0d}.anote-card-ic{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:var(--icon-color, #A87BFF)}.anote-card-ic svg{width:28px;height:28px;stroke-width:2px}.anote-card[data-preset-id=cinematic]{--icon-color: #A87BFF}.anote-card[data-preset-id=senses]{--icon-color: #FF6B9E}.anote-card[data-preset-id=slow_romance]{--icon-color: #F6A6C1}.anote-card[data-preset-id=enemies_to_lovers]{--icon-color: #FF7A45}.anote-card[data-preset-id=friendship]{--icon-color: #4CD4A0}.anote-card[data-preset-id=plot_push]{--icon-color: #5B8CFF}.anote-card[data-preset-id=dialogue]{--icon-color: #3FC9F0}.anote-card[data-preset-id=conflict]{--icon-color: #FF5C5C}.anote-card[data-preset-id=dark_romance]{--icon-color: #C05CFF}.anote-card[data-preset-id=inner_monologue]{--icon-color: #7C9CFF}.anote-card[data-preset-id=comedy]{--icon-color: #FFD54F}.anote-card[data-preset-id=slice_of_life]{--icon-color: #D9A066}.anote-card[data-preset-id=horror]{--icon-color: #8FE3B0}.anote-card[data-preset-id=drama]{--icon-color: #E05A7A}.anote-card[data-preset-id=deep_relationship]{--icon-color: #FF8FA3}.anote-card[data-preset-id=friends_with_benefits]{--icon-color: #FFA040}.anote-card-text{display:flex;flex-direction:column;gap:6px;min-width:0}.anote-card-title{font-size:15.5px;font-weight:500;color:#fff;line-height:1.2}.anote-card-desc{font-size:13px;color:#ffffff80;line-height:1.4}@supports not (height: 100dvh){.chat-screen.active,.screen[data-screen=character-detail].active{height:auto!important;bottom:var(--kb-height);transition:bottom var(--t-norm) var(--ease),transform .22s cubic-bezier(.2,.8,.2,1)}}.bday-overlay{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:20px;background:#08040ec2;backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%);opacity:0;pointer-events:none;transition:opacity var(--t-norm) var(--ease)}.bday-overlay.show{opacity:1;pointer-events:auto}.bday-confetti{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:1201}.bday-card{position:relative;z-index:1202;width:min(440px,100%);max-height:calc(100dvh - 40px);overflow-y:auto;text-align:center;padding:30px 24px 26px;border-radius:28px;background:radial-gradient(ellipse at 50% 0%,var(--accent-soft) 0%,transparent 60%),var(--bg-2);border:1px solid var(--border-strong);box-shadow:0 24px 80px #000000a6,inset 0 1px 1px #ffffff1a;transform:translateY(24px) scale(.95);transition:transform var(--t-slow) var(--ease)}.bday-overlay.show .bday-card{transform:translateY(0) scale(1)}.bday-close{position:absolute;top:14px;right:14px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;border:none;color:var(--muted);background:var(--surface-1);cursor:pointer;z-index:10;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.bday-close:hover{color:var(--text);background:var(--surface-hover)}.bday-step{display:none;opacity:0;transform:translateY(10px);transition:opacity var(--t-norm) var(--ease),transform var(--t-norm) var(--ease)}.bday-step.active{display:block;opacity:1;transform:translateY(0)}.bday-icon-wrap{position:relative;width:90px;height:90px;margin:10px auto 20px;display:flex;align-items:center;justify-content:center}.bday-cake-emoji{font-size:52px;z-index:2;filter:drop-shadow(0 4px 12px rgba(0,0,0,.35))}.bday-glow-ring{position:absolute;inset:-10px;border-radius:50%;background:radial-gradient(circle,var(--accent) 0%,transparent 70%);opacity:.4;animation:bdayGlow 3s infinite ease-in-out;z-index:1}@keyframes bdayGlow{0%,to{transform:scale(1);opacity:.35}50%{transform:scale(1.15);opacity:.55}}.bday-badge{display:inline-block;padding:6px 16px;border-radius:999px;font-size:13px;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:.8px;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);box-shadow:0 6px 20px var(--accent-soft);margin-bottom:16px}.bday-badge.wheel-badge{background:linear-gradient(135deg,var(--accent-2) 0%,#a050ff 100%)}.bday-title{margin:0 0 10px;font-size:26px;font-weight:850;letter-spacing:-.5px;line-height:1.2;background:linear-gradient(135deg,#fff 40%,var(--muted) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.bday-sub{margin:0 auto 24px;max-width:340px;color:var(--muted);font-size:15px;line-height:1.5}.bday-action-area{margin-top:24px}.bday-next-btn{width:100%;padding:14px 20px;font-size:16px;font-weight:700;border-radius:14px;box-shadow:0 8px 24px #b650cf59}.bday-wheel-title{font-size:22px;font-weight:800;margin:0 0 4px;letter-spacing:-.3px}.bday-wheel-wrap{position:relative;width:300px;height:300px;max-width:84vw;margin:16px auto 18px}.bday-wheel-bulbs{position:absolute;top:50%;left:50%;width:8px;height:8px;border-radius:50%;background:#ffd66b;transform:translate(-50%,-50%);z-index:4;box-shadow:144px 0 #ffd66b,124.7px 72px #fff1c2,72px 124.7px #ffd66b,0 144px #fff1c2,-72px 124.7px #ffd66b,-124.7px 72px #fff1c2,-144px 0 #ffd66b,-124.7px -72px #fff1c2,-72px -124.7px #ffd66b,0 -144px #fff1c2,72px -124.7px #ffd66b,124.7px -72px #fff1c2;animation:bdayBulbs 1.4s infinite ease-in-out}@keyframes bdayBulbs{0%,to{opacity:1;filter:drop-shadow(0 0 4px rgba(255,214,107,.9))}50%{opacity:.55;filter:drop-shadow(0 0 2px rgba(255,214,107,.4))}}.bday-wheel-ring{position:absolute;inset:14px;border-radius:50%;background:conic-gradient(#f6c453,#fff3cf,#e0a93a,#fff3cf,#f6c453,#fff3cf,#e0a93a,#fff3cf,#f6c453);box-shadow:0 0 0 1px #00000040,0 8px 26px #00000080;z-index:1}.bday-wheel-pointer{position:absolute;top:2px;left:50%;transform:translate(-50%);width:0;height:0;border-left:15px solid transparent;border-right:15px solid transparent;border-top:28px solid #ffd66b;filter:drop-shadow(0 3px 5px rgba(0,0,0,.55));z-index:6}.bday-wheel-pointer:after{content:"";position:absolute;top:-34px;left:50%;transform:translate(-50%);width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,#fff3cf,#e0a93a);box-shadow:0 2px 5px #00000080}.bday-wheel{position:absolute;inset:24px;border-radius:50%;border:3px solid rgba(0,0,0,.25);box-shadow:inset 0 0 0 4px #ffffff1f,inset 0 0 30px #0009;overflow:hidden;transform:rotate(0);z-index:2}.bday-wheel.spinning{transition:transform 5.2s cubic-bezier(.12,.74,.16,1)}.bday-wheel:after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 38% 30%,rgba(255,255,255,.22),transparent 45%);pointer-events:none}.bday-sector-label{position:absolute;top:50%;left:50%;transform-origin:0 0;font-size:13px;font-weight:850;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.75),0 2px 8px rgba(0,0,0,.5);white-space:nowrap;pointer-events:none}.bday-wheel-cap{position:absolute;top:50%;left:50%;width:54px;height:54px;transform:translate(-50%,-50%);display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff3cf 0%,transparent 45%),linear-gradient(135deg,#f6c453,#e0a93a);border:4px solid var(--bg-2);box-shadow:0 4px 14px #0000008c,0 0 0 2px #ffd66b80;z-index:5}.bday-wheel-cap-star{font-size:22px;color:#7a4b12;text-shadow:0 1px 1px rgba(255,255,255,.5);line-height:1}.bday-result{min-height:0;margin:0;opacity:0;max-height:0;overflow:hidden;transform:translateY(10px) scale(.96);transition:opacity var(--t-norm) var(--ease),transform var(--t-norm) var(--ease),max-height var(--t-slow) var(--ease),margin var(--t-slow) var(--ease)}.bday-result.show{opacity:1;max-height:240px;margin:4px 0 18px;transform:translateY(0) scale(1)}.bday-prize-card{position:relative;overflow:hidden;padding:20px 18px 18px;border-radius:20px;background:radial-gradient(ellipse at 50% -20%,var(--accent-soft) 0%,transparent 60%),linear-gradient(160deg,#ffffff14,#ffffff05);border:1px solid var(--border-strong);box-shadow:inset 0 1px 1px #ffffff1f}.bday-prize-card:before{content:"";position:absolute;top:0;left:-60%;width:50%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.18),transparent);transform:skew(-18deg);animation:bdayShine 2.6s .3s ease-in-out infinite}@keyframes bdayShine{0%{left:-60%}55%,to{left:130%}}.bday-prize-icon{width:56px;height:56px;margin:0 auto 10px;display:grid;place-items:center;font-size:30px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);box-shadow:0 8px 22px var(--accent-soft);animation:bdayPrizePop .5s var(--ease) both}@keyframes bdayPrizePop{0%{transform:scale(.3) rotate(-25deg);opacity:0}60%{transform:scale(1.12) rotate(6deg)}to{transform:scale(1) rotate(0);opacity:1}}.bday-prize-congrats{font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:4px}.bday-prize-value{font-size:24px;font-weight:850;letter-spacing:-.4px;background:linear-gradient(135deg,#fff 30%,var(--accent) 120%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.bday-spin-btn{width:100%;padding:13px 20px;font-size:15px;font-weight:700;border-radius:12px}.bday-spin-btn:disabled{opacity:.6;cursor:default}.bday-locked{margin:14px 0 0;line-height:1.4;color:var(--muted)}.bday-close-step-btn{width:100%;margin-top:16px;padding:13px 20px;font-size:15px;font-weight:700;border-radius:12px}.bday-card [hidden]{display:none!important}@media (prefers-reduced-motion: reduce){.bday-wheel.spinning{transition:transform .6s ease-out}}.share-screen .share-badge{display:inline-flex;align-items:center;gap:4px;margin-top:2px;font-size:11px;font-weight:600;letter-spacing:.2px;color:var(--muted);text-transform:lowercase}.share-screen .share-badge svg{opacity:.8}.share-screen .share-avatar{display:inline-grid;place-items:center;overflow:hidden}.share-foot{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 0 6px;font-size:13px;color:var(--muted)}.share-foot[hidden]{display:none!important}.share-end{padding:18px 0;opacity:.7}.share-spinner{width:15px;height:15px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--accent);animation:shareSpin .8s linear infinite}@keyframes shareSpin{to{transform:rotate(360deg)}}.share-screen .screen-body{padding-bottom:calc(70px + env(safe-area-inset-bottom,0px))!important}.share-cta{position:absolute;left:0;right:0;bottom:0;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:transparent;z-index:5}.share-cta-inner{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;background:radial-gradient(ellipse at 0% 0%,var(--accent-soft),transparent 70%),color-mix(in srgb,var(--bg-2, #1A1025) 42%,transparent);-webkit-backdrop-filter:blur(20px) saturate(1.3);backdrop-filter:blur(20px) saturate(1.3);border:1px solid var(--border-strong);box-shadow:0 8px 26px #00000073}.share-cta-title{font-size:14px;font-weight:800;color:var(--text)}.share-cta-sub{font-size:12px;color:var(--muted);margin-top:1px}.share-cta-text{flex:1;min-width:0}.share-cta-btn{flex-shrink:0;display:inline-flex;align-items:center;height:40px;padding:0 16px;border-radius:12px;font-size:13px;font-weight:700;color:#fff;text-decoration:none;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);box-shadow:0 6px 18px var(--accent-soft)}.share-sheet-link{display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:12px;background:#ffffff0d;border:1px solid var(--border-strong);margin-bottom:12px}.share-sheet-link .share-link-url{flex:1;min-width:0;font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.share-sheet-link .share-copy-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;border:none;cursor:pointer;color:#fff;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%)}.share-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.share-stat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;border-radius:12px;background:var(--surface-2, rgba(255, 255, 255, .04));border:1px solid var(--border-strong)}.share-stat-ic{display:grid;place-items:center;width:30px;height:30px;margin-bottom:2px;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.share-stat-num{font-size:20px;font-weight:850;letter-spacing:-.5px;color:var(--text);line-height:1.1}.share-stat-label{font-size:11px;color:var(--muted)}.share-sheet-note{font-size:13px;color:var(--muted);line-height:1.45;margin-bottom:14px}.share-sheet-note b{color:var(--text)}.share-fork-toggle{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-bottom:14px;border-radius:12px;background:var(--surface-2, rgba(255, 255, 255, .04));border:1px solid var(--border-strong);cursor:pointer}.share-fork-toggle-text{flex:1;display:flex;flex-direction:column;gap:2px}.share-fork-toggle-title{font-size:14px;font-weight:700;color:var(--text)}.share-fork-toggle-sub{font-size:12px;color:var(--muted);line-height:1.35}.share-menu-btn{margin-left:auto}.share-fork-menu{z-index:1200;min-width:210px;padding:6px;border-radius:12px;background:var(--surface, #1a1025);border:1px solid var(--border-strong);box-shadow:0 12px 32px #00000073}.share-fork-item{display:flex;align-items:center;gap:10px;width:100%;padding:11px 12px;border:none;background:transparent;color:var(--text);font-size:14px;font-weight:600;border-radius:8px;cursor:pointer}.share-fork-item:hover{background:#ffffff0f}.share-fork-item svg{color:var(--accent)}.share-style{margin-bottom:14px}.share-style-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}.share-style-title{font-size:14px;font-weight:700;color:var(--text)}.share-style-hint{font-size:12px;color:var(--muted);text-align:right;flex:1;min-width:0}.share-style-seg{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:4px;border-radius:12px;background:var(--surface-2, rgba(255, 255, 255, .04));border:1px solid var(--border-strong)}.share-style-opt{padding:8px 6px;border:none;border-radius:9px;background:transparent;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.share-style-opt:hover:not(.active){color:var(--text)}.share-style-opt.active{background:var(--accent);color:#fff;box-shadow:0 4px 14px #00000040}.share-style-opt:disabled{opacity:.6;cursor:default}.share-style-preview{margin-top:10px;padding:14px;border-radius:12px;border:1px solid var(--border-strong);background:radial-gradient(120% 120% at 0% 0%,rgba(255,255,255,.05),transparent 60%),var(--surface-2, rgba(255, 255, 255, .03));overflow:hidden}.share-style-preview .spv-row{display:flex}.share-style-preview .spv-msg{font-size:12.5px;line-height:1.45}.share-style-preview[data-style=chat] .spv-row{margin-bottom:6px}.share-style-preview[data-style=chat] .spv-row.bot{justify-content:flex-start}.share-style-preview[data-style=chat] .spv-row.user{justify-content:flex-end}.share-style-preview[data-style=chat] .spv-msg{max-width:80%;padding:7px 11px;border-radius:13px;color:var(--text)}.share-style-preview[data-style=chat] .spv-row.bot .spv-msg{background:var(--surface, rgba(255, 255, 255, .07));border-bottom-left-radius:4px}.share-style-preview[data-style=chat] .spv-row.user .spv-msg{background:var(--accent);color:#fff;border-bottom-right-radius:4px}.share-style-preview[data-style=novel]{font-family:Georgia,Times New Roman,serif}.share-style-preview[data-style=novel] .spv-row{display:block;margin-bottom:4px}.share-style-preview[data-style=novel] .spv-msg{display:block;font-size:13.5px;line-height:1.7;color:var(--text);text-align:justify}.share-style-preview[data-style=novel] .spv-row.user .spv-msg{font-style:italic;color:var(--muted)}.share-style-preview[data-style=script] .spv-row{display:block;margin-bottom:10px}.share-style-preview[data-style=script] .spv-row:before{content:attr(data-speaker);display:block;margin-bottom:2px;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.share-style-preview[data-style=script] .spv-row.user:before{color:var(--muted)}.share-style-preview[data-style=script] .spv-msg{display:block;padding-left:9px;border-left:2px solid var(--border-strong);color:var(--text)}.share-style-preview[data-style=clean] .spv-row{display:block;padding:8px 0;border-bottom:1px solid var(--border)}.share-style-preview[data-style=clean] .spv-row:last-child{border-bottom:none}.share-style-preview[data-style=clean] .spv-msg{display:block;color:var(--text)}.share-style-preview[data-style=clean] .spv-row.user .spv-msg{color:var(--muted)}#shareMessages[data-display-style=novel],#shareMessages[data-display-style=script],#shareMessages[data-display-style=clean]{max-width:680px;margin:0 auto;padding-left:18px;padding-right:18px}#shareMessages[data-display-style=novel] .msg-row,#shareMessages[data-display-style=script] .msg-row,#shareMessages[data-display-style=clean] .msg-row{justify-content:flex-start;flex-direction:column;align-items:stretch;max-width:100%}#shareMessages[data-display-style=novel] .mini-avatar,#shareMessages[data-display-style=script] .mini-avatar,#shareMessages[data-display-style=clean] .mini-avatar{display:none}#shareMessages[data-display-style=novel] .msg,#shareMessages[data-display-style=script] .msg,#shareMessages[data-display-style=clean] .msg{max-width:100%;background:transparent;border:none;box-shadow:none;padding:0;border-radius:0}#shareMessages[data-display-style=novel]{font-family:Georgia,Times New Roman,"PT Serif",serif}#shareMessages[data-display-style=novel] .msg-row{margin:0 0 4px}#shareMessages[data-display-style=novel] .msg{font-size:17.5px;line-height:1.85;color:var(--text);text-align:justify;hyphens:auto}#shareMessages[data-display-style=novel] .msg-row.user .msg{font-style:italic;color:var(--muted)}#shareMessages[data-display-style=script] .msg-row{margin:0 0 16px}#shareMessages[data-display-style=script] .msg-row:not(.share-img-row):before{content:attr(data-speaker);display:block;margin-bottom:4px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}#shareMessages[data-display-style=script] .msg-row.user:before{color:var(--muted)}#shareMessages[data-display-style=script] .msg{font-size:16px;line-height:1.7;color:var(--text);padding-left:12px;border-left:2px solid var(--border-strong)}#shareMessages[data-display-style=clean] .msg-row{margin:0;padding:16px 0;border-bottom:1px solid var(--border)}#shareMessages[data-display-style=clean] .msg-row:last-child{border-bottom:none}#shareMessages[data-display-style=clean] .msg{font-size:16px;line-height:1.7;color:var(--text)}#shareMessages[data-display-style=clean] .msg-row.user .msg{color:var(--muted)}#shareMessages[data-display-style=novel] .share-img-row,#shareMessages[data-display-style=script] .share-img-row,#shareMessages[data-display-style=clean] .share-img-row{align-items:center;margin:16px 0}.share-sheet-actions{display:flex;gap:10px}.share-sheet-actions .btn{flex:1}.share-sheet-locked{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:8px 4px 4px}.share-sheet-locked .share-lock-ic{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--accent-soft);color:var(--accent);margin-bottom:6px}body[data-active-screen=share] #bottomNav{display:none!important}.share-gallery-img{max-width:min(72%,320px);border-radius:14px;cursor:zoom-in}.share-img-row{margin:4px 0}.guest-only{display:none!important}body.guest-mode .guest-only{display:inline-flex!important}body.guest-mode #catalogClose,body.guest-mode #catalogFilterBtn,body.guest-mode #chatsCreatePersonaBtn,body.guest-mode #chatMenuBtn,body.guest-mode #composerAttachBtn{display:none!important}body.guest-mode #chatAvatarBtn{pointer-events:none}.guest-auth{display:flex;flex-direction:column;align-items:center;text-align:center;padding:10px 6px 4px}.guest-auth-hero{position:relative;display:grid;place-items:center;margin-bottom:16px}.guest-auth-halo{position:absolute;inset:-34px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 26%,transparent) 0%,color-mix(in srgb,var(--accent-2) 12%,transparent) 45%,transparent 70%);filter:blur(6px);animation:guest-auth-halo-breathe 3.6s ease-in-out infinite}@keyframes guest-auth-halo-breathe{0%,to{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.07)}}@media (prefers-reduced-motion: reduce){.guest-auth-halo{animation:none}}.guest-auth-avatar{position:relative;width:88px;height:88px;border-radius:50%;overflow:hidden;border:2px solid color-mix(in srgb,var(--accent) 60%,transparent);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 12%,transparent),0 0 0 1px var(--border-strong),0 14px 34px -12px color-mix(in srgb,var(--accent) 55%,transparent)}.guest-auth-avatar img{width:100%;height:100%;object-fit:cover;display:block}.guest-auth h3{margin:0 0 8px;font-size:21px;font-weight:700;letter-spacing:-.01em}.guest-auth p{margin:0 0 8px;color:var(--muted);font-size:14.5px;line-height:1.5;max-width:320px}.sheet-footer>.guest-auth-footer{flex:1 1 100%;min-width:0}.guest-auth-footer{display:flex;flex-direction:column;gap:10px;width:100%}.guest-auth-footer .btn{width:100%}.guest-welcome{position:fixed;inset:0;z-index:1300;display:flex;align-items:center;justify-content:center;padding:24px;background:#0a081273;-webkit-backdrop-filter:blur(18px) saturate(130%);backdrop-filter:blur(18px) saturate(130%);opacity:0;transition:opacity .26s ease}.guest-welcome.open{opacity:1}.guest-welcome.closing{opacity:0;pointer-events:none}.guest-welcome-card{position:relative;width:min(400px,100%);padding:38px 28px 28px;border-radius:28px;text-align:center;overflow:hidden;background:linear-gradient(165deg,#16121ed9,#120f19cc 45%,#191423d9);border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px #ffffff1f,0 24px 70px #0009;-webkit-backdrop-filter:blur(30px) saturate(150%);backdrop-filter:blur(30px) saturate(150%);transform:translateY(16px) scale(.96);transition:transform .3s cubic-bezier(.22,1,.36,1)}.guest-welcome.open .guest-welcome-card{transform:none}.guest-welcome-glow{position:absolute;inset:-40%;pointer-events:none;background:radial-gradient(40% 35% at 50% 15%,var(--accent-soft),transparent 70%),radial-gradient(42% 36% at 82% 78%,rgba(128,80,255,.1),transparent 70%);filter:blur(35px);z-index:0}.guest-welcome-logo-row{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;margin-bottom:12px}.gw-logo-text{font-size:18px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.guest-welcome-card h2{position:relative;z-index:1;margin:0 0 10px;font-size:24px;line-height:1.22;font-weight:800;letter-spacing:-.02em;color:var(--text)}.guest-welcome-card p{position:relative;z-index:1;margin:0 0 24px;font-size:14.5px;line-height:1.4;color:var(--muted)}.guest-welcome-avatars{position:relative;z-index:1;display:flex;justify-content:center;margin-bottom:24px}.gw-avatar{width:56px;height:56px;border-radius:50%;border:2px solid rgba(22,18,30,.9);overflow:hidden;margin-left:-14px;background:var(--bg-2);box-shadow:0 4px 12px #0000004d}.gw-avatar:first-child{margin-left:0}.gw-avatar img{width:100%;height:100%;object-fit:cover;display:block}.guest-welcome-perks{position:relative;z-index:1;margin:0 0 22px;padding:14px 16px;list-style:none;border-radius:16px;text-align:left;background:#00000042;border:1px solid rgba(255,255,255,.07)}.guest-welcome-perks li{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.45;color:color-mix(in srgb,var(--text) 88%,transparent)}.guest-welcome-perks li+li{margin-top:11px}.guest-welcome-perks svg{flex:none;width:17px;height:17px;margin-top:1px;color:var(--accent)}.guest-welcome-actions{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px}.guest-welcome-actions .btn{padding:14px 18px;font-size:15px;border-radius:16px}.guest-welcome-close{position:absolute;top:12px;right:12px;z-index:2;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:#ffffff12;color:var(--muted);transition:background .15s ease,color .15s ease,transform .12s ease}.guest-welcome-close:hover{background:#ffffff21;color:var(--text)}.guest-welcome-close:active{transform:scale(.92)}.guest-welcome-close svg{width:17px;height:17px;display:block}.auth-guest-back{align-self:flex-start;width:-moz-fit-content;width:fit-content;align-items:center;gap:7px;height:38px;padding:0 14px 0 10px;margin-bottom:14px;border-radius:999px;background:#ffffff0f;border:1px solid var(--border);color:var(--muted);font-size:13.5px;font-weight:600;backdrop-filter:blur(10px);transition:background .15s ease,color .15s ease,transform .12s ease}.auth-guest-back:hover{background:#ffffff1a;color:var(--text)}.auth-guest-back:active{transform:scale(.96)}.auth-guest-back svg{display:block}.auth-support{align-self:center;width:-moz-fit-content;width:fit-content;display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:8px 14px;border:0;border-radius:999px;background:transparent;color:var(--muted);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease,transform .12s ease}.auth-support:hover{background:#ffffff0f;color:var(--text)}.auth-support:active{transform:scale(.96)}.auth-support svg{display:block;flex-shrink:0}body.guest-mode[data-authed=no] .bottom-nav{display:flex}body.guest-mode[data-active-screen=auth] .bottom-nav{display:none}body.guest-mode[data-authed=no]:not([data-active-screen=chat]):not([data-active-screen=character-detail]):not([data-active-screen=auth]) .screen-body{padding-bottom:calc(var(--nav-height) + var(--safe-bottom) + var(--gap-4) + var(--kb-height))}.qmix-root{display:flex;flex-direction:column;gap:14px}.qmix-skeleton{padding:24px 0;text-align:center;color:var(--muted);font-size:13px}.qmix-lead{margin:0;font-size:13px;line-height:1.5;color:var(--muted)}.qmix-lead b{color:var(--text);font-weight:700}.qmix-budget{position:relative;overflow:hidden;padding:14px 16px 16px;border-radius:16px;border:1px solid color-mix(in srgb,var(--accent) 22%,transparent)}.qmix-budget-glow{position:absolute;inset:-40% -20% auto;height:120px;background:radial-gradient(ellipse at 30% 0%,color-mix(in srgb,var(--accent) 26%,transparent),transparent 70%);pointer-events:none}.qmix-budget-top{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px;position:relative}.qmix-budget-label{font-size:12px;font-weight:600;letter-spacing:.2px;text-transform:uppercase;color:var(--muted)}.qmix-bar{display:flex;height:10px;border-radius:999px;overflow:hidden;background:#ffffff12;position:relative}.qmix-bar-seg{height:100%;transition:width .15s ease}.qmix-bar-seg+.qmix-bar-seg{box-shadow:-1px 0 #00000059}.qmix-budget-rest{margin-top:8px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;position:relative}.qmix-budget-rest b{color:var(--text);font-weight:700}.qmix-rest-full{color:color-mix(in srgb,var(--accent) 80%,var(--text));font-weight:600}.qmix-list{display:flex;flex-direction:column;gap:6px}.qmix-row{padding:12px 14px 10px;border-radius:14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.07)}.qmix-row-head{display:flex;align-items:baseline;gap:8px;margin-bottom:8px;flex-wrap:wrap}.qmix-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;align-self:center;background:var(--qmix-color, var(--accent));box-shadow:0 0 8px color-mix(in srgb,var(--qmix-color, var(--accent)) 60%,transparent)}.qmix-row-name{font-size:14px;font-weight:650}.qmix-row-val{margin-left:auto;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.qmix-row-val b{font-size:15px;font-weight:800;color:var(--qmix-color, var(--text))}.qmix-row-sub{margin-top:2px;font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}.qmix-row-sub b{font-weight:700;color:var(--text)}.qmix-range{width:100%;height:26px;margin:0;-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer}.qmix-range::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--qmix-color, var(--accent)) 60%,transparent) 0 var(--qmix-fill, 0%),rgba(255,255,255,.08) var(--qmix-fill, 0%))}.qmix-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;margin-top:-7px;border-radius:50%;background:var(--qmix-color, var(--accent));border:3px solid #1a1a24;box-shadow:0 1px 6px #00000073;transition:transform .12s ease}.qmix-range::-webkit-slider-thumb:active{transform:scale(1.12)}.qmix-range::-moz-range-track{height:6px;border-radius:999px;background:#ffffff14}.qmix-range::-moz-range-progress{height:6px;border-radius:999px;background:color-mix(in srgb,var(--qmix-color, var(--accent)) 55%,transparent)}.qmix-range::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--qmix-color, var(--accent));border:3px solid #1a1a24}.qmix-pending{font-size:11.5px;line-height:1.45;font-weight:600;color:color-mix(in srgb,var(--accent) 80%,var(--text));padding:9px 12px;border-radius:10px;background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent)}.qmix-note{font-size:11.5px;line-height:1.45;color:var(--muted);padding:9px 12px;border-radius:10px;background:#ffffff0a;border:1px dashed rgba(255,255,255,.12)}.qmix-actions{display:flex;gap:10px}.qmix-actions .btn{flex:1}.ref-root{--ref-gold: #FFC857;--ref-gem: #6EE7F9;display:flex;flex-direction:column;gap:12px}.ref-entry{display:flex;align-items:center;gap:12px;width:100%;margin:0 0 14px;padding:12px 14px;border-radius:18px;color:var(--text);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .15s ease}.ref-entry:active{transform:scale(.985)}.ref-entry-ic{width:38px;height:38px;flex-shrink:0;border-radius:12px;display:inline-grid;place-items:center;background:linear-gradient(135deg,#ffe08a,#ffc857);color:#3a2400;box-shadow:0 6px 16px #ffc85740}.ref-entry-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.ref-entry-title{font-size:15px;font-weight:700;line-height:1.2}.ref-entry-sub{font-size:12.5px;color:var(--muted);line-height:1.25}.ref-entry-chev{color:var(--muted);flex-shrink:0}.ref-entry-home{margin:0 0 18px}.spot-slot{margin:0 0 14px}.spot-slot[hidden]{display:none}.spot-slot-lead{margin:var(--gap-1) var(--gap-4) 0}.spot-card{position:relative;overflow:hidden;border-radius:18px;border:1px solid var(--border);box-shadow:0 6px 24px #00000040;background:var(--surface-2, rgba(255, 255, 255, .04));transition:opacity .2s ease,transform .2s ease}.spot-slot .spot-card{animation:bubble-in .28s cubic-bezier(.2,.8,.2,1)}.spot-card.spot-card-out{opacity:0;transform:scale(.98)}.spot-card-body{display:block;width:100%;padding:0;margin:0;border:0;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.spot-card-body img{display:block;width:100%;height:auto}.spot-card-body:active img{transform:scale(.995)}.spot-card-close{position:absolute;top:10px;right:10px;width:30px;height:30px;display:grid;place-items:center;padding:0;border:0;border-radius:999px;background:#00000073;color:#fff;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);-webkit-tap-highlight-color:transparent;transition:background .15s ease,transform .15s ease}.spot-card-close:hover{background:#0009}.spot-card-close:active{transform:scale(.92)}.spot-card-dismiss{position:absolute;right:10px;bottom:10px;padding:5px 10px;border:0;border-radius:999px;background:#00000073;color:#ffffffc7;font-size:11.5px;line-height:1.2;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);-webkit-tap-highlight-color:transparent;transition:background .15s ease,color .15s ease}.spot-card-dismiss:hover{background:#0009;color:#fff}.spot-card-dismiss:active{opacity:.8}.spot-popup{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:20px max(16px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:#08060e00;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);transition:background .24s ease,backdrop-filter .24s ease,-webkit-backdrop-filter .24s ease}.spot-popup.show{background:#08060eb8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.spot-popup-frame{width:min(100%,420px);max-height:calc(100dvh - 40px);padding:3px;border-radius:24px;background:linear-gradient(135deg,var(--accent),var(--accent-2),rgba(255,255,255,.35));box-shadow:0 24px 64px #0000008c,0 0 0 1px #ffffff14 inset;opacity:0;transform:translateY(14px) scale(.96);transition:opacity .26s cubic-bezier(.2,.8,.2,1),transform .26s cubic-bezier(.2,.8,.2,1)}.spot-popup.show .spot-popup-frame{opacity:1;transform:none}.spot-popup-frame .spot-card{border-radius:21px;border:0;box-shadow:none;background:var(--bg-2, #15121d);max-height:calc(100dvh - 46px)}.ref-row-badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;display:inline-grid;place-items:center;margin-right:4px;font-size:11.5px;font-weight:800;background:#ffc857;color:#2a1a00}.ref-hero{position:relative;overflow:hidden;padding:20px 16px 16px;border-radius:22px;background:radial-gradient(140% 90% at 100% 0%,color-mix(in srgb,var(--accent) 45%,transparent) 0%,transparent 55%),radial-gradient(120% 80% at 0% 100%,color-mix(in srgb,var(--accent-2) 40%,transparent) 0%,transparent 55%),var(--surface-1);border:1px solid var(--border-strong);box-shadow:0 16px 40px color-mix(in srgb,var(--accent-2) 22%,transparent)}.ref-hero:before{content:"";position:absolute;inset:-40% -60%;pointer-events:none;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.1) 50%,transparent 60%);animation:ref-sheen 5.5s ease-in-out infinite}@keyframes ref-sheen{0%,20%{transform:translate(-40%)}60%,to{transform:translate(40%)}}.ref-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;background:#00000040;border:1px solid var(--border-strong);color:var(--ref-gold, #FFC857)}.ref-badge svg{width:12px;height:12px}.ref-hero h3{margin:12px 0 0;font-size:22px;line-height:1.15;font-weight:800;letter-spacing:-.4px;max-width:62%}.ref-hero h3 em{font-style:normal;color:transparent;background:linear-gradient(90deg,var(--text),var(--ref-gold, #FFC857));-webkit-background-clip:text;background-clip:text}.ref-hero p{margin:8px 0 0;font-size:13px;line-height:1.45;color:var(--muted);max-width:64%}.ref-art{position:absolute;right:10px;top:16px;width:112px;height:112px;pointer-events:none}.ref-art-link{position:absolute;inset:0;width:100%;height:100%}.ref-art-link path{fill:none;stroke:#ffffff59;stroke-width:2;stroke-dasharray:4 6;animation:ref-dash 3s linear infinite}@keyframes ref-dash{to{stroke-dashoffset:-40}}.ref-orb{position:absolute;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff;box-shadow:0 10px 30px #00000059,inset 0 0 0 2px #ffffff59;animation:ref-float 4s ease-in-out infinite}.ref-orb.a{width:54px;height:54px;left:0;top:28px;background:linear-gradient(135deg,var(--accent),var(--accent-2));font-size:19px;overflow:hidden}.ref-orb img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.ref-orb.b{width:42px;height:42px;right:0;top:0;background:linear-gradient(135deg,#ff8fa3,#ffc857);font-size:15px;animation-delay:-1.3s}.ref-orb.c{width:34px;height:34px;right:8px;bottom:0;background:linear-gradient(135deg,#4ecdc4,#8050ff);font-size:12px;animation-delay:-2.4s}@keyframes ref-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.ref-card{padding:14px;border-radius:18px;background:var(--surface-2);border:1px solid var(--border)}.ref-lbl{font-size:12px;color:var(--muted);font-weight:600;margin-bottom:8px}.ref-linkrow{display:flex;gap:8px}.ref-linkpill{flex:1;min-width:0;display:flex;align-items:center;gap:6px;height:46px;padding:0 12px;border-radius:14px;background:var(--surface-3);border:1px solid var(--border);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px;white-space:nowrap;overflow:hidden}.ref-linkpill .host{color:var(--muted);overflow:hidden;text-overflow:ellipsis}.ref-linkpill .code{color:var(--text);font-weight:700}.ref-icobtn{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;flex-shrink:0;background:var(--surface-1);border:1px solid var(--border);color:var(--text);transition:transform var(--t-fast) var(--ease),background var(--t-fast)}.ref-icobtn svg{width:18px;height:18px}.ref-icobtn:active{transform:scale(.94)}.ref-icobtn.done{background:#5bcc7538;border-color:#5bcc7580;color:#7ee29a}.ref-sharebtn{margin-top:10px;width:100%;height:50px;border-radius:16px;border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:700;font-size:15px;color:#fff;cursor:pointer;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 10px 28px color-mix(in srgb,var(--accent-2) 45%,transparent);transition:transform var(--t-fast) var(--ease),filter var(--t-fast)}.ref-sharebtn svg{width:18px;height:18px}.ref-sharebtn:active{transform:translateY(1px) scale(.99);filter:brightness(1.08)}.ref-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.ref-stat{padding:12px 8px 10px;border-radius:14px;text-align:center;background:var(--surface-2);border:1px solid var(--border)}.ref-stat .n{font-size:22px;font-weight:800;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.ref-stat .n small{font-size:12px;font-weight:700;color:var(--muted);margin-left:2px}.ref-stat .l{margin-top:2px;font-size:11.5px;color:var(--muted)}.ref-stat .n.bump{animation:ref-bump .45s var(--ease)}@keyframes ref-bump{30%{transform:scale(1.18);color:var(--ref-gold, #FFC857)}}.ref-sec-head{display:flex;align-items:center;justify-content:space-between;padding:6px 2px 0}.ref-sec-head h4{margin:0;font-size:16px;font-weight:700;display:inline-flex;align-items:center;gap:8px}.ref-count{min-width:20px;height:20px;padding:0 6px;border-radius:999px;display:inline-grid;place-items:center;font-size:11.5px;font-weight:800;background:var(--ref-gold, #FFC857);color:#2a1a00}.ref-tabs{display:inline-flex;gap:2px;padding:3px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border)}.ref-tabs button{padding:5px 11px;border-radius:999px;border:0;background:none;font:inherit;font-size:12.5px;font-weight:600;color:var(--muted);cursor:pointer}.ref-tabs button[aria-selected=true]{background:var(--surface-1);color:var(--text)}.ref-list{display:flex;flex-direction:column;gap:10px}.ref-list[hidden],.ref-count[hidden],.ref-row-badge[hidden]{display:none}.ref-rw{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:12px;border-radius:18px;background:var(--surface-2);border:1px solid var(--border);transition:opacity var(--t-slow),transform var(--t-slow) var(--ease)}.ref-rw.claimable{border-color:color-mix(in srgb,var(--ref-gold, #FFC857) 45%,var(--border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ref-gold, #FFC857) 12%,transparent)}.ref-rw.leaving{opacity:0;transform:translate(24px)}.ref-rw.claimed{opacity:.62}.ref-rw .ic{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--surface-1);border:1px solid var(--border)}.ref-rw .ic svg{width:22px;height:22px}.ref-rw .ic.purchase{color:var(--ref-gold, #FFC857);background:linear-gradient(135deg,#ffc85752,#ffc8570f)}.ref-rw .ic.signup{color:var(--ref-gem, #6EE7F9);background:linear-gradient(135deg,#6ee7f952,#6ee7f90f)}.ref-rw .body{min-width:0}.ref-rw .t{font-size:14px;font-weight:700;line-height:1.2}.ref-rw .s{margin-top:3px;font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px}.ref-rw .s .av{width:16px;height:16px;border-radius:50%;flex-shrink:0;display:inline-grid;place-items:center;font-size:9px;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-2))}.ref-rw .amt{margin-top:6px;font-size:13px;font-weight:800;color:var(--ref-gem, #6EE7F9)}.ref-chk{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#5bcc7526;color:#7ee29a}.ref-chk svg{width:16px;height:16px}.ref-claim{position:relative;overflow:hidden;height:38px;padding:0 14px;border-radius:12px;border:0;display:inline-flex;align-items:center;gap:6px;font:inherit;font-weight:800;font-size:13.5px;cursor:pointer;color:#2a1a00;background:linear-gradient(135deg,#ffe08a,#ffc857);box-shadow:0 8px 20px #ffc8574d;transition:transform var(--t-fast) var(--ease),box-shadow var(--t-fast)}.ref-claim:after{content:"";position:absolute;inset:0;transform:translate(-120%);background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.55) 50%,transparent 70%);animation:ref-btnsheen 2.8s ease-in-out infinite}@keyframes ref-btnsheen{0%,55%{transform:translate(-120%)}85%,to{transform:translate(120%)}}.ref-claim svg{width:15px;height:15px}.ref-claim:active{transform:scale(.95)}.ref-claim.done{background:#5bcc752e;color:#7ee29a;box-shadow:none;pointer-events:none}.ref-claim.done:after{display:none}.ref-empty{padding:24px 14px;text-align:center;color:var(--muted);font-size:13.5px;border-radius:18px;background:var(--surface-3);border:1px dashed var(--border-strong)}.ref-empty .big{width:44px;height:44px;margin:0 auto 8px;border-radius:50%;display:grid;place-items:center;color:var(--ref-gold, #FFC857);background:color-mix(in srgb,var(--ref-gold, #FFC857) 14%,transparent)}.ref-empty .big svg{width:22px;height:22px}.ref-how h4{margin:0 0 12px;font-size:14px;font-weight:700}.ref-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.ref-step{padding:10px 8px;border-radius:14px;background:var(--surface-3);border:1px solid var(--border);text-align:center}.ref-step .num{width:22px;height:22px;border-radius:50%;margin:0 auto 8px;display:grid;place-items:center;font-size:11.5px;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-2))}.ref-step .txt{font-size:11.5px;line-height:1.35;color:var(--muted)}.ref-step .txt b{display:block;margin-bottom:2px;font-size:12px;color:var(--text)}.ref-how .fine{margin:10px 0 0;font-size:11px;line-height:1.4;color:var(--muted)}.sheet-footer>.ref-footer{flex:1;min-width:0}.ref-claimall{width:100%;height:52px;border-radius:16px;border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:800;font-size:15px;color:#2a1a00;background:linear-gradient(135deg,#ffe08a,#ffc857);box-shadow:0 12px 30px #ffc85752}.ref-claimall svg{width:18px;height:18px}.ref-spark{position:fixed;z-index:10000;width:6px;height:6px;border-radius:50%;pointer-events:none;animation:ref-spark .7s var(--ease) forwards}@keyframes ref-spark{to{transform:translate(var(--dx),var(--dy)) scale(0);opacity:0}}@media (prefers-reduced-motion: reduce){.ref-hero:before,.ref-orb,.ref-art-link path,.ref-claim:after{animation:none}}
