.chat-page-wrap{min-height:calc(100vh - 64px);background:radial-gradient(120vmax 80vmax at 50% -10%,rgba(167,139,250,.06),transparent 60%),radial-gradient(80vmax 60vmax at 100% 100%,rgba(233,30,99,.05),transparent 65%),#0a090e8c;position:relative;isolation:isolate;overflow-x:hidden}.chat-page-wrap:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.045 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");opacity:.5;mix-blend-mode:overlay;pointer-events:none;z-index:0}.chat-shell{position:relative;z-index:1;display:grid;grid-template-columns:280px minmax(0,1fr) 320px;width:100%;max-width:100vw;height:calc(100vh - 64px);background:transparent;color:var(--color-text-on-dark, #F8F6FF);overflow:hidden}@media(min-width:1440px){.chat-shell{grid-template-columns:300px minmax(0,1fr) 340px}}@media(max-width:1180px){.chat-shell{grid-template-columns:260px minmax(0,1fr)}.chat-rail-right{display:none}}@media(max-width:720px){.chat-shell{grid-template-columns:minmax(0,1fr)}.chat-rail-left{display:none}}.chat-shell>*{min-width:0}.chat-rail-left,.chat-rail-right{background:#0e0d168c;backdrop-filter:blur(14px) saturate(110%);-webkit-backdrop-filter:blur(14px) saturate(110%);border-right:1px solid rgba(255,255,255,.06);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,107,157,.22) transparent}.chat-rail-left::-webkit-scrollbar,.chat-rail-right::-webkit-scrollbar,.chat-scroll::-webkit-scrollbar{width:4px;height:4px}.chat-rail-left::-webkit-scrollbar-track,.chat-rail-right::-webkit-scrollbar-track,.chat-scroll::-webkit-scrollbar-track{background:transparent}.chat-rail-left::-webkit-scrollbar-thumb,.chat-rail-right::-webkit-scrollbar-thumb,.chat-scroll::-webkit-scrollbar-thumb{background:#ff6b9d38;border-radius:4px;transition:background .2s ease}.chat-rail-left:hover::-webkit-scrollbar-thumb,.chat-rail-right:hover::-webkit-scrollbar-thumb,.chat-scroll:hover::-webkit-scrollbar-thumb{background:#ff6b9d73}.chat-rail-left::-webkit-scrollbar-corner,.chat-rail-right::-webkit-scrollbar-corner,.chat-scroll::-webkit-scrollbar-corner{background:transparent}.chat-rail-right{border-right:0;border-left:1px solid rgba(255,255,255,.06);padding:16px}.chat-rail-head{position:sticky;top:0;background:linear-gradient(180deg,#0e0d16eb,#0e0d16c7);backdrop-filter:blur(12px) saturate(120%);-webkit-backdrop-filter:blur(12px) saturate(120%);padding:12px;border-bottom:1px solid rgba(255,255,255,.05);box-shadow:0 10px 18px -14px #000000d9;isolation:isolate;z-index:20}.chat-persona-list,.chat-persona-item{isolation:auto}.chat-search input{width:100%;padding:8px 12px;background:#16161f;border:1px solid #2a2a39;color:#eee;border-radius:8px}.chat-filter-row{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.chat-filter-chip{padding:4px 10px;font-size:12px;background:transparent;color:#aaa;border:1px solid #2a2a39;border-radius:999px;cursor:pointer}.chat-filter-chip.active{background:#e91e63;color:#fff;border-color:#e91e63}.chat-persona-list{list-style:none;padding:6px 4px 24px;margin:0}.chat-persona-item{position:relative;display:flex;align-items:center;gap:12px;width:100%;padding:11px 12px;background:transparent;border:0;color:inherit;cursor:pointer;text-align:left;border-radius:12px;transition:background .22s ease,transform .22s ease,box-shadow .22s ease}.chat-persona-item:before{content:"";position:absolute;left:2px;top:50%;width:3px;height:0;border-radius:2px;background:linear-gradient(180deg,#ff8fb4,#ff4d8a);transform:translateY(-50%);transition:height .26s ease;opacity:0}.chat-persona-item:hover{background:linear-gradient(90deg,rgba(255,107,157,.1),transparent 75%);transform:translate(2px)}.chat-persona-item:hover .chat-persona-ring{opacity:1;transform:scale(1)}.chat-persona-item:hover:before{height:70%;opacity:.6}.chat-persona-item.is-active{background:linear-gradient(90deg,rgba(255,77,138,.14),rgba(255,77,138,.02) 70%,transparent);box-shadow:inset 0 0 0 1px #ff6b9d24}.chat-persona-item.is-active:before{height:70%;opacity:1}.chat-persona-item.is-active .chat-persona-ring{opacity:1;transform:scale(1)}.chat-persona-item.is-active .chat-persona-name{color:#fff}.chatroom{will-change:opacity,transform,filter}.chatroom--enter{animation:dj-room-in .28s cubic-bezier(.22,.7,.2,1) both}@keyframes dj-room-in{0%{opacity:0;transform:translateY(8px) scale(.992);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}.chat-info-filled,.chat-info-empty,.chat-empty-state{animation:dj-fade-soft .26s cubic-bezier(.22,.7,.2,1) both}@keyframes dj-fade-soft{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.chatroom--enter,.chat-info-filled,.chat-info-empty,.chat-empty-state{animation:none}}.chat-persona-avatar{position:relative;width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.chat-persona-avatar img{position:relative;z-index:2;width:44px;height:44px;border-radius:50%;object-fit:cover}.chat-persona-ring{position:absolute;inset:-2px;border-radius:50%;z-index:1;background:conic-gradient(from 140deg,#ff8fb4,#ff4d8a,#ff8fb4 60%,transparent 70%,transparent);opacity:0;transform:scale(.92);transition:opacity .25s ease,transform .25s ease;filter:blur(.2px);mask:radial-gradient(circle at center,transparent 21px,#000 22px);-webkit-mask:radial-gradient(circle at center,transparent 21px,#000 22px)}.chat-persona-item[data-gender=m] .chat-persona-ring{background:conic-gradient(from 140deg,#9fb6ff,#5f86ff,#9fb6ff 60%,transparent 70%,transparent)}.chat-persona-dot{position:absolute;right:1px;bottom:1px;z-index:3;width:11px;height:11px;border-radius:50%;background:#4ade80;border:2px solid #0e0e15;box-shadow:0 0 #4ade808c;animation:persona-dot-ping 2.6s ease-out infinite}@keyframes persona-dot-ping{0%,70%,to{box-shadow:0 0 #4ade8000}35%{box-shadow:0 0 0 6px #4ade8000}0%{box-shadow:0 0 #4ade808c}}.chat-persona-lock{position:absolute;left:-2px;top:-2px;z-index:4;width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f4c97a,#d29b3a);color:#2c1f0a;font-size:11px;font-weight:700;border:2px solid #0e0e15;box-shadow:0 4px 10px -4px #d4a24199}.chat-persona-meta{flex:1;min-width:0}.chat-persona-name{display:flex;align-items:center;gap:6px;font-weight:600;font-size:14px;color:#d8d8e3;transition:color .2s ease}.chat-persona-desc{display:block;font-size:12px;color:#7b7b88;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.chat-persona-bucket{font-size:10.5px;padding:2.5px 7px;border-radius:999px;background:#ffffff0a;color:#9a9aa8;border:1px solid rgba(255,255,255,.06);letter-spacing:.04em;flex-shrink:0;transition:background .2s ease,color .2s ease,border-color .2s ease}.chat-persona-item:hover .chat-persona-bucket{background:#ff6b9d1a;color:#ff9bc0;border-color:#ff6b9d38}.chat-persona-item[data-gender=m]:hover .chat-persona-bucket{background:#7896ff1a;color:#a9bcff;border-color:#7896ff38}.chat-persona-empty{list-style:none;padding:24px 16px;text-align:center;color:#7b7b88}.chat-persona-empty-reset{margin-top:8px;padding:6px 14px;border-radius:999px;background:transparent;border:1px solid rgba(255,107,157,.3);color:#ff9bc0;font-size:12px;cursor:pointer;transition:background .18s ease}.chat-persona-empty-reset:hover{background:#ff6b9d1a}@media(prefers-reduced-motion:reduce){.chat-persona-item,.chat-persona-item:hover{transform:none;transition:none}.chat-persona-ring,.chat-persona-dot{animation:none;transition:none}}.chip-nsfw{display:inline-block;font-size:10px;padding:1px 5px;background:#e91e63;color:#fff;border-radius:3px;font-weight:700;letter-spacing:.5px}.chat-center{display:flex;flex-direction:column;min-height:0}.chat-empty-state{position:relative;flex:1;min-height:0;padding:80px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.chat-empty-glow{position:absolute;inset:-20%;background:radial-gradient(40% 35% at 30% 30%,rgba(255,107,157,.16),transparent 70%),radial-gradient(35% 30% at 70% 70%,rgba(120,80,200,.1),transparent 70%);filter:blur(40px);pointer-events:none;animation:empty-glow-drift 14s ease-in-out infinite alternate}@keyframes empty-glow-drift{0%{transform:translate(0) scale(1)}to{transform:translate(4%,-3%) scale(1.06)}}.chat-empty-orbits{position:relative;width:220px;height:220px;margin-bottom:28px;display:flex;align-items:center;justify-content:center}.chat-empty-orbits:after{content:"✦";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:26px;color:#ff8fb4;text-shadow:0 0 18px rgba(255,107,157,.55);animation:orbit-seal-breath 3.6s ease-in-out infinite}@keyframes orbit-seal-breath{0%,to{opacity:.65;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}.orbit{position:absolute;border-radius:50%;border:1px solid rgba(255,107,157,.18);inset:0}.orbit-1{inset:0;animation:orbit-spin 18s linear infinite}.orbit-2{inset:24px;border-color:#ff6b9d1a;animation:orbit-spin 22s linear infinite reverse}.orbit-3{inset:52px;border-color:#ff6b9d0f;animation:orbit-spin 26s linear infinite}.orbit:before{content:"";position:absolute;top:-3px;left:50%;width:6px;height:6px;border-radius:50%;background:#ff4d8a;transform:translate(-50%);box-shadow:0 0 10px #ff4d8ab3}.orbit-2:before{background:#b87bff;box-shadow:0 0 10px #b87bff99}.orbit-3:before{background:#ffd089;box-shadow:0 0 10px #ffd0898c}@keyframes orbit-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.chat-empty-title{position:relative;font-size:clamp(22px,2.4vw,30px);margin-bottom:10px;color:#f0e8ee;letter-spacing:-.01em;font-weight:700}.chat-empty-sub{position:relative;color:#9b9bab;font-size:14px;max-width:380px;line-height:1.6}.chat-empty-hint{position:relative;margin-top:22px;padding:6px 14px;border:1px dashed rgba(255,107,157,.25);border-radius:999px;color:#ff9bc0;font-size:12px;letter-spacing:.04em;animation:hint-pulse 2.4s ease-in-out infinite}@keyframes hint-pulse{0%,to{opacity:.55;transform:translate(0)}50%{opacity:1;transform:translate(-3px)}}@media(prefers-reduced-motion:reduce){.chat-empty-glow,.orbit-1,.orbit-2,.orbit-3,.chat-empty-orbits:after,.chat-empty-hint{animation:none}}.chatroom{display:flex;flex-direction:column;height:100%;min-height:0}.chat-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #1f1f2c;background:#0e0e15}.chat-bar__left{display:flex;align-items:center;gap:10px}.chat-bar__avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}.chat-bar__name{font-weight:600}.chat-bar__id{display:flex;flex-direction:column;gap:4px;min-width:0}.intimacy-bar{display:flex;flex-direction:column;gap:4px;min-width:180px;max-width:280px}.intimacy-bar__head{display:flex;align-items:center;gap:6px;font-size:11px;color:#ffffffb3}.intimacy-bar__stage{display:inline-flex;align-items:center;gap:4px;font-weight:600;letter-spacing:.02em}.intimacy-bar__pulse{display:inline-block;font-size:10px;color:var(--bar-color, #ec4899);animation:intimacyPulse 1.6s ease-in-out infinite}@keyframes intimacyPulse{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.25);opacity:1}}.intimacy-bar__count{color:#fff9;font-variant-numeric:tabular-nums}.intimacy-bar__count b{color:#fffffff2}.intimacy-bar__next{color:#fff6}.intimacy-bar__max{color:var(--bar-color, #ec4899);font-weight:600}.intimacy-bar__track{height:4px;border-radius:999px;background:#ffffff14;overflow:hidden;box-shadow:inset 0 1px #0006}.intimacy-bar__fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--bar-color-start, #f472b6) 0%,var(--bar-color, #ec4899) 100%);transition:width .4s cubic-bezier(.4,0,.2,1);box-shadow:0 0 8px var(--bar-glow, rgba(236, 72, 153, .5))}.intimacy-bar--stranger{--bar-color: #94a3b8;--bar-color-start: #cbd5e1;--bar-glow: rgba(148, 163, 184, .35)}.intimacy-bar--liking{--bar-color: #fbbf24;--bar-color-start: #fde68a;--bar-glow: rgba(251, 191, 36, .45)}.intimacy-bar--flirting{--bar-color: #f472b6;--bar-color-start: #fbcfe8;--bar-glow: rgba(244, 114, 182, .5)}.intimacy-bar--lover{--bar-color: #ec4899;--bar-color-start: #f5dc91;--bar-glow: rgba(236, 72, 153, .6)}.chat-bar__id{position:relative}.intimacy-upgrade-flash{position:absolute;top:-22px;left:0;padding:4px 12px;background:linear-gradient(90deg,#ffb4c8f2,#ff8caaf2);color:#fff;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.04em;box-shadow:0 6px 24px #ff649666;pointer-events:none;z-index:10;white-space:nowrap;animation:intimacyUpgradePulse .6s cubic-bezier(.34,1.56,.64,1),intimacyUpgradeFade .6s 3.4s forwards}@keyframes intimacyUpgradePulse{0%{transform:scale(.6) translateY(6px);opacity:0}60%{transform:scale(1.08) translateY(0);opacity:1}to{transform:scale(1) translateY(0);opacity:1}}@keyframes intimacyUpgradeFade{to{opacity:0;transform:translateY(-4px)}}.intimacy-bar--locked{flex-direction:row;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#ffffff0a;border:1px dashed rgba(255,255,255,.14);font-size:11px;color:#ffffff6b;min-width:0;max-width:none}.intimacy-bar__lock{font-size:11px}.intimacy-bar__locked-txt{letter-spacing:.01em}.chat-bar__right{display:flex;align-items:center;gap:8px}.chip{display:inline-flex;align-items:center;min-height:32px;font-size:13px;padding:6px 12px;border-radius:999px;background:#16161f;color:#ddd;text-decoration:none;border:1px solid #2a2a39}.chip--user{background:#e91e63;color:#fff;border-color:#e91e63}.chip--memory{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,#ffc8782e,#b482ff2e);color:#ffd699;border-color:#ffc87880;transition:filter .18s ease,transform .18s ease}.chip--memory:hover{filter:brightness(1.18);transform:translateY(-1px)}.chip-memory-glyph{font-size:11px;color:#ffc878;text-shadow:0 0 8px rgba(255,200,120,.7)}.chip--profile{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,#ff9bbd2e,#c9a4ff2e);color:#f7c8e6;border-color:#ff9bbd80;transition:filter .18s ease,transform .18s ease}.chip--profile:hover{filter:brightness(1.18);transform:translateY(-1px)}.chip-profile-glyph{font-size:11px;color:#ff9bbd;text-shadow:0 0 8px rgba(255,155,189,.7)}.chip-btn{background:transparent;border:0;color:#ddd;cursor:pointer;font-size:16px}.badge-nsfw{background:#e91e63;color:#fff;padding:1px 5px;border-radius:3px;font-size:10px;font-weight:700}.chat-model-row{display:flex;gap:8px;padding:8px 16px;background:#0e0e15;border-bottom:1px solid #1f1f2c;overflow-x:auto}.chat-model-chip{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 12px;min-width:110px;background:#16161f;color:#ddd;border:1px solid #2a2a39;border-radius:10px;cursor:pointer;transition:all .18s ease}.chat-model-chip:hover{border-color:#ff7eb6}.chat-model-chip.is-active{background:linear-gradient(135deg,#e91e6338,#7828a02e);border-color:#e91e63;color:#fff;box-shadow:0 4px 14px #e91e632e}.chat-model-name{font-weight:700;font-size:13px;letter-spacing:.3px}.chat-model-tag{font-size:11px;color:#aaa;line-height:1.2}.chat-model-chip.is-active .chat-model-tag{color:#ffd2e2}.chat-scene-row{display:flex;gap:6px;padding:6px 16px 8px;background:#0b0b13;border-bottom:1px solid #1a1a26;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:rgba(255,200,120,.25) transparent}.chat-scene-row::-webkit-scrollbar{height:3px}.chat-scene-row::-webkit-scrollbar-thumb{background:#ffc87840;border-radius:2px}.chat-scene-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;padding:8px 14px;min-height:36px;background:#ffffff09;color:#c9c4d4;border:1px solid rgba(255,255,255,.08);border-radius:999px;font-size:13px;font-weight:500;letter-spacing:.02em;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;font-family:inherit}.chat-scene-chip:hover{background:#ffc87814;border-color:#ffc87852;color:#f3e5cc;transform:translateY(-1px)}.chat-scene-chip.is-active{background:linear-gradient(135deg,#ffc87838,#b482ff2e);border-color:#ffc8788c;color:#ffe9c2;box-shadow:0 2px 10px #ffc8781f}.chat-scene-chip.is-locked{color:#6f6a7a;background:#ffffff05;border-color:#ffffff0d}.chat-scene-chip.is-locked:hover{background:#ffffff0a;color:#8a8593;border-color:#ffffff1a}.chat-scene-chip__name{line-height:1.3}.chat-scene-chip__lock{font-size:10px;opacity:.85}.chat-scene-chip__intimacy{font-size:10px;font-weight:600;color:#c89a6a;padding:1px 6px;margin-left:2px;background:#c89a6a1f;border-radius:999px;letter-spacing:.02em}.chat-scene-chip.is-locked .chat-scene-chip__intimacy{color:#8a7a6a;background:#ffffff0a}.chat-scene-toast{position:absolute;left:50%;top:72px;transform:translate(-50%);padding:6px 14px;background:#14101eeb;border:1px solid rgba(255,200,120,.35);color:#f3e5cc;border-radius:999px;font-size:12px;z-index:40;pointer-events:none;animation:sceneToastIn .18s ease-out}@keyframes sceneToastIn{0%{opacity:0;transform:translate(-50%,-4px)}to{opacity:1;transform:translate(-50%)}}.chat-scroll--scene{position:relative;background-image:var(--scene-bg);background-size:cover;background-position:center;background-repeat:no-repeat}.chat-scroll--scene:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0b0b13c7,#0b0b13eb);pointer-events:none;z-index:0}.chat-scroll--scene>*{position:relative;z-index:1}.chat-scroll{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;scrollbar-width:thin;scrollbar-color:rgba(255,107,157,.22) transparent}.chat-memstrip{display:flex;align-items:center;gap:10px;padding:8px 14px;margin:0 12px;border-radius:14px;background:linear-gradient(135deg,#f5dc9112,#e91e630d);border:1px solid rgba(245,220,145,.16);color:#ececf2d1;font-size:12px;backdrop-filter:blur(10px)}.chat-memstrip__lead{color:#f5dc91d1;letter-spacing:.06em;flex-shrink:0;font-weight:600}.chat-memstrip__row{flex:1;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.chat-memstrip__row::-webkit-scrollbar{display:none}.chat-memstrip__chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:999px;color:#f5f3fcdb;font-size:12px;line-height:1.4;text-decoration:none;white-space:nowrap;max-width:200px;transition:background .15s ease,border-color .15s ease}.chat-memstrip__chip:hover{background:#f5dc911a;border-color:#f5dc9147}.chat-memstrip__txt{overflow:hidden;text-overflow:ellipsis;max-width:180px}.chat-memstrip__star{color:#f5dc91;font-size:10px;flex-shrink:0}.chat-memstrip__more{flex-shrink:0;font-size:11px;letter-spacing:.04em;color:#f5dc91bf;text-decoration:none}.chat-memstrip__more:hover{color:#f5dc91}@media(max-width:540px){.chat-memstrip{margin:0 8px;padding:6px 10px;gap:8px}.chat-memstrip__chip{max-width:150px}.chat-memstrip__txt{max-width:130px}}@media(max-width:600px){.chat-bar{padding:10px 12px;gap:8px}.chat-bar__right{gap:6px}.chat-bar__right .chip--user{display:none}.chat-bar__right .chip--memory,.chat-bar__right .chip--profile{padding:6px 10px;font-size:0;gap:0}.chat-bar__right .chip--memory .chip-memory-glyph,.chat-bar__right .chip--profile .chip-profile-glyph{font-size:16px}.chat-bar__right .chip--wallet{padding:6px 10px;font-size:12px}.intimacy-bar{min-width:120px;max-width:160px}}.bubble__tts{position:absolute;right:-10px;bottom:-10px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5dc91,#e91e63);color:#0a0a14;border:2px solid rgba(20,20,28,.88);border-radius:50%;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;box-shadow:0 4px 12px -4px #e91e6366;opacity:0;pointer-events:auto}.bubble--assistant:hover .bubble__tts,.bubble__tts.is-playing,.bubble__tts.is-busy{opacity:1}.bubble__tts:hover{transform:scale(1.08)}.bubble__tts.is-playing{background:linear-gradient(135deg,#e91e63,#f5dc91)}.bubble__tts-spin{width:11px;height:11px;border:2px solid rgba(10,10,20,.25);border-top-color:#0a0a14;border-radius:50%;animation:ttsSpin .7s linear infinite}@keyframes ttsSpin{to{transform:rotate(360deg)}}@media(hover:none){.bubble--assistant .bubble__tts{opacity:.7}}.bubble{display:flex;animation:bubbleIn .32s cubic-bezier(.16,1,.3,1)}.bubble--user{justify-content:flex-end}@keyframes bubbleIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.bubble{padding:4px 0}.bubble__inner{max-width:74%;padding:11px 15px 12px;background:#1a16269e;border:1px solid rgba(255,255,255,.055);border-radius:16px 16px 16px 4px;color:#f5f3fced;font-size:15px;line-height:1.68;letter-spacing:.003em;word-wrap:break-word;position:relative;box-shadow:0 1px #ffffff0b inset,0 0 0 1px #0000002e,0 12px 28px -22px #000000b3;backdrop-filter:blur(14px) saturate(130%);-webkit-backdrop-filter:blur(14px) saturate(130%)}.bubble__inner p{margin:0;font-feature-settings:"ss01","ss02"}.bubble__inner:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:1px;background:linear-gradient(180deg,transparent 0%,rgba(255,145,180,.55) 35%,rgba(167,139,250,.35) 70%,transparent 100%);border-radius:1px;pointer-events:none}.bubble--user .bubble__inner{background:linear-gradient(155deg,#ff91b42e,#ec407a14 40%,#24162cb8);border:1px solid rgba(255,145,180,.22);border-radius:16px 16px 4px;color:#fff5faf5;letter-spacing:.003em;box-shadow:0 1px #ffc8dc2e inset,0 0 0 1px #ff91b40d,0 14px 30px -22px #ec407a73}.bubble--user .bubble__inner:before{content:"";display:block;position:absolute;inset:0;border-radius:inherit;background:radial-gradient(120% 80% at 100% 0%,rgba(255,145,180,.22) 0%,rgba(255,145,180,.06) 35%,transparent 60%);pointer-events:none;z-index:0}.bubble--user .bubble__inner>*{position:relative;z-index:1}.bubble__inner--typing{padding:12px 16px;min-height:36px;display:flex;align-items:center}.typing-dots{display:inline-flex;gap:5px}.typing-dots i{width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,#ff6b9d,#e91e63);opacity:.4;animation:typingPulse 1.2s ease-in-out infinite}.typing-dots i:nth-child(2){animation-delay:.18s}.typing-dots i:nth-child(3){animation-delay:.36s}@keyframes typingPulse{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-2.5px)}}@media(prefers-reduced-motion:reduce){.bubble,.typing-dots i{animation:none}.typing-dots i{opacity:.7}}.bubble__img{margin:8px 0 0;position:relative}.bubble__img img{max-width:100%;border-radius:12px;display:block}.bubble__video{margin:8px 0 0;position:relative}.bubble__video video{max-width:100%;border-radius:12px;display:block;background:#000}.bubble__watermark{position:absolute;right:8px;bottom:8px;font-size:10px;padding:2px 6px;background:#0000008c;color:#fff;border-radius:4px}.bubble__remix{position:absolute;left:8px;bottom:8px;display:inline-flex;align-items:center;gap:4px;padding:3px 8px 3px 6px;font-size:11px;line-height:1;font-weight:500;color:#f5dc91;text-decoration:none;background:#0f0e16c7;border:1px solid rgba(245,220,145,.32);border-radius:999px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .16s cubic-bezier(.2,.7,.15,1)}.bubble__remix:hover{color:#fff;background:#f5dc912e;border-color:#f5dc9199;transform:translateY(-1px)}.bubble__remix svg{flex:none}.bubble__cta{display:inline-block;margin-top:10px;padding:9px 18px;border-radius:10px;background:linear-gradient(135deg,#e91e63,#c2185b);color:#fff;font-size:13px;font-weight:700;text-decoration:none;box-shadow:0 6px 16px #e91e6352;transition:transform .15s ease}.bubble__cta:hover{transform:translateY(-1px)}.chat-preview{display:flex;align-items:center;gap:10px;padding:8px 16px;background:#0e0d1680;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid rgba(255,255,255,.05)}.chat-preview img{width:60px;height:60px;border-radius:8px;object-fit:cover}.chat-preview button{background:transparent;border:1px solid rgba(255,255,255,.12);color:#ddd;padding:4px 10px;border-radius:6px;cursor:pointer}.chat-error{padding:8px 16px;background:#f443361f;color:#ff7e7e;font-size:13px;border-top:1px solid rgba(244,67,54,.2)}.chat-starter{display:flex;flex-wrap:wrap;gap:9px;align-items:center;padding:12px 18px 4px;background:linear-gradient(180deg,#0e0d1600,#0e0d1673);border-top:1px solid rgba(255,255,255,.04)}.chat-starter__hint{font-size:11.5px;letter-spacing:.08em;color:#f8f6ff6b;text-transform:uppercase}.chat-starter__chip{appearance:none;display:inline-flex;align-items:center;min-height:36px;padding:10px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.09);background:#ffffff09;color:#f8f6ffdb;font-size:13.5px;line-height:1;font-weight:500;letter-spacing:.01em;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease,color .18s ease,box-shadow .22s ease}.chat-starter__chip:hover{background:#ff6b9d1c;border-color:#ff6b9d80;color:#ffd0e2;box-shadow:0 8px 20px -10px #ff6b9d73}.chat-starter__chip:active{transform:scale(.97)}.chat-starter__chip:disabled{opacity:.45;cursor:not-allowed}.chat-input{position:relative;display:flex;gap:10px;align-items:flex-end;padding:14px 18px calc(14px + env(safe-area-inset-bottom,0px));background:linear-gradient(180deg,#0a09128c,#0a0912eb);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}.chat-input:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,107,157,.04) 18%,rgba(255,107,157,.45) 50%,rgba(167,139,250,.35) 70%,transparent 100%);opacity:.85}.icon-btn{background:linear-gradient(160deg,#ffffff0f,#ffffff05);border:1px solid rgba(255,255,255,.12);color:#f8f6ffdb;width:42px;height:42px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:inset 0 1px #ffffff0d,0 4px 10px -6px #0006;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .25s ease}.icon-btn:hover{background:linear-gradient(160deg,#ff6b9d2e,#ff6b9d0f);border-color:#ff6b9d8c;color:#ffd6e6;transform:translateY(-1px);box-shadow:inset 0 1px #ffffff14,0 8px 20px -10px #ff6b9d8c}.icon-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #ff6b9d47}.icon-btn svg{width:18px;height:18px}.chat-input textarea{flex:1;resize:none;min-height:44px;max-height:140px;padding:11px 16px;background:linear-gradient(180deg,#ffffff0d,#ffffff08);border:1px solid rgba(255,255,255,.11);border-radius:16px;color:#f3eef6;font:inherit;font-size:15px;line-height:1.55;box-shadow:inset 0 1px #ffffff0a;transition:border-color .22s ease,box-shadow .26s cubic-bezier(.22,1,.36,1),background .22s ease,transform .2s ease}.chat-input textarea::placeholder{color:#f8f6ff6b}.chat-input textarea:hover{border-color:#ffffff2e}.chat-input textarea:focus{outline:none;border-color:#ff6b9da6;background:linear-gradient(180deg,#ffffff12,#ff6b9d0a);box-shadow:inset 0 1px #ffffff0d,0 0 0 4px #ff6b9d24,0 0 28px -12px #ff6b9d80}.send-btn{position:relative;padding:0 22px;height:42px;border-radius:999px;background:linear-gradient(135deg,#ff7eb1,#ff4d8d 35%,#e91e63 65%,#c2185b);color:#fff;border:0;cursor:pointer;font-weight:700;font-size:14px;letter-spacing:.04em;box-shadow:0 10px 24px -8px #e91e6399,inset 0 1px #ffffff40,inset 0 -1px #0000001f;overflow:hidden;transition:transform .2s ease,box-shadow .24s ease,filter .2s ease}.send-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.42) 50%,transparent 70%);transform:translate(-130%);transition:transform .7s cubic-bezier(.22,1,.36,1);pointer-events:none}.send-btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06) saturate(1.05);box-shadow:0 14px 30px -8px #e91e63b3,inset 0 1px #ffffff4d,inset 0 -1px #00000024}.send-btn:hover:not(:disabled):before{transform:translate(130%)}.send-btn:active:not(:disabled){transform:translateY(0) scale(.98)}.send-btn:focus-visible{outline:none;box-shadow:0 14px 30px -8px #e91e63b3,0 0 0 3px #ff6b9d52,inset 0 1px #ffffff4d}.send-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:0 6px 14px -8px #e91e6359}.auth-modal{position:fixed;inset:0;z-index:1000;background:#0009;backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center}.auth-card{width:min(92vw,360px);background:#14141e;padding:24px;border-radius:16px;display:flex;flex-direction:column;gap:10px;border:1px solid #2a2a39}.auth-card h3{margin:0;font-size:18px}.auth-card__sub{color:#888;font-size:13px;margin:0}.auth-card__lure{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:3px 10px 3px 6px;border-radius:999px;background:linear-gradient(135deg,#fbbf242e,#f472b62e);border:1px solid rgba(251,191,36,.4);font-size:11px;letter-spacing:.06em;color:#fbe6b8}.auth-card__lure-ic{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:999px;background:linear-gradient(135deg,#fbbf24,#f472b6);color:#1a0b00;font-weight:800;font-size:11px;box-shadow:0 0 12px #fbbf2480}.auth-card__lure-tag{font-weight:600}.auth-card__title-lure{background:linear-gradient(135deg,#fbe6b8,#fbbf24 35%,#f472b6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;line-height:1.35}.auth-card__sub-lure{color:#c9b888!important}.auth-card__sub-lure b{color:#fbe6b8;font-weight:600}.auth-card__perks{list-style:none;margin:4px 0 6px;padding:10px 12px;display:flex;flex-direction:column;gap:8px;background:#ffffff08;border:1px solid rgba(251,191,36,.18);border-radius:10px}.auth-card__perks li{display:flex;align-items:flex-start;gap:9px;font-size:12.5px;color:#d9d2c0;line-height:1.45}.auth-card__perks li b{color:#fbe6b8;font-weight:600}.auth-card__perk-ic{flex:0 0 18px;font-size:14px;line-height:1;filter:drop-shadow(0 0 4px rgba(251,191,36,.4))}.auth-card input{padding:10px 12px;background:#0e0e15;border:1px solid #2a2a39;border-radius:8px;color:#eee}.auth-primary{padding:10px;border-radius:8px;border:0;background:linear-gradient(135deg,#e91e63,#c2185b);color:#fff;font-weight:600;cursor:pointer}.auth-link,.auth-close{padding:8px;background:transparent;border:0;color:#888;cursor:pointer;text-decoration:underline;font-size:13px}.auth-oneTap{display:flex;flex-direction:column;gap:8px;margin:4px 0 6px}.auth-oneTap-btn{position:relative;display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#eee;font-size:14px;font-weight:500;cursor:pointer;transition:all .18s ease;text-align:left}.auth-oneTap-btn:hover{background:#ffffff12;border-color:#ff6b9d59;transform:translateY(-1px)}.auth-oneTap-btn:active{transform:translateY(0)}.auth-oneTap-ic{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;font-size:13px;font-weight:700;flex-shrink:0}.auth-wechat .auth-oneTap-ic{background:linear-gradient(135deg,#07c160,#00a854);color:#fff}.auth-google .auth-oneTap-ic{background:#fff;color:#4285f4}.auth-github .auth-oneTap-ic{background:#24292e;color:#fff;font-size:11px}.auth-oneTap-tag{margin-left:auto;padding:2px 7px;border-radius:4px;background:#ff6b9d2e;color:#ff7eb6;font-size:10px;font-weight:600;letter-spacing:.04em}.auth-divider{display:flex;align-items:center;gap:10px;margin:8px 0 4px;color:#555;font-size:11px;letter-spacing:.04em}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,#2a2a39,transparent)}.chat-info-empty{padding:60px 20px;color:#7b7b88;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.chat-info-empty-glyph{width:48px;height:48px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:radial-gradient(circle,rgba(255,107,157,.18),transparent 70%);color:#ff8fb4;font-size:22px;animation:orbit-seal-breath 3.6s ease-in-out infinite}.chat-info-filled{display:flex;flex-direction:column;gap:14px;padding:4px 0 16px;animation:info-filled-enter .55s cubic-bezier(.22,1,.36,1) both}@keyframes info-filled-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chat-info-portrait{position:relative;perspective:800px;--tx: 0px;--ty: 0px;--rx: 0deg;--ry: 0deg}.chat-info-portrait img{width:100%;height:auto;border-radius:14px;transform:translate3d(var(--tx),var(--ty),0) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .25s ease;box-shadow:0 18px 40px -20px #0009,0 0 0 1px #ffffff0a inset;will-change:transform}.chat-info-portrait:hover img{box-shadow:0 24px 56px -22px #ff6b9d73,0 0 0 1px #ff6b9d2e inset}.chat-info-portrait:after{content:"";position:absolute;inset:0;border-radius:14px;background:linear-gradient(160deg,rgba(255,255,255,.1) 0%,transparent 35%);pointer-events:none;opacity:0;transition:opacity .25s ease}.chat-info-portrait:hover:after{opacity:1}.chat-info-portrait-seal{position:absolute;top:10px;right:10px;padding:4px 10px;border-radius:999px;background:linear-gradient(135deg,#f4c97a,#d29b3a);color:#2c1f0a;font-size:11px;font-weight:700;letter-spacing:.06em;box-shadow:0 6px 16px -6px #d4a2418c}.chat-info-name{font-size:20px;margin:0;display:flex;gap:8px;align-items:center;letter-spacing:-.01em;color:#f0e8ee}.chat-info-tagline{color:#9b9bab;font-size:13px;margin:0;line-height:1.5}.chat-info-tags{display:flex;flex-wrap:wrap;gap:6px}.chat-tag{background:#ffffff0a;color:#b6b6c2;border:1px solid rgba(255,255,255,.06);padding:3px 9px;border-radius:999px;font-size:11px;letter-spacing:.02em;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}.chat-tag:hover{background:#ff6b9d1a;color:#ff9bc0;border-color:#ff6b9d38;transform:translateY(-1px)}.chat-info-bio{font-size:13.5px;line-height:1.72;color:#f8f6ffc7;margin:8px 0 0}.chat-info-bio-fold{margin:4px 0 2px;border-top:1px solid rgba(255,255,255,.05);padding-top:10px}.chat-info-bio-fold summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:2px 0;user-select:none}.chat-info-bio-fold summary::-webkit-details-marker{display:none}.chat-info-bio-fold__label{font-size:11px;color:#9b9bac;letter-spacing:.14em;text-transform:uppercase;font-weight:600}.chat-info-bio-fold__hint{font-size:11px;color:#f8f6ff66;letter-spacing:.04em;transition:color .18s ease,transform .18s ease}.chat-info-bio-fold[open] .chat-info-bio-fold__hint{color:#ff6b9db3}.chat-info-bio-fold .chat-info-bio{animation:bio-reveal .28s cubic-bezier(.16,1,.3,1)}@keyframes bio-reveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.chat-info-permanent{margin-top:2px}.chat-info-permanent-btn,.chat-info-permanent-owned{position:relative;overflow:hidden;display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:14px;background:linear-gradient(135deg,#f4c97a1a,#d29b3a0a);border:1px solid rgba(244,201,122,.28);color:#f4d8a0;text-align:left;cursor:pointer;transition:transform .2s ease,box-shadow .25s ease,border-color .2s ease}.chat-info-permanent-btn:before,.chat-info-permanent-owned:before{content:"";position:absolute;inset:-1px;border-radius:14px;background:radial-gradient(80% 100% at 0% 0%,rgba(244,201,122,.22),transparent 60%);opacity:0;transition:opacity .25s ease;pointer-events:none}.chat-info-permanent-btn:hover{transform:translateY(-1px);border-color:#f4c97a80;box-shadow:0 12px 28px -16px #d4a24180}.chat-info-permanent-btn:hover:before{opacity:1}.chat-info-permanent-btn:active{transform:translateY(0)}.chat-info-permanent-ic{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f4c97a,#d29b3a);color:#2c1f0a;font-size:15px;font-weight:700;flex-shrink:0;box-shadow:0 4px 12px -4px #d4a2418c}.chat-info-permanent-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.chat-info-permanent-label{font-size:13.5px;font-weight:600;color:#f4d8a0;letter-spacing:-.005em}.chat-info-permanent-sub{font-size:11.5px;color:#f4d8a0b3;line-height:1.4}.chat-info-permanent-cost{padding:4px 10px;border-radius:999px;background:#f4c97a2e;color:#f4d8a0;font-size:11px;font-weight:600;letter-spacing:.04em;flex-shrink:0}.chat-info-permanent-owned{cursor:default;background:linear-gradient(135deg,#f4c97a24,#d29b3a0f);border-color:#f4c97a66}.chat-info-permanent-owned .chat-info-permanent-ic{animation:orbit-seal-breath 3.6s ease-in-out infinite}.chat-info-cta{display:block;text-align:center;padding:12px;background:linear-gradient(135deg,#ff4d8a,#c2185b);color:#fff;border-radius:12px;text-decoration:none;font-weight:600;margin-top:4px;box-shadow:0 10px 24px -12px #e91e6399;transition:transform .18s ease,box-shadow .25s ease}.chat-info-cta:hover{transform:translateY(-1px);box-shadow:0 14px 28px -10px #e91e63b3}.chat-info-push{margin-top:2px;display:flex;flex-direction:column;gap:8px}.chat-info-push-btn,.chat-info-push-on,.chat-info-push-locked{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;background:linear-gradient(135deg,#a78bfa2e,#f472b61f);border:1px solid rgba(167,139,250,.5);border-radius:14px;cursor:pointer;text-align:left;color:#1a1a1a;transition:transform .2s ease,box-shadow .25s ease,background .25s ease}.chat-info-push-btn:hover{transform:translateY(-1px);background:linear-gradient(135deg,#a78bfa47,#f472b633);box-shadow:0 12px 26px -16px #7c3aed8c}.chat-info-push-btn:active{transform:translateY(0)}.chat-info-push-on{cursor:default;background:linear-gradient(135deg,#a78bfa1f,#22c55e1a);border-color:#22c55e73}.chat-info-push-locked{cursor:default;background:#0000000a;border-color:#0000001f;opacity:.85}.chat-info-push-ic{flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#c4b5fd,#7c3aed 70%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;box-shadow:0 6px 14px -6px #7c3aed99}.chat-info-push-on .chat-info-push-ic{background:radial-gradient(circle at 30% 30%,#86efac,#16a34a 70%);box-shadow:0 6px 14px -6px #16a34a8c;animation:orbit-seal-breath 3.6s ease-in-out infinite}.chat-info-push-text{flex:1 1 auto;display:flex;flex-direction:column;gap:2px;min-width:0}.chat-info-push-label{font-weight:600;font-size:13.5px;color:#111827}.chat-info-push-sub{font-size:12px;color:#6b7280;line-height:1.4}.chat-info-push-cta{flex:0 0 auto;padding:6px 14px;background:linear-gradient(135deg,#a78bfa,#7c3aed);color:#fff;font-weight:600;font-size:12.5px;border-radius:999px}.chat-info-inbox-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:#a78bfa14;border:1px dashed rgba(124,58,237,.35);border-radius:10px;cursor:pointer;font-size:12.5px;color:#4c1d95;transition:background .2s ease}.chat-info-inbox-toggle:hover{background:#a78bfa26}.chat-info-inbox-ic{font-size:14px}.chat-info-inbox-chev{margin-left:auto;font-size:11px;opacity:.7}.chat-info-inbox-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.chat-info-inbox-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:10px;cursor:pointer;text-align:left;color:#f8f6ffd9;transition:background .2s ease,transform .2s ease,border-color .2s ease}.chat-info-inbox-item:hover{background:#a78bfa0f;transform:translate(2px)}.chat-info-inbox-item img{border-radius:50%;flex:0 0 32px}.chat-info-inbox-meta{flex:1 1 auto;display:flex;flex-direction:column;gap:2px;min-width:0}.chat-info-inbox-name{font-size:12.5px;font-weight:600;color:#1f2937}.chat-info-inbox-text{font-size:12px;color:#4b5563;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-info-inbox-ago{font-size:11px;color:#9ca3af;flex:0 0 auto}@media(prefers-reduced-motion:reduce){.chat-info-push-btn,.chat-info-inbox-item{transition:none!important}.chat-info-push-on .chat-info-push-ic{animation:none!important}}.perm-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.perm-modal-backdrop{position:absolute;inset:0;background:#080810b8;backdrop-filter:blur(8px);animation:perm-fade-in .25s ease both}.perm-modal-card{position:relative;width:min(440px,100%);padding:28px 24px 20px;background:radial-gradient(120% 80% at 50% -20%,rgba(244,201,122,.14),transparent 60%),linear-gradient(180deg,#15131c,#0c0a12);border:1px solid rgba(244,201,122,.22);border-radius:20px;box-shadow:0 30px 80px -30px #000c,0 0 0 1px #ffffff05 inset;animation:perm-card-enter .4s cubic-bezier(.22,1,.36,1) both;color:#e6e6ee}@keyframes perm-fade-in{0%{opacity:0}to{opacity:1}}@keyframes perm-card-enter{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.perm-modal-seal{position:absolute;top:-22px;left:50%;transform:translate(-50%);width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f4c97a,#d29b3a);color:#2c1f0a;font-size:20px;font-weight:700;box-shadow:0 12px 28px -8px #d4a24199}.perm-modal-card h3{margin:8px 0 6px;font-size:19px;text-align:center;color:#f4d8a0;letter-spacing:-.005em}.perm-modal-sub{margin:0 0 18px;text-align:center;font-size:13px;line-height:1.65;color:#b6b6c2}.perm-modal-sub strong{color:#f4d8a0;font-weight:600}.perm-modal-target{padding:10px 12px;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);margin-bottom:14px}.perm-modal-target-row{display:flex;align-items:center;gap:12px}.perm-modal-target-row img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:1px solid rgba(244,201,122,.32)}.perm-modal-target-name{font-size:14px;font-weight:600;color:#f0e8ee}.perm-modal-target-desc{font-size:12px;color:#9b9bab;margin-top:2px}.perm-modal-cost{display:flex;align-items:center;gap:8px;padding:11px 14px;border-radius:12px;background:linear-gradient(90deg,rgba(244,201,122,.08),transparent);border:1px solid rgba(244,201,122,.18);margin-bottom:12px;font-size:13px}.perm-modal-cost-label{color:#b6b6c2}.perm-modal-cost-val{color:#f4d8a0;font-weight:700}.perm-modal-cost-bal{margin-left:auto;color:#8b8b96;font-size:12px}.perm-modal-err{margin:0 0 10px;padding:8px 12px;background:#ff4d8a1a;color:#ff9bc0;border:1px solid rgba(255,77,138,.25);border-radius:10px;font-size:12.5px}.perm-modal-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;margin-bottom:10px}.perm-modal-cancel,.perm-modal-confirm{padding:11px 14px;border-radius:12px;cursor:pointer;font-size:14px;font-weight:600;transition:transform .18s ease,background .2s ease,box-shadow .25s ease}.perm-modal-cancel{background:transparent;color:#b6b6c2;border:1px solid rgba(255,255,255,.1)}.perm-modal-cancel:hover{background:#ffffff0a}.perm-modal-confirm{background:linear-gradient(135deg,#f4c97a,#d29b3a);color:#2c1f0a;border:0;box-shadow:0 12px 28px -12px #d4a24199}.perm-modal-confirm:hover:not([disabled]){transform:translateY(-1px);box-shadow:0 14px 32px -10px #d4a241b3}.perm-modal-confirm[disabled],.perm-modal-cancel[disabled]{opacity:.6;cursor:not-allowed}.perm-modal-fine{margin:0;text-align:center;font-size:11px;color:#6b6b76;letter-spacing:.04em}@media(prefers-reduced-motion:reduce){.chat-info-filled,.perm-modal-card,.chat-info-permanent-owned .chat-info-permanent-ic{animation:none}.chat-info-portrait img{transition:none;transform:none}}.chat-studio-trigger{position:relative;display:inline-flex}.chat-studio-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 15px;height:42px;border-radius:999px;background:linear-gradient(135deg,#a78bfa38,#f472b62e);border:1px solid rgba(167,139,250,.5);color:#f5ecff;font-size:13px;font-weight:600;cursor:pointer;box-shadow:inset 0 1px #ffffff14,0 6px 14px -8px #a78bfa66;transition:transform .22s ease,box-shadow .26s ease,background .25s ease,border-color .22s ease}.chat-studio-btn:hover{transform:translateY(-1px);background:linear-gradient(135deg,#a78bfa52,#f472b642);border-color:#a78bfaa6;box-shadow:inset 0 1px #ffffff1a,0 12px 26px -10px #a78bfaa6}.chat-studio-btn:active{transform:translateY(0)}.chat-studio-btn:focus-visible{outline:none;box-shadow:inset 0 1px #ffffff1a,0 0 0 3px #a78bfa52}.chat-studio-btn__ic{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border-radius:50%;background:linear-gradient(135deg,#a78bfa,#f472b6);color:#fff;font-size:11px;font-weight:700;box-shadow:0 2px 8px -2px #a78bfaa6}.chat-studio-btn__label{letter-spacing:.02em}.chat-studio-pop{position:absolute;bottom:calc(100% + 8px);left:0;display:flex;flex-direction:column;min-width:132px;padding:6px;background:#fffffffa;border:1px solid rgba(167,139,250,.28);border-radius:14px;box-shadow:0 18px 40px -16px #5b21b647,0 0 0 1px #fff9 inset;opacity:0;pointer-events:none;transform:translateY(6px);transition:opacity .18s ease,transform .22s cubic-bezier(.22,1,.36,1);z-index:20}.chat-studio-trigger:hover .chat-studio-pop,.chat-studio-trigger:focus-within .chat-studio-pop{opacity:1;pointer-events:auto;transform:translateY(0)}.chat-studio-pop button{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;background:transparent;border:0;border-radius:10px;font-size:13px;color:#1f2937;font-weight:500;cursor:pointer;text-align:left;transition:background .18s ease,transform .15s ease}.chat-studio-pop button:hover{background:linear-gradient(90deg,#a78bfa1f,#f472b60f);transform:translate(2px)}.chat-studio-pop__ic{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:6px;background:linear-gradient(135deg,#a78bfa2e,#f472b624);color:#7c3aed;font-size:11px;font-weight:700}.gen-modal{position:fixed;inset:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:24px 16px}.gen-modal__backdrop{position:absolute;inset:0;background:#080810a8;backdrop-filter:blur(10px);animation:gen-fade-in .22s ease both}@keyframes gen-fade-in{0%{opacity:0}to{opacity:1}}@keyframes gen-card-enter{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.gen-modal__card{position:relative;width:min(960px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:radial-gradient(140% 90% at 50% -10%,rgba(167,139,250,.18),transparent 55%),linear-gradient(180deg,#fefcff,#fbf7ff);border:1px solid rgba(167,139,250,.32);border-radius:22px;box-shadow:0 40px 90px -24px #5b21b659;overflow:hidden;animation:gen-card-enter .32s cubic-bezier(.22,1,.36,1) both}.gen-modal__head{display:flex;align-items:center;padding:14px 18px;border-bottom:1px solid rgba(167,139,250,.18);background:#ffffff8c;backdrop-filter:blur(8px);gap:8px}.gen-modal__tabs{display:inline-flex;gap:6px;flex:1 1 auto}.gen-tab{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;background:transparent;border:1px solid transparent;border-radius:999px;color:#6b7280;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.gen-tab:hover{color:#5b21b6}.gen-tab.is-active{background:linear-gradient(135deg,#a78bfa2e,#f472b624);color:#5b21b6;border-color:#a78bfa66}.gen-tab__ic{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#a78bfa66,#f472b64d);color:#fff;font-size:11px}.gen-tab.is-active .gen-tab__ic{background:linear-gradient(135deg,#a78bfa,#f472b6)}.gen-modal__close{width:32px;height:32px;border-radius:50%;background:#0000000a;border:0;color:#4b5563;font-size:16px;cursor:pointer;transition:background .18s ease,transform .15s ease}.gen-modal__close:hover{background:#00000014;transform:rotate(90deg)}.gen-modal__body{flex:1 1 auto;overflow-y:auto;padding:18px 20px 12px;display:grid;gap:18px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}@media(max-width:760px){.gen-modal__body{grid-template-columns:1fr}}.gen-pane{display:flex;flex-direction:column;gap:14px}.gen-pane__title{font-size:14px;font-weight:700;color:#4b5563;letter-spacing:.02em;margin:0}.gen-pane__prompt{width:100%;min-height:92px;padding:12px 14px;background:#ffffffd9;border:1px solid rgba(167,139,250,.35);border-radius:14px;font-size:14px;line-height:1.55;color:#1f2937;resize:vertical;font-family:inherit;transition:border-color .2s ease,box-shadow .25s ease,background .2s ease}.gen-pane__prompt::placeholder{color:#4b55637a}.gen-pane__prompt:focus{outline:none;background:#fff;border-color:#a78bfab3;box-shadow:0 0 0 3px #a78bfa26}.gen-row{display:flex;flex-direction:column;gap:8px}.gen-row--seed{flex-direction:row;align-items:center;gap:10px}.gen-row__label{font-size:12.5px;font-weight:600;color:#6b7280;letter-spacing:.04em;text-transform:uppercase}.gen-row__hint{font-size:11.5px;color:#9ca3af}.gen-seed-thumb{width:56px;height:56px;border-radius:12px;object-fit:cover;border:1px solid rgba(167,139,250,.28)}.gen-chips{display:flex;flex-wrap:wrap;gap:6px}.gen-chips--soft{gap:5px}.gen-chip{padding:6px 12px;background:#ffffffb3;border:1px solid rgba(167,139,250,.22);border-radius:999px;font-size:12.5px;color:#4b5563;font-weight:500;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .15s ease}.gen-chip:hover{transform:translateY(-1px);border-color:#a78bfa80}.gen-chip.is-on{background:linear-gradient(135deg,#a78bfa,#f472b6);color:#fff;border-color:transparent;box-shadow:0 6px 16px -8px #a78bfa99}.gen-chip--nsfw{background:#f472b614;border-color:#f472b652;color:#be185d}.gen-chip--nsfw.is-on{background:linear-gradient(135deg,#f472b6,#ec4899)}.gen-toggle{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;background:#ffffffa6;border:1px solid rgba(167,139,250,.22);border-radius:999px;cursor:pointer;font-size:12.5px;color:#4b5563;transition:background .18s ease,border-color .18s ease}.gen-toggle input{accent-color:#a78bfa}.gen-slider{-webkit-appearance:none;appearance:none;width:100%;height:4px;background:linear-gradient(90deg,#a78bfa59,#f472b659);border-radius:4px;outline:none}.gen-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:linear-gradient(135deg,#a78bfa,#f472b6);cursor:pointer;box-shadow:0 2px 6px #5b21b64d}.gen-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:linear-gradient(135deg,#a78bfa,#f472b6);cursor:pointer;border:0}.gen-preview{position:relative;display:flex;flex-direction:column;min-height:240px;background:radial-gradient(120% 80% at 50% 0%,rgba(167,139,250,.08),transparent 60%),#fff9;border:1px dashed rgba(167,139,250,.35);border-radius:16px;overflow:hidden}.gen-preview__empty{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#9ca3af;font-size:13px;padding:24px;text-align:center}.gen-preview__empty:before{content:"✦";font-size:28px;background:linear-gradient(135deg,#a78bfa,#f472b6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gen-spark 2.6s ease-in-out infinite}@keyframes gen-spark{0%,to{transform:scale(1) rotate(0);opacity:.85}50%{transform:scale(1.15) rotate(20deg);opacity:1}}.gen-preview__filled{flex:1 1 auto;display:flex;align-items:center;justify-content:center;padding:12px}.gen-preview__filled img,.gen-preview__filled video{max-width:100%;max-height:320px;border-radius:12px;box-shadow:0 18px 40px -16px #5b21b666}.gen-preview__filled audio{width:100%}.gen-preview__hint{padding:8px 14px;background:#a78bfa0f;border-top:1px solid rgba(167,139,250,.18);font-size:11.5px;color:#6b7280}.gen-preview__cost{position:absolute;top:10px;right:10px;padding:4px 10px;background:#ffffffeb;border:1px solid rgba(244,201,122,.45);border-radius:999px;font-size:11.5px;font-weight:700;color:#b45309}.gen-progress{padding:10px 14px;background:linear-gradient(90deg,#a78bfa1a,#f472b614);border-top:1px solid rgba(167,139,250,.22);font-size:12.5px;color:#5b21b6;display:flex;align-items:center;gap:8px}.gen-progress:before{content:"";width:10px;height:10px;border-radius:50%;background:#a78bfa;animation:gen-pulse 1.2s ease-in-out infinite}@keyframes gen-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.gen-progress--busy{flex-direction:column;align-items:stretch;gap:8px;padding:12px 14px 14px}.gen-progress--busy:before{display:none}.gen-progress__bar{width:100%;height:6px;background:#a78bfa2e;border-radius:999px;overflow:hidden;position:relative}.gen-progress__fill{height:100%;background:linear-gradient(90deg,#a78bfa,#f472b6,#fbbf24);background-size:200% 100%;border-radius:999px;transition:width .35s cubic-bezier(.16,1,.3,1);animation:gen-progress-shimmer 1.8s linear infinite}@keyframes gen-progress-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.gen-progress__mono{font-style:italic;font-size:12.5px;color:#6d28d9;opacity:0;animation:gen-mono-in .55s ease forwards}@keyframes gen-mono-in{0%{opacity:0;transform:translateY(4px)}to{opacity:.95;transform:translateY(0)}}.gen-error{margin:0;padding:9px 12px;background:#f43f5e14;border:1px solid rgba(244,63,94,.28);border-radius:10px;color:#be123c;font-size:12.5px}.gen-error-cta{display:inline-block;margin-top:10px;padding:9px 18px;border-radius:10px;background:linear-gradient(135deg,#e91e63,#c2185b);color:#fff;font-size:13px;font-weight:700;text-decoration:none;box-shadow:0 6px 16px #e91e6352;transition:transform .15s ease}.gen-error-cta:hover{transform:translateY(-1px)}.gen-history{display:flex;flex-direction:column;gap:8px}.gen-history__title{font-size:11.5px;color:#9ca3af;letter-spacing:.06em;text-transform:uppercase;margin:0}.gen-history__row{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:8px}.gen-history__cell{position:relative;aspect-ratio:1 / 1;background:#ffffffa6;border:1px solid rgba(167,139,250,.2);border-radius:10px;overflow:hidden;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .18s ease,box-shadow .22s ease,border-color .22s ease}.gen-history__cell:hover{transform:translateY(-2px);border-color:#a78bfa80;box-shadow:0 12px 24px -12px #5b21b666}.gen-history__cell img,.gen-history__cell video{width:100%;height:100%;object-fit:cover}.gen-history__icon{color:#a78bfa;font-size:18px}.gen-modal__foot{display:flex;align-items:center;gap:10px;padding:14px 20px;border-top:1px solid rgba(167,139,250,.18);background:#fff9;backdrop-filter:blur(8px)}.gen-cancel{padding:10px 16px;background:transparent;border:1px solid rgba(0,0,0,.08);border-radius:12px;color:#6b7280;font-size:13.5px;font-weight:500;cursor:pointer;transition:background .18s ease,color .18s ease}.gen-cancel:hover{background:#0000000a;color:#1f2937}.gen-submit{margin-left:auto;display:inline-flex;align-items:center;gap:8px;padding:11px 22px;background:linear-gradient(135deg,#a78bfa,#f472b6);border:0;border-radius:12px;color:#fff;font-size:14px;font-weight:700;letter-spacing:.01em;cursor:pointer;box-shadow:0 14px 28px -12px #a78bfa99;transition:transform .18s ease,box-shadow .22s ease,opacity .2s ease}.gen-submit:hover:not([disabled]){transform:translateY(-1px);box-shadow:0 18px 36px -12px #a78bfabf}.gen-submit[disabled]{opacity:.55;cursor:not-allowed}@media(prefers-reduced-motion:reduce){.gen-modal__card,.gen-modal__backdrop,.gen-preview__empty:before,.gen-progress:before,.gen-progress__fill,.gen-progress__mono,.gen-chip,.gen-history__cell,.chat-studio-pop{animation:none!important;transition:none!important}}.bg-task-pill{position:fixed;right:20px;bottom:24px;z-index:100;animation:bg-task-in .36s cubic-bezier(.22,.7,.2,1) both}@keyframes bg-task-in{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.bg-task-pill__btn{display:inline-flex;align-items:center;gap:10px;padding:11px 18px 11px 14px;border-radius:999px;background:linear-gradient(135deg,#a78bfaf0,#ec4899f0);color:#fff;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 18px 40px -16px #a78bfa8c,0 4px 14px -6px #0006;cursor:pointer;transition:transform .18s ease,box-shadow .22s ease;font:500 13px/1.3 var(--font-zh, system-ui);max-width:280px}.bg-task-pill__btn:hover{transform:translateY(-1px);box-shadow:0 22px 44px -16px #a78bfab3,0 6px 18px -8px #00000080}.bg-task-pill__spinner{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:bg-task-spin .88s linear infinite;flex-shrink:0}@keyframes bg-task-spin{to{transform:rotate(360deg)}}.bg-task-pill__txt{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left}.bg-task-pill__row{display:block;font-size:12.5px;letter-spacing:.02em;text-shadow:0 1px 2px rgba(0,0,0,.18)}@media(prefers-reduced-motion:reduce){.bg-task-pill{animation:none}.bg-task-pill__spinner{animation:none;border-top-color:#ffffff8c}}
