.chat-transcript-panel .chat-panel-heading{flex:0 0 auto}.chat-transcript-panel .chat-log{flex:1 1 auto;min-height:0;max-height:none;padding-bottom:.7rem}.chat-transcript-panel .chat-quick-replies{flex:0 0 auto;margin-top:0}.chat-transcript-panel>.button-row{order:4;flex:0 0 auto;margin:.25rem 0 0}.chat-transcript-panel .chat-composer-dock{order:5;flex:0 0 auto;position:-webkit-sticky;position:sticky;bottom:0;z-index:5;margin-top:.45rem;padding:.58rem .08rem .08rem;background:linear-gradient(180deg,rgba(9,10,18,0),rgba(9,10,18,.92) 24%,rgba(9,10,18,.98))}@media (max-width:920px){.chat-transcript-panel .chat-panel-heading{display:none}.chat-transcript-panel .chat-log{padding-top:calc(3.9rem + env(safe-area-inset-top));padding-bottom:.45rem}}@media (max-width:560px){.chat-transcript-panel .chat-composer-dock{padding-bottom:max(.45rem,env(safe-area-inset-bottom))}.chat-transcript-panel .chat-message-form{grid-template-columns:minmax(0,1fr) auto}}.chat-transcript-panel .chat-message-form{position:relative;isolation:isolate;overflow:visible;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:.46rem;gap:.46rem;border:1px solid rgba(255,255,255,.1);border-radius:1rem;background:linear-gradient(rgba(15,23,42,.78),rgba(15,23,42,.78)) padding-box,linear-gradient(120deg,rgba(255,255,255,.1),rgba(255,255,255,.1)) border-box;padding:.38rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 14px 34px rgba(0,0,0,.18);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.chat-transcript-panel .chat-message-form:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;padding:1px;background:conic-gradient(from var(--chat-composer-glow-angle,0deg),transparent 0deg 255deg,oklch(.606 .25 292.717/.06) 280deg,oklch(.606 .25 292.717/.9) 312deg,rgba(255,255,255,.42) 326deg,transparent 352deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;pointer-events:none}.chat-transcript-panel .chat-message-form[data-ready=true]:before{opacity:.82;animation:chatComposerBorderOrbit 3.6s linear infinite}.chat-transcript-panel .chat-message-form[data-ready=true]{box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 14px 34px rgba(0,0,0,.18),0 0 18px oklch(.606 .25 292.717/.1)}.chat-transcript-panel .chat-message-form[data-ready=true]:focus-within:before{animation:none;opacity:0}.chat-transcript-panel .chat-message-form[data-ready=true]:focus-within{border-color:oklch(.606 .25 292.717/.46);background:linear-gradient(rgba(17,24,39,.86),rgba(17,24,39,.86)) padding-box,linear-gradient(120deg,oklch(.606 .25 292.717/.58),rgba(255,255,255,.2)) border-box;box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 14px 34px rgba(0,0,0,.2),0 0 0 1px oklch(.606 .25 292.717/.36),0 0 22px oklch(.606 .25 292.717/.24)}@property --chat-composer-glow-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes chatComposerBorderOrbit{to{--chat-composer-glow-angle:360deg}}@media (prefers-reduced-motion:reduce){.chat-transcript-panel .chat-message-form[data-ready=true]:before{animation:none;opacity:.35}}.chat-transcript-panel .chat-message-form textarea{width:100%;min-height:2rem;max-height:none;padding:.38rem .32rem;border:0;border-radius:.7rem;background:transparent;color:rgba(248,250,252,.94);font:inherit;font-size:.92rem;line-height:1.45;outline:none;resize:none;overflow-y:hidden}.chat-transcript-panel .chat-message-form textarea:focus,.chat-transcript-panel .chat-message-form textarea:focus-visible{box-shadow:none}.chat-transcript-panel .chat-message-form textarea::placeholder{color:rgba(203,213,225,.48)}.chat-transcript-panel .chat-message-form textarea:disabled{cursor:wait;opacity:.58}.chat-assistant-menu{position:relative;z-index:12;align-self:end}.chat-assistant-trigger,.chat-send-button{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;min-width:2rem;min-height:2rem;padding:0;border-radius:999px;cursor:pointer}.chat-assistant-trigger{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);box-shadow:0 8px 22px rgba(0,0,0,.18)}.chat-assistant-trigger:hover,.chat-assistant-trigger[aria-expanded=true]{background:rgba(255,255,255,.1)}.chat-assistant-trigger:disabled{cursor:wait;opacity:.52}.chat-assistant-avatar{display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;overflow:hidden;border-radius:999px;background:radial-gradient(circle at 50% 40%,rgba(30,27,75,.62),rgba(2,6,23,.96));color:rgba(248,250,252,.94);font-size:.72rem;font-weight:860;filter:drop-shadow(0 0 18px rgba(139,92,246,.28))}.chat-assistant-avatar.small{width:1.45rem;height:1.45rem;font-size:.62rem}.chat-assistant-crystal{width:112%;height:112%;overflow:visible}.chat-assistant-avatar .smoke-particle{filter:blur(14px);opacity:0;transform-origin:center;animation:smokeRise 6s ease-out infinite}.chat-assistant-avatar .smoke-2{animation-delay:2s;animation-duration:7s}.chat-assistant-avatar .smoke-3{animation-delay:4s;animation-duration:6.5s}.chat-assistant-avatar .crystal-haze{filter:blur(30px)}.chat-assistant-avatar .glass-reflection{filter:blur(10px);transform-origin:center top;animation:glowPulse 5s ease-in-out infinite}.chat-assistant-avatar .rim-light{filter:blur(2px)}@keyframes smokeRise{0%{transform:translateY(130px) scale(.4) rotate(0deg);opacity:0}15%{opacity:.8}80%{opacity:.4}to{transform:translateY(-130px) scale(2.2) rotate(30deg);opacity:0}}@keyframes glowPulse{0%,to{opacity:.2;transform:scale(1)}50%{opacity:.4;transform:scale(1.02)}}@media (prefers-reduced-motion:reduce){.chat-assistant-avatar .glass-reflection,.chat-assistant-avatar .smoke-particle{animation:none}.chat-assistant-avatar .smoke-particle{opacity:.32}}.chat-send-button.button.primary{width:2rem;height:2rem;min-width:2rem;min-height:2rem;border:1px solid oklch(.606 .25 292.717/.24);border-radius:999px;background:oklch(.606 .25 292.717/.72);color:white;box-shadow:0 8px 20px oklch(.606 .25 292.717/.14),inset 0 1px 0 rgba(255,255,255,.16);transition:transform .15s var(--ease),opacity .15s var(--ease),box-shadow .15s var(--ease),background .15s var(--ease)}.chat-send-button.button.primary:hover:not(:disabled){transform:translateY(-1px);background:oklch(.606 .25 292.717/.84);box-shadow:0 10px 22px oklch(.606 .25 292.717/.2),inset 0 1px 0 rgba(255,255,255,.2)}.chat-send-button.button.primary:active:not(:disabled){transform:translateY(0)}.chat-send-button svg{width:.98rem;height:.98rem;transform:translateX(-.75px)}.chat-send-button:disabled{cursor:not-allowed;opacity:.36;filter:grayscale(.28)}.chat-assistant-popover{position:absolute;bottom:calc(100% + .58rem);left:0;z-index:130;width:min(20rem,calc(100vw - 1.4rem));padding:.85rem;border:1px solid rgba(255,255,255,.1);border-radius:1rem;background:rgba(10,14,26,.96);box-shadow:0 24px 72px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.05);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.chat-assistant-head{display:flex;align-items:center;gap:.52rem;color:rgba(248,250,252,.94);font-size:.82rem}.chat-assistant-message{margin:.78rem 0;padding:.72rem;border-radius:.82rem;background:rgba(255,255,255,.055);color:rgba(203,213,225,.78);font-size:.82rem;line-height:1.6}.chat-assistant-section+.chat-assistant-section{margin-top:.72rem}.chat-assistant-section-title{display:block;margin-bottom:.34rem;color:rgba(148,163,184,.78);font-size:.64rem;font-weight:820}.chat-assistant-actions{display:grid;grid-gap:.32rem;gap:.32rem}.chat-assistant-actions button{display:flex;align-items:center;justify-content:space-between;gap:.7rem;width:100%;min-height:2.52rem;padding:.62rem .72rem;border:1px solid rgba(255,255,255,.08);border-radius:.72rem;background:rgba(255,255,255,.035);color:rgba(241,245,249,.9);cursor:pointer;font:inherit;font-size:.82rem;font-weight:720;text-align:left}.chat-assistant-actions.compact button{min-height:2.26rem;border-color:oklch(.606 .25 292.717/.16);background:oklch(.606 .25 292.717/.08)}.chat-assistant-actions button:hover{background:rgba(255,255,255,.075)}.chat-assistant-actions svg{width:.78rem;height:.78rem;color:rgba(203,213,225,.62)}@media (max-width:760px){.chat-transcript-panel .chat-message-form{margin-left:max(.5rem,env(safe-area-inset-left));margin-right:max(.5rem,env(safe-area-inset-right))}.chat-assistant-popover{position:fixed;left:max(.55rem,env(safe-area-inset-left));bottom:calc(4.35rem + env(safe-area-inset-bottom));z-index:130}}.chat-assistant-back{display:inline-flex;align-items:center;justify-content:center;width:1.55rem;height:1.55rem;padding:0;border:0;border-radius:.5rem;background:transparent;color:rgba(226,232,240,.72);cursor:pointer}.chat-assistant-back:hover{background:rgba(255,255,255,.07);color:rgba(248,250,252,.95)}.chat-assistant-back svg{width:.95rem;height:.95rem}.chat-assistant-direction{margin:.78rem 0;padding:.72rem;border-radius:.82rem;background:rgba(255,255,255,.055)}.chat-assistant-direction span{display:block;margin-bottom:.34rem;color:rgba(148,163,184,.78);font-size:.64rem;font-weight:820}.chat-assistant-direction p{margin:0;color:rgba(248,250,252,.92);font-size:.86rem;font-weight:760}.chat-assistant-error{margin:0 0 .42rem;color:rgba(252,211,77,.82);font-size:.72rem;line-height:1.5}.chat-assistant-actions.generated{gap:.38rem}.chat-assistant-actions.generated button{align-items:flex-start;justify-content:flex-start;min-height:0;padding:.72rem .78rem;line-height:1.65}.chat-assistant-actions.generated button span{white-space:normal;word-break:keep-all}.chat-assistant-loading-row{display:block;height:3.4rem;border-radius:.72rem;background:linear-gradient(90deg,rgba(255,255,255,.035),rgba(255,255,255,.085),rgba(255,255,255,.035));background-size:220% 100%;animation:chat-assistant-loading 1.1s ease-in-out infinite}@keyframes chat-assistant-loading{0%{background-position:120% 0}to{background-position:-120% 0}}.chat-panel-actions{display:inline-flex;flex:0 0 auto;align-items:center;gap:.42rem}.chat-utility-actions{display:inline-flex;align-items:center;gap:.32rem}.chat-icon-button{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1px solid oklch(.606 .25 292.717/.12);border-radius:999px;background:rgba(15,23,42,.32);color:rgba(219,234,254,.66);cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.chat-icon-button:focus-visible,.chat-icon-button:hover{border-color:oklch(.606 .25 292.717/.28);background:oklch(.606 .25 292.717/.14);color:rgba(239,246,255,.92);transform:translateY(-1px)}.chat-icon-button svg{width:1.04rem;height:1.04rem}.chat-transcript-panel>.button-row{display:none!important}.global-music-hud{position:fixed;top:calc(.72rem + env(safe-area-inset-top));right:calc(.9rem + env(safe-area-inset-right));z-index:120;display:grid;place-items:center;width:2.4rem;height:2.4rem;padding:0;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(5,6,12,.62);color:rgba(248,250,252,.92);cursor:pointer;font:inherit;box-shadow:0 14px 38px rgba(0,0,0,.32),0 0 22px oklch(.606 .25 292.717/.1);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease;animation:global-music-header-in .36s cubic-bezier(.16,1,.3,1)}.global-music-hud:hover{background:rgba(12,16,30,.78);transform:translateY(-1px)}.global-music-hud:focus-visible{outline:2px solid oklch(.72 .18 292.717/.72);outline-offset:2px}.global-music-hud[data-state=playing]{border-color:oklch(.606 .25 292.717/.34);background:linear-gradient(135deg,oklch(.606 .25 292.717/.32),rgba(216,180,254,.22)),rgba(8,12,24,.7);color:rgba(248,250,252,.98);box-shadow:0 14px 38px rgba(0,0,0,.36),0 0 30px oklch(.606 .25 292.717/.22)}.global-music-hud[data-state=error]{border-color:rgba(248,113,113,.32);color:rgba(254,202,202,.92);box-shadow:0 14px 38px rgba(0,0,0,.34),0 0 22px rgba(248,113,113,.16)}.global-music-hud[aria-busy=true]{opacity:.78}.global-music-icon{width:1.1rem;height:1.1rem;display:block}@keyframes global-music-header-in{0%{opacity:0;transform:translateY(-.55rem)}to{opacity:1;transform:translateY(0)}}@media (max-width:920px){.site-header{min-height:calc(3.25rem + env(safe-area-inset-top));padding-right:calc(4rem + env(safe-area-inset-right))}.global-music-hud{right:calc(.72rem + env(safe-area-inset-right));width:2.1rem;height:2.1rem}.global-music-icon{width:.98rem;height:.98rem}.viewer-topbar-actions{padding-right:calc(4rem + env(safe-area-inset-right))}.viewer-audio-menu{display:none}.mobile-chat-affection{margin-right:calc(4rem + env(safe-area-inset-right))}.chat-prologue-close{right:calc(4.4rem + env(safe-area-inset-right))}}@media (prefers-reduced-motion:reduce){.global-music-hud{animation:none;transition:none}.global-music-hud:hover{transform:none}}.chat-transcript-panel .chat-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:.95rem;min-width:0}.chat-profile-summary{display:flex;flex:1 1 auto;align-items:center;gap:.72rem;min-width:0}.chat-header-avatar{display:grid;place-items:center;width:2.5rem;height:2.5rem;flex:0 0 auto;overflow:hidden;border-radius:999px;background:rgba(148,163,184,.14);color:rgba(248,250,252,.92);font-weight:820;text-decoration:none;transition:box-shadow .16s ease,transform .16s ease}.chat-header-avatar:focus-visible,.chat-header-avatar:hover{box-shadow:0 0 0 3px oklch(.606 .25 292.717/.22);outline:none}.chat-header-avatar img{width:100%;height:100%;object-fit:cover}.chat-title-block{display:grid;flex:1 1 auto;grid-gap:.22rem;gap:.22rem;min-width:0}.chat-title-row{display:flex;align-items:flex-end;gap:.5rem;min-width:0}.chat-title-link{min-width:0;color:inherit;text-decoration:none}.chat-transcript-panel .chat-panel-heading h1{margin:0;font-size:clamp(1rem,1.45vw,1.28rem);line-height:1.05;letter-spacing:-.035em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-character-role{margin:0 0 .03rem;color:rgba(203,213,225,.62);font-size:.72rem;font-weight:680;line-height:1;white-space:nowrap}.chat-transcript-panel .chat-panel-actions,.chat-transcript-panel .chat-panel-actions .chat-utility-actions,.chat-transcript-panel .chat-persona-edit,.chat-transcript-panel .chat-persona-line{display:none}.chat-heading-affection{flex:0 0 clamp(9rem,22vw,12.5rem);max-width:12.5rem;min-width:9rem;margin-left:auto}.chat-affection-meter{position:relative;width:100%;min-width:0;margin:0}.chat-affection-toggle{display:flex;align-items:center;gap:.85rem;width:100%;padding:.4rem .7rem .4rem .78rem;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(8,10,22,.42);color:inherit;cursor:pointer;text-align:left;transition:background .16s ease,border-color .16s ease}.chat-affection-toggle:focus-visible,.chat-affection-toggle:hover{background:rgba(14,18,34,.58);border-color:rgba(167,139,250,.32);color:rgba(248,250,252,.98);outline:none}.chat-affection-copy{display:grid;flex:0 0 auto;grid-gap:.1rem;gap:.1rem;min-width:0}.chat-affection-label{color:rgba(148,163,184,.66);font-size:.56rem;font-weight:860;letter-spacing:.1em;line-height:1;text-transform:uppercase}.chat-affection-stage{display:inline-flex;align-items:center;gap:.22rem;overflow:hidden;color:rgba(226,232,240,.78);font-size:.7rem;font-weight:780;line-height:1.16}.chat-heading-affection .chat-affection-stage span:first-child,.chat-heading-affection .chat-affection-stage-chevron{display:none}.chat-affection-stage span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-affection-stage-chevron{width:.66rem;height:.66rem;flex:0 0 auto;opacity:.62}.chat-affection-track{position:relative;display:block;flex:1 1 auto;height:.42rem;min-width:3rem;overflow:hidden;border-radius:999px;background:rgba(148,163,184,.16)}.chat-affection-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,oklch(.606 .25 292.717/.78),oklch(.78 .15 292.717/.92));transition:width .22s ease}.chat-affection-score{display:inline-flex;flex:0 0 auto;align-items:baseline;gap:.3rem;min-width:0}.chat-affection-score strong{color:rgba(248,250,252,.96);font-size:1.04rem;line-height:.95;letter-spacing:-.04em}.chat-affection-score i{color:rgba(148,163,184,.64);font-style:normal;font-size:.62rem}.chat-affection-score em{padding:.06rem .36rem;border-radius:999px;background:oklch(.606 .25 292.717/.16);color:oklch(.86 .11 292.717);font-style:normal;font-size:.62rem;font-weight:740;letter-spacing:.01em}.chat-affection-chevron{flex:0 0 auto;width:.78rem;height:.78rem;color:rgba(226,232,240,.6);transition:transform .16s ease,color .16s ease}.chat-affection-meter[data-open=true] .chat-affection-chevron{color:oklch(.86 .11 292.717);transform:rotate(180deg)}.chat-affection-dropdown{position:absolute;top:calc(100% + .5rem);right:0;z-index:25;display:grid;grid-gap:.5rem;gap:.5rem;width:100%;padding:.76rem;border:1px solid rgba(255,255,255,.1);border-radius:.95rem;background:rgba(8,13,28,.94);box-shadow:0 22px 60px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.05);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.chat-affection-detail{display:grid;grid-gap:.2rem;gap:.2rem}.chat-affection-detail-head{display:flex;justify-content:space-between;gap:.5rem;color:rgba(203,213,225,.72);font-size:.68rem}.chat-affection-detail-head b{font-weight:740}.chat-affection-detail-head i{color:rgba(248,250,252,.82);font-style:normal}.chat-affection-detail-track{display:block;height:.34rem;overflow:hidden;border-radius:999px;background:rgba(148,163,184,.14)}.chat-affection-detail-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,oklch(.606 .25 292.717/.72),oklch(.78 .15 292.717/.88))}.chat-affection-detail[data-tone=tense] .chat-affection-detail-track span{background:linear-gradient(90deg,rgba(251,146,60,.68),rgba(248,113,113,.82))}.chat-affection-detail[data-tone=secret] .chat-affection-detail-track span{background:linear-gradient(90deg,rgba(45,212,191,.62),oklch(.606 .25 292.717/.78))}.chat-affection-note{margin:.1rem 0 0;padding-top:.48rem;border-top:1px solid rgba(255,255,255,.08);color:rgba(203,213,225,.7);font-size:.68rem;line-height:1.55;letter-spacing:-.012em}.mobile-chat-affection{margin-left:auto}.mobile-chat-affection .chat-affection-meter{width:7.2rem;min-width:7.2rem;margin-left:0}.mobile-chat-affection .chat-affection-meter-head{margin-bottom:.2rem;font-size:.58rem}.mobile-chat-affection .chat-affection-label{display:none}.mobile-chat-affection .chat-affection-score strong{font-size:.78rem}@media (max-width:560px){.mobile-chat-affection .chat-affection-meter{width:6.4rem;min-width:6.4rem}.mobile-chat-affection .chat-affection-copy{display:none}.mobile-chat-affection .chat-affection-score{margin-left:0}}.character-album-page{padding-top:clamp(1.4rem,4vw,3.6rem)}.character-album-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:1rem;gap:1rem;align-items:end;padding:clamp(1.2rem,3vw,2rem);border-radius:1.6rem;background-color:rgba(15,23,42,.72);color:white;box-shadow:0 28px 70px rgba(0,0,0,.28)}.character-album-hero h1{margin:.12rem 0 .38rem;font-size:clamp(1.9rem,4vw,3.2rem);line-height:.98}.character-album-hero p:not(.eyebrow){max-width:42rem;margin:0;color:rgba(241,245,249,.78);line-height:1.65}.character-album-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.character-album-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.72rem;gap:.72rem}.chat-recent-export{display:inline-flex;align-items:center;flex:0 0 auto;margin:0;padding:0;color:rgba(203,213,225,.78);font-size:.72rem}.chat-recent-export-button{display:inline-flex;align-items:center;justify-content:center;min-height:1.9rem;padding:.34rem .82rem;border:1px solid oklch(.606 .25 292.717/.32);border-radius:999px;background:oklch(.606 .25 292.717/.16);color:rgba(248,250,252,.92);cursor:pointer;font:inherit;font-size:.72rem;font-weight:820;box-shadow:0 10px 24px rgba(76,29,149,.18);-webkit-backdrop-filter:blur(14px) saturate(1.05);backdrop-filter:blur(14px) saturate(1.05)}.chat-recent-export-button:focus-visible,.chat-recent-export-button:hover:not(:disabled){border-color:oklch(.606 .25 292.717/.52);background:oklch(.606 .25 292.717/.24);color:rgba(248,250,252,.94);outline:none}.chat-recent-export-button:disabled{opacity:.42;cursor:default}.character-album-card{position:relative;min-height:clamp(10rem,20vw,16rem);margin:0;overflow:hidden;border-radius:1.15rem;background:rgba(15,23,42,.5);box-shadow:inset 0 0 0 1px rgba(255,255,255,.07),0 18px 48px rgba(15,23,42,.16)}.character-album-card img{object-fit:cover}.character-album-card figcaption{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;gap:.5rem;padding:1.2rem .82rem .72rem;background:linear-gradient(180deg,rgba(2,6,23,0),rgba(2,6,23,.82));color:rgba(248,250,252,.94);font-size:.72rem}.character-album-card figcaption span{color:rgba(226,232,240,.62)}.character-album-card figcaption strong{font-size:.78rem}@media (max-width:920px){.character-album-hero{grid-template-columns:1fr;align-items:start}.character-album-actions{justify-content:flex-start}.character-album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.character-album-grid{gap:.5rem}.character-album-card{min-height:12rem;border-radius:.9rem}}.visual-stage-motion .visual-stage-backdrop{transform:translate3d(var(--visual-backdrop-x,0),var(--visual-backdrop-y,0),0) scale(1.22);transition:transform 90ms linear;will-change:transform}.visual-stage-motion .visual-stage-bg{transform:translate3d(var(--visual-bg-x,0),var(--visual-bg-y,0),0) scale(1.1);transition:transform 90ms linear,filter .6s ease;will-change:transform,filter;-webkit-backface-visibility:hidden;backface-visibility:hidden}.visual-stage-motion .visual-stage-character{transform:perspective(900px) rotateX(var(--visual-tilt-x,0deg)) rotateY(var(--visual-tilt-y,0deg)) translate3d(var(--visual-char-x,0),var(--visual-char-y,0),0);transform-style:preserve-3d;transition:transform 90ms linear,opacity .5s ease,filter .5s ease;will-change:transform}.visual-stage-motion .visual-stage-character img{filter:saturate(.94) contrast(1.02) brightness(1.02) drop-shadow(0 0 30px rgba(0,0,0,.5)) drop-shadow(0 -4px 20px rgba(255,255,255,.08))}.chat-transcript-panel .bubble.character,.chat-transcript-panel .bubble.npc,.chat-transcript-panel .typing-bubble{justify-self:start;text-align:left}.chat-transcript-panel .bubble.reader{justify-self:end;border-top-right-radius:0;text-align:left}.chat-transcript-panel .bubble.narration,.chat-transcript-panel .bubble.system,.chat-transcript-panel .bubble.thought{justify-self:center;width:min(92%,34rem)}@media (min-width:921px){.chat-page.shell{width:min(1360px,calc(100vw - 1.5rem))}}@media (max-width:920px){.visual-stage-motion .visual-stage-backdrop{transform:scale(1.22)}.visual-stage-motion .visual-stage-bg{transform:scale(1.08);transition:filter .5s ease}.visual-stage-motion .visual-stage-character{transform:none;transition:opacity .5s ease,filter .5s ease}}@media (max-width:760px){.chat-page.shell{width:100%;margin:0;padding:0}.chat-transcript-panel .chat-log{padding-left:0;padding-right:0}.chat-transcript-panel .chat-message-form,.chat-transcript-panel .chat-quick-replies{margin-left:0;margin-right:0}.chat-transcript-panel .chat-quick-replies{flex-direction:column;flex-wrap:nowrap;gap:.42rem;overflow:visible;padding:.12rem max(.5rem,env(safe-area-inset-right)) .18rem max(.5rem,env(safe-area-inset-left))}.chat-transcript-panel .chat-quick-replies button{display:flex;align-items:center;width:100%;min-height:2.5rem;justify-content:flex-start;border-color:oklch(.606 .25 292.717/.24);border-radius:.88rem;background:linear-gradient(135deg,oklch(.606 .25 292.717/.16),oklch(.606 .25 292.717/.13)),rgba(15,23,42,.5);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 24px rgba(0,0,0,.12);color:rgba(239,246,255,.94);text-align:left;white-space:normal}.chat-transcript-panel .chat-message-form{padding-left:max(.5rem,env(safe-area-inset-left));padding-right:max(.5rem,env(safe-area-inset-right))}}@media (prefers-reduced-motion:reduce){.visual-stage-motion .visual-stage-backdrop{transform:scale(1.22)}.visual-stage-motion .visual-stage-bg{transform:scale(1.1)}.visual-stage-motion .visual-stage-character{transform:none}}.chat-transcript-panel .bubble-row.character,.chat-transcript-panel .bubble-row.npc,.chat-transcript-panel .typing-row{display:flex;align-items:flex-start;justify-self:start;width:min(88%,36rem);gap:.52rem;text-align:left}.chat-transcript-panel .bubble-row .bubble{max-width:100%;margin:0}.chat-transcript-panel .bubble-avatar{display:grid;flex:0 0 auto;width:2.28rem;height:2.28rem;place-items:center;overflow:hidden;border:1px solid oklch(.606 .25 292.717/.22);border-radius:999px;background:linear-gradient(135deg,oklch(.606 .25 292.717/.34),rgba(15,23,42,.72));color:rgba(226,232,240,.92);font-size:.82rem;font-weight:860;box-shadow:0 10px 24px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.08)}.chat-transcript-panel .bubble-avatar img{width:100%;height:100%;object-fit:cover}.chat-transcript-panel .bubble.character,.chat-transcript-panel .bubble.npc,.chat-transcript-panel .typing-bubble{border-color:rgba(255,255,255,.11);border-top-left-radius:0;background:rgba(63,63,70,.48);color:rgba(248,250,252,.94)}.chat-transcript-panel .bubble.reader{border-color:oklch(.606 .25 292.717/.42);background:oklch(.606 .25 292.717/.88);color:var(--accent-contrast)}.chat-transcript-panel .bubble.character .bubble-speaker,.chat-transcript-panel .bubble.npc .bubble-speaker,.chat-transcript-panel .typing-bubble .bubble-speaker{margin-bottom:.28rem;color:rgba(228,228,231,.82);font-size:.72rem;letter-spacing:-.01em}.chat-transcript-panel .bubble-text{display:block}.chat-transcript-panel .bubble.narration,.chat-transcript-panel .bubble.system,.chat-transcript-panel .bubble.thought{justify-self:start;width:min(100%,36rem);max-width:min(100%,36rem);padding:.18rem 0;border:0;background:transparent;color:rgba(203,213,225,.68);text-align:left;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}@media (max-width:760px){.chat-transcript-panel .bubble-row.character,.chat-transcript-panel .bubble-row.npc,.chat-transcript-panel .typing-row{width:min(94%,34rem);gap:.46rem;padding-left:.38rem}.chat-transcript-panel .bubble-avatar{width:2.02rem;height:2.02rem}.chat-transcript-panel .bubble.narration,.chat-transcript-panel .bubble.system,.chat-transcript-panel .bubble.thought{width:calc(100% - .76rem);max-width:calc(100% - .76rem);margin-left:.38rem}}.chat-transcript-panel .bubble-stack{display:grid;min-width:0;grid-gap:.34rem;gap:.34rem}.chat-transcript-panel .chat-log{display:grid;flex:1 1;grid-auto-rows:max-content;min-block-size:0;max-block-size:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;align-items:start;align-content:start;grid-gap:1.02rem;gap:1.02rem;scrollbar-gutter:stable}.chat-transcript-panel .chat-log>.bubble,.chat-transcript-panel .chat-log>.bubble-row,.chat-transcript-panel .chat-log>.typing-row{align-self:start;margin-block:0}.chat-transcript-panel .bubble-speaker-outside{display:block;margin:0 0 0 .12rem;color:rgba(228,228,231,.72);font-size:.68rem;font-weight:760;line-height:1.1;letter-spacing:-.01em}.chat-transcript-panel .bubble.character .bubble-speaker,.chat-transcript-panel .bubble.npc .bubble-speaker,.chat-transcript-panel .typing-bubble .bubble-speaker{display:none}.chat-transcript-panel .bubble-row.character,.chat-transcript-panel .bubble-row.npc,.chat-transcript-panel .typing-row{min-height:4.05rem}.chat-transcript-panel .bubble.narration,.chat-transcript-panel .bubble.system,.chat-transcript-panel .bubble.thought{box-sizing:border-box;display:block;height:auto;min-height:3.35rem;overflow:visible;padding:.52rem 0 .9rem;line-height:1.9;letter-spacing:-.012em;white-space:normal;overflow-wrap:break-word;word-break:keep-all}.chat-transcript-panel .bubble.narration .bubble-text,.chat-transcript-panel .bubble.system .bubble-text,.chat-transcript-panel .bubble.thought .bubble-text,.chat-transcript-panel .bubble.world-event .bubble-text{display:block;max-width:100%;line-height:inherit;white-space:inherit;overflow-wrap:inherit;word-break:inherit}.chat-transcript-panel .bubble.system.chat-start-waiting{justify-self:center;width:min(100%,32rem);min-height:auto;padding:.72rem 1rem;border:1px solid oklch(.606 .25 292.717/.16);border-radius:999px;background:linear-gradient(90deg,transparent,oklch(.606 .25 292.717/.08),transparent);color:rgba(237,233,254,.78);font-size:.82rem;font-weight:720;line-height:1.55;text-align:center}.chat-transcript-panel .chat-error-callout{display:grid;grid-gap:.64rem;gap:.64rem}.chat-transcript-panel .chat-error-callout p{margin:0}.chat-transcript-panel .chat-error-callout a{justify-self:start;padding:.48rem .72rem;border-radius:999px;background:oklch(.606 .25 292.717/.18);color:rgba(237,233,254,.94);font-size:.8rem;font-weight:850;text-decoration:none}.chat-transcript-panel .bubble.narration+.bubble-row.character,.chat-transcript-panel .bubble.narration+.bubble-row.npc,.chat-transcript-panel .bubble.thought+.bubble-row.character,.chat-transcript-panel .bubble.thought+.bubble-row.npc{margin-top:.86rem}.chat-transcript-panel .bubble-row.character+.bubble.narration,.chat-transcript-panel .bubble-row.character+.bubble.world-event,.chat-transcript-panel .bubble-row.npc+.bubble.narration,.chat-transcript-panel .bubble-row.npc+.bubble.world-event{margin-top:.54rem}.chat-transcript-panel .bubble.narration+.bubble.narration,.chat-transcript-panel .bubble.narration+.bubble.thought,.chat-transcript-panel .bubble.system+.bubble.system,.chat-transcript-panel .bubble.thought+.bubble.narration,.chat-transcript-panel .bubble.thought+.bubble.thought{min-height:2.6rem;margin-top:.08rem;padding-top:.3rem;padding-bottom:.48rem;line-height:1.72}@media (max-width:760px){.chat-transcript-panel .bubble,.chat-transcript-panel .typing-bubble{font-size:.98rem;line-height:1.62}.chat-transcript-panel .bubble-speaker-outside{margin-bottom:.08rem;font-size:.72rem}.chat-transcript-panel .bubble-row.character,.chat-transcript-panel .bubble-row.npc,.chat-transcript-panel .typing-row{min-height:3.72rem}.chat-transcript-panel .bubble.narration,.chat-transcript-panel .bubble.system,.chat-transcript-panel .bubble.thought{min-height:3.05rem;font-size:.96rem;line-height:1.9}}.chat-transcript-panel .chat-message-form .chat-assistant-trigger,.chat-transcript-panel .chat-message-form .chat-send-button.button.primary{box-sizing:border-box;inline-size:2rem;block-size:2rem;min-inline-size:2rem;min-block-size:2rem;max-inline-size:2rem;max-block-size:2rem;aspect-ratio:1/1;flex:0 0 2rem;padding:0;border-radius:50%;line-height:1}.chat-transcript-panel .chat-message-form .chat-send-button.button.primary{border:1px solid oklch(.606 .25 292.717/.24);background:oklch(.606 .25 292.717/.74)}.chat-transcript-panel .chat-message-form .chat-send-button.button.primary svg{inline-size:.94rem;block-size:.94rem;flex:0 0 auto;transform:translateX(-.75px)}@media (max-width:560px){.chat-transcript-panel .chat-composer-dock{padding:.48rem max(.42rem,env(safe-area-inset-right)) max(.48rem,env(safe-area-inset-bottom)) max(.42rem,env(safe-area-inset-left))}.chat-transcript-panel .chat-message-form{grid-template-columns:2rem minmax(0,1fr) 2rem;gap:.38rem;align-items:end;padding:.34rem;border-radius:1.05rem}.chat-transcript-panel .chat-message-form textarea{min-height:2rem;padding:.35rem .18rem;font-size:16px;line-height:1.42}.chat-transcript-panel .chat-message-form .chat-assistant-menu{inline-size:2rem;flex:0 0 2rem}.chat-transcript-panel .chat-message-form .chat-assistant-popover{left:-.22rem;width:min(20rem,calc(100vw - .9rem));z-index:130}}.chat-transcript-panel .bubble.world-event{display:flex;align-items:flex-start;justify-self:start;gap:.46rem;width:min(100%,36rem);max-width:min(100%,36rem);min-height:3.4rem;padding:.66rem 0 .72rem;border:0;background:transparent;color:rgba(203,213,225,.72);line-height:1.78;letter-spacing:-.012em;text-align:left;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.chat-transcript-panel .bubble-event-icon{display:inline-grid;flex:0 0 auto;width:1.1rem;height:1.1rem;margin-top:.24rem;place-items:center;border-radius:999px;background:oklch(.606 .25 292.717/.12);color:oklch(.84 .12 292.717);font-size:.62rem;line-height:1}.chat-transcript-panel .bubble.narration+.bubble.world-event,.chat-transcript-panel .bubble.system+.bubble.world-event{min-height:3.2rem;margin-top:.54rem;padding-top:.62rem;padding-bottom:.62rem;line-height:1.78}.chat-transcript-panel .bubble.world-event+.bubble.narration{min-height:3.55rem;margin-top:.62rem;padding-top:.72rem}.chat-transcript-panel .bubble.world-event+.bubble.world-event{min-height:2.72rem;margin-top:.08rem;padding-top:.32rem;padding-bottom:.48rem;line-height:1.72}.chat-transcript-panel .bubble-row.npc .bubble-avatar{border-color:rgba(45,212,191,.24);background:linear-gradient(135deg,rgba(45,212,191,.18),rgba(15,23,42,.72));color:rgba(204,251,241,.94)}.chat-transcript-panel .bubble.npc{border-color:rgba(45,212,191,.13);background:linear-gradient(135deg,rgba(63,63,70,.46),rgba(20,83,79,.18))}@media (max-width:760px){.chat-transcript-panel .bubble.world-event{width:calc(100% - .76rem);max-width:calc(100% - .76rem);min-height:2.65rem;margin-left:.38rem;line-height:1.72}}.chat-transcript-panel .chat-affection-delta{margin-left:.18rem;color:oklch(.84 .12 292.717);font-style:normal;font-weight:780}.store-page{width:min(42rem,calc(100vw - 2rem));padding-top:clamp(1.2rem,5vw,2.4rem);padding-bottom:calc(7rem + env(safe-area-inset-bottom))}.paid-credit-store{display:grid;grid-gap:1rem;gap:1rem}.paid-credit-title-block{display:grid;grid-gap:.4rem;gap:.4rem;padding:.1rem .1rem .25rem}.paid-credit-title-block h1{margin:0;color:rgba(248,250,252,.96);font-size:clamp(1.55rem,6vw,2.1rem);line-height:1.08;letter-spacing:-.045em}.paid-credit-title-block p:not(.eyebrow){margin:0;color:rgba(203,213,225,.7);font-size:.92rem;line-height:1.62}.paid-credit-balance-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:5.4rem;padding:1rem 1.08rem;border:1px solid rgba(255,255,255,.095);border-radius:1.25rem;background:radial-gradient(circle at 88% 18%,oklch(.606 .25 292.717/.22),transparent 11rem),linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.045));box-shadow:0 16px 50px rgba(0,0,0,.22)}.paid-credit-balance-card div{display:grid;min-width:0;grid-gap:.22rem;gap:.22rem}.paid-credit-balance-card span{color:rgba(203,213,225,.64);font-size:.78rem;font-weight:820}.paid-credit-balance-card strong{color:#fff;font-size:clamp(1.4rem,6vw,1.85rem);line-height:1.05;letter-spacing:-.04em}.paid-credit-balance-card i{display:grid;place-items:center;width:2.85rem;height:2.85rem;flex:0 0 auto;border-radius:1rem;background:oklch(.606 .25 292.717/.18);color:rgba(237,233,254,.94);font-style:normal;box-shadow:inset 0 0 0 1px oklch(.606 .25 292.717/.22)}.paid-credit-package-section{display:grid;grid-gap:.78rem;gap:.78rem;margin-top:.2rem}.paid-credit-package-section h2{margin:0;color:rgba(248,250,252,.94);font-size:1.05rem;font-weight:880;letter-spacing:-.025em}.paid-credit-products{display:flex;flex-direction:column;gap:.68rem}.paid-credit-product{position:relative;display:flex;align-items:center;justify-content:space-between;gap:.85rem;width:100%;min-height:4.85rem;padding:.85rem .95rem;border:1px solid rgba(255,255,255,.095);border-radius:1.18rem;background:linear-gradient(180deg,rgba(255,255,255,.073),rgba(255,255,255,.045));color:inherit;font:inherit;text-align:left;cursor:pointer;box-shadow:0 10px 34px rgba(0,0,0,.18);transition:transform .16s var(--ease),border-color .16s var(--ease),background .16s var(--ease),opacity .16s var(--ease)}.paid-credit-product:focus-visible,.paid-credit-product:hover:not(:disabled){transform:translateY(-1px);border-color:oklch(.606 .25 292.717/.42);background:linear-gradient(180deg,oklch(.606 .25 292.717/.14),rgba(255,255,255,.052))}.paid-credit-product.is-selected{border-color:oklch(.606 .25 292.717/.5);box-shadow:0 14px 44px rgba(0,0,0,.24),inset 0 0 0 1px oklch(.606 .25 292.717/.16)}.paid-credit-product:disabled{cursor:not-allowed;opacity:.62}.paid-credit-product-left{display:flex;align-items:center;min-width:0;gap:.78rem}.paid-credit-product-icon{display:grid;place-items:center;width:2.45rem;height:2.45rem;flex:0 0 auto;border-radius:.9rem;background:rgba(139,92,246,.15);color:rgba(196,181,253,.98);box-shadow:inset 0 0 0 1px rgba(167,139,250,.16)}.paid-credit-product-copy{display:grid;min-width:0;grid-gap:.26rem;gap:.26rem}.paid-credit-product-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:.34rem}.paid-credit-product-title-row strong{color:rgba(248,250,252,.96);font-size:1.04rem;line-height:1.15;letter-spacing:-.035em}.paid-credit-product-title-row b,.paid-credit-product-title-row em{display:inline-flex;align-items:center;min-height:1.3rem;padding:0 .42rem;border-radius:999px;font-size:.68rem;font-style:normal;font-weight:860}.paid-credit-product-title-row em{background:rgba(34,197,94,.14);color:rgba(134,239,172,.95)}.paid-credit-product-title-row b{background:oklch(.606 .25 292.717/.2);color:rgba(237,233,254,.96)}.paid-credit-product-copy small{color:rgba(203,213,225,.58);font-size:.78rem;font-weight:680;line-height:1.35}.paid-credit-product-price{flex:0 0 auto;color:rgba(196,181,253,.98);font-size:1rem;font-weight:900;letter-spacing:-.025em;white-space:nowrap}.paid-credit-login{width:100%}.paid-credit-checkout-panel{position:-webkit-sticky;position:sticky;bottom:calc(4.85rem + env(safe-area-inset-bottom));z-index:3;display:flex;align-items:center;justify-content:space-between;gap:.9rem;margin-top:.2rem;padding:.82rem;border:1px solid oklch(.606 .25 292.717/.22);border-radius:1.16rem;background:linear-gradient(180deg,rgba(21,18,32,.94),rgba(12,10,20,.92)),oklch(.606 .25 292.717/.12);box-shadow:0 18px 48px rgba(0,0,0,.34);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.paid-credit-checkout-panel div{display:grid;min-width:0;grid-gap:.16rem;gap:.16rem}.paid-credit-checkout-panel span{color:rgba(203,213,225,.62);font-size:.74rem;font-weight:820}.paid-credit-checkout-panel strong{color:rgba(248,250,252,.96);font-size:.96rem;line-height:1.2;letter-spacing:-.03em}.paid-credit-checkout-button{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-width:8.8rem;min-height:3rem;padding:0 1.1rem;border:0;border-radius:.96rem;background:oklch(.606 .25 292.717);color:white;font:inherit;font-size:.92rem;font-weight:920;letter-spacing:-.02em;cursor:pointer;box-shadow:0 14px 34px oklch(.606 .25 292.717/.28);transition:transform .16s var(--ease),opacity .16s var(--ease),box-shadow .16s var(--ease)}.paid-credit-checkout-button:focus-visible,.paid-credit-checkout-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 18px 42px oklch(.606 .25 292.717/.36)}.paid-credit-checkout-button:disabled{cursor:not-allowed;opacity:.56}.paid-credit-low-balance{margin:0;padding:.78rem .88rem;border:1px solid oklch(.606 .25 292.717/.18);border-radius:.95rem;background:oklch(.606 .25 292.717/.11);color:rgba(237,233,254,.9);font-size:.86rem;line-height:1.55}.paid-credit-flow-steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.5rem;gap:.5rem;margin:0;padding:0;list-style:none}.paid-credit-flow-steps li{padding:.62rem .7rem;border:1px solid rgba(255,255,255,.08);border-radius:.9rem;background:rgba(255,255,255,.045);color:rgba(226,232,240,.74);font-size:.78rem;font-weight:760;text-align:center}.paid-credit-message,.paid-credit-note,.paid-credit-return{margin:0;padding:.86rem .92rem;border-radius:1rem;background:rgba(255,255,255,.058);color:rgba(226,232,240,.82);font-size:.88rem;line-height:1.6}.paid-credit-message,.paid-credit-return{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.paid-credit-message p{margin:0}.paid-credit-message a,.paid-credit-return a{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-height:2.1rem;padding:0 .82rem;border-radius:999px;background:oklch(.606 .25 292.717/.88);color:white;font-size:.78rem;font-weight:840;text-decoration:none}.paid-credit-legal{display:grid;grid-gap:.85rem;gap:.85rem;color:rgba(226,232,240,.72);font-size:.86rem}.paid-credit-legal p{margin:0;line-height:1.7}.paid-credit-legal-links{display:flex;flex-wrap:wrap;gap:.5rem .75rem;font-size:.86rem}.paid-credit-legal-links a{color:#a78bfa}.paid-credit-history ul{display:grid;grid-gap:.55rem;gap:.55rem;margin:1rem 0 0;padding:0;list-style:none}.paid-credit-history li{display:grid;grid-template-columns:1fr auto auto;align-items:center;grid-gap:.8rem;gap:.8rem;padding:.72rem 0;border-top:1px solid rgba(255,255,255,.08)}.paid-credit-history small{color:rgba(226,232,240,.56)}@media (max-width:620px){.store-page{width:min(100% - 1rem,42rem);padding-top:1rem}.paid-credit-store{gap:.82rem}.paid-credit-balance-card{min-height:5rem;padding:.92rem}.paid-credit-product{min-height:4.65rem;padding:.78rem .8rem;border-radius:1.05rem}.paid-credit-product-left{gap:.64rem}.paid-credit-product-icon{width:2.28rem;height:2.28rem;border-radius:.82rem}.paid-credit-product-title-row strong{font-size:1rem}.paid-credit-product-price{font-size:.95rem}.paid-credit-checkout-panel{bottom:calc(4.45rem + env(safe-area-inset-bottom));align-items:stretch;flex-direction:column;padding:.76rem}.paid-credit-checkout-button{width:100%;min-height:3.05rem}.paid-credit-message,.paid-credit-return{align-items:stretch;flex-direction:column}.paid-credit-message a,.paid-credit-return a{width:100%}}.chat-transcript-panel .chat-message-form[data-locked=true]{border-color:oklch(.606 .25 292.717/.24);background:rgba(18,14,35,.82)}.chat-composer-lock{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:.78rem;padding:.66rem .72rem;border:1px solid oklch(.606 .25 292.717/.16);border-radius:.82rem;background:oklch(.606 .25 292.717/.1);color:rgba(241,245,249,.9)}.chat-composer-lock strong{display:block;margin-bottom:.16rem;font-size:.78rem;font-weight:850}.chat-composer-lock p{margin:0;color:rgba(203,213,225,.76);font-size:.76rem;line-height:1.5}.chat-composer-lock a{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-height:2rem;padding:0 .78rem;border-radius:999px;background:oklch(.606 .25 292.717/.88);color:white;font-size:.76rem;font-weight:820;text-decoration:none;box-shadow:0 10px 24px oklch(.606 .25 292.717/.16)}.chat-composer-lock a:hover{background:oklch(.606 .25 292.717/.98)}.chat-transcript-panel .chat-message-form[data-locked=true] .chat-assistant-trigger:disabled,.chat-transcript-panel .chat-message-form[data-locked=true] textarea:disabled{cursor:not-allowed;opacity:.5}@media (max-width:620px){.chat-composer-lock{align-items:stretch;flex-direction:column;gap:.58rem}.chat-composer-lock a{width:100%}}.paid-credit-beta-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.72rem;gap:.72rem}.paid-credit-beta-benefit{display:grid;min-height:7.2rem;grid-gap:.36rem;gap:.36rem;padding:.92rem;border:1px solid rgba(255,255,255,.085);border-radius:1.08rem;background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.038)),rgba(3,7,18,.3)}.paid-credit-beta-benefit.highlight{display:flex;align-items:flex-start;justify-content:space-between;gap:.72rem;border-color:oklch(.606 .25 292.717/.25);background:radial-gradient(circle at 100% 0,oklch(.606 .25 292.717/.24),transparent 8.5rem),linear-gradient(180deg,rgba(255,255,255,.076),rgba(255,255,255,.044))}.paid-credit-beta-benefit-kicker{color:rgba(196,181,253,.88);font-size:.74rem;font-weight:880;letter-spacing:-.01em}.paid-credit-beta-benefit strong{display:block;color:rgba(248,250,252,.97);font-size:clamp(1.08rem,4vw,1.36rem);line-height:1.1;letter-spacing:-.045em}.paid-credit-beta-benefit small{display:block;margin-top:.22rem;color:rgba(203,213,225,.64);font-size:.76rem;font-weight:650;line-height:1.45}.paid-credit-beta-benefit-action{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-height:2.18rem;padding:0 .72rem;border:1px solid oklch(.606 .25 292.717/.28);border-radius:999px;background:rgba(3,7,18,.32);color:rgba(237,233,254,.96);font:inherit;font-size:.74rem;font-weight:860;text-decoration:none;cursor:pointer}.paid-credit-coupon{display:grid;grid-gap:.86rem;gap:.86rem;border-color:oklch(.606 .25 292.717/.14);background:radial-gradient(circle at 92% 0,oklch(.606 .25 292.717/.14),transparent 9rem),rgba(255,255,255,.052)}.paid-credit-coupon-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.paid-credit-coupon h2,.paid-credit-coupon p{margin:0}.paid-credit-coupon-kicker{color:rgba(196,181,253,.76);font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.paid-credit-coupon h2{margin-top:.16rem;color:rgba(248,250,252,.94);font-size:1rem;font-weight:880;letter-spacing:-.025em}.paid-credit-coupon p{color:rgba(203,213,225,.68);font-size:.84rem;line-height:1.55}.paid-credit-coupon h2+p{margin-top:.28rem}.paid-credit-coupon-chip{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-height:2.16rem;padding:0 .72rem;border:1px solid oklch(.606 .25 292.717/.26);border-radius:999px;background:oklch(.606 .25 292.717/.14);color:rgba(237,233,254,.95);font:inherit;font-size:.72rem;font-weight:920;letter-spacing:.045em;cursor:pointer}.paid-credit-coupon-chip:disabled{cursor:not-allowed;opacity:.56}.paid-credit-coupon-form{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.54rem;gap:.54rem}.paid-credit-coupon-form input{min-width:0;min-height:2.8rem;border:1px solid rgba(255,255,255,.105);border-radius:.92rem;background:rgba(3,7,18,.42);color:rgba(248,250,252,.94);padding:0 .86rem;font:inherit;font-size:.9rem;font-weight:780;letter-spacing:.035em;outline:none;text-transform:uppercase}.paid-credit-coupon-form input:focus{border-color:oklch(.606 .25 292.717/.48);box-shadow:0 0 0 3px oklch(.606 .25 292.717/.13)}.paid-credit-coupon-form button{min-height:2.8rem;border:0;border-radius:.92rem;background:rgba(167,139,250,.18);color:rgba(237,233,254,.96);padding:0 .92rem;font:inherit;font-size:.84rem;font-weight:880;cursor:pointer}.paid-credit-coupon-form button:disabled,.paid-credit-coupon-form input:disabled{cursor:not-allowed;opacity:.55}.paid-credit-coupon-login{display:inline-flex;align-items:center;justify-content:center;min-height:2.9rem;border-radius:.95rem;background:oklch(.606 .25 292.717);color:white;font-size:.9rem;font-weight:900;text-decoration:none;box-shadow:0 14px 34px oklch(.606 .25 292.717/.24)}@media (max-width:620px){.paid-credit-beta-benefits{grid-template-columns:1fr}.paid-credit-beta-benefit{min-height:6.1rem}.paid-credit-coupon-head{align-items:stretch;flex-direction:column;gap:.65rem}.paid-credit-coupon-chip{width:-moz-fit-content;width:fit-content}.paid-credit-coupon-form{grid-template-columns:1fr}.paid-credit-coupon-form button{width:100%}}.paid-credit-hero{overflow:hidden;position:relative;padding:1.1rem;border:1px solid oklch(.606 .25 292.717/.18);border-radius:1.35rem;background:radial-gradient(circle at 88% 10%,rgba(168,85,247,.28),transparent 12rem),radial-gradient(circle at 10% 96%,rgba(34,197,94,.13),transparent 11rem),linear-gradient(180deg,rgba(255,255,255,.086),rgba(255,255,255,.04));box-shadow:0 18px 58px rgba(0,0,0,.24)}.paid-credit-hero h1{max-width:12em;font-size:clamp(1.72rem,7vw,2.52rem)}.paid-credit-hero p:not(.eyebrow){max-width:34rem}.paid-credit-hero-metrics{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.55rem;gap:.55rem;margin-top:.5rem}.paid-credit-hero-metrics span{display:grid;grid-gap:.16rem;gap:.16rem;min-height:4rem;padding:.72rem;border:1px solid rgba(255,255,255,.085);border-radius:.95rem;background:rgba(8,8,14,.28);color:rgba(203,213,225,.66);font-size:.72rem;font-weight:760}.paid-credit-hero-metrics strong{display:block;color:rgba(248,250,252,.96);font-size:.98rem;line-height:1.15;letter-spacing:-.035em}.paid-credit-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:.85rem}.paid-credit-section-head div{display:grid;grid-gap:.16rem;gap:.16rem}.paid-credit-section-kicker{margin:0;color:rgba(196,181,253,.72);font-size:.68rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.paid-credit-section-head>span{color:rgba(134,239,172,.88);font-size:.76rem;font-weight:840;text-align:right}.paid-credit-subscription-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.72rem;gap:.72rem}.paid-credit-product.is-subscription{min-height:12.4rem;align-items:stretch;flex-direction:column;padding:.92rem;background:radial-gradient(circle at 100% 0,oklch(.606 .25 292.717/.16),transparent 8rem),linear-gradient(180deg,rgba(255,255,255,.082),rgba(255,255,255,.043))}.paid-credit-product.is-subscription.is-featured{border-color:rgba(134,239,172,.48);background:radial-gradient(circle at 100% 0,rgba(34,197,94,.18),transparent 8rem),radial-gradient(circle at 0 100%,oklch(.606 .25 292.717/.18),transparent 10rem),linear-gradient(180deg,rgba(255,255,255,.102),rgba(255,255,255,.05));box-shadow:0 18px 52px rgba(0,0,0,.27),inset 0 0 0 1px rgba(134,239,172,.12)}.paid-credit-product.is-subscription .paid-credit-product-left{align-items:flex-start}.paid-credit-product.is-subscription .paid-credit-product-icon{background:rgba(34,197,94,.14);color:rgba(187,247,208,.96);box-shadow:inset 0 0 0 1px rgba(134,239,172,.18)}.paid-credit-product.is-subscription .paid-credit-product-price{display:grid;grid-gap:.1rem;gap:.1rem;align-self:flex-start;margin-top:auto;color:rgba(248,250,252,.98);font-size:1.22rem}.paid-credit-product-price strong{font:inherit}.paid-credit-product-price small{color:rgba(203,213,225,.56);font-size:.72rem;font-weight:780}.paid-credit-unit-price{color:rgba(134,239,172,.86)!important}.paid-credit-featured-ribbon{position:absolute;top:.72rem;right:.72rem;padding:.28rem .5rem;border-radius:999px;background:rgba(34,197,94,.18);color:rgba(187,247,208,.98);font-size:.66rem;font-weight:920;box-shadow:inset 0 0 0 1px rgba(134,239,172,.18)}.paid-credit-subscription-nudge{margin:-.15rem 0 0;padding:.74rem .86rem;border:1px solid rgba(134,239,172,.16);border-radius:.95rem;background:rgba(34,197,94,.08);color:rgba(220,252,231,.86);font-size:.82rem;font-weight:720;line-height:1.5}@media (max-width:720px){.paid-credit-hero-metrics,.paid-credit-subscription-grid{grid-template-columns:1fr}.paid-credit-product.is-subscription{min-height:0}.paid-credit-section-head{align-items:start;flex-direction:column;gap:.35rem}.paid-credit-section-head>span{text-align:left}}.auth-page-scene{position:relative;min-height:calc(100vh - 5rem);overflow:hidden;isolation:isolate}.auth-page-bg{z-index:0;overflow:hidden;pointer-events:none;background:#05050f}.auth-page-bg,.auth-page-dust,.auth-page-nebula{position:absolute;inset:0}.auth-page-nebula{background:radial-gradient(ellipse 40% 35% at 30% 30%,rgba(88,28,135,.16),transparent 70%),radial-gradient(ellipse 35% 40% at 70% 60%,rgba(30,58,138,.13),transparent 70%),radial-gradient(ellipse 25% 25% at 50% 80%,rgba(14,116,144,.08),transparent 70%);animation:auth-nebula-drift 18s ease-in-out infinite alternate}.auth-page-dust{opacity:.34;background:linear-gradient(135deg,transparent 18%,rgba(139,92,246,.05) 35%,rgba(59,130,246,.035) 50%,rgba(139,92,246,.05) 65%,transparent 82%),radial-gradient(ellipse at center,transparent 30%,rgba(0,0,0,.72) 100%)}.auth-page-silhouette{position:absolute;bottom:-2rem;width:auto;height:min(72vh,680px);object-fit:contain;opacity:.065;filter:brightness(0) blur(.2px)}.auth-page-silhouette.left{left:-2rem}.auth-page-silhouette.right{right:-1rem;transform:scaleX(-1)}.auth-page-shell{position:relative;z-index:1;min-height:calc(100vh - 5rem);padding-block:clamp(2rem,8vh,5rem)}.auth-page-card{position:relative;border-color:rgba(255,255,255,.12);background:rgba(8,10,20,.72);box-shadow:0 28px 90px rgba(0,0,0,.52),inset 0 0 0 1px rgba(255,255,255,.035);-webkit-backdrop-filter:blur(24px) saturate(1.12);backdrop-filter:blur(24px) saturate(1.12)}.auth-page-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at 50% 0,oklch(.606 .25 292.717/.09),transparent 14rem);pointer-events:none}@keyframes auth-nebula-drift{0%{transform:translate3d(-1.5%,-1%,0) scale(1)}to{transform:translate3d(1.5%,1%,0) scale(1.04)}}@media (max-width:920px){.auth-page-silhouette{height:min(58vh,520px);opacity:.045}}@media (prefers-reduced-motion:reduce){.auth-page-nebula{animation:none}}.chat-room{position:fixed;inset:0;z-index:80;display:flex;flex-direction:column;min-height:100dvh;max-height:100dvh;overflow:hidden;background:#050610;color:var(--text)}.chat-room-backdrop{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}.chat-room-backdrop-img{object-fit:cover;filter:brightness(.4) saturate(.88);transform:scale(1.04)}.chat-room-scrim{position:absolute;inset:0;background:radial-gradient(ellipse 90% 70% at 50% 18%,rgba(3,4,10,.42),transparent 62%),linear-gradient(180deg,rgba(3,4,10,.82),rgba(3,4,10,.5) 28%,rgba(3,4,10,.88) 78%,rgba(3,4,10,.96))}.chat-room-topbar{position:relative;z-index:4;display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);align-items:center;grid-gap:1.1rem;gap:1.1rem;padding-block:calc(.65rem + env(safe-area-inset-top)) .65rem;padding-inline:calc(3.4rem + env(safe-area-inset-left)) calc(3.4rem + env(safe-area-inset-right));border-bottom:1px solid rgba(255,255,255,.07);background:linear-gradient(180deg,rgba(5,6,14,.78),rgba(5,6,14,.46) 60%,rgba(5,6,14,0));-webkit-backdrop-filter:blur(14px) saturate(1.05);backdrop-filter:blur(14px) saturate(1.05)}.chat-room-identity{display:flex;align-items:center;gap:.7rem;min-width:0}.chat-room-portrait{display:grid;flex:0 0 auto;width:2.6rem;height:2.6rem;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(15,18,32,.6);box-shadow:0 6px 18px rgba(5,6,14,.45)}.chat-room-portrait img{width:100%;height:100%;object-fit:cover}.chat-room-back{position:absolute;top:calc(.5rem + env(safe-area-inset-top));left:calc(.8rem + env(safe-area-inset-left));z-index:5;display:grid;width:2.25rem;height:2.25rem;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:rgba(255,255,255,.05);color:rgba(248,250,252,.92);font-size:1.3rem;line-height:1;text-decoration:none}.chat-room-back:focus-visible,.chat-room-back:hover{background:rgba(255,255,255,.1);outline:none}.chat-room-reset{position:absolute;top:calc(.5rem + env(safe-area-inset-top));right:calc(3.7rem + env(safe-area-inset-right));z-index:121;display:grid;width:2.25rem;height:2.25rem;padding:0;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:rgba(255,255,255,.05);color:rgba(248,250,252,.92);font:inherit;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}.chat-room-reset:focus-visible,.chat-room-reset:hover{background:rgba(255,255,255,.12);border-color:oklch(.606 .25 292.717/.32);outline:none;transform:translateY(-1px)}.chat-room-reset[disabled]{opacity:.45;cursor:not-allowed;transform:none}.chat-room-reset svg{width:1.05rem;height:1.05rem}.chat-room-title{min-width:0}.chat-room-title strong{display:block;overflow:hidden;color:#fff;font-size:.98rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.chat-room-title span{display:block;margin-top:.1rem;color:rgba(226,232,240,.62);font-size:.74rem;font-weight:700;letter-spacing:.01em}.chat-room-meters{display:flex;flex:1 1 auto;align-items:center;min-width:0}.chat-room-meters .chat-affection-meter{flex:1 1 auto;width:auto;min-width:0}.chat-room-body{position:relative;z-index:3;display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden}.chat-room-body .chat-log{flex:1 1 auto;min-height:0;padding:.85rem clamp(.85rem,3vw,1.6rem) .7rem}.chat-room-body .chat-composer-dock{position:-webkit-sticky;position:sticky;bottom:0;z-index:5;padding:.58rem clamp(.85rem,3vw,1.6rem) calc(.6rem + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(5,6,14,0),rgba(5,6,14,.82) 28%,rgba(5,6,14,.96))}.chat-room .chat-recent-export{position:fixed;right:calc(.85rem + env(safe-area-inset-right));bottom:calc(3.6rem + env(safe-area-inset-bottom));z-index:6}@media (min-width:920px){.chat-room-body .chat-composer-dock,.chat-room-body .chat-log,.chat-room-topbar{padding-left:max(1rem,calc((100% - 780px) / 2));padding-right:max(1rem,calc((100% - 780px) / 2))}}.chat-room-credit{position:fixed;right:calc(.85rem + env(safe-area-inset-right));bottom:calc(.85rem + env(safe-area-inset-bottom));z-index:6;display:inline-flex;align-items:center;gap:.4rem;padding:.46rem .8rem .46rem .68rem;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(15,18,32,.72);color:rgba(248,250,252,.95);font-size:.84rem;font-weight:760;letter-spacing:.01em;text-decoration:none;-webkit-backdrop-filter:blur(14px) saturate(1.05);backdrop-filter:blur(14px) saturate(1.05);box-shadow:0 12px 32px rgba(5,6,14,.45);transition:transform .16s var(--ease),background .16s var(--ease),border-color .16s var(--ease)}.chat-room-credit:focus-visible,.chat-room-credit:hover{background:rgba(24,28,48,.86);border-color:rgba(167,139,250,.55);outline:none;transform:translateY(-1px)}.chat-room-credit-icon{display:inline-flex;width:1.15rem;height:1.15rem;color:oklch(.82 .13 292.717/.95)}.chat-room-credit-icon svg{width:100%;height:100%}.chat-room-credit-amount{display:inline-block;min-width:1.4rem;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chat-room-credit[data-state=summary] .chat-room-credit-amount{color:rgba(248,250,252,.95)}.chat-room-credit[data-state=failed] .chat-room-credit-amount,.chat-room-credit[data-state=unavailable] .chat-room-credit-amount{color:rgba(203,213,225,.72);font-weight:720}.chat-room-loading{align-items:center;justify-content:center}.chat-room-loading-indicator{position:relative;z-index:3;display:inline-flex;align-items:center;gap:.5rem;margin:auto}.chat-room-loading-indicator span[aria-hidden=true]{display:inline-block;width:.55rem;height:.55rem;border-radius:999px;background:rgba(255,255,255,.62);animation:chatRoomDotPulse 1.1s ease-in-out infinite}.chat-room-loading-indicator span[aria-hidden=true]:nth-child(2){animation-delay:.14s}.chat-room-loading-indicator span[aria-hidden=true]:nth-child(3){animation-delay:.28s}@keyframes chatRoomDotPulse{0%,to{opacity:.32;transform:scale(.82)}50%{opacity:1;transform:scale(1.08)}}@media (max-width:920px){.chat-room-meters .chat-relationship-meters,.chat-room-meters .chat-relationship-meters-toggle{font-size:.78rem}}@media (max-width:560px){.chat-room-topbar{gap:.55rem;padding-inline:calc(3rem + env(safe-area-inset-left)) calc(.85rem + env(safe-area-inset-right))}.chat-room-identity{gap:.5rem}.chat-room-portrait{width:2.2rem;height:2.2rem}.chat-room-title strong{font-size:.92rem}.chat-room-title span{font-size:.7rem}.chat-room-body .chat-log{padding-left:.85rem;padding-right:.85rem}.chat-room-body .chat-composer-dock{padding-left:.7rem;padding-right:.7rem}}.scene-choice-bubbles{list-style:none;margin:.15rem 0 .2rem;padding:0;width:100%;animation:scene-choice-bubbles-in .36s ease forwards}.scene-choice-bubbles>li{display:block;text-align:right;margin-top:.4rem}.scene-choice-bubbles>li:first-child{margin-top:0}.scene-choice-bubble{display:inline-block;max-width:78%;padding:.62rem .82rem;border-radius:.9rem .9rem .34rem .9rem;border:1px solid oklch(.606 .25 292.717/.5);background:linear-gradient(135deg,oklch(.606 .25 292.717/.22),oklch(.606 .25 292.717/.1));color:rgba(237,233,254,.96);font-size:.9rem;line-height:1.58;letter-spacing:-.014em;text-align:left;cursor:pointer;white-space:normal;word-break:keep-all;overflow-wrap:normal;transition:background .16s var(--ease,ease),border-color .16s var(--ease,ease),transform .16s var(--ease,ease),box-shadow .16s var(--ease,ease);box-shadow:0 8px 22px rgba(76,29,149,.22)}.scene-choice-bubble:hover:not(:disabled){background:linear-gradient(135deg,oklch(.606 .25 292.717/.34),oklch(.606 .25 292.717/.18));border-color:oklch(.606 .25 292.717/.78);transform:translateY(-1px);box-shadow:0 10px 26px rgba(76,29,149,.34)}.scene-choice-bubble:disabled{opacity:.55;cursor:not-allowed}@keyframes scene-choice-bubbles-in{0%{opacity:0;transform:translateY(.3rem)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.scene-choice-bubbles{animation:none}}@media (max-width:560px){.scene-choice-bubble{max-width:100%;padding:.55rem .78rem;font-size:.86rem}}