html{color-scheme:dark;touch-action:manipulation}img.svg-icon{height:1.15em;width:1.15em;margin:0 .1em;vertical-align:-.15em;display:inline-block;pointer-events:none;-webkit-user-select:none;user-select:none;flex-shrink:0}:root{--bg-dark: #110e18;--bg-phone: #16121f;--bg-card: rgba(196, 181, 253, .07);--bg-card-hover: rgba(196, 181, 253, .12);--bg-input: rgba(196, 181, 253, .05);--bg-glass: rgba(196, 181, 253, .04);--border-glass: rgba(196, 181, 253, .12);--border-subtle: rgba(196, 181, 253, .06);--accent-primary: #c4b5fd;--accent-secondary: #a78bfa;--accent-gradient: linear-gradient(135deg, #c4b5fd, #a78bfa);--accent-glow: rgba(196, 181, 253, .25);--text-primary: #f3f0ff;--text-secondary: #b0a5c9;--text-muted: #655d78;--text-on-accent: #110e18;--danger: #fb7185;--success: #86efac;--warning: #fcd34d;--nav-bg: rgba(22, 18, 31, .95)}[data-theme-style=glassmorphism]{--glass-blur: 20px;--glass-saturate: 180%;--glass-opacity: .45;--glass-border: rgba(255, 255, 255, .3);--glass-bg: var(--bg-glass);--glass-reflection: inset 0 1px 1px rgba(255, 255, 255, .3);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .1)}[data-theme-style=glassmorphism][data-theme-dark=true]{--glass-border: rgba(255, 255, 255, .125);--glass-reflection: inset 0 1px 1px rgba(255, 255, 255, .125);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .37)}@keyframes glass-blob-move{0%{transform:translate(0) scale(1)}50%{transform:translate(10vw,15vh) scale(1.1)}to{transform:translate(0) scale(1)}}[data-theme-style=glassmorphism] #app:before,[data-theme-style=glassmorphism] #app:after{content:"";position:absolute;width:min(80vw,400px);height:min(80vw,400px);border-radius:50%;filter:blur(80px);opacity:.6;z-index:0;pointer-events:none;animation:glass-blob-move 20s ease-in-out infinite alternate}[data-theme-style=glassmorphism] #app:before{top:-10%;left:-10%;background:var(--accent-primary)}[data-theme-style=glassmorphism] #app:after{bottom:-10%;right:-10%;background:var(--accent-secondary);animation-delay:-10s}[data-theme-style=glassmorphism] .phone-screen{background:var(--bg-dark)!important}[data-theme-style=glassmorphism] .chat-messages,[data-theme-style=glassmorphism] #char-grid{background:transparent!important}[data-theme-style=glassmorphism] .phone-nav{background:var(--glass-bg)!important;backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;border-top:1px solid var(--glass-border)!important;box-shadow:var(--glass-shadow),var(--glass-reflection)!important}[data-theme-style=glassmorphism] #char-grid>div{background:var(--glass-bg)!important;backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;border:1px solid var(--glass-border)!important;border-radius:16px!important;box-shadow:var(--glass-shadow),var(--glass-reflection)!important;transition:all .25s ease!important;overflow:hidden;cursor:pointer}[data-theme-style=glassmorphism] #char-grid>div:hover{border-color:var(--accent-primary)!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-primary) 50%,transparent),0 0 20px color-mix(in srgb,var(--accent-primary) 30%,transparent),0 12px 40px #0003,var(--glass-reflection)!important;background:color-mix(in srgb,var(--glass-bg) 80%,white)!important}[data-theme-style=glassmorphism] .sidebar{background:var(--glass-bg)!important;backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;border-right:1px solid var(--glass-border)!important}[data-theme-style=glassmorphism] .btn-primary,[data-theme-style=glassmorphism] .send-btn{background:var(--glass-bg)!important;backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;border:1px solid var(--glass-border)!important;box-shadow:var(--glass-shadow),var(--glass-reflection)!important;transition:all .25s ease!important}[data-theme-style=glassmorphism] .btn-primary:hover,[data-theme-style=glassmorphism] .send-btn:hover{background:#fff3!important;box-shadow:0 6px 24px #00000026,var(--glass-reflection)!important;transform:translateY(-1px)}[data-theme-style=glassmorphism] input,[data-theme-style=glassmorphism] textarea,[data-theme-style=glassmorphism] select{background:#ffffff0f!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:12px!important}[data-theme-style=glassmorphism] input:focus,[data-theme-style=glassmorphism] textarea:focus{border-color:var(--glass-border)!important;box-shadow:0 0 0 3px #ffffff0f!important}[data-theme-style=glassmorphism] .modal-overlay .modal,[data-theme-style=glassmorphism] .modal{background:var(--glass-bg)!important;backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;border:1px solid var(--glass-border)!important;box-shadow:var(--glass-shadow),var(--glass-reflection)!important}[data-theme-style=glassmorphism] .section-title{background:#ffffff0a;padding:6px 12px;border-radius:8px;border-left:2px solid var(--glass-border)}[data-theme-style=glassmorphism] .theme-category{background:#ffffff0d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px!important}[data-theme-style=glassmorphism] .msg-bubble{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}[data-theme-style=glassmorphism] .nav-item.active{background:#ffffff14;border-radius:10px}[data-theme-style=glassmorphism] .chat-header{border-bottom:1px solid rgba(255,255,255,.1)!important}[data-theme-style=glassmorphism] .message{background:var(--glass-bg)!important;backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))!important;border:1px solid var(--glass-border)!important;border-radius:16px!important;box-shadow:var(--glass-shadow),var(--glass-reflection)!important}[data-theme-style=glassmorphism] .msg-body{background:transparent!important}[data-theme-style=glassmorphism] .chat-input-bar{border-top:1px solid rgba(255,255,255,.1)!important}[data-theme-style=glassmorphism] .chat-input-bar textarea{background:#ffffff0f!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:12px!important}[data-theme-style=glassmorphism] .chat-input-bar textarea:focus{border-color:#ffffff40!important;box-shadow:0 0 0 3px #ffffff0d!important}[data-theme-style=glassmorphism] .chat-bottom-btn{background:#ffffff14!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:10px!important}[data-theme-style=glassmorphism] .msg-action-btn{background:#ffffff0d!important;backdrop-filter:blur(6px)!important;-webkit-backdrop-filter:blur(6px)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:8px!important}[data-theme-style=glassmorphism] .msg-action-btn:hover{background:#ffffff1f!important;border-color:#fff3!important}[data-theme-style=glassmorphism] .settings-section{background:#ffffff0d!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:14px!important;padding:12px!important;margin-bottom:12px!important}[data-theme-style=glassmorphism] .empty-state{background:#ffffff0d!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:16px!important}[data-theme-style=glassmorphism] .sidebar-menu-item{background:#ffffff0a!important;border:1px solid rgba(255,255,255,.06)!important;border-radius:10px!important;margin-bottom:4px!important}[data-theme-style=glassmorphism] .sidebar-menu-item:hover{background:#ffffff1a!important;border-color:#ffffff26!important}[data-theme-style=glassmorphism] .lore-entry,[data-theme-style=glassmorphism] .world-card,[data-theme-style=glassmorphism] .persona-card{background:#ffffff12!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:14px!important}[data-theme-style=glassmorphism] .modal-overlay{backdrop-filter:blur(6px)!important;-webkit-backdrop-filter:blur(6px)!important}[data-theme-style=glassmorphism] select{background:#ffffff0f!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:10px!important}[data-theme-style=glassmorphism] .chat-history-item{background:#ffffff0f!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:12px!important}[data-theme-style=glassmorphism] .chat-history-item:hover{background:#ffffff1a!important}[data-theme-style=glassmorphism] .tracker-bar{background:#ffffff0f!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:8px!important}@media(prefers-reduced-motion:reduce){[data-theme-style=glassmorphism] *{transition-duration:.01ms!important;animation-duration:.01ms!important}}[data-theme-style=oled-dark] *{box-shadow:none!important}[data-theme-style=oled-dark] .phone-frame{border:none!important;box-shadow:none!important}[data-theme-style=oled-dark] .phone-nav{border-top:1px solid rgba(255,255,255,.05)!important;background:#000!important;box-shadow:none!important}[data-theme-style=oled-dark] .screen-header h1{text-shadow:0 0 20px var(--accent-glow)}[data-theme-style=oled-dark] .btn-primary,[data-theme-style=oled-dark] .send-btn{box-shadow:0 0 8px var(--accent-glow)!important;border:1px solid var(--border-glass)}[data-theme-style=oled-dark] .section-title{text-shadow:0 0 12px var(--accent-glow)}[data-theme-style=oled-dark] #char-grid>div{border:1px solid rgba(255,255,255,.04)!important;border-radius:12px;box-shadow:none!important}[data-theme-style=oled-dark] .nav-item.active{text-shadow:0 0 8px var(--accent-glow)}@keyframes aurora-bg{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}[data-theme-style=aurora] #app{background:radial-gradient(ellipse at 20% 10%,rgba(139,92,246,.18),transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(236,72,153,.12),transparent 50%),radial-gradient(ellipse at 50% 50%,rgba(6,182,212,.1),transparent 60%),var(--bg-dark)!important}[data-theme-style=aurora] .screen-header{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary),var(--accent-primary))!important;background-size:200% 200%!important;animation:aurora-bg 6s ease infinite;-webkit-background-clip:padding-box}[data-theme-style=aurora] .screen-header h1{background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme-style=aurora] .btn-primary,[data-theme-style=aurora] .send-btn{background:var(--accent-gradient)!important;box-shadow:0 4px 20px var(--accent-glow)!important}[data-theme-style=aurora] .btn-primary:hover,[data-theme-style=aurora] .send-btn:hover{box-shadow:0 6px 30px var(--accent-glow)!important;transform:translateY(-1px)}[data-theme-style=aurora] #char-grid>div{border:1px solid var(--border-glass);box-shadow:0 4px 20px #0003,0 0 40px #8b5cf60d}[data-theme-style=aurora] .phone-nav{background:linear-gradient(180deg,transparent,var(--nav-bg))!important;border-top:1px solid var(--border-glass)!important}[data-theme-style=retro-future] .screen-header h1{text-shadow:0 0 7px var(--accent-primary),0 0 20px var(--accent-glow),0 0 40px var(--accent-glow)!important;letter-spacing:3px!important;text-transform:uppercase!important;font-weight:900!important}[data-theme-style=retro-future] .section-title{text-shadow:0 0 6px var(--accent-glow)!important;text-transform:uppercase!important;letter-spacing:2px!important;font-size:10px!important;font-weight:700!important}[data-theme-style=retro-future] #char-grid>div{border:1px solid var(--accent-primary)!important;box-shadow:0 0 8px var(--accent-glow),inset 0 0 8px #0006!important;border-radius:4px!important}[data-theme-style=retro-future] #char-grid>div:hover{box-shadow:0 0 16px var(--accent-glow),0 0 32px var(--accent-glow)!important}[data-theme-style=retro-future] .btn-primary,[data-theme-style=retro-future] .send-btn{text-shadow:0 0 4px var(--accent-primary);box-shadow:0 0 12px var(--accent-glow),inset 0 0 4px #0000004d!important;border:1px solid var(--accent-primary)!important;text-transform:uppercase!important;letter-spacing:1.5px!important;font-weight:800!important;border-radius:2px!important}[data-theme-style=retro-future] .btn-primary:hover,[data-theme-style=retro-future] .send-btn:hover{box-shadow:0 0 20px var(--accent-glow),0 0 40px var(--accent-glow)!important}[data-theme-style=retro-future] .phone-nav{border-top:1px solid var(--accent-primary)!important;box-shadow:0 -2px 12px var(--accent-glow)!important}[data-theme-style=retro-future] .phone-nav .nav-item.active{text-shadow:0 0 8px var(--accent-primary)}[data-theme-style=retro-future] #app:after{content:"";position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.03) 2px,rgba(0,0,0,.03) 4px);pointer-events:none;z-index:9999}@keyframes liquid-shimmer{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}[data-theme-style=liquid-glass] #app{background:radial-gradient(ellipse at 30% 20%,var(--accent-glow),transparent 50%),radial-gradient(ellipse at 70% 80%,rgba(236,72,153,.08),transparent 50%),radial-gradient(circle at 50% 50%,rgba(52,211,153,.06),transparent 60%),var(--bg-dark)!important}[data-theme-style=liquid-glass] #char-grid>div{backdrop-filter:blur(12px) saturate(1.6);-webkit-backdrop-filter:blur(12px) saturate(1.6);border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 8px 32px #00000026,inset 0 1px #ffffff1a!important;border-radius:20px!important}[data-theme-style=liquid-glass] .btn-primary,[data-theme-style=liquid-glass] .send-btn{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary),var(--accent-primary))!important;background-size:200% 200%!important;animation:liquid-shimmer 4s ease infinite;border:none!important;box-shadow:0 4px 16px var(--accent-glow)!important}[data-theme-style=liquid-glass] .screen-header h1{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme-style=liquid-glass] .phone-nav{backdrop-filter:blur(30px) saturate(1.8)!important;-webkit-backdrop-filter:blur(30px) saturate(1.8)!important;border-top:1px solid rgba(255,255,255,.08)!important}[data-theme-style=ai-native] #char-grid>div{border:1px solid var(--border-glass)!important;border-radius:16px!important;box-shadow:0 1px 3px #00000014!important;transition:box-shadow .2s,border-color .2s!important}[data-theme-style=ai-native] #char-grid>div:hover{box-shadow:0 4px 12px #6366f126!important;border-color:var(--accent-primary)!important}[data-theme-style=ai-native] .btn-primary,[data-theme-style=ai-native] .send-btn{border-radius:10px!important;font-weight:600!important;box-shadow:none!important;border:none!important;transition:box-shadow .2s!important}[data-theme-style=ai-native] .btn-primary:hover,[data-theme-style=ai-native] .send-btn:hover{box-shadow:0 2px 8px var(--accent-glow)!important}[data-theme-style=ai-native] input:focus,[data-theme-style=ai-native] textarea:focus,[data-theme-style=ai-native] select:focus{outline:2px solid var(--accent-primary)!important;outline-offset:1px!important;box-shadow:0 0 0 4px #6366f11f!important}[data-theme-style=ai-native] .section-title{font-weight:700!important;letter-spacing:.5px}[data-theme-style=ai-native] .screen-header h1{font-weight:700!important;letter-spacing:-.5px}[data-theme-style=ai-native] .phone-nav{border-top:1px solid var(--border-glass)!important;box-shadow:0 -1px 0 var(--border-subtle)!important}[data-theme-style=vaporwave] #app{background:linear-gradient(180deg,var(--bg-dark) 0%,rgba(185,103,255,.1) 50%,var(--bg-dark) 100%),radial-gradient(ellipse at 50% 100%,rgba(255,113,206,.15),transparent 60%),var(--bg-dark)!important}[data-theme-style=vaporwave] .screen-header h1{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary))!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important;filter:drop-shadow(0 0 8px var(--accent-glow))}[data-theme-style=vaporwave] .section-title{background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme-style=vaporwave] #char-grid>div{border:1px solid var(--border-glass)!important;box-shadow:0 4px 20px #0003,0 0 30px #b967ff0d!important;border-radius:16px!important}[data-theme-style=vaporwave] .btn-primary,[data-theme-style=vaporwave] .send-btn{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary))!important;box-shadow:0 2px 12px var(--accent-glow)!important;border:none!important}[data-theme-style=vaporwave] .phone-nav{background:linear-gradient(180deg,transparent,var(--nav-bg))!important}[data-theme-style=spatial] .phone-nav{backdrop-filter:blur(40px) saturate(2)!important;-webkit-backdrop-filter:blur(40px) saturate(2)!important;border-top:.5px solid rgba(255,255,255,.1)!important;box-shadow:0 -2px 20px #00000014!important}[data-theme-style=spatial] #char-grid>div{backdrop-filter:blur(40px) saturate(1.8)!important;-webkit-backdrop-filter:blur(40px) saturate(1.8)!important;border:.5px solid rgba(255,255,255,.15)!important;box-shadow:0 2px 8px #0000000f,0 12px 40px #0000001a!important;border-radius:22px!important;transition:box-shadow .3s,transform .3s!important}[data-theme-style=spatial] #char-grid>div:hover{box-shadow:0 4px 12px #00000014,0 20px 50px #00000026!important;transform:translateY(-2px) scale(1.01)!important}[data-theme-style=spatial] .btn-primary,[data-theme-style=spatial] .send-btn{border-radius:14px!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;font-weight:600!important;box-shadow:0 1px 4px #0000001a!important;border:.5px solid rgba(255,255,255,.1)!important}[data-theme-style=spatial] .screen-header{backdrop-filter:blur(30px) saturate(1.8)!important;-webkit-backdrop-filter:blur(30px) saturate(1.8)!important}[data-theme-style=spatial] .screen-header h1{font-weight:700!important;letter-spacing:-.5px}[data-theme-style=spatial] input,[data-theme-style=spatial] textarea,[data-theme-style=spatial] select{border-radius:12px!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;border:.5px solid rgba(255,255,255,.12)!important}@keyframes gaming-pulse{0%,to{box-shadow:0 0 8px var(--accent-glow)}50%{box-shadow:0 0 20px var(--accent-glow),0 0 40px var(--accent-glow)}}@keyframes gaming-border{0%,to{border-color:var(--accent-primary)}50%{border-color:var(--accent-secondary)}}[data-theme-style=gaming] #app{background:radial-gradient(ellipse at 50% 0%,var(--accent-glow),transparent 50%),radial-gradient(ellipse at 0% 100%,rgba(244,63,94,.08),transparent 50%),radial-gradient(ellipse at 100% 100%,rgba(124,58,237,.06),transparent 50%),var(--bg-dark)!important}[data-theme-style=gaming] #char-grid>div{border:1.5px solid var(--accent-primary)!important;box-shadow:0 0 12px var(--accent-glow),inset 0 1px #ffffff0d!important;border-radius:8px!important;animation:gaming-border 3s ease infinite}[data-theme-style=gaming] #char-grid>div:hover{box-shadow:0 0 24px var(--accent-glow),0 0 48px #7c3aed33!important}.section-title{font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;padding:10px 16px 6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:8px 14px;font-size:12px;font-weight:500;border-radius:10px;border:1px solid var(--border-glass);background:var(--bg-card);color:var(--text-primary);cursor:pointer;transition:background .15s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.btn:active{transform:scale(.97)}[data-theme-style=gaming] .screen-header h1{text-shadow:0 0 8px var(--accent-glow),0 0 24px var(--accent-glow)!important;text-transform:uppercase!important;letter-spacing:4px!important;font-weight:900!important}[data-theme-style=gaming] .section-title{text-shadow:0 0 6px var(--accent-glow);text-transform:uppercase;letter-spacing:2px}[data-theme-style=gaming] .btn-primary,[data-theme-style=gaming] .send-btn{border:1.5px solid var(--accent-primary)!important;box-shadow:0 0 10px var(--accent-glow)!important;text-shadow:0 0 4px var(--accent-primary);text-transform:uppercase!important;letter-spacing:1.5px!important;font-weight:800!important;border-radius:6px!important}[data-theme-style=gaming] .btn-primary:hover,[data-theme-style=gaming] .send-btn:hover{animation:gaming-pulse 1.5s ease infinite}[data-theme-style=gaming] .phone-nav{border-top:1.5px solid var(--accent-primary)!important;box-shadow:0 -3px 16px var(--accent-glow)!important}[data-theme-style=gaming] .nav-item.active{text-shadow:0 0 8px var(--accent-primary)}@media(prefers-reduced-motion:reduce){[data-theme-style] *{animation:none!important;transition-duration:0s!important}}[data-theme-style=neumorphism]{--neu-radius: 14px;--neu-shadow-light: rgba(255, 255, 255, .7);--neu-shadow-dark: rgba(0, 0, 0, .12);--neu-shadow-light-strong: rgba(255, 255, 255, .85);--neu-shadow-dark-strong: rgba(0, 0, 0, .18);--neu-raised: -6px -6px 16px var(--neu-shadow-light), 6px 6px 16px var(--neu-shadow-dark);--neu-pressed: inset -4px -4px 10px var(--neu-shadow-light), inset 4px 4px 10px var(--neu-shadow-dark);--neu-raised-sm: -3px -3px 8px var(--neu-shadow-light), 3px 3px 8px var(--neu-shadow-dark)}[data-theme-style=neumorphism][data-theme-dark=true]{--neu-shadow-light: rgba(255, 255, 255, .06);--neu-shadow-dark: rgba(0, 0, 0, .35);--neu-shadow-light-strong: rgba(255, 255, 255, .08);--neu-shadow-dark-strong: rgba(0, 0, 0, .45)}[data-theme-style=neumorphism] .phone-screen,[data-theme-style=neumorphism] .screen-enter{background:var(--bg-dark)!important;border:none!important}[data-theme-style=neumorphism] #char-grid>div{background:var(--bg-dark)!important;border:none!important;border-radius:var(--neu-radius)!important;box-shadow:var(--neu-raised)!important;transition:box-shadow .2s ease,transform .15s ease!important;overflow:hidden;cursor:pointer}[data-theme-style=neumorphism] #char-grid>div:hover{box-shadow:var(--neu-raised),0 0 0 2px color-mix(in srgb,var(--accent-primary) 30%,transparent)!important}[data-theme-style=neumorphism] #char-grid>div:active{box-shadow:var(--neu-pressed)!important;transform:scale(.98)}[data-theme-style=neumorphism] .phone-nav{background:var(--bg-dark)!important;border-top:none!important;box-shadow:-4px -4px 12px var(--neu-shadow-light),4px 4px 12px var(--neu-shadow-dark)!important}[data-theme-style=neumorphism] .nav-item.active{background:var(--bg-dark);border-radius:10px;box-shadow:var(--neu-pressed)}[data-theme-style=neumorphism] .sidebar{background:var(--bg-dark)!important;border-right:none!important;box-shadow:6px 0 16px var(--neu-shadow-dark)!important}[data-theme-style=neumorphism] .btn-primary,[data-theme-style=neumorphism] .send-btn{background:var(--bg-dark)!important;color:var(--accent-primary)!important;border:none!important;border-radius:var(--neu-radius)!important;box-shadow:var(--neu-raised-sm)!important;transition:all .15s ease!important;font-weight:600}[data-theme-style=neumorphism] .btn-primary:hover,[data-theme-style=neumorphism] .send-btn:hover{box-shadow:var(--neu-raised)!important}[data-theme-style=neumorphism] .btn-primary:active,[data-theme-style=neumorphism] .send-btn:active{box-shadow:var(--neu-pressed)!important;transform:scale(.97)}[data-theme-style=neumorphism] input,[data-theme-style=neumorphism] textarea,[data-theme-style=neumorphism] select{background:var(--bg-dark)!important;border:none!important;border-radius:12px!important;box-shadow:var(--neu-pressed)!important;transition:box-shadow .2s ease!important}[data-theme-style=neumorphism] input:focus,[data-theme-style=neumorphism] textarea:focus{box-shadow:var(--neu-pressed),0 0 0 2px color-mix(in srgb,var(--accent-primary) 40%,transparent)!important;outline:none!important}[data-theme-style=neumorphism] .modal-overlay .modal,[data-theme-style=neumorphism] .modal{background:var(--bg-dark)!important;border:none!important;border-radius:20px!important;box-shadow:-8px -8px 24px var(--neu-shadow-light-strong),8px 8px 24px var(--neu-shadow-dark-strong)!important}[data-theme-style=neumorphism] .modal-overlay{backdrop-filter:blur(4px)!important;-webkit-backdrop-filter:blur(4px)!important}[data-theme-style=neumorphism] .chat-header{background:var(--bg-dark)!important;border-bottom:none!important;box-shadow:0 4px 12px var(--neu-shadow-dark)!important}[data-theme-style=neumorphism] .message{background:var(--bg-dark)!important;border:none!important;border-radius:16px!important;box-shadow:var(--neu-raised-sm)!important}[data-theme-style=neumorphism] .msg-body{background:transparent!important}[data-theme-style=neumorphism] .chat-input-bar{background:var(--bg-dark)!important;border-top:none!important;box-shadow:0 -4px 12px var(--neu-shadow-dark)!important}[data-theme-style=neumorphism] .chat-input-bar textarea{background:var(--bg-dark)!important;border:none!important;border-radius:12px!important;box-shadow:var(--neu-pressed)!important}[data-theme-style=neumorphism] .chat-input-bar textarea:focus{box-shadow:var(--neu-pressed),0 0 0 2px color-mix(in srgb,var(--accent-primary) 35%,transparent)!important}[data-theme-style=neumorphism] .msg-action-btn{background:var(--bg-dark)!important;border:none!important;border-radius:10px!important;box-shadow:var(--neu-raised-sm)!important}[data-theme-style=neumorphism] .msg-action-btn:active{box-shadow:var(--neu-pressed)!important}[data-theme-style=neumorphism] .chat-bottom-btn{background:var(--bg-dark)!important;border:none!important;border-radius:12px!important;box-shadow:var(--neu-raised-sm)!important}[data-theme-style=neumorphism] .settings-section{background:var(--bg-dark)!important;border:none!important;border-radius:var(--neu-radius)!important;box-shadow:var(--neu-raised)!important;padding:14px!important;margin-bottom:14px!important}[data-theme-style=neumorphism] .theme-category{background:var(--bg-dark)!important;border:none!important;border-radius:var(--neu-radius)!important;box-shadow:var(--neu-raised)!important;padding:14px!important}[data-theme-style=neumorphism] .sidebar-menu-item{background:var(--bg-dark)!important;border:none!important;border-radius:12px!important;box-shadow:var(--neu-raised-sm)!important;margin-bottom:6px!important}[data-theme-style=neumorphism] .sidebar-menu-item:hover{box-shadow:var(--neu-raised)!important}[data-theme-style=neumorphism] .lore-entry,[data-theme-style=neumorphism] .world-card,[data-theme-style=neumorphism] .persona-card{background:var(--bg-dark)!important;border:none!important;border-radius:var(--neu-radius)!important;box-shadow:var(--neu-raised)!important}[data-theme-style=neumorphism] .chat-history-item{background:var(--bg-dark)!important;border:none!important;border-radius:12px!important;box-shadow:var(--neu-raised-sm)!important}[data-theme-style=neumorphism] .chat-history-item:hover{box-shadow:var(--neu-raised)!important}[data-theme-style=neumorphism] .section-title{background:var(--bg-dark);padding:8px 14px;border-radius:10px;border-left:none;box-shadow:var(--neu-pressed)}[data-theme-style=neumorphism] .screen-header{background:var(--bg-dark)!important;border-bottom:none!important}[data-theme-style=neumorphism] .screen-header h1{text-shadow:1px 1px 2px var(--neu-shadow-dark),-1px -1px 1px var(--neu-shadow-light)}[data-theme-style=neumorphism] .empty-state{background:var(--bg-dark)!important;border:none!important;border-radius:16px!important;box-shadow:var(--neu-raised-sm)!important}@font-face{font-family:Madman;src:url(/fonts/diary/DFVN-TheTypingofaMadman.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:LePetitCochon;src:url(/fonts/diary/DFVN-LePetitCochon.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Purenotes;src:url(/fonts/diary/DFVN%20Purenotes.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:TransformaMix;src:url(/fonts/TransformaMix_Trial-SemiBold.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}:root{--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 16px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .5);--shadow-glow: 0 0 20px var(--accent-glow);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--font-family: "Inter", "Noto Sans", -apple-system, BlinkMacSystemFont, sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden;background:var(--bg-dark)}body{font-family:var(--font-family);color:var(--text-primary);-webkit-font-smoothing:antialiased}input,textarea,select,button{font-family:inherit}button{cursor:pointer;border:none;background:none;color:inherit}a{text-decoration:none;color:inherit}#app{width:100%;height:100dvh;display:flex;background:var(--bg-dark)}.sidebar-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:900;opacity:0;pointer-events:none;transition:opacity .3s ease}.sidebar-overlay.open{opacity:1;pointer-events:auto}.sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;max-width:80vw;background:var(--bg-phone);border-right:1px solid var(--border-glass);z-index:950;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:4px 0 24px #0000004d}.sidebar.open{transform:translate(0)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px;padding-top:calc(16px + env(safe-area-inset-top,0px));border-bottom:1px solid var(--border-glass);flex-shrink:0}.sidebar-user-row{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .2s}.sidebar-user-row:hover{opacity:.8}.sidebar-avatar{width:44px;height:44px;border-radius:50%;overflow:hidden;border:2.5px solid var(--accent-primary);flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--bg-element)}.sidebar-avatar img{width:100%;height:100%;object-fit:cover}.sidebar-avatar-fallback{font-size:22px}.sidebar-greeting{display:flex;flex-direction:column}.sidebar-hello{font-size:11px;color:var(--text-muted);font-weight:400}.sidebar-nickname{font-size:15px;font-weight:700;color:var(--text-primary);line-height:1.2}.sidebar-credits{display:inline-flex;align-items:center;gap:4px;margin-top:4px;padding:2px 10px 2px 6px;border-radius:12px;background:linear-gradient(135deg,#ffc8001f,#ffa00014);border:1px solid rgba(255,200,0,.2);cursor:pointer;transition:background-color .3s ease,color .3s ease,transform .3s ease,opacity .3s ease,border-color .3s ease}.sidebar-credits:hover{background:linear-gradient(135deg,#ffc80033,#ffa00024);border-color:#ffc80059;transform:translateY(-1px)}.sidebar-credits-icon{font-size:12px;filter:drop-shadow(0 0 3px rgba(255,200,0,.5))}.sidebar-credits-value{font-size:12px;font-weight:800;color:#fbbf24;letter-spacing:.3px;text-shadow:0 0 8px rgba(255,200,0,.3)}.sidebar-credits-label{font-size:9px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.credits-pulse{animation:creditsPulse .6s ease}@keyframes creditsPulse{0%{transform:scale(1)}30%{transform:scale(1.12);box-shadow:0 0 12px #ffc80066}to{transform:scale(1);box-shadow:none}}.sidebar-profile-avatar{width:72px;height:72px;border-radius:50%;margin:0 auto;overflow:hidden;border:3px solid var(--accent-primary);background:var(--bg-element);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative}.sidebar-avatar-badge{position:absolute;bottom:0;right:0;width:22px;height:22px;border-radius:50%;background:var(--accent-primary);display:flex;align-items:center;justify-content:center;font-size:10px;border:2px solid var(--bg-phone)}.sidebar-close{width:32px;height:32px;border-radius:50%;background:var(--bg-glass);border:1px solid var(--border-glass);color:var(--text-secondary);font-size:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease;-webkit-tap-highlight-color:transparent}.sidebar-close:hover{background:var(--bg-card-hover);transform:scale(1.1)}.sidebar-content{flex:1;overflow-y:auto;padding:16px;scrollbar-width:none;display:flex;flex-direction:column}.sidebar-content::-webkit-scrollbar{display:none}.sidebar-nav{display:flex;flex-direction:column;flex:1;min-height:0}.sidebar-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;text-align:center}.sidebar-toggle{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));left:12px;width:36px;height:36px;border-radius:10px;background:var(--bg-card);border:1px solid var(--border-glass);color:var(--text-primary);font-size:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:100;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease;-webkit-tap-highlight-color:transparent;box-shadow:0 2px 8px #00000026}.sidebar-toggle:hover{background:var(--bg-card-hover);transform:scale(1.05)}.sidebar-toggle:active{transform:scale(.95)}.sidebar-menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:14px 12px;background:var(--bg-card);border:1px solid var(--border-glass);border-radius:12px;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease;-webkit-tap-highlight-color:transparent;margin-bottom:6px}.sidebar-menu-item:hover{background:var(--bg-card-hover)}.sidebar-menu-icon{font-size:18px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--bg-glass);border-radius:8px;flex-shrink:0}.sidebar-menu-label{flex:1;font-size:14px;font-weight:500;color:var(--text-primary);text-align:left}.sidebar-menu-arrow{font-size:18px;color:var(--text-muted);font-weight:300}.sidebar-back-btn{display:flex;align-items:center;gap:8px;padding:10px 0;margin-bottom:12px;background:none;border:none;cursor:pointer;color:var(--accent-primary);font-size:14px;font-weight:600;-webkit-tap-highlight-color:transparent;transition:opacity .2s}.sidebar-back-btn:hover{opacity:.7}.sidebar-profile-item{padding:12px;background:var(--bg-card);border:1px solid var(--border-glass);border-radius:12px;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease}.sidebar-profile-item.builtin-profile-card{display:flex;flex-direction:column}.sidebar-profile-item:hover{background:var(--bg-card-hover)}.sidebar-section{animation:fadeIn .2s ease}.sidebar-add-profile-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 16px;margin-bottom:12px;border-radius:14px;background:linear-gradient(135deg,#7c3aed14,#ec489914);border:1.5px solid var(--accent-primary, #7c3aed);color:var(--accent-primary, #7c3aed);font-size:13px;font-weight:600;cursor:pointer;transition:background-color .25s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1),opacity .25s cubic-bezier(.4,0,.2,1);-webkit-tap-highlight-color:transparent;box-shadow:0 2px 8px #7c3aed1a}.sidebar-add-profile-btn:hover{background:linear-gradient(135deg,#7c3aed26,#ec489926);box-shadow:0 4px 16px #7c3aed33;transform:translateY(-1px)}.sidebar-add-profile-btn:active{transform:scale(.97);box-shadow:0 1px 4px #7c3aed1a}.sidebar-add-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:8px;background:var(--accent-primary, #7c3aed);color:#fff;font-size:14px;font-weight:700;flex-shrink:0}.phone-frame{position:relative;width:100%;height:100%;background:var(--bg-phone);display:flex;flex-direction:column;overflow:hidden}.phone-notch{display:none}.phone-screen{flex:1;overflow-y:auto;overflow-x:hidden;padding-top:env(safe-area-inset-top,12px);scrollbar-width:none}.phone-screen::-webkit-scrollbar{display:none}.phone-nav{display:flex;align-items:center;justify-content:space-around;height:calc(60px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--nav-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid var(--border-glass);flex-shrink:0}.nav-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 12px;border-radius:var(--radius-sm);transition:background-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast),border-color var(--transition-fast);font-size:8px;color:var(--text-muted);-webkit-tap-highlight-color:transparent}.nav-item:hover{color:var(--text-secondary)}.nav-item.active{color:var(--accent-primary)}.nav-item .nav-icon{font-size:22px;line-height:1}.screen-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;min-height:140px}.screen-header h1{font-family:TransformaMix,Inter,sans-serif;font-size:20px;font-weight:700;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.screen-header .header-actions{display:flex;gap:8px}.chat-name{font-family:TransformaMix,Inter,sans-serif}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 20px;border-radius:var(--radius-md);font-size:14px;font-weight:500;transition:background-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast),border-color var(--transition-fast);-webkit-tap-highlight-color:transparent}.btn-primary{background:var(--accent-gradient);color:var(--text-on-accent);box-shadow:var(--shadow-glow)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 0 30px var(--accent-glow)}.btn-primary:active{transform:scale(.97)}.btn-secondary{background:var(--bg-card);border:1px solid var(--border-glass);color:var(--text-primary)}.btn-secondary:hover{background:var(--bg-card-hover)}.btn-danger{background:#ef444426;color:var(--danger);border:1px solid rgba(239,68,68,.2)}.btn-danger:hover{background:#ef444440}.btn-icon{width:36px;height:36px;padding:0;border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-glass);font-size:16px;-webkit-tap-highlight-color:transparent}.btn-icon:hover{background:var(--bg-card-hover);border-color:var(--accent-primary)}.fab{position:absolute;bottom:80px;right:20px;width:56px;height:56px;border-radius:50%;background:var(--accent-gradient);color:var(--text-on-accent);font-size:28px;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-glow),var(--shadow-md);z-index:50;transition:background-color var(--transition-normal),color var(--transition-normal),transform var(--transition-normal),opacity var(--transition-normal);-webkit-tap-highlight-color:transparent}.fab:hover{transform:scale(1.1) rotate(90deg);box-shadow:0 0 40px var(--accent-glow)}.fab:active{transform:scale(.95)}.card{background:var(--bg-card);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background-color var(--transition-normal),color var(--transition-normal),transform var(--transition-normal),opacity var(--transition-normal)}.card:hover{background:var(--bg-card-hover);border-color:rgba(var(--accent-primary),.2)}.form-group{margin-bottom:16px}.form-label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.form-input,.form-textarea,.form-select{width:100%;padding:10px 14px;background:var(--bg-input);border:1px solid var(--border-glass);border-radius:var(--radius-md);color:var(--text-primary);font-size:14px;transition:background-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast),border-color var(--transition-fast);outline:none}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-textarea{resize:vertical;min-height:140px;line-height:1.5}.st-section{margin-bottom:12px}.st-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-primary);margin-bottom:6px}.st-hint{margin-top:4px;font-size:11px;color:var(--text-muted);line-height:1.4}.st-hint code{background:#ffffff14;padding:1px 5px;border-radius:4px;font-size:10px;font-family:monospace}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.form-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238888a0' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}select option,.form-input option,.form-select option{background:#1a1a2e;color:#e0e0e0}.chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:var(--accent-glow);border:1px solid var(--accent-primary);border-radius:var(--radius-full);font-size:12px;color:var(--accent-primary)}.chip .chip-remove{font-size:14px;cursor:pointer;opacity:.6}.chip .chip-remove:hover{opacity:1}.character-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;padding:0 16px 16px}.character-tile{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:3/4;cursor:pointer;transition:border-color .35s ease,box-shadow .35s ease;border:1.5px solid rgba(255,255,255,.06);-webkit-tap-highlight-color:transparent;max-width:280px;box-shadow:0 4px 16px #00000026;contain:layout style paint}.character-tile:hover{border-color:var(--accent-primary);box-shadow:0 8px 28px var(--accent-glow),0 4px 16px #0003}.character-tile:active{transform:scale(.98)}.character-tile .tile-avatar{width:100%;height:100%;object-fit:cover;image-rendering:auto;-webkit-image-rendering:auto;background:linear-gradient(135deg,var(--bg-card),var(--bg-dark));transition:transform .5s cubic-bezier(.4,0,.2,1)}.character-tile:hover .tile-avatar{transform:none}.tile-like-badge{position:absolute;top:8px;right:8px;display:flex;align-items:center;gap:3px;padding:4px 8px;border-radius:20px;background:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:11px;color:#fff;z-index:3;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease;border:1px solid rgba(255,255,255,.1)}.tile-like-badge:hover{background:#000000b3;transform:scale(1.1)}.tile-like-badge.liked{color:#f43f5e}.character-tile .tile-info{position:absolute;bottom:0;left:0;right:0;padding:40px 12px 10px;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.5) 40%,transparent 100%);transition:padding .6s cubic-bezier(.16,1,.3,1),background .6s cubic-bezier(.16,1,.3,1)}.character-tile:hover .tile-info,.character-tile.tile-active .tile-info{padding:100px 12px 10px;background:linear-gradient(to top,rgba(0,0,0,.98) 0%,rgba(0,0,0,.92) 35%,rgba(0,0,0,.7) 60%,rgba(0,0,0,.3) 80%,transparent 100%)}.character-tile .tile-name{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;line-height:1.2;margin-bottom:0;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.5);transition:font-size .55s cubic-bezier(.16,1,.3,1)}.character-tile:hover .tile-name,.character-tile.tile-active .tile-name{font-size:17px;margin-bottom:0}.tile-divider{display:flex;align-items:center;gap:6px;margin:5px 0;opacity:0;transform:translateY(12px);transition:opacity .5s cubic-bezier(.16,1,.3,1) .1s,transform .5s cubic-bezier(.16,1,.3,1) .1s,max-height .5s cubic-bezier(.16,1,.3,1) .1s;max-height:0;overflow:hidden}.character-tile:hover .tile-divider,.character-tile.tile-active .tile-divider{opacity:1;transform:translateY(0);max-height:20px}.tile-divider-line{flex:1;height:1px;background:linear-gradient(90deg,var(--accent-primary),transparent);opacity:.6}.tile-divider-dot{font-size:6px;color:var(--accent-primary);opacity:.8}.character-tile .tile-desc{font-size:11px;color:#ffffffe6;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4;text-shadow:0 1px 4px rgba(0,0,0,.8),0 0 8px rgba(0,0,0,.5);opacity:0;transform:translateY(15px);transition:opacity .55s cubic-bezier(.16,1,.3,1) .18s,transform .55s cubic-bezier(.16,1,.3,1) .18s,max-height .55s cubic-bezier(.16,1,.3,1) .18s;max-height:0}.character-tile:hover .tile-desc,.character-tile.tile-active .tile-desc{opacity:1;transform:translateY(0);max-height:60px}.tile-creator{font-size:11px;color:#dc2626;margin-top:3px;font-weight:700;text-shadow:0 1px 4px rgba(0,0,0,.8);cursor:pointer;transition:opacity .55s cubic-bezier(.16,1,.3,1) .25s,transform .55s cubic-bezier(.16,1,.3,1) .25s,color .2s ease;letter-spacing:.3px;opacity:0;transform:translateY(15px)}.character-tile:hover .tile-creator,.character-tile.tile-active .tile-creator{opacity:1;transform:translateY(0)}.tile-creator:hover{color:#f87171;text-decoration:underline}.character-tile .tile-actions{position:absolute;bottom:0;left:0;right:0;display:flex;gap:4px;padding:6px 8px;justify-content:flex-end;z-index:2;opacity:0;transition:opacity .25s ease}.character-tile:hover .tile-actions{opacity:1}.character-tile .tile-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:56px;font-weight:800;background:linear-gradient(135deg,var(--bg-card),var(--bg-dark));color:var(--accent-primary);opacity:.5;text-transform:uppercase}@media(hover:none){.character-tile,.character-tile .tile-avatar,.character-tile .tile-info,.character-tile .tile-name,.tile-divider,.character-tile .tile-desc,.tile-creator,.character-tile .tile-actions{transition:none}.character-tile.tile-active{transition:border-color .3s ease,box-shadow .3s ease}.character-tile.tile-active .tile-info{transition:padding .4s ease,background .4s ease}.character-tile.tile-active .tile-name{transition:font-size .4s ease}.character-tile.tile-active .tile-divider{transition:opacity .4s ease .1s,transform .4s ease .1s,max-height .4s ease .1s}.character-tile.tile-active .tile-desc{transition:opacity .4s ease .15s,transform .4s ease .15s,max-height .4s ease .15s}.character-tile.tile-active .tile-creator{transition:opacity .4s ease .2s,transform .4s ease .2s}}[data-theme-style=glassmorphism] .character-tile{transition:border-color .35s ease,box-shadow .35s ease,transform .4s cubic-bezier(.34,1.56,.64,1),backdrop-filter .35s ease}[data-theme-style=glassmorphism] .character-tile:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 16px 40px var(--accent-glow),0 0 60px #ffffff0d,0 4px 16px #0003;border-color:#ffffff40}[data-theme-style=glassmorphism] .character-tile:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 60%);opacity:0;transition:opacity .4s ease;z-index:1;pointer-events:none}[data-theme-style=glassmorphism] .character-tile:hover:before{opacity:1}[data-theme-style=glassmorphism] .character-tile:active{transform:translateY(-2px) scale(.97);box-shadow:0 4px 12px var(--accent-glow),inset 0 2px 8px #0003}@keyframes oled-glow-pulse{0%,to{box-shadow:0 0 15px var(--accent-glow),0 4px 16px #0006}50%{box-shadow:0 0 30px var(--accent-glow),0 0 60px var(--accent-glow),0 4px 16px #0006}}[data-theme-style=oled-dark] .character-tile{transition:border-color .3s ease,box-shadow .3s ease,transform .3s ease}[data-theme-style=oled-dark] .character-tile:hover{animation:oled-glow-pulse 2s ease-in-out infinite;border-color:var(--accent-primary);transform:translateY(-3px)}[data-theme-style=oled-dark] .character-tile:active{animation:none;transform:scale(.96);box-shadow:0 0 20px var(--accent-primary),0 0 2px var(--accent-primary);border-color:#fff;transition:all .1s ease}@keyframes aurora-border-spin{0%{--aurora-angle: 0deg}to{--aurora-angle: 360deg}}@property --aurora-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}[data-theme-style=aurora] .character-tile{transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .35s ease}[data-theme-style=aurora] .character-tile:hover{transform:translateY(-4px);border-color:transparent;background-image:conic-gradient(from var(--aurora-angle),#818cf8,#ec4899,#06b6d4,#a855f7,#818cf8);background-origin:border-box;background-clip:padding-box,border-box;animation:aurora-border-spin 3s linear infinite;box-shadow:0 8px 32px var(--accent-glow),0 0 20px var(--accent-glow)}[data-theme-style=aurora] .character-tile:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,transparent 40%,var(--accent-primary));opacity:0;mix-blend-mode:overlay;transition:opacity .4s ease;pointer-events:none;z-index:1}[data-theme-style=aurora] .character-tile:hover:after{opacity:.3}[data-theme-style=aurora] .character-tile:active{transform:scale(.97);animation-play-state:paused}@keyframes retro-scanline{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}[data-theme-style=retro-future] .character-tile{transition:border-color .3s ease,box-shadow .3s ease,transform .25s ease}[data-theme-style=retro-future] .character-tile:hover{border-color:var(--accent-primary);box-shadow:0 0 10px var(--accent-primary),0 0 30px var(--accent-glow),0 0 60px var(--accent-glow),inset 0 0 15px #0000004d;transform:translateY(-3px)}[data-theme-style=retro-future] .character-tile:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.015) 2px,rgba(255,255,255,.015) 4px);z-index:2;pointer-events:none;opacity:0;transition:opacity .3s ease}[data-theme-style=retro-future] .character-tile:hover:before{opacity:1}[data-theme-style=retro-future] .character-tile:after{content:"";position:absolute;left:0;right:0;height:40%;background:linear-gradient(180deg,transparent,var(--accent-primary),transparent);opacity:0;z-index:2;pointer-events:none;transition:opacity .3s ease}[data-theme-style=retro-future] .character-tile:hover:after{opacity:.04;animation:retro-scanline 2.5s linear infinite}[data-theme-style=retro-future] .character-tile:active{transform:scale(.95) translateY(0);transition:transform .08s ease;box-shadow:0 0 20px var(--accent-primary),inset 0 0 20px #00000080}@keyframes liquid-shimmer{0%{background-position:-200% center}to{background-position:200% center}}[data-theme-style=liquid-glass] .character-tile{transition:border-color .4s ease,box-shadow .4s ease,transform .5s cubic-bezier(.34,1.56,.64,1)}[data-theme-style=liquid-glass] .character-tile:hover{transform:translateY(-5px) scale(1.015);border-color:transparent;box-shadow:0 12px 36px var(--accent-glow),0 4px 16px #00000026}[data-theme-style=liquid-glass] .character-tile:before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1.5px;background:linear-gradient(90deg,transparent 0%,var(--accent-primary) 25%,var(--accent-secondary) 50%,var(--accent-primary) 75%,transparent 100%);background-size:200% 100%;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .4s ease;z-index:3;pointer-events:none}[data-theme-style=liquid-glass] .character-tile:hover:before{opacity:1;animation:liquid-shimmer 2s ease-in-out infinite}[data-theme-style=liquid-glass] .character-tile:active{transform:translateY(-2px) scale(.98);transition:transform .15s cubic-bezier(.34,1.56,.64,1)}[data-theme-style=ai-native] .character-tile{transition:border-color .25s ease,box-shadow .25s ease,transform .3s cubic-bezier(.22,1,.36,1)}[data-theme-style=ai-native] .character-tile:hover{transform:translateY(-4px);border-color:var(--accent-primary);box-shadow:0 12px 24px var(--accent-glow),0 4px 8px #0000001f}[data-theme-style=ai-native] .character-tile:after{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--accent-gradient);transition:width .35s cubic-bezier(.22,1,.36,1),left .35s cubic-bezier(.22,1,.36,1);z-index:3;pointer-events:none;border-radius:2px}[data-theme-style=ai-native] .character-tile:hover:after{width:60%;left:20%}[data-theme-style=ai-native] .character-tile:active{transform:translateY(-1px) scale(.98);transition:transform .1s ease}@keyframes vapor-float{0%,to{transform:translateY(-4px)}50%{transform:translateY(-8px)}}[data-theme-style=vaporwave] .character-tile{transition:border-color .4s ease,box-shadow .4s ease,transform .5s ease}[data-theme-style=vaporwave] .character-tile:hover{animation:vapor-float 3s ease-in-out infinite;border-color:var(--accent-primary);box-shadow:0 8px 30px var(--accent-glow),0 0 40px #01cdfe1a,0 0 80px #ff71ce0d}[data-theme-style=vaporwave] .character-tile:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,#ff71ce0d,#01cdfe0d);opacity:0;transition:opacity .4s ease;z-index:1;pointer-events:none}[data-theme-style=vaporwave] .character-tile:hover:before{opacity:1}[data-theme-style=vaporwave] .character-tile:active{animation:none;transform:translate(2px,-1px) scale(.98);transition:transform .06s ease;box-shadow:0 4px 20px var(--accent-glow),-2px 0 0 var(--accent-primary),2px 0 0 var(--accent-secondary)}[data-theme-style=spatial] .character-tile{transition:border-color .3s ease,box-shadow .45s cubic-bezier(.22,1,.36,1),transform .45s cubic-bezier(.22,1,.36,1)}[data-theme-style=spatial] .character-tile:hover{transform:translateY(-8px) scale(1.02);border-color:#ffffff26;box-shadow:0 20px 50px #00000040,0 8px 20px #00000026,0 0 0 1px #ffffff14}[data-theme-style=spatial] .character-tile:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.06) 0%,transparent 50%);opacity:0;transition:opacity .4s ease;z-index:1;pointer-events:none}[data-theme-style=spatial] .character-tile:hover:before{opacity:1}[data-theme-style=spatial] .character-tile:active{transform:translateY(-2px) scale(.97);box-shadow:0 6px 16px #0003,0 2px 6px #00000026;transition:transform .12s cubic-bezier(.22,1,.36,1),box-shadow .12s ease}@keyframes gaming-rgb-chase{0%{border-color:#f43f5e;box-shadow:0 0 15px #f43f5e66,0 4px 16px #0000004d}33%{border-color:#22d3ee;box-shadow:0 0 15px #22d3ee66,0 4px 16px #0000004d}66%{border-color:#a855f7;box-shadow:0 0 15px #a855f766,0 4px 16px #0000004d}to{border-color:#f43f5e;box-shadow:0 0 15px #f43f5e66,0 4px 16px #0000004d}}@keyframes gaming-flash{0%{opacity:.6}to{opacity:0}}[data-theme-style=gaming] .character-tile{transition:transform .25s ease}[data-theme-style=gaming] .character-tile:hover{animation:gaming-rgb-chase 1.5s linear infinite;transform:translateY(-3px)}[data-theme-style=gaming] .character-tile:after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--accent-primary);opacity:0;z-index:2;pointer-events:none}[data-theme-style=gaming] .character-tile:active{animation:none;transform:scale(.94);border-color:var(--accent-primary);transition:transform .06s ease}[data-theme-style=gaming] .character-tile:active:after{animation:gaming-flash .3s ease-out forwards}[data-theme-style=neumorphism] .character-tile{box-shadow:-4px -4px 12px #ffffff14,4px 4px 12px #00000040;transition:box-shadow .35s ease,transform .35s ease,border-color .35s ease}[data-theme-style=neumorphism] .character-tile:hover{box-shadow:-6px -6px 18px #ffffff1a,6px 6px 18px #0000004d,0 0 20px var(--accent-glow);transform:translateY(-3px);border-color:var(--accent-primary)}[data-theme-style=neumorphism] .character-tile:active{box-shadow:inset -3px -3px 8px #ffffff0f,inset 3px 3px 8px #0000004d;transform:translateY(0) scale(.99);transition:all .1s ease}@media(hover:none){[data-theme-style=glassmorphism] .character-tile,[data-theme-style=oled-dark] .character-tile,[data-theme-style=aurora] .character-tile,[data-theme-style=retro-future] .character-tile,[data-theme-style=liquid-glass] .character-tile,[data-theme-style=ai-native] .character-tile,[data-theme-style=vaporwave] .character-tile,[data-theme-style=spatial] .character-tile,[data-theme-style=gaming] .character-tile,[data-theme-style=neumorphism] .character-tile{transition:none;animation:none}[data-theme-style=glassmorphism] .character-tile:before,[data-theme-style=glassmorphism] .character-tile:after,[data-theme-style=aurora] .character-tile:after,[data-theme-style=retro-future] .character-tile:before,[data-theme-style=retro-future] .character-tile:after,[data-theme-style=liquid-glass] .character-tile:before,[data-theme-style=ai-native] .character-tile:after,[data-theme-style=vaporwave] .character-tile:before,[data-theme-style=spatial] .character-tile:before,[data-theme-style=gaming] .character-tile:after{display:none}}.creator-profile-content{padding:0 0 24px;overflow-y:auto}.cp-masonry{padding:12px;display:flex;flex-direction:column;gap:10px}.cp-masonry-row{display:flex;gap:10px;min-height:180px}.cp-masonry-block{border-radius:14px;padding:20px;flex:1;min-width:0}.cp-bio-block{background:#f5ebe1f2;color:#3a2e26;display:flex;flex-direction:column;justify-content:space-between;flex:1.2}.cp-bio-quote{font-size:14px;line-height:1.7;font-weight:400;color:#5a4e42;margin-bottom:16px}.cp-quote-mark{font-size:28px;font-weight:700;color:#c0a080;line-height:0;vertical-align:-6px;margin:0 2px}.cp-brand-bar{display:flex;align-items:center;gap:10px;background:#a06e5ad9;border-radius:10px;padding:10px 14px;color:#fff}.cp-avatar-small{width:36px;height:36px;border-radius:50%;overflow:hidden;flex-shrink:0;background:#fff3;display:flex;align-items:center;justify-content:center}.cp-avatar-small img{width:100%;height:100%;object-fit:cover}.cp-avatar-small span{font-size:16px;font-weight:800;color:#fff}.cp-brand-name{font-size:15px;font-weight:800;margin:0;letter-spacing:.3px}.cp-brand-badges{display:flex;gap:6px;margin-top:2px;flex-wrap:wrap}.cp-masonry-col-img{flex:.8;min-width:120px;border-radius:12px;overflow:hidden;position:relative}.cp-masonry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.cp-masonry-img{aspect-ratio:3/4;border-radius:12px;overflow:hidden;position:relative;transition:transform .3s ease}.cp-masonry-img:hover{transform:scale(1.02)}.cp-empty-slot{aspect-ratio:3/4}.cp-desc-block{background:#b4828cd9;color:#fff;flex:1}.cp-speech-label{font-size:10px;text-transform:uppercase;letter-spacing:1px;opacity:.7;margin-bottom:8px}.cp-speech-text{font-size:13px;line-height:1.6}.cp-support-block{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;flex:.6;min-width:100px;cursor:pointer;transition:background-color .3s ease,color .3s ease,transform .3s ease,opacity .3s ease,border-color .3s ease}.cp-support-block:hover{background:#ffffff1a;border-color:#a855f766}.cp-support-icon{font-size:32px;margin-bottom:8px}.cp-support-text{font-size:11px;font-weight:700;color:var(--text-primary)}.cp-support-sub{font-size:9px;color:var(--text-muted);margin-top:2px}@media(max-width:500px){.cp-masonry-row{flex-direction:column;min-height:auto}.cp-masonry-col-img{min-height:200px}.cp-masonry-grid{grid-template-columns:repeat(2,1fr)}}.cp-banner-wrapper{position:relative;margin-bottom:16px}.cp-banner{width:100%;height:140px;border-radius:0 0 20px 20px;overflow:hidden;position:relative}.cp-banner img{width:100%;height:100%;object-fit:cover;filter:brightness(.7) saturate(1.1)}.cp-banner:after{content:"";position:absolute;bottom:0;left:0;right:0;height:60px;background:linear-gradient(to top,var(--bg-dark),transparent)}.cp-banner-gradient{width:100%;height:100%;background:linear-gradient(135deg,#f9a8d44d,#f472b633,#1e1220cc)}.cp-hero-row{display:flex;align-items:flex-end;gap:10px;margin-top:-42px;padding:0 16px;position:relative;z-index:2}.cp-avatar-ring{flex-shrink:0;width:80px;height:80px;border-radius:50%;padding:3px;background:conic-gradient(var(--accent-primary),var(--accent-secondary),#fbbf24,var(--accent-primary));box-shadow:0 4px 20px #f9a8d44d}.cp-avatar{width:100%;height:100%;border-radius:50%;overflow:hidden;background:var(--bg-dark);display:flex;align-items:center;justify-content:center;border:3px solid var(--bg-dark)}.cp-avatar img{width:100%;height:100%;object-fit:cover}.cp-avatar-letter{font-size:28px;font-weight:800;color:var(--accent-primary)}.cp-speech-bubble{background:var(--bg-card);border:1px solid var(--border-glass);border-radius:14px;padding:8px 14px;font-size:12px;color:var(--text-secondary);position:relative;max-width:200px;line-height:1.4;margin-bottom:8px}.cp-speech-bubble:before{content:"";position:absolute;left:-6px;bottom:16px;width:12px;height:12px;background:var(--bg-card);border-left:1px solid var(--border-glass);border-bottom:1px solid var(--border-glass);transform:rotate(45deg)}.cp-name-section{padding:10px 16px 16px}.cp-name{font-size:20px;font-weight:800;color:var(--text-primary);margin:0 0 6px;line-height:1.2}.cp-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.cp-badge{font-size:10px;padding:3px 10px;border-radius:12px;background:#f9a8d41a;border:1px solid rgba(249,168,212,.15);color:var(--text-secondary);font-weight:600}.cp-badge-role{background:#fbbf241f;border-color:#fbbf2433;color:#fbbf24}.cp-bio-text{font-size:13px;color:var(--text-secondary);line-height:1.5;margin-bottom:10px}.cp-hero-actions{margin-top:4px}.cp-follow-btn{display:inline-flex;align-items:center;gap:5px;padding:8px 22px;border:none;border-radius:20px;background:var(--accent-gradient);color:var(--text-on-accent);font-size:12px;font-weight:700;cursor:pointer;transition:background-color .3s ease,color .3s ease,transform .3s ease,opacity .3s ease,border-color .3s ease;box-shadow:0 3px 12px var(--accent-glow)}.cp-follow-btn:hover{transform:translateY(-1px);box-shadow:0 5px 18px var(--accent-glow)}.cp-follow-btn:active{transform:scale(.97)}.cp-follow-btn.following{background:#f9a8d41f;color:var(--accent-primary);border:1.5px solid rgba(249,168,212,.3);box-shadow:none}.cp-follow-btn.following:hover{background:#f9a8d433}.cp-follow-btn.own-profile{background:transparent;border:1.5px solid var(--border-glass);color:var(--text-secondary);box-shadow:none}.cp-follow-btn.own-profile:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.cp-tabs{display:flex;gap:4px;margin:0 16px 16px;background:var(--bg-card);border-radius:12px;padding:4px;border:1px solid var(--border-glass)}.cp-tab{flex:1;padding:10px 8px;border:none;background:transparent;color:var(--text-muted);font-size:12px;font-weight:600;border-radius:10px;cursor:pointer;transition:background-color .25s ease,color .25s ease,transform .25s ease,opacity .25s ease,border-color .25s ease,box-shadow .25s ease}.cp-tab.active{background:var(--accent-gradient);color:var(--text-on-accent);box-shadow:0 2px 8px var(--accent-glow)}.cp-tab:not(.active):hover{background:#f9a8d40f;color:var(--accent-primary)}.cp-tab-content{padding:0 16px}.cp-section{background:var(--bg-card);border-radius:14px;padding:16px;margin-bottom:12px;border:1px solid var(--border-glass)}.cp-section-title{font-size:13px;font-weight:700;color:var(--text-primary);margin-bottom:10px}.cp-bio-input{width:100%;min-height:60px;padding:10px 12px;border-radius:10px;border:1px solid var(--border-glass);background:#ffffff0a;color:var(--text-primary);font-size:13px;font-family:inherit;resize:vertical;outline:none;transition:border-color .2s}.cp-bio-input:focus{border-color:var(--accent-primary)}.cp-save-btn{width:calc(100% - 32px);margin:0 16px 12px;padding:10px!important;font-size:13px!important}.cp-post-composer{background:var(--bg-card);border-radius:14px;padding:14px;margin-bottom:12px;border:1px solid var(--border-glass)}.cp-post-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.cp-post-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--bg-element);display:flex;align-items:center;justify-content:center;border:2px solid var(--border-glass)}.cp-post-avatar img{width:100%;height:100%;object-fit:cover}.cp-post-avatar span{font-size:14px;font-weight:700;color:var(--accent-primary)}.cp-post-input{flex:1;padding:10px 14px;border-radius:20px;border:1px solid var(--border-glass);background:#ffffff0a;color:var(--text-primary);font-size:13px;font-family:inherit;outline:none;transition:border-color .2s}.cp-post-input:focus{border-color:var(--accent-primary)}.cp-post-btn{width:100%;padding:10px;border:none;border-radius:10px;background:var(--accent-gradient);color:var(--text-on-accent);font-size:13px;font-weight:600;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease}.cp-post-btn:hover{opacity:.9;transform:translateY(-1px)}.cp-post{background:var(--bg-card);border-radius:14px;padding:14px;margin-bottom:12px;border:1px solid var(--border-glass)}.cp-post .cp-post-header{margin-bottom:10px}.cp-post-meta{flex:1}.cp-post-author{font-size:13px;font-weight:700;color:var(--text-primary)}.cp-post-time{font-size:10px;color:var(--text-muted);margin-top:1px}.cp-post-body{font-size:14px;color:var(--text-primary);line-height:1.6;padding:8px 0;border-top:1px solid var(--border-glass);white-space:pre-wrap}.cp-empty{text-align:center;padding:40px 20px;color:var(--text-muted);font-size:13px;font-style:italic}.cp-banner-edit{position:absolute;top:10px;right:10px;z-index:3;width:36px;height:36px;border-radius:50%;border:none;background:#00000080;color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cp-banner-edit:hover{background:#000000b3;transform:scale(1.1)}.cp-bio-text.editable,.cp-speech-bubble.editable,.cp-name.editable{cursor:pointer;transition:background .2s ease}.cp-bio-text.editable:hover,.cp-name.editable:hover{background:#f9a8d40f;border-radius:8px}.cp-speech-bubble.editable:hover{background:#f9a8d41a}.cp-placeholder{color:var(--text-muted);font-style:italic;font-size:11px}.cp-inline-edit{width:100%;min-height:50px;padding:8px 10px;border-radius:8px;border:1px solid var(--accent-primary);background:#ffffff0a;color:var(--text-primary);font-size:13px;font-family:inherit;resize:vertical;outline:none}.cp-inline-edit-small{width:100%;padding:6px 10px;border-radius:8px;border:1px solid var(--accent-primary);background:#ffffff0a;color:var(--text-primary);font-size:12px;font-family:inherit;outline:none}.cp-inline-actions{display:flex;gap:6px;margin-top:6px;justify-content:flex-end}.cp-inline-save{padding:4px 14px;border:none;border-radius:8px;background:var(--accent-gradient);color:var(--text-on-accent);font-size:11px;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease}.cp-inline-save:hover{transform:translateY(-1px)}.cp-inline-cancel{padding:4px 10px;border:1px solid var(--border-glass);border-radius:8px;background:transparent;color:var(--text-muted);font-size:11px;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease}.cp-inline-cancel:hover{border-color:var(--danger);color:var(--danger)}.cp-composer{background:var(--bg-card);border-radius:14px;padding:14px;margin-bottom:14px;border:1px solid var(--border-glass)}.cp-composer-row{display:flex;gap:10px;align-items:flex-start}.cp-composer-avatar{width:38px;height:38px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--bg-element);display:flex;align-items:center;justify-content:center;border:2px solid var(--border-glass)}.cp-composer-avatar img{width:100%;height:100%;object-fit:cover}.cp-composer-avatar span{font-size:15px;font-weight:700;color:var(--accent-primary)}.cp-composer-input{flex:1;min-height:60px;padding:10px 12px;border-radius:12px;border:1px solid var(--border-glass);background:#ffffff0a;color:var(--text-primary);font-size:13px;font-family:inherit;resize:vertical;outline:none;transition:border-color .2s}.cp-composer-input:focus{border-color:var(--accent-primary)}.cp-composer-footer{display:flex;justify-content:flex-end;margin-top:10px}.cp-composer-btn{padding:8px 20px;border:none;border-radius:20px;background:var(--accent-gradient);color:var(--text-on-accent);font-size:12px;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease;box-shadow:0 2px 8px var(--accent-glow)}.cp-composer-btn:hover{transform:translateY(-1px);box-shadow:0 4px 14px var(--accent-glow)}.cp-composer-btn:disabled{opacity:.5;cursor:not-allowed}.cp-post-actions{display:flex;gap:8px;padding-top:8px;border-top:1px solid var(--border-glass)}.cp-post-action{background:none;border:none;color:var(--text-muted);font-size:12px;cursor:pointer;padding:4px 8px;border-radius:8px;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease}.cp-post-action:hover{background:#f9a8d40f;color:var(--accent-primary)}.cp-comments-section{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-glass)}.cp-comments-list{max-height:300px;overflow-y:auto;margin-bottom:8px}.cp-comment{display:flex;gap:8px;padding:6px 0;align-items:flex-start}.cp-comment-avatar{width:26px;height:26px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--bg-element);display:flex;align-items:center;justify-content:center}.cp-comment-avatar img{width:100%;height:100%;object-fit:cover}.cp-comment-avatar span{font-size:10px;font-weight:700;color:var(--accent-primary)}.cp-comment-body{background:#ffffff0a;border-radius:12px;padding:6px 10px;flex:1;min-width:0}.cp-comment-name{font-size:11px;font-weight:700;color:var(--text-primary);margin-right:6px}.cp-comment-text{font-size:12px;color:var(--text-secondary);line-height:1.4}.cp-comment-composer{display:flex;gap:6px;align-items:center}.cp-comment-input{flex:1;padding:8px 12px;border-radius:20px;border:1px solid var(--border-glass);background:#ffffff0a;color:var(--text-primary);font-size:12px;font-family:inherit;outline:none;transition:border-color .2s}.cp-comment-input:focus{border-color:var(--accent-primary)}.cp-comment-send{width:32px;height:32px;border-radius:50%;border:none;background:var(--accent-gradient);color:var(--text-on-accent);font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease;flex-shrink:0}.cp-comment-send:hover{transform:scale(1.1)}.cp-comment-send:disabled{opacity:.4}.tile-comment-btn{position:absolute;top:8px;left:8px;width:28px;height:28px;border-radius:50%;border:none;background:#00000080;color:#fff;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease;opacity:0}.character-tile:hover .tile-comment-btn{opacity:1}.tile-comment-btn:hover{background:#f9a8d499;transform:scale(1.15)}.char-comment-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease}.char-comment-popup{background:var(--bg-card);border-radius:16px;border:1px solid var(--border-glass);width:100%;max-width:420px;max-height:70vh;display:flex;flex-direction:column;overflow:hidden;animation:popIn .25s ease;box-shadow:0 20px 60px #0006}@keyframes popIn{0%{transform:scale(.9) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.char-comment-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-glass)}.char-comment-header h3{font-size:15px;font-weight:700;color:var(--text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.char-comment-close{width:28px;height:28px;border-radius:50%;border:none;background:#ffffff0f;color:var(--text-muted);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease;flex-shrink:0}.char-comment-close:hover{background:#ff646426;color:var(--danger)}.char-comment-list{flex:1;overflow-y:auto;padding:12px 16px;min-height:120px}.char-comment-item{display:flex;gap:8px;margin-bottom:10px;align-items:flex-start}.char-comment-avatar{width:28px;height:28px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--bg-element);display:flex;align-items:center;justify-content:center}.char-comment-avatar img{width:100%;height:100%;object-fit:cover}.char-comment-avatar span{font-size:11px;font-weight:700;color:var(--accent-primary)}.char-comment-bubble{background:#ffffff0a;border-radius:12px;padding:8px 12px;flex:1;min-width:0}.char-comment-meta{display:flex;align-items:center;gap:8px;margin-bottom:2px}.char-comment-name{font-size:11px;font-weight:700;color:var(--text-primary)}.char-comment-time{font-size:9px;color:var(--text-muted)}.char-comment-text{font-size:12px;color:var(--text-secondary);line-height:1.4;white-space:pre-wrap;word-break:break-word}.char-comment-input-row{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--border-glass);align-items:center}.char-comment-input{flex:1;padding:8px 14px;border-radius:20px;border:1px solid var(--border-glass);background:#ffffff0a;color:var(--text-primary);font-size:12px;font-family:inherit;outline:none;transition:border-color .2s}.char-comment-input:focus{border-color:var(--accent-primary)}.char-comment-send{width:34px;height:34px;border-radius:50%;border:none;background:var(--accent-gradient);color:var(--text-on-accent);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease;flex-shrink:0}.char-comment-send:hover{transform:scale(1.1)}.char-comment-send:disabled{opacity:.4}.chat-header{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--nav-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-glass)}.chat-header .chat-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;background:var(--accent-gradient);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;color:var(--text-on-accent)}.chat-header .chat-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.chat-header .chat-name{font-size:16px;font-weight:600}.chat-header .chat-status{font-size:11px;color:var(--success)}.chat-header-btn{font-size:12px;padding:2px 6px;border-radius:6px;border:1px solid var(--border-glass, rgba(255,255,255,.1));background:var(--bg-input, rgba(120,120,120,.1));color:var(--text-muted);cursor:pointer;line-height:1;transition:all .2s;flex-shrink:0}.chat-header-btn:hover{background:var(--bg-card-hover, rgba(255,255,255,.08));border-color:var(--accent-primary, #a855f7)}.chat-header-btn.active{background:color-mix(in srgb,var(--accent-primary, #a855f7) 15%,transparent);color:var(--accent-primary, #a855f7);border-color:color-mix(in srgb,var(--accent-primary, #a855f7) 30%,transparent)}.chat-header-btn.active.warn{background:color-mix(in srgb,var(--error, #ef4444) 15%,transparent);color:var(--error, #ef4444);border-color:color-mix(in srgb,var(--error, #ef4444) 30%,transparent)}.chat-back{font-size:20px;padding:4px;-webkit-tap-highlight-color:transparent}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px;scrollbar-width:none}.chat-messages::-webkit-scrollbar{display:none}.message{width:100%;max-width:100%;border-radius:12px;font-size:13px;line-height:1.6;animation:msgIn .3s ease;position:relative;word-wrap:break-word;background:var(--bg-card);border:1px solid var(--border-glass)}@keyframes msgIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.message.assistant{align-self:stretch}.message.user{align-self:stretch;color:var(--text-primary)}.msg-header{display:flex;align-items:flex-start;gap:12px;padding:12px 16px 8px}.msg-header-over-banner{margin-top:-50px;position:relative;z-index:2}.msg-avatar{width:72px;height:72px;border-radius:8px;border:2.5px solid rgba(212,175,85,.7);box-shadow:0 0 10px #d4af5559,0 0 20px #d4af5526;flex-shrink:0;background-size:cover;background-position:center;background-color:var(--bg-input);display:flex;align-items:center;justify-content:center;font-size:24px;color:var(--text-muted)}.msg-avatar-over-banner{box-shadow:0 2px 12px #0006,0 0 12px #c8aa6433}.msg-header-info{flex:1;min-width:0}.msg-name{font-size:20px;font-weight:700;font-style:italic;color:var(--text-primary);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.msg-timestamp{font-size:10px;color:var(--text-muted);margin-top:2px}.msg-header-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.msg-meta-info{display:flex;gap:6px;align-items:center}.msg-number,.msg-tokens{font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums;opacity:.7}.msg-chat-label{font-size:9px;color:var(--accent-primary, #a855f7);opacity:.7;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}.msg-header-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s ease}.message:hover .msg-header-actions{opacity:1}@media(hover:none){.msg-header-actions{opacity:.6}.msg-action-btn{width:36px!important;height:36px!important}}.msg-body{padding:0 16px 12px}.msg-body .msg-content{color:var(--text-primary)}.message .msg-content div[style*=border-left]{display:inline-block;white-space:normal;padding:4px 10px;margin:4px 0;vertical-align:top}.message .msg-content div[style*=border-left]>*{display:inline}.message .msg-content div[style*=border-left] br{display:none}.msg-banner{position:relative;overflow:hidden;border-radius:12px 12px 0 0}.msg-banner:hover:after{content:"🖼️ Change";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#0009;color:#fff;padding:6px 14px;border-radius:8px;font-size:11px;font-weight:600;pointer-events:none}.msg-banner-empty:hover{background:linear-gradient(135deg,#7864b426,#503c8c1a)!important}.msg-action-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:12px;border-radius:8px;cursor:pointer;transition:background .15s ease,transform .1s ease,color .15s ease;-webkit-tap-highlight-color:transparent;border:none;background:transparent;color:var(--text-muted);padding:0;flex-shrink:0}.msg-action-btn svg{display:block;pointer-events:none}.msg-action-btn:hover{background:#ffffff14;color:var(--text-primary);transform:scale(1.1)}.msg-action-btn:active{transform:scale(.88);background:#ffffff1f}.chat-bottom-controls{padding:10px 16px;border-top:1px solid var(--border-subtle, rgba(255, 255, 255, .06));background:var(--bg-card);border-radius:12px;margin-top:4px}.chat-bottom-btn{padding:4px 14px!important;border:none!important;border-radius:8px!important;font-size:10px!important;font-weight:600!important;cursor:pointer}.chat-bottom-btn[data-action=translate-vi]{background:#dc505026;color:#dc8c8ce6}.chat-bottom-btn[data-action=continue]{background:#7864b426;color:#b4a0dce6}.chat-bottom-btn[data-action=console]{background:#50c87826;color:#8cdca0e6}.btn-icon{transition:transform .15s ease}.btn-icon:hover{transform:scale(1.12)}.btn-icon:active{transform:scale(.9)}.cm-action{transition:transform .1s ease,background .15s ease!important}.cm-action:hover{transform:scale(1.2);background:#ffffff14!important}.cm-action:active{transform:scale(.85)}.message-actions{display:flex;gap:4px;margin-top:4px}.message-actions button{font-size:12px;padding:2px 8px;border-radius:var(--radius-sm);color:var(--text-muted);transition:color var(--transition-fast);-webkit-tap-highlight-color:transparent}.message-actions button:hover{color:var(--accent-primary)}.typing-indicator{display:flex;gap:4px;padding:12px 16px;align-self:flex-start}.typing-indicator span{width:8px;height:8px;background:var(--accent-primary);border-radius:50%;animation:typing 1.2s infinite;opacity:.5}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}}.chat-input-bar{display:flex;align-items:flex-end;gap:8px;padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));background:var(--nav-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid var(--border-glass)}.chat-input-bar textarea{flex:1;padding:10px 14px;background:var(--bg-input);border:1px solid var(--border-glass);border-radius:20px;color:var(--text-primary);font-size:14px;resize:none;max-height:140px;min-height:40px;line-height:1.4;outline:none}.chat-input-bar textarea::placeholder{color:var(--text-muted)}.chat-input-bar textarea:focus{border-color:var(--accent-primary)}.chat-input-bar .send-btn{width:40px;height:40px;border-radius:50%;background:var(--accent-gradient);color:var(--text-on-accent);font-size:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast),border-color var(--transition-fast);-webkit-tap-highlight-color:transparent}.chat-input-bar .send-btn:hover{transform:scale(1.1);box-shadow:var(--shadow-glow)}.chat-input-bar .send-btn:active{transform:scale(.9)}.send-btn.is-streaming{background:linear-gradient(135deg,#c0392b,#962d22);cursor:pointer;animation:streamPulse 2s ease-in-out infinite;padding:0;display:flex;align-items:center;justify-content:center}.send-btn.is-streaming:hover{transform:scale(1.15);box-shadow:0 0 16px #c0392b99}.send-btn.is-streaming svg{display:block;width:24px;height:24px}@keyframes streamPulse{0%,to{box-shadow:0 0 8px #c0392b4d}50%{box-shadow:0 0 20px #c0392bb3}}@keyframes half-rotate{0%,10%{transform:rotate(0)}35%,60%{transform:rotate(180deg)}85%,to{transform:rotate(360deg)}}@keyframes fall{0%,35%{transform:translateY(0)}55%,60%{transform:translateY(-50px)}85%{transform:translateY(0)}to{transform:translateY(0)}}.settings-list{padding:0 16px;display:flex;flex-direction:column;gap:12px}.settings-item{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--bg-card);border:1px solid var(--border-glass);border-radius:var(--radius-lg);transition:background-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast),border-color var(--transition-fast);-webkit-tap-highlight-color:transparent}.settings-item.builtin-profile-card{flex-direction:column;align-items:stretch}.btn-model-select{cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease!important;-webkit-tap-highlight-color:transparent}.btn-model-select:hover{opacity:.85;transform:scale(1.02)}.btn-model-select:active{transform:scale(.96)}.settings-item:hover{background:var(--bg-card-hover)}.settings-item-info{display:flex;align-items:center;gap:12px}.settings-item-icon{width:40px;height:40px;border-radius:var(--radius-md);background:var(--bg-glass);display:flex;align-items:center;justify-content:center;font-size:18px}.settings-item-text h3{font-size:14px;font-weight:500}.settings-item-text p{font-size:12px;color:var(--text-muted)}.toggle{position:relative;width:44px;height:24px;background:var(--bg-input);border-radius:var(--radius-full);cursor:pointer;transition:background var(--transition-fast);border:1px solid var(--border-glass);flex-shrink:0;-webkit-tap-highlight-color:transparent}.toggle.active{background:var(--accent-primary);border-color:var(--accent-primary)}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform var(--transition-fast)}.toggle.active:after{transform:translate(20px)}.range-group{margin-bottom:16px}.range-header{display:flex;justify-content:space-between;margin-bottom:6px}.range-header label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.range-header span{font-size:12px;color:var(--accent-primary);font-weight:600}input[type=range]{-webkit-appearance:none;width:100%;height:4px;background:var(--bg-input);border-radius:2px;outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;background:var(--accent-primary);border-radius:50%;cursor:pointer;box-shadow:0 0 8px var(--accent-glow)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center}.empty-state .empty-icon{font-size:64px;margin-bottom:16px;opacity:.4}.empty-state h2{font-size:18px;font-weight:600;margin-bottom:8px}.empty-state p{font-size:14px;color:var(--text-muted);margin-bottom:24px}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease;padding:16px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{width:100%;max-width:380px;max-height:85vh;background:var(--bg-phone);border:1px solid var(--border-glass);border-radius:var(--radius-xl);padding:24px;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal h2{font-size:18px;font-weight:700;margin-bottom:16px;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.modal-actions{display:flex;gap:8px;margin-top:20px}.modal-actions .btn{flex:1}.search-bar{padding:0 16px 12px;position:relative}.search-bar input{width:100%;padding:10px 14px 10px 38px;background:var(--bg-input);border:1px solid var(--border-glass);border-radius:var(--radius-full);color:var(--text-primary);font-size:14px;outline:none;transition:border-color var(--transition-fast)}.search-bar input::placeholder{color:var(--text-muted)}.search-bar input:focus{border-color:var(--accent-primary)}.search-bar:before{content:"🔍";position:absolute;left:28px;top:50%;transform:translateY(-70%);font-size:14px;pointer-events:none}.badge{display:inline-flex;align-items:center;padding:2px 8px;font-size:10px;font-weight:600;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.5px}.badge-active{background:#22c55e26;color:var(--success)}.badge-inactive{background:#ffffff0f;color:var(--text-muted)}.avatar-upload{width:180px;height:240px;border-radius:0;background:var(--bg-glass);border:3px solid transparent;background-image:linear-gradient(var(--bg-glass),var(--bg-glass)),var(--accent-gradient, linear-gradient(135deg, #ec4899, #8b5cf6));background-origin:border-box;background-clip:padding-box,border-box;display:flex;align-items:center;justify-content:center;cursor:pointer;margin:0 auto 20px;overflow:hidden;transition:background-color .3s ease,color .3s ease,transform .3s ease,opacity .3s ease,border-color .3s ease;font-size:36px;color:var(--text-muted);box-shadow:0 0 20px #ec489926;position:relative}.avatar-upload:hover{transform:scale(1.03);box-shadow:0 0 30px #ec48994d}.avatar-upload img{width:100%;height:100%;object-fit:cover;border-radius:0}.lore-entry{padding:12px;background:var(--bg-card);border:1px solid var(--border-glass);border-radius:var(--radius-md);margin-bottom:8px}.lore-entry-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.lore-entry-key{font-size:13px;font-weight:600;color:var(--accent-primary)}.form-scroll{padding:0 16px 20px;overflow-y:auto;flex:1}.section-title{font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;padding:24px 16px 8px;margin-bottom:10px}.settings-btn-row{display:flex;gap:8px;padding:0 16px 12px;max-width:380px}.settings-btn-row .btn{padding:8px 16px;font-size:12px;white-space:nowrap}.settings-btn-row.center{justify-content:center}.settings-danger-row{display:flex;flex-direction:column;gap:6px;padding:0 16px 12px;max-width:320px}.settings-danger-row .btn{padding:8px 16px;font-size:12px}.theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:0 16px 16px}.theme-swatch{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border-radius:var(--radius-md);border:2px solid transparent;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast),border-color var(--transition-fast);background:var(--bg-card);-webkit-tap-highlight-color:transparent}.theme-swatch.active{border-color:var(--accent-primary);box-shadow:var(--shadow-glow)}.theme-swatch:hover{border-color:var(--text-muted)}.theme-swatch .swatch-circle{width:32px;height:32px;border-radius:50%;border:2px solid rgba(255,255,255,.1)}.theme-swatch .swatch-name{font-size:10px;color:var(--text-secondary);text-align:center;line-height:1.2}.screen-enter{animation:screenSlideIn .25s ease}@keyframes screenSlideIn{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.msg-content{font-size:13.5px!important;line-height:1.65!important}.msg-content *{font-size:inherit!important}.msg-content h1,.msg-content h2,.msg-content h3{font-size:15px!important}.msg-content blockquote,.msg-content [style*=border-left]{font-size:13px!important}.landing-email-form{width:100%;display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.landing-auth-tabs{display:flex;gap:0;background:#ec489914;border-radius:12px;padding:3px;margin-bottom:4px}.landing-tab{flex:1;padding:10px 0;border:none;background:transparent;color:#b5648a;font-size:13px;font-weight:600;cursor:pointer;border-radius:10px;transition:background-color .25s ease,color .25s ease,transform .25s ease,opacity .25s ease,border-color .25s ease,box-shadow .25s ease}.landing-tab.active{background:linear-gradient(135deg,#f9a8d4,#ec4899);color:#fff;box-shadow:0 2px 10px #ec48994d}.landing-tab:hover:not(.active){background:#ec48991a}.landing-input{width:100%;padding:13px 16px;border:1.5px solid rgba(236,72,153,.15);border-radius:12px;background:#ffffffb3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:14px;color:#4a2040;outline:none;transition:background-color .25s ease,color .25s ease,transform .25s ease,opacity .25s ease,border-color .25s ease,box-shadow .25s ease;box-sizing:border-box}.landing-input::placeholder{color:#c9889f}.landing-input:focus{border-color:#ec4899;box-shadow:0 0 0 3px #ec48991f;background:#ffffffe6}.landing-auth-error{font-size:12px;color:#e11d48;font-weight:500;min-height:16px;text-align:center;line-height:1.4}.landing-auth-submit{width:100%;padding:13px 24px;border:none;border-radius:12px;background:linear-gradient(135deg,#f9a8d4,#ec4899,#db2777);color:#fff;font-size:14px;font-weight:700;cursor:pointer;box-shadow:0 3px 16px #ec48994d;transition:background-color .25s ease,color .25s ease,transform .25s ease,opacity .25s ease,border-color .25s ease,box-shadow .25s ease;letter-spacing:.3px}.landing-auth-submit:hover{transform:translateY(-2px);box-shadow:0 5px 24px #ec489966;background:linear-gradient(135deg,#f472b6,#ec4899,#be185d)}.landing-auth-submit:active{transform:translateY(0) scale(.98)}.landing-auth-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.landing-page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;background:linear-gradient(180deg,#fdf2f8,#fce7f3,#fbcfe8 60%,#f9f5ff);position:relative;overflow-y:auto;overflow-x:hidden}.landing-banner{width:100%;max-width:480px;height:280px;position:relative;overflow:hidden;border-radius:0 0 24px 24px;flex-shrink:0}.landing-banner-img{width:100%;height:100%;object-fit:cover;display:block}.landing-banner-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 20%,rgba(253,242,248,.6) 50%,rgba(253,242,248,.92) 80%,#fdf2f8 100%);pointer-events:none}.landing-banner-title{position:absolute;bottom:16px;left:20px;font-size:32px;font-weight:800;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.35),0 1px 4px rgba(0,0,0,.2);letter-spacing:-.5px;font-style:italic}.landing-card{width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center;padding:0 24px 32px;margin-top:-20px;position:relative;z-index:1}.landing-logo-circle{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#fce7f3,#fbcfe8);border:3px solid #fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #ec489933,0 0 0 6px #fce7f380;margin-bottom:12px;animation:sakuraPulse 3s ease-in-out infinite}.landing-sakura{font-size:28px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}@keyframes sakuraPulse{0%,to{transform:scale(1);box-shadow:0 4px 20px #ec489933,0 0 0 6px #fce7f380}50%{transform:scale(1.05);box-shadow:0 6px 28px #ec48994d,0 0 0 8px #fce7f399}}.landing-brand-logo{height:140px;max-width:360px;object-fit:contain;margin-bottom:4px;margin-top:-70px;position:relative;z-index:2;filter:drop-shadow(0 4px 12px rgba(236,72,153,.3)) drop-shadow(0 1px 3px rgba(0,0,0,.1))}.landing-subtitle{font-size:11px;font-weight:600;color:#e4a0c4;text-transform:uppercase;letter-spacing:3px;margin-bottom:24px;opacity:.8}.landing-auth-group{width:100%;display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.landing-auth-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:13px 24px;border-radius:14px;font-size:14px;font-weight:600;cursor:pointer;border:none;transition:background-color .25s ease,color .25s ease,transform .25s ease,opacity .25s ease,border-color .25s ease,box-shadow .25s ease;width:100%}.landing-auth-btn.google-btn{background:#fff;color:#555;box-shadow:0 2px 12px #00000014;border:1px solid rgba(0,0,0,.06)}.landing-auth-btn.google-btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001f}.landing-divider{display:flex;align-items:center;gap:14px;width:100%;margin-bottom:16px}.landing-divider-line{flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(212,160,185,.3),transparent)}.landing-divider-text{font-size:10px;color:#d4a0b9;text-transform:uppercase;letter-spacing:2.5px;font-weight:600;white-space:nowrap}.landing-signin-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 24px;border:none;border-radius:14px;background:linear-gradient(135deg,#f9a8d4,#ec4899,#db2777);color:#fff;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 4px 20px #ec489959;transition:background-color .25s ease,color .25s ease,transform .25s ease,opacity .25s ease,border-color .25s ease,box-shadow .25s ease;position:relative;overflow:hidden;letter-spacing:.3px}.landing-signin-btn:before{content:"";position:absolute;top:0;left:-100%;width:200%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.15) 25%,rgba(255,255,255,.25) 50%,rgba(255,255,255,.15) 75%,transparent 100%);animation:guestShimmer 3s ease-in-out infinite;pointer-events:none}@keyframes guestShimmer{0%{left:-100%}to{left:100%}}.landing-signin-btn:hover{transform:translateY(-2px);box-shadow:0 6px 28px #ec489973;background:linear-gradient(135deg,#f472b6,#ec4899,#be185d)}.landing-signin-btn:active{transform:translateY(0) scale(.98)}.guest-btn-icon{font-size:16px;opacity:.9}.guest-btn-arrow{font-size:16px;opacity:.7;transition:background-color .3s ease,color .3s ease,transform .3s ease,opacity .3s ease,border-color .3s ease}.landing-signin-btn:hover .guest-btn-arrow{opacity:1;transform:translate(4px)}.landing-powered{margin-top:24px;font-size:12px;color:#d4a0b9;font-weight:500;opacity:.7;display:flex;align-items:center;gap:4px}.landing-powered-star{color:#ec4899;font-size:14px}body.landing-active #bottom-nav{display:none}@media(max-width:480px){.landing-banner{height:180px;border-radius:0}.landing-banner-title{font-size:26px;bottom:12px;left:16px}.landing-card{padding:0 20px 24px}.landing-logo-circle{width:64px;height:64px}.landing-sakura,.landing-brand{font-size:24px}}.explore-search-bar{padding:0 16px 12px}.explore-grid{flex:1;overflow-y:auto;padding:0 16px 16px;display:flex;flex-direction:column;gap:12px}.explore-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 0;color:var(--text-muted);gap:12px}.loading-spinner{width:32px;height:32px;border:3px solid var(--border-glass);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.explore-card{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-card);border:1px solid var(--border-glass);border-radius:16px;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease;position:relative}.explore-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a;background:var(--bg-card-hover)}.explore-card-avatar{width:56px;height:56px;border-radius:14px;overflow:hidden;flex-shrink:0;background:var(--bg-element);display:flex;align-items:center;justify-content:center}.explore-card-avatar img{width:100%;height:100%;object-fit:cover}.explore-card-placeholder{font-size:24px}.explore-card-body{flex:1;min-width:0}.explore-card-name{font-size:14px;font-weight:700;color:var(--text-primary);margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.explore-card-desc{font-size:11px;color:var(--text-muted);margin:0 0 6px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.explore-card-meta{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--text-muted)}.explore-card-creator{display:flex;align-items:center;gap:4px}.creator-avatar-tiny{width:16px;height:16px;border-radius:50%;object-fit:cover}.explore-card-downloads{opacity:.7}.explore-card-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}.explore-tag{font-size:10px;padding:2px 8px;border-radius:10px;background:var(--primary-alpha, rgba(236, 72, 153, .15));color:var(--primary, #ec4899);font-weight:600}.explore-download-btn{width:36px;height:36px;border-radius:50%;border:none;background:var(--bg-element);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease;flex-shrink:0}.explore-download-btn:hover{background:var(--primary);color:#fff;transform:scale(1.1)}.explore-preview-modal{max-width:400px;width:90%;max-height:80vh;overflow-y:auto}.explore-preview-header{display:flex;align-items:center;gap:14px;margin-bottom:16px}.explore-preview-avatar{width:64px;height:64px;border-radius:16px;object-fit:cover;flex-shrink:0}.explore-preview-avatar-placeholder{width:64px;height:64px;border-radius:16px;background:var(--bg-element);display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0}.explore-preview-section{margin-bottom:14px}.explore-preview-section h4{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin:0 0 6px}.explore-preview-section p{font-size:13px;color:var(--text-primary);line-height:1.5;margin:0;white-space:pre-wrap}.explore-preview-actions{display:flex;gap:10px;margin-top:20px;justify-content:flex-end}.btn-accent{background:linear-gradient(135deg,#f9a8d4,#ec4899);color:#fff;border:none;border-radius:10px;cursor:pointer;font-weight:600;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease}.btn-accent:hover{background:linear-gradient(135deg,#f472b6,#db2777);transform:translateY(-1px);box-shadow:0 2px 12px #ec48994d}.chat-history-list{flex:1;overflow-y:auto;padding:0 12px 12px}.chat-history-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease;border-bottom:1px solid var(--border-glass)}.chat-history-item:last-child{border-bottom:none}.chat-history-item:hover{background:var(--bg-card-hover, rgba(255, 255, 255, .05))}.chat-history-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--bg-element);display:flex;align-items:center;justify-content:center}.chat-history-avatar img{width:100%;height:100%;object-fit:cover}.chat-history-avatar-placeholder{font-size:18px;font-weight:700;color:var(--text-muted)}.chat-history-body{flex:1;min-width:0}.chat-history-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:3px}.chat-history-name{font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-history-time{font-size:11px;color:var(--text-muted);flex-shrink:0;margin-left:8px}.chat-history-preview{font-size:12px;color:var(--text-muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-history-badge{background:var(--primary, #ec4899);color:#fff;font-size:10px;font-weight:700;min-width:22px;height:22px;border-radius:11px;display:flex;align-items:center;justify-content:center;padding:0 6px;flex-shrink:0}.nav-img{width:28px;height:28px;object-fit:contain;display:block}.btn-icon .nav-img{width:20px;height:20px}.diary-content{font-size:14px;background-image:repeating-linear-gradient(transparent,transparent 25px,rgba(0,0,0,.04) 25px,rgba(0,0,0,.04) 26px)}@media(min-width:768px){.diary-content{font-size:18px;line-height:1.9;background-image:repeating-linear-gradient(transparent,transparent 34px,rgba(0,0,0,.04) 34px,rgba(0,0,0,.04) 35px)}}@media(max-width:480px){.chat-header{gap:6px;padding:8px}.chat-header .btn-icon{font-size:12px!important;width:28px;height:28px;min-width:28px;padding:0;flex-shrink:0}.chat-header .chat-avatar{width:30px;height:30px}.chat-header .chat-name{font-size:13px;max-width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-header .chat-status{font-size:9px}#bottom-nav{padding:4px 2px}#bottom-nav .btn-icon{padding:0 2px;font-size:9px;min-width:unset}.nav-img{width:22px;height:22px}.nav-label{font-size:8px!important}.msg-actions-inline{gap:1px;opacity:.85}.msg-action-btn{font-size:12px;padding:4px 6px;min-width:28px;min-height:28px;display:flex;align-items:center;justify-content:center}.chat-input-bar{padding:6px 8px;gap:6px}.cp-empty-slot{aspect-ratio:auto;min-height:100px;max-height:150px}.cp-masonry-col-img.cp-empty-slot{min-height:150px}.screen-header{padding:8px 10px}.search-bar{padding:0 8px;gap:6px}.search-bar input{font-size:12px}.search-bar select{font-size:10px;max-width:90px}}.my-chars-section-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.my-chars-section-title{font-size:14px;font-weight:700;color:var(--text-secondary)}.my-chars-badge{font-size:10px;padding:1px 8px;border-radius:10px;background:#b4a0dc33;color:var(--text-muted);font-weight:600}@media(max-width:480px){.msg-avatar{width:56px;height:56px;font-size:20px}.msg-header{gap:8px;padding:10px 12px 6px}.msg-name{font-size:16px}.msg-timestamp{font-size:9px}.msg-number,.msg-tokens{font-size:10px}.msg-header-actions{gap:1px}.msg-action-btn{font-size:12px;padding:3px 5px;min-width:24px;min-height:24px}.msg-body{padding:6px 12px 10px}.msg-content{font-size:13px}.msg-header-over-banner{margin-top:-40px}.chat-messages{padding:10px;gap:12px}}@media(max-width:380px){.msg-avatar{width:44px;height:44px;font-size:16px;border-width:2px}.msg-header{gap:6px;padding:8px 10px 4px}.msg-name{font-size:14px}.msg-number,.msg-tokens{font-size:9px}.msg-action-btn{font-size:11px;padding:2px 4px;min-width:22px;min-height:22px}.msg-body{padding:4px 10px 8px}.msg-content{font-size:12.5px}.msg-header-over-banner{margin-top:-32px}.chat-messages{padding:8px;gap:10px}}#app.custom-bg-active .phone-frame{background:transparent!important}#app.custom-bg-active .phone-nav{background:#00000059!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}#app.custom-bg-active .phone-screen{background:transparent!important}#app.custom-bg-active .sidebar{background:#00000080!important;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.creator-hub-screen{height:100%;display:flex;flex-direction:column}.ch-content{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.ch-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:var(--text-muted);font-size:13px}.ch-spinner{width:28px;height:28px;border:2.5px solid var(--border-subtle);border-top-color:var(--accent-primary);border-radius:50%;animation:ch-spin .8s linear infinite}@keyframes ch-spin{to{transform:rotate(360deg)}}.ch-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.ch-header-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ch-header-name{font-size:18px;font-weight:800;color:var(--text-primary)}.ch-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:12px;background:var(--bg-card);border:1px solid var(--border-glass);color:var(--accent-primary)}.ch-header-sub{font-size:11px;color:var(--text-muted);margin-top:3px}.ch-header-actions{display:flex;gap:8px;flex-shrink:0}.ch-btn-primary{display:flex;align-items:center;gap:5px;padding:7px 14px;background:var(--accent-gradient);border:none;border-radius:10px;color:var(--text-on-accent);font-size:12px;font-weight:600;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease}.ch-btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--accent-glow)}.ch-btn-sm{padding:5px 10px;font-size:11px}.ch-btn-outline{display:flex;align-items:center;gap:5px;padding:7px 14px;background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:10px;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease}.ch-btn-outline:hover{background:var(--bg-card-hover);color:var(--text-primary)}.ch-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.ch-stat-card{background:var(--bg-card);border:1px solid var(--border-glass);border-radius:14px;padding:14px;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease}.ch-stat-card:hover{background:var(--bg-card-hover);border-color:var(--border-glass)}.ch-stat-highlight{background:var(--bg-card-hover);border-color:var(--accent-primary)}.ch-stat-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.ch-stat-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--bg-glass);font-size:15px}.ch-stat-icon-primary{background:var(--bg-card-hover)}.ch-stat-icon-gold{background:#ffd7001f}.ch-stat-value{font-size:22px;font-weight:800;color:var(--text-primary);font-variant-numeric:tabular-nums;font-family:SF Mono,monospace}.ch-stat-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);margin-top:2px}.ch-stat-sub{font-size:10px;color:var(--text-muted);margin-top:2px;opacity:.7}.ch-trend{font-size:10px;font-weight:600;font-family:monospace;padding:2px 6px;border-radius:8px}.ch-trend-up{background:#4caf5026;color:var(--success, #66bb6a)}.ch-trend-down{background:#f4433626;color:var(--danger, #ef5350)}.ch-row{display:flex;flex-direction:column;gap:12px}.ch-chart-card,.ch-leaderboard-card,.ch-table-card{background:var(--bg-card);border:1px solid var(--border-glass);border-radius:14px;overflow:hidden}.ch-card-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-subtle)}.ch-card-title{font-size:13px;font-weight:700;color:var(--text-primary)}.ch-card-sub{font-size:10px;color:var(--text-muted);margin-top:2px}.ch-chart-container{padding:10px;height:200px}.ch-chart-container svg{width:100%;height:100%}.ch-lb-list{display:flex;flex-direction:column;gap:6px;padding:12px}.ch-lb-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--border-subtle);background:var(--bg-glass);transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease}.ch-lb-item:hover{background:var(--bg-card-hover)}.ch-lb-me{background:var(--bg-card-hover);border-color:var(--accent-primary)}.ch-lb-rank{font-size:16px;font-weight:800;font-family:monospace;width:28px;text-align:center;flex-shrink:0}.ch-lb-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--bg-glass)}.ch-lb-avatar img{width:100%;height:100%;object-fit:cover}.ch-lb-avatar span{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:var(--text-muted)}.ch-lb-info{flex:1;min-width:0}.ch-lb-name{font-size:12px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-lb-meta{font-size:10px;color:var(--text-muted);margin-top:2px}.ch-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.ch-table{width:100%;min-width:500px;border-collapse:collapse}.ch-table thead th{padding:10px 12px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);text-align:left;border-bottom:1px solid var(--border-subtle);white-space:nowrap}.ch-th-sort{cursor:pointer;-webkit-user-select:none;user-select:none}.ch-th-sort:hover{color:var(--text-primary)}.ch-tr{border-bottom:1px solid var(--border-subtle);transition:background .2s}.ch-tr:hover{background:var(--bg-card)}.ch-tr td{padding:10px 12px;vertical-align:middle}.ch-char-cell{display:flex;align-items:center;gap:10px}.ch-char-avatar{width:32px;height:32px;border-radius:8px;overflow:hidden;flex-shrink:0;background:var(--bg-glass)}.ch-char-avatar img{width:100%;height:100%;object-fit:cover}.ch-char-avatar span{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--text-muted)}.ch-char-name{font-size:12px;font-weight:600;color:var(--text-primary)}.ch-char-desc{font-size:10px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}.ch-status{font-size:10px;font-weight:600;padding:2px 8px;border-radius:8px;white-space:nowrap}.ch-status-pub{background:#4caf5026;color:var(--success, #66bb6a)}.ch-status-draft{background:var(--bg-glass);color:var(--text-muted)}.ch-mono{font-size:12px;font-family:monospace;color:var(--text-secondary);font-variant-numeric:tabular-nums}.ch-tags{display:flex;gap:4px}.ch-tag{font-size:9px;padding:1px 6px;border-radius:6px;background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text-muted);white-space:nowrap}.ch-actions{display:flex;gap:6px;opacity:0;transition:opacity .2s}.ch-tr:hover .ch-actions{opacity:1}.ch-action-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:var(--bg-glass);border-radius:8px;font-size:12px;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease,box-shadow .2s ease}.ch-action-btn:hover{background:var(--bg-card-hover);transform:scale(1.1)}.ch-empty{text-align:center;padding:40px 20px;color:var(--text-muted)}@media(min-width:600px){.ch-stats-grid{grid-template-columns:repeat(3,1fr)}.ch-row-chart{flex-direction:row}.ch-chart-card{flex:2}.ch-leaderboard-card{flex:1}.ch-actions{opacity:.5}}@media(min-width:900px){.ch-content{padding:20px 24px;gap:20px}.ch-stats-grid{grid-template-columns:repeat(6,1fr)}.ch-stat-value{font-size:26px}.ch-chart-container{height:240px}}@media(max-width:599px){.ch-header-actions{width:100%}.ch-header-actions .ch-btn-primary,.ch-header-actions .ch-btn-outline{flex:1;justify-content:center}.ch-th-hide-mobile{display:none}.ch-actions{opacity:1}.ch-char-desc{max-width:100px}}.tile-bottom-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:2px}.tile-chat-count{font-size:9px;color:var(--text-muted);opacity:.7;white-space:nowrap;flex-shrink:0}@media(min-width:768px){body.layout-mobile #app{justify-content:center}body.layout-mobile .phone-frame{max-width:820px;margin:0 auto;border-left:1px solid var(--border-glass);border-right:1px solid var(--border-glass);box-shadow:-1px 0 30px #00000026,1px 0 30px #00000026}}.game-hub-overlay{position:fixed;inset:0;z-index:10000;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.game-hub-overlay.open{opacity:1}.game-hub-modal{background:linear-gradient(145deg,#1e1e36,#151528);border:1px solid rgba(255,255,255,.1);border-radius:24px;width:90%;max-width:400px;box-shadow:0 24px 80px #0009,inset 0 1px #ffffff0d;overflow:hidden}.game-hub-header{display:flex;align-items:center;gap:12px;padding:24px 24px 16px;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent)}.game-hub-logo{font-size:32px}.game-hub-header h2{flex:1;margin:0;font-size:22px;font-weight:800;color:#fff}.game-hub-close{background:#ffffff0f;border:1px solid rgba(255,255,255,.08);color:var(--text-muted);font-size:16px;cursor:pointer;width:36px;height:36px;border-radius:12px;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease}.game-hub-close:hover{background:#ff505026;color:#ff6b6b}.game-hub-list{padding:8px 16px 16px;display:flex;flex-direction:column;gap:10px}.game-hub-item{display:flex;align-items:center;gap:14px;padding:16px 18px;background:#ffffff0a;border-radius:16px;border:1px solid rgba(255,255,255,.06);cursor:pointer;transition:background-color .25s ease,color .25s ease,transform .25s ease,opacity .25s ease,border-color .25s ease;width:100%;text-align:left;color:var(--text-primary, #fff);font-family:inherit}.game-hub-item.active:hover{border-color:#2ecc7180;background:#2ecc7114;transform:translate(6px)}.game-hub-item.disabled{opacity:.35;cursor:default}.game-hub-icon{font-size:32px;width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:14px}.game-hub-info{flex:1}.game-hub-name{font-size:16px;font-weight:700}.game-hub-desc{font-size:11px;color:var(--text-muted);margin-top:3px}.game-hub-arrow{font-size:16px;color:#2ecc71}.farm-game-wrap{display:flex;flex-direction:column;min-height:100vh;background:#2a1f0e}.farm-top-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:linear-gradient(180deg,#3a2510,#2a1f0e);border-bottom:3px solid #6B4226}.farm-back{background:#ffffff14;border:2px solid rgba(255,255,255,.12);color:#fff;cursor:pointer;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:18px;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease;font-family:inherit}.farm-back:hover{background:#ffffff26}.farm-title{flex:1;font-size:18px;font-weight:800;color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,.4)}.farm-credits-badge{padding:6px 14px;border-radius:8px;background:#0000004d;border:2px solid rgba(249,202,36,.4);font-size:14px;font-weight:700;color:#f9ca24}.farm-canvas-area{flex:1;display:flex;align-items:center;justify-content:center;padding:12px;background:linear-gradient(180deg,#5a8f3c,#4a7830);min-height:0}#farm-canvas{border:4px solid #6B4226;border-radius:8px;box-shadow:0 6px 24px #0006,inset 0 0 0 1px #ffffff0d;image-rendering:pixelated;image-rendering:crisp-edges;cursor:pointer;max-width:100%;touch-action:none}.farm-hud{padding:10px 12px 16px;background:linear-gradient(180deg,#2a1f0e,#1a150a);border-top:3px solid #6B4226;display:flex;flex-direction:column;gap:8px}.hud-stats{display:flex;justify-content:center;gap:14px;font-size:13px;color:#fff9;font-weight:600}.hud-stats span{display:flex;align-items:center;gap:4px}.hud-toolbar{display:flex;gap:6px;justify-content:center;flex-wrap:wrap}.hud-tool{width:44px;height:44px;border-radius:8px;border:2px solid rgba(255,255,255,.1);background:#ffffff0a;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease;color:#fff;font-family:inherit;padding:0}.hud-tool.active{border-color:#f9ca24;background:#f9ca2426;box-shadow:0 0 12px #f9ca2433}.hud-tool.empty{opacity:.3;cursor:default}.hud-tool:not(.empty):hover{border-color:#ffffff4d;background:#ffffff14}.hud-count{position:absolute;bottom:1px;right:1px;font-size:9px;font-weight:700;color:#fff;background:#0009;padding:1px 3px;border-radius:4px;line-height:1}.hud-actions{display:flex;justify-content:center;gap:10px;align-items:center}.hud-btn{width:40px;height:40px;border-radius:10px;border:2px solid rgba(255,255,255,.12);background:#ffffff0f;font-size:20px;cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease;display:flex;align-items:center;justify-content:center;padding:0}.hud-btn:hover{background:#ffffff1f;border-color:#fff3}.hud-watered{font-size:12px;color:#fff6;font-weight:600}.farm-popup-overlay{position:fixed;inset:0;z-index:10001;background:#000000bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .25s ease}.farm-popup-overlay.open{opacity:1}.farm-popup{background:linear-gradient(145deg,#2a1f0e,#1e160a);border:3px solid #8B5E3C;border-radius:16px;width:90%;max-width:360px;padding:24px 20px;box-shadow:0 16px 60px #0009}.farm-popup-title{font-size:20px;font-weight:800;color:#fff;text-align:center;margin-bottom:16px;text-shadow:1px 1px 0 rgba(0,0,0,.3)}.bag-grid{display:flex;flex-direction:column;gap:6px}.bag-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06)}.bag-emoji{font-size:24px}.bag-name{flex:1;font-size:14px;font-weight:600;color:#fff}.bag-count{font-size:14px;font-weight:700;color:#f9ca24;min-width:32px;text-align:center}.bag-info{font-size:10px;color:#ffffff4d}.bag-hint{margin-top:12px;font-size:11px;color:#ffffff4d;text-align:center;font-style:italic}.char-popup{max-width:320px}.char-options{display:flex;flex-direction:column;gap:12px}.char-option-row{display:flex;align-items:center;gap:8px}.char-option-row>span{font-size:13px;font-weight:600;color:#fff9;min-width:50px}.char-swatches{display:flex;gap:6px;flex-wrap:wrap}.char-swatch{width:30px;height:30px;border-radius:8px;border:2px solid rgba(255,255,255,.1);cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease;padding:0}.char-swatch.active{border-color:#f9ca24;box-shadow:0 0 10px #f9ca244d;transform:scale(1.15)}.char-swatch:hover{border-color:#ffffff4d}.farm-popup-close{width:100%;margin-top:16px;padding:12px;border:none;border-radius:10px;background:#ffffff0f;color:#fff9;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;border:2px solid rgba(255,255,255,.08);transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease}.farm-popup-close:hover{background:#ffffff1f;color:#fff}.daily-info{text-align:center;color:#ffffffb3;font-size:14px;line-height:1.6;margin-bottom:12px}.daily-rewards{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:12px}.daily-seed{padding:6px 12px;border-radius:8px;background:#2ecc711f;border:1px solid rgba(46,204,113,.3);font-size:13px;color:#2ecc71;font-weight:600}.daily-hint{text-align:center;font-size:11px;color:#ffffff4d;font-style:italic;margin-bottom:8px}.market-popup{max-width:380px;max-height:80vh;overflow-y:auto}.market-banner{text-align:center;color:#ffffff80;font-size:12px;margin-bottom:12px}.market-grid{display:flex;flex-direction:column;gap:6px}.market-item{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06)}.market-item.sold-out{opacity:.35}.market-emoji{font-size:22px}.market-name{flex:1;font-size:13px;font-weight:600;color:#fff}.market-qty{font-size:13px;font-weight:700;color:#f9ca24;min-width:28px;text-align:center}.market-price{font-size:11px;color:#fff6;min-width:48px;text-align:right}.market-sell-btn{padding:5px 12px;border:none;border-radius:6px;background:#2ecc7133;color:#2ecc71;font-size:12px;font-weight:700;cursor:pointer;border:1px solid rgba(46,204,113,.3);transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease;font-family:inherit}.market-sell-btn:hover:not(:disabled){background:#2ecc714d}.market-sell-btn:disabled{opacity:.3;cursor:default}.market-sell-all{width:100%;margin-top:10px;padding:10px;border:none;border-radius:8px;background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff;font-size:14px;font-weight:700;cursor:pointer;font-family:inherit;transition:background-color .2s ease,color .2s ease,transform .2s ease,opacity .2s ease,border-color .2s ease}.market-sell-all:hover{filter:brightness(1.1)}.guide-popup{max-width:380px;max-height:80vh;overflow-y:auto}.guide-section{margin-bottom:14px;padding:10px;background:#ffffff08;border-radius:8px}.guide-section h4{margin:0 0 6px;color:#f9ca24;font-size:14px}.guide-section p{margin:2px 0;color:#fff9;font-size:12px;line-height:1.5}.guide-crops{display:flex;flex-direction:column;gap:4px}.guide-crop-row{font-size:12px;color:#fff9;padding:3px 0}.guide-crop-row strong{color:#fff}
