html body.companion-ui.front-chat:not(.is-admin-page){--stage-bg:var(--c-canvas);--stage-surface:var(--c-surface);--stage-soft:var(--c-soft);--stage-ink:var(--c-ink);--stage-copy:var(--c-copy);--stage-muted:var(--c-muted);--stage-line:var(--c-line);--stage-accent:var(--c-accent);--stage-accent-hover:var(--c-accent-hover);--stage-accent-soft:var(--c-accent-soft);--stage-on-accent:var(--c-on-accent);--stage-user:var(--c-accent-soft);--stage-user-ink:var(--c-ink);--stage-user-line:color-mix(in srgb,var(--c-accent) 18%,transparent);--stage-rail-bg:var(--c-surface);--stage-glass:color-mix(in srgb,var(--stage-surface) 85%,transparent);--stage-shadow:#0006;--stage-scrollbar:color-mix(in srgb,var(--stage-muted) 45%,transparent);--stage-error-bg:#38252b;--stage-error-line:#63404c;--stage-error-ink:#ffb7b7;--stage-photo-copy:var(--c-copy);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;height:100dvh;min-height:0;color:var(--stage-ink);overflow:hidden;background:var(--stage-bg)!important;padding:0!important}html[data-chat-stage-theme=day] body.companion-ui.front-chat:not(.is-admin-page){--stage-bg:#edf4f6;--stage-surface:#fff;--stage-soft:#f3f6f8;--stage-ink:#293d4c;--stage-copy:#536e7d;--stage-muted:#82929e;--stage-line:#e5edf0;--stage-accent:#5c8b9e;--stage-accent-hover:#4c7587;--stage-accent-soft:#5c8b9e14;--stage-on-accent:#fff;--stage-user:#e6f1f6;--stage-user-ink:#355464;--stage-user-line:#dcecf2;--stage-rail-bg:var(--stage-bg);--stage-glass:#ffffffa3;--stage-shadow:#47616e20;--stage-scrollbar:#b5c9d4;--stage-error-bg:#fff4f1;--stage-error-line:#f0dcd6;--stage-error-ink:#9b7369;--stage-photo-copy:#486270;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.companion-ui.front-chat :is(.companion-header,.companion-sidebar,.companion-mobile-nav,.topbar,.mobile-tabbar){display:none!important}html body.companion-ui.front-chat:not(.is-immersive)>.page{width:100%;max-width:none;overflow:hidden;height:var(--stage-viewport-height,100dvh)!important;min-height:0!important;margin:0!important;padding:0!important}.companion-ui.front-chat .page>.notice{z-index:90;max-width:calc(100% - 32px);position:fixed;top:12px;left:50%;transform:translate(-50%)}.companion-ui.front-chat .chat-stage-app{--stage-rail-width:76px;min-width:0;box-shadow:none;isolation:isolate;background:0 0;border:0;grid-template-rows:minmax(0,1fr);grid-template-areas:"rail stage chat";align-items:stretch;padding:0;overflow:visible;grid-template-columns:var(--stage-rail-width) minmax(0,1fr) minmax(360px,430px)!important;width:100%!important;max-width:1800px!important;height:var(--stage-viewport-height,100%)!important;border-radius:0!important;gap:0!important;min-height:0!important;margin:0 auto!important;display:grid!important}.chat-stage-app>.stage-rail{grid-area:rail}.chat-stage-app>.character-stage{grid-area:stage}.chat-stage-app>.chat-room{grid-area:chat}.chat-stage-app :is(button,a,summary){-webkit-tap-highlight-color:transparent;touch-action:manipulation}.chat-stage-app :is(button,a,summary):focus-visible{outline:2px solid var(--stage-accent);outline-offset:4px}.chat-stage-app [hidden]{display:none!important}.stage-rail{z-index:20;border-right:1px solid var(--stage-line);background:var(--stage-rail-bg);flex-direction:column;align-items:center;gap:48px;padding:28px 10px;display:flex;position:relative}.stage-rail a,.stage-profile-menu>summary{width:46px;min-height:46px;color:var(--stage-muted);cursor:pointer;background:0 0;border:0;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:5px;text-decoration:none;transition:background .18s,color .18s;display:flex}.stage-rail a:hover,.stage-profile-menu>summary:hover{color:var(--stage-ink);background:var(--stage-soft)}.stage-rail .stage-brand{color:var(--stage-on-accent);background:var(--stage-accent);box-shadow:none;border-radius:17px}.stage-rail-links{gap:15px;display:grid}.stage-rail-links span{letter-spacing:.02em;font-size:10px}.stage-rail .stage-rail-account{background:var(--stage-soft);margin-top:auto}.stage-profile-menu>summary{list-style:none}.stage-profile-menu>summary::-webkit-details-marker{display:none}.companion-ui.front-chat .stage-profile-card{z-index:40;background:var(--stage-surface);border:1px solid var(--stage-line);width:290px;max-height:calc(100dvh - 186px);box-shadow:0 18px 60px var(--stage-shadow);color:var(--stage-ink);border-radius:22px;padding:24px;position:absolute;top:154px;left:70px;overflow-y:auto;display:block!important}.companion-ui.front-chat .stage-profile-card .chat-character-info{padding:0}.companion-ui.front-chat .stage-profile-card .chat-character-info>span{color:var(--stage-muted);font-size:12px}.companion-ui.front-chat .stage-profile-card .chat-character-info h1{color:var(--stage-ink);font-size:24px;font-weight:600}.companion-ui.front-chat .stage-profile-card .chat-character-info p{color:var(--stage-copy);font-size:13px}.companion-ui.front-chat .stage-profile-card .tag-row span{background:var(--stage-soft)!important;color:var(--stage-muted)!important}.companion-ui.front-chat .stage-profile-card .voice-card{background:var(--stage-soft);border:1px solid var(--stage-line);box-shadow:none;border-radius:14px;padding:16px}.companion-ui.front-chat .stage-profile-card .voice-card :is(strong,span,small){color:var(--stage-muted)}.companion-ui.front-chat .stage-profile-card .voice-card strong{color:var(--stage-ink)}.companion-ui.front-chat .stage-profile-card .affinity-bar{background:var(--stage-soft)}.companion-ui.front-chat .stage-profile-card .affinity-bar i{background:var(--stage-accent)}.stage-rail .stage-profile-link{border:1px solid var(--stage-line);width:100%;min-height:38px;color:var(--stage-accent);flex-direction:row;gap:10px;margin-top:16px;font-size:12px}.character-stage{background-image:radial-gradient(var(--stage-line) .8px,transparent .8px);background-size:19px 19px;min-width:0;min-height:0;position:relative;overflow:clip}.character-stage:before{content:"";pointer-events:none;background:radial-gradient(ellipse at 46% 36%,var(--stage-soft),transparent 62%),linear-gradient(0deg,var(--stage-bg),transparent 20%);position:absolute;inset:0}.stage-orbit{border:1px solid var(--stage-line);pointer-events:none;border-radius:50%;width:540px;height:540px;position:absolute;top:50%;left:50%;transform:translate(-50%,-40%)}.stage-orbit-two{border-color:color-mix(in srgb,var(--stage-line) 60%,transparent);width:700px;height:700px}.stage-heading{z-index:2;pointer-events:none;max-width:78%;position:absolute;top:42px;left:clamp(28px,4vw,68px)}.stage-eyebrow{color:var(--stage-muted);letter-spacing:.11em;align-items:center;gap:8px;font-size:11px;display:flex}.stage-eyebrow i,.stage-presence-dot{background:#8db9ae;border-radius:50%;flex:none;width:5px;height:5px}.stage-heading h1{color:var(--stage-ink);letter-spacing:-.05em;margin:13px 0 8px;font-size:clamp(32px,3.4vw,52px);font-weight:500;line-height:1.15}.stage-heading p{max-width:32ch;color:var(--stage-muted);margin:0;font-size:12px;line-height:1.7}.stage-portrait{justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:absolute;inset:154px 42px 86px}.stage-portrait img{aspect-ratio:3/4;object-fit:cover;object-position:center 22%;width:auto;max-width:100%;height:100%;max-height:100%;box-shadow:0 28px 65px var(--stage-shadow),0 0 0 7px var(--stage-line);border-radius:26px;display:block}.stage-portrait.is-cutout{transform-origin:bottom;animation:6s ease-in-out infinite stage-breathe;inset:82px 20px 8px}.stage-portrait.is-cutout img{aspect-ratio:auto;object-fit:contain;object-position:center bottom;width:100%;height:100%;filter:drop-shadow(0 24px 24px var(--stage-shadow));transform:translate(var(--stage-gaze-x,0px),var(--stage-gaze-y,0px)) rotate(var(--stage-gaze-rotate,0deg));transform-origin:50% 65%;border-radius:0;transition:transform .3s;box-shadow:none!important}.chat-stage-app.is-stage-paused .stage-portrait{animation-play-state:paused}.chat-stage-app[data-stage-activity=thinking] .stage-presence-dot{animation:1.4s ease-in-out infinite stage-thinking}.chat-stage-app[data-stage-activity=speaking] .stage-presence-dot{box-shadow:0 0 0 4px #a8cfc53d}.chat-stage-app.is-stage-responding .stage-portrait.is-cutout{animation:.8s ease-out stage-respond}@keyframes stage-breathe{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-3px)scale(1.006)}}@keyframes stage-thinking{0%,to{opacity:.4}50%{opacity:1}}@keyframes stage-respond{0%,to{transform:translateY(0)}40%{transform:translateY(-7px)rotate(.4deg)}}.stage-portrait-placeholder{width:80%;height:100%;color:var(--stage-accent);background:radial-gradient(ellipse,var(--stage-soft),transparent 68%);border-radius:40% 40% 35% 35%;flex-direction:column;justify-content:center;align-items:center;gap:24px;display:flex}.stage-portrait-placeholder span{color:var(--stage-muted);font-size:13px}.stage-model-host{z-index:1;touch-action:none;width:100%;height:100%;position:absolute;inset:0}.stage-model-host canvas{width:100%;height:100%;display:block}.chat-stage-app .stage-model-host.is-photo-portrait{touch-action:pan-y;justify-content:center;align-items:center;width:auto;height:auto;display:flex;inset:154px 42px 86px}.chat-stage-app .stage-model-host.is-photo-portrait canvas{aspect-ratio:3/4;max-width:100%;max-height:100%;box-shadow:0 28px 65px var(--stage-shadow),0 0 0 7px var(--stage-line);border-radius:26px;width:auto!important;height:100%!important}.stage-bottom{z-index:3;justify-content:space-between;align-items:center;gap:12px;display:flex;position:absolute;bottom:26px;left:36px;right:36px}.stage-caption{background:var(--stage-glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--stage-line);min-width:0;color:var(--stage-copy);border-radius:18px;align-items:center;gap:9px;padding:12px 16px;font-size:11px;display:flex}.stage-caption [data-stage-status]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stage-controls{border:1px solid var(--stage-line);background:var(--stage-glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:18px;flex:none;align-items:center;gap:5px;padding:5px;display:flex}.stage-controls button{width:36px;min-height:36px;color:var(--stage-copy);box-shadow:none;cursor:pointer;background:0 0;border:0;border-radius:12px;place-items:center;padding:0;transition:color .18s,background .18s;display:grid}.stage-controls button:hover{color:var(--stage-accent);background:var(--stage-soft)}.companion-ui.front-chat .chat-stage-app .chat-room{flex-direction:column;order:initial;border:1px solid var(--stage-line);background:var(--stage-surface);min-width:0;max-width:none;min-height:0;box-shadow:0 8px 35px var(--stage-shadow);align-self:stretch;padding:0;position:relative;overflow:hidden;border-radius:26px!important;width:auto!important;height:auto!important;margin:22px 22px 22px 0!important;display:flex!important}.companion-ui.front-chat .chat-room:before,.companion-ui.front-chat .chat-room:after{content:none}.companion-ui.front-chat .chat-room-head{z-index:10;border:0;border-bottom:1px solid var(--stage-line);-webkit-backdrop-filter:none;backdrop-filter:none;flex:none;justify-content:space-between;align-items:center;min-height:93px;position:relative;background:var(--stage-surface)!important;gap:10px!important;padding:19px 20px!important;display:flex!important}.companion-ui.front-chat .chat-head-profile{flex:1;align-items:center;gap:11px;min-width:0;grid-template-columns:none!important;display:flex!important}.companion-ui.front-chat .chat-back-link{display:none}.companion-ui.front-chat .chat-head-avatar{background:var(--stage-soft);color:var(--stage-accent);box-shadow:none;border:0;border-radius:14px;flex:0 0 40px;place-items:center;display:grid;overflow:hidden;width:40px!important;height:40px!important}.companion-ui.front-chat .chat-head-avatar img{object-fit:cover;object-position:center 20%;width:100%;height:100%}.companion-ui.front-chat .chat-head-copy{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;display:flex}.companion-ui.front-chat .chat-head-copy strong{text-overflow:ellipsis;white-space:nowrap;color:var(--stage-ink);font-size:16px;font-weight:600;line-height:1.3;display:block;overflow:hidden;max-width:180px!important}.companion-ui.front-chat .chat-head-copy .chat-presence{color:var(--stage-muted);align-items:center;gap:5px;font-size:10px;font-weight:400;line-height:1.2;display:flex}.companion-ui.front-chat .chat-head-copy .chat-presence:before{content:none}.companion-ui.front-chat .chat-head-copy .chat-presence i{background:#86b6a8;width:4px;height:4px}.companion-ui.front-chat .chat-creator-byline .creator-byline{color:var(--stage-muted);font-size:9px;font-weight:400}.companion-ui.front-chat .chat-head-copy .affinity-chip{border-radius:5px;min-height:0;margin:0;padding:3px 5px;font-size:9px;font-weight:400;background:var(--stage-soft)!important;color:var(--stage-muted)!important;border:0!important}.companion-ui.front-chat .chat-head-actions{flex:none;width:auto;min-width:0;overflow:visible;gap:3px!important;display:flex!important}.companion-ui.front-chat :is(.stage-view-toggle,.chat-preferences>summary,.chat-explore-menu>summary){width:33px;min-width:33px;height:36px;box-shadow:none;cursor:pointer;place-items:center;display:grid;min-height:36px!important;color:var(--stage-muted)!important;background:0 0!important;border:0!important;border-radius:10px!important;padding:0!important}.companion-ui.front-chat :is(.stage-view-toggle,.chat-preferences>summary,.chat-explore-menu>summary):hover{color:var(--stage-accent)!important;background:var(--stage-soft)!important}.companion-ui.front-chat :is(.chat-preferences-panel,.chat-explore-panel){z-index:30;background:var(--stage-surface);border:1px solid var(--stage-line);color:var(--stage-ink);box-shadow:0 12px 48px var(--stage-shadow)}.companion-ui.front-chat .chat-preferences-panel{padding:20px}.companion-ui.front-chat .chat-preferences-panel :is(strong,.chat-preference-label,.chat-pricing-note){color:var(--stage-muted)}.companion-ui.front-chat .chat-preferences-panel .model-switch{background:var(--stage-soft)}.companion-ui.front-chat .chat-preferences-panel .model-switch button{color:var(--stage-muted)}.companion-ui.front-chat .chat-preferences-panel .model-switch button.active{color:var(--stage-accent);background:var(--stage-surface)}.companion-ui.front-chat .chat-preferences-panel .voice-switch{background:var(--stage-surface);border-color:var(--stage-line)}.companion-ui.front-chat .chat-preferences-panel .voice-switch select{color:var(--stage-ink);background:var(--stage-surface)}.companion-ui.front-chat .chat-preferences-panel .chat-balance{background:var(--stage-soft)!important;color:var(--stage-muted)!important}.companion-ui.front-chat .chat-explore-panel>strong{color:var(--stage-muted)}.companion-ui.front-chat .chat-explore-panel :is(a,button){color:var(--stage-ink);font-weight:400}.companion-ui.front-chat .chat-explore-panel :is(a,button):hover{background:var(--stage-soft)}.companion-ui.front-chat .chat-explore-panel nav{border-color:var(--stage-line)}.companion-ui.front-chat .chat-explore-panel button small{color:var(--stage-muted)}.companion-ui.front-chat .chat-room .messages{scrollbar-width:thin;scrollbar-color:var(--stage-scrollbar) transparent;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:0 0;flex-direction:column;flex:1 1 0;gap:22px;height:auto;min-height:0;margin:0;overflow:hidden auto;padding:23px 19px!important;display:flex!important}.companion-ui.front-chat .conversation-milestone{flex:none;margin:4px 0 10px}.companion-ui.front-chat .conversation-milestone span{color:var(--stage-muted);background:0 0;padding:0;font-size:10px}.companion-ui.front-chat .message-row{flex:none;align-items:flex-start;gap:8px;width:100%;display:flex}.companion-ui.front-chat .message-row.mine{justify-content:flex-end}.companion-ui.front-chat .chat-avatar{width:27px;height:27px;box-shadow:none;background:var(--stage-soft);color:var(--stage-muted);border:0;border-radius:10px;flex:0 0 27px}.companion-ui.front-chat .chat-avatar.mine{display:none}.companion-ui.front-chat .chat-room .bubble{border:1px solid var(--stage-line);background:var(--stage-soft);width:auto;min-width:0;max-width:calc(100% - 35px);box-shadow:none;color:var(--stage-ink);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:4px 17px 17px;margin:0;padding:12px 14px}.companion-ui.front-chat .chat-room .bubble>span{display:none}.companion-ui.front-chat .chat-room .bubble p{color:inherit;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.85}.companion-ui.front-chat .chat-room .bubble.mine{background:var(--stage-user);border:1px solid var(--stage-user-line);max-width:90%;color:var(--stage-user-ink);border-radius:17px 4px 17px 17px}.companion-ui.front-chat .chat-room .bubble.mine p{color:inherit}.companion-ui.front-chat .chat-room .bubble-tools{gap:3px;margin-top:9px}.companion-ui.front-chat .chat-room .bubble-tools button{min-width:24px;color:var(--stage-muted);background:0 0;border:0;border-radius:6px;font-size:10px;font-weight:400;min-height:26px!important;padding:3px 5px!important}.companion-ui.front-chat .chat-room .bubble-tools button span{color:inherit;font-size:10px}.companion-ui.front-chat .chat-room .bubble-tools button:hover{background:var(--stage-surface);color:var(--stage-accent)}.companion-ui.front-chat .message-story-menu>summary{color:var(--stage-muted)}.companion-ui.front-chat .message-story-menu[open]{background:var(--stage-surface);border-color:var(--stage-line);color:var(--stage-ink)}.companion-ui.front-chat .message-story-menu a{color:var(--stage-ink)}.companion-ui.front-chat .chat-room .bubble.is-error{background:var(--stage-error-bg);border-color:var(--stage-error-line);color:var(--stage-error-ink)}.companion-ui.front-chat .jump-latest{border-color:var(--stage-line);background:var(--stage-surface);color:var(--stage-accent);box-shadow:0 4px 20px var(--stage-shadow);bottom:135px;left:auto;right:20px}.companion-ui.front-chat .chat-starter-replies{background:var(--stage-surface);flex:none;gap:6px;padding:8px 20px 14px;display:grid}.companion-ui.front-chat .chat-starter-replies button{border:1px solid var(--stage-line);background:var(--stage-surface);width:100%;min-height:34px;color:var(--stage-copy);border-radius:11px;padding:8px 12px;font-size:11px;font-weight:400;line-height:1.45}.companion-ui.front-chat .chat-starter-replies button:hover{background:var(--stage-soft);border-color:var(--stage-accent)}.companion-ui.front-chat .chat-room .composer{z-index:4;border:0;border-top:1px solid var(--stage-line);background:var(--stage-surface);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;border-radius:0;flex-direction:column;flex:none;position:relative;inset:auto;align-items:stretch!important;gap:9px!important;width:100%!important;min-height:0!important;margin:0!important;padding:12px 16px 13px!important;display:flex!important}.companion-ui.front-chat .chat-room .composer-input-surface{border:1px solid var(--stage-line);background:var(--stage-soft);border-radius:21px;align-items:flex-end;gap:5px;width:100%;min-width:0;padding:5px;transition:border-color .18s,box-shadow .18s;display:flex}.companion-ui.front-chat .composer-input-surface:focus-within{border-color:var(--stage-accent);box-shadow:0 0 0 3px var(--stage-accent-soft)}.companion-ui.front-chat .chat-room .composer .composer-input-surface textarea{height:44px;max-height:144px;color:var(--stage-ink);font:inherit;resize:none;writing-mode:horizontal-tb;overflow-wrap:anywhere;scrollbar-width:thin;scrollbar-color:var(--stage-scrollbar) transparent;overscroll-behavior:contain;outline:none;flex:1 1 0;margin:0;font-weight:400;line-height:24px;display:block;width:0!important;min-width:0!important;min-height:44px!important;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;grid-area:auto!important;padding:10px 8px!important;font-size:16px!important}.companion-ui.front-chat .chat-room .composer textarea::placeholder{color:var(--stage-muted);opacity:1}.companion-ui.front-chat .chat-room .composer .send-button{touch-action:manipulation;flex:0 0 44px;place-items:center;transition:background .18s,transform .18s;display:grid;background:var(--stage-accent)!important;width:44px!important;height:44px!important;min-height:44px!important;color:var(--stage-on-accent)!important;box-shadow:none!important;border:0!important;border-radius:16px!important;grid-area:auto!important;padding:0!important}.companion-ui.front-chat .chat-room .composer .send-button:hover{background:var(--stage-accent-hover)!important}.companion-ui.front-chat .chat-room .composer .send-button:active{transform:scale(.95)}.companion-ui.front-chat .chat-room .composer .send-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.companion-ui.front-chat .chat-room .composer .interaction-toggle{touch-action:manipulation;border:0;flex:0 0 44px;place-items:center;height:44px;display:grid;width:44px!important;min-height:44px!important;color:var(--stage-muted)!important;background:0 0!important;border-radius:15px!important;grid-area:auto!important;padding:0!important}.companion-ui.front-chat .chat-room .composer .interaction-toggle[hidden]{display:none!important}.companion-ui.front-chat .chat-room .composer .interaction-toggle[aria-expanded=true]{background:var(--stage-surface)!important;color:var(--stage-accent)!important}.companion-ui.front-chat .composer .interaction-toggle span{display:none}.companion-ui.front-chat .composer :is(.send-button,.interaction-toggle):focus-visible{outline:2px solid var(--stage-accent);outline-offset:3px}.companion-ui.front-chat .composer-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 10px;min-width:0;padding:0 3px;display:flex}.companion-ui.front-chat .composer-caption{color:var(--stage-muted);flex:1;justify-content:space-between;gap:7px;margin:0;font-size:10px;font-weight:400;line-height:1.5;display:flex}.companion-ui.front-chat .composer-caption>span{white-space:nowrap}.companion-ui.front-chat .composer-caption small{color:inherit;font-size:10px}.companion-ui.front-chat .composer-footer:has(.guest-trial-note) .composer-caption small{display:none}.companion-ui.front-chat .composer .composer-auth-prompt,.companion-ui.front-chat .composer .composer-billing{color:var(--stage-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:7px;font-size:11px;font-weight:400;line-height:1.5;display:flex;background:0 0!important;border:0!important;border-radius:0!important;min-height:0!important;margin:0!important;padding:0!important}.companion-ui.front-chat .composer :is(.composer-auth-prompt,.composer-billing) a{color:var(--stage-accent);white-space:nowrap;font-weight:500}.companion-ui.front-chat .composer-state{color:var(--stage-muted);background:var(--stage-soft);border:0;border-radius:10px;margin:0;padding:7px 10px;font-size:12px;line-height:1.5}.companion-ui.front-chat .composer-state:empty{display:none!important}.companion-ui.front-chat .chat-room .chat-interactions{border:1px solid var(--stage-line);background:var(--stage-surface);box-shadow:0 8px 28px var(--stage-shadow);overscroll-behavior:contain;border-radius:19px;padding:10px;position:absolute;bottom:calc(100% + 8px);left:16px;right:16px;overflow-y:auto;max-height:min(220px,38dvh)!important;display:none!important}.companion-ui.front-chat .chat-room .chat-interactions.is-open{flex-direction:column;align-items:stretch;gap:8px;display:flex!important}.companion-ui.front-chat .chat-interactions :is(.transfer-pill,.interaction-pill){background:var(--stage-soft);width:100%;min-width:0;color:var(--stage-ink);border-color:var(--stage-line);border-radius:12px;padding:8px 10px;font-size:12px;font-weight:500;min-height:44px!important}.companion-ui.front-chat .chat-interactions .transfer-pill{flex-wrap:wrap;display:flex}.companion-ui.front-chat .chat-interactions .transfer-pill>span{flex:1;min-width:90px}.companion-ui.front-chat .chat-interactions input{background:var(--stage-surface);width:66px;color:var(--stage-ink);border-color:var(--stage-line);border-radius:9px;padding:5px 7px;font-size:16px;min-height:36px!important}.companion-ui.front-chat .chat-interactions .transfer-pill button{background:var(--stage-accent);color:var(--stage-on-accent);border-radius:9px;min-height:36px!important}.companion-ui.front-chat .chat-interactions .transfer-pill button:hover{background:var(--stage-accent-hover)}.companion-ui.front-chat .chat-welcome{color:var(--stage-muted)}.companion-ui.front-chat .chat-welcome strong{color:var(--stage-ink)}.companion-ui.front-chat .chat-stage-app[data-stage-collapsed=true]{grid-template-areas:"rail chat";justify-content:center;grid-template-columns:var(--stage-rail-width) minmax(0,800px)!important}.chat-stage-app[data-stage-collapsed=true] .character-stage{display:none}.companion-ui.front-chat .chat-stage-app[data-stage-collapsed=true] .chat-room{margin-left:22px!important}.companion-ui.front-chat .chat-stage-app.is-stage-expanded{grid-template-areas:"rail stage";grid-template-columns:var(--stage-rail-width) minmax(0,1fr)!important}.companion-ui.front-chat .chat-stage-app.is-stage-expanded>.chat-room{display:none!important}.chat-stage-app.is-stage-expanded .stage-controls [data-stage-expand]{color:var(--stage-accent);background:var(--stage-accent-soft)}@media (width>=1450px){.companion-ui.front-chat .chat-stage-app{--stage-rail-width:90px;grid-template-columns:var(--stage-rail-width) minmax(0,1fr) minmax(420px,480px)!important}.companion-ui.front-chat .chat-stage-app .chat-room{margin:30px 30px 30px 0!important}}@media (width<=1050px) and (width>=761px){.companion-ui.front-chat .chat-stage-app{--stage-rail-width:60px;grid-template-columns:var(--stage-rail-width) minmax(0,1fr) 365px!important}.stage-rail{padding-left:7px;padding-right:7px}.stage-heading{top:35px;left:26px}.stage-portrait{inset:150px 25px 94px}.stage-bottom{flex-wrap:wrap;justify-content:center;bottom:25px;left:22px;right:22px}.stage-caption{max-width:100%;padding:8px 12px}.chat-stage-app .stage-model-host.is-photo-portrait{inset:150px 25px 94px}}@media (width<=760px){.companion-ui.front-chat .chat-stage-app{flex-direction:column;overflow:hidden;width:100%!important;height:var(--stage-viewport-height,100%)!important;gap:0!important;min-height:0!important;display:flex!important}.stage-rail{display:none}.character-stage{flex:0 0 clamp(215px,34dvh,340px);width:100%;transition:flex-basis .25s}.stage-heading{left:23px;top:max(22px,env(safe-area-inset-top));max-width:48%}.stage-eyebrow{letter-spacing:.03em;gap:5px;font-size:9px}.stage-heading h1{margin-top:12px;font-size:29px}.stage-heading p{max-width:14ch;font-size:10px;line-height:1.65}.stage-portrait{justify-content:flex-end;inset:19px 24px 24px 42%}.stage-portrait img{width:auto;max-width:100%;height:100%;box-shadow:0 14px 30px var(--stage-shadow),0 0 0 4px var(--stage-line);border-radius:20px}.stage-portrait.is-cutout{align-items:flex-start;inset:5px -35px -240px 26%}.stage-portrait.is-cutout img{object-fit:contain;object-position:center top;border-radius:0;width:100%;height:auto;max-height:none}.stage-portrait-placeholder{width:100%}.stage-portrait-placeholder svg{width:62px}.stage-portrait-placeholder span{font-size:10px}.stage-orbit{width:330px;height:330px;top:45%;left:75%}.stage-orbit-two{width:440px;height:440px}.stage-model-host{width:74%;left:26%}.chat-stage-app .stage-model-host.is-photo-portrait{justify-content:flex-end;inset:19px 24px 24px 42%}.chat-stage-app .stage-model-host.is-photo-portrait canvas{box-shadow:0 14px 30px var(--stage-shadow),0 0 0 4px var(--stage-line);border-radius:20px}.stage-bottom{flex-direction:column;align-items:flex-start;gap:8px;max-width:50%;bottom:16px;left:20px;right:auto}.stage-caption{display:none}.stage-controls{border-radius:14px;gap:2px;padding:4px}.stage-controls button{border-radius:10px;width:32px;min-height:32px}.companion-ui.front-chat .chat-stage-app .chat-room{min-height:0;box-shadow:0 -4px 35px var(--stage-shadow);border:0;flex:1 1 0;border-radius:24px 24px 0 0!important;width:100%!important;height:auto!important;margin:0!important}.companion-ui.front-chat .chat-room-head{min-height:68px;gap:7px!important;padding:12px 14px!important}.companion-ui.front-chat .chat-back-link{width:22px;height:34px;color:var(--stage-muted);background:0 0;flex:0 0 22px;place-items:center;padding:0;display:grid}.companion-ui.front-chat .chat-head-profile{gap:8px}.companion-ui.front-chat .chat-head-avatar{border-radius:12px;flex-basis:34px;width:34px!important;height:34px!important}.companion-ui.front-chat .chat-head-copy{gap:3px}.companion-ui.front-chat .chat-head-copy strong{font-size:14px;max-width:min(160px,32vw)!important}.companion-ui.front-chat .chat-head-copy .chat-presence{font-size:9px}.companion-ui.front-chat .chat-creator-byline .creator-byline,.companion-ui.front-chat .chat-head-copy .affinity-chip{font-size:8px}.companion-ui.front-chat :is(.stage-view-toggle,.chat-preferences>summary,.chat-explore-menu>summary){width:30px;min-width:30px}.companion-ui.front-chat .chat-room .messages{gap:17px;padding:16px 14px!important}.companion-ui.front-chat .conversation-milestone{margin:0 0 3px}.companion-ui.front-chat .conversation-milestone span{font-size:9px}.companion-ui.front-chat .chat-room .bubble{max-width:calc(100% - 32px);padding:10px 12px}.companion-ui.front-chat .chat-room .bubble p{font-size:13px;line-height:1.75}.companion-ui.front-chat .chat-room .bubble.mine{max-width:90%}.companion-ui.front-chat .chat-avatar{border-radius:9px;flex-basis:25px;width:25px;height:25px}.companion-ui.front-chat .message-row{gap:7px}.companion-ui.front-chat .chat-starter-replies{gap:5px;padding:5px 14px 10px}.companion-ui.front-chat .chat-starter-replies button{min-height:31px;padding:7px 11px;font-size:10px}.companion-ui.front-chat .chat-room .composer{padding:10px 12px calc(9px + env(safe-area-inset-bottom))!important;gap:8px!important}.companion-ui.front-chat .chat-room .composer .composer-input-surface textarea{max-height:116px}.companion-ui.front-chat .composer-caption small{display:none}.companion-ui.front-chat .composer-caption{justify-content:flex-start;font-size:10px}.companion-ui.front-chat .chat-room .chat-interactions{left:12px;right:12px}.companion-ui.front-chat .chat-stage-app[data-stage-collapsed=true] .chat-room{border-radius:0!important;margin:0!important}.companion-ui.front-chat .chat-stage-app.is-stage-expanded .character-stage{flex-basis:100%}.chat-stage-app.is-stage-expanded .stage-heading{top:40px;left:28px}.chat-stage-app.is-stage-expanded .stage-portrait{justify-content:center;inset:165px 32px 98px}.chat-stage-app.is-stage-expanded .stage-portrait.is-cutout{inset:100px -15px 0}.chat-stage-app.is-stage-expanded .stage-portrait.is-cutout img{object-position:center bottom;width:100%;height:100%}.chat-stage-app.is-stage-expanded .stage-model-host{width:100%;left:0}.chat-stage-app.is-stage-expanded .stage-model-host.is-photo-portrait{justify-content:center;width:auto;inset:165px 32px 98px}.chat-stage-app.is-stage-expanded .stage-bottom{left:50%;bottom:max(26px,env(safe-area-inset-bottom));transform:translate(-50%)}.companion-ui.front-chat .chat-stage-app.is-keyboard-open .character-stage{flex-basis:0}.companion-ui.front-chat .chat-stage-app.is-keyboard-open .chat-room{border-radius:0!important}.companion-ui.front-chat .chat-stage-app.is-keyboard-open .chat-starter-replies{display:none}.companion-ui.front-chat .chat-stage-app.is-keyboard-open .composer{padding-bottom:8px!important}}@media (width<=380px){.stage-heading{left:20px}.stage-heading h1{font-size:26px}.companion-ui.front-chat .chat-head-profile{gap:6px}.companion-ui.front-chat .chat-head-avatar{display:none}.companion-ui.front-chat .chat-head-copy strong{max-width:36vw!important}}@media (height<=700px) and (width<=760px){.character-stage{flex-basis:200px}.stage-heading{top:19px}.stage-heading p{display:none}.companion-ui.front-chat .chat-starter-replies{scrollbar-width:none;flex-wrap:nowrap;padding-top:5px;padding-bottom:8px;display:flex;overflow-x:auto}.companion-ui.front-chat .chat-starter-replies button{flex:none;width:74%}}@media (prefers-reduced-motion:reduce){.chat-stage-app *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (width<=760px) and (height<=500px) and (orientation:landscape){.companion-ui.front-chat .chat-room .composer .composer-input-surface textarea{max-height:92px}.companion-ui.front-chat .chat-room .composer{gap:5px!important;padding-top:8px!important;padding-bottom:8px!important}.companion-ui.front-chat .chat-stage-app:not(.is-stage-expanded):not(.is-keyboard-open):not([data-stage-collapsed=true]){flex-direction:row}.chat-stage-app:not(.is-stage-expanded):not(.is-keyboard-open) .character-stage{flex:0 0 34%;height:100%}.chat-stage-app:not(.is-stage-expanded) .stage-heading{max-width:calc(100% - 32px);top:18px;left:16px}.chat-stage-app:not(.is-stage-expanded) .stage-heading h1{font-size:25px}.chat-stage-app:not(.is-stage-expanded) .stage-eyebrow{letter-spacing:0;font-size:8px}.chat-stage-app:not(.is-stage-expanded) .stage-portrait{justify-content:center;inset:84px 16px 68px}.chat-stage-app:not(.is-stage-expanded) .stage-portrait.is-cutout{inset:50px -30px -40px}.chat-stage-app:not(.is-stage-expanded) .stage-model-host{width:100%;left:0}.chat-stage-app:not(.is-stage-expanded) .stage-model-host.is-photo-portrait{justify-content:center;width:auto;inset:84px 16px 68px}.chat-stage-app:not(.is-stage-expanded) .stage-bottom{max-width:100%;bottom:14px;left:16px}.companion-ui.front-chat .chat-stage-app:not(.is-stage-expanded):not(.is-keyboard-open):not([data-stage-collapsed=true]) .chat-room{border-radius:20px 0 0 20px!important;width:66%!important}.chat-stage-app.is-stage-expanded .stage-heading{top:20px}.chat-stage-app.is-stage-expanded .stage-heading h1{margin-top:8px;font-size:25px}.chat-stage-app.is-stage-expanded .stage-portrait,.chat-stage-app.is-stage-expanded .stage-model-host.is-photo-portrait{inset:86px 24px 66px}.chat-stage-app.is-stage-expanded .stage-bottom{bottom:max(14px,env(safe-area-inset-bottom))}}.companion-ui.front-chat .chat-stage-app .character-stage.is-photo-stage:not([data-renderer=live2d]){background-image:none}.companion-ui.front-chat .chat-stage-app .character-stage.is-photo-stage:not([data-renderer=live2d]) .stage-orbit{display:none}.companion-ui.front-chat .chat-stage-app .character-stage.is-photo-stage:not([data-renderer=live2d]) :is(.stage-portrait,.stage-model-host.is-photo-portrait){width:100%;height:100%;display:block;inset:0}.companion-ui.front-chat .chat-stage-app .character-stage.is-photo-stage:not([data-renderer=live2d]) :is(.stage-portrait img,.stage-model-host.is-photo-portrait canvas){aspect-ratio:auto;object-fit:cover;object-position:50% 22%;max-width:none;max-height:none;box-shadow:none;border-radius:0;width:100%!important;height:100%!important}.companion-ui.front-chat .chat-stage-app .character-stage.is-photo-stage:not([data-renderer=live2d]):after{content:"";z-index:2;pointer-events:none;background:linear-gradient(180deg,color-mix(in srgb,var(--stage-bg) 91%,transparent) 0%,color-mix(in srgb,var(--stage-bg) 31%,transparent) 145px,transparent 260px,transparent 65%,color-mix(in srgb,var(--stage-bg) 76%,transparent) 100%);position:absolute;inset:0}.companion-ui.front-chat .chat-stage-app .character-stage.is-photo-stage:not([data-renderer=live2d]) .stage-heading{z-index:3;text-shadow:0 1px 3px var(--stage-bg)}.companion-ui.front-chat .chat-stage-app .character-stage.is-photo-stage:not([data-renderer=live2d]) .stage-heading :is(.stage-eyebrow,p){color:var(--stage-photo-copy)}@media (width<=760px){.companion-ui.front-chat .chat-stage-app:not(.is-stage-expanded) .character-stage.is-photo-stage:not([data-renderer=live2d]) .stage-portrait img{object-position:50% 0%}.companion-ui.front-chat .chat-stage-app:not(.is-stage-expanded) .character-stage.is-photo-stage:not([data-renderer=live2d]):after{background:linear-gradient(90deg,color-mix(in srgb,var(--stage-bg) 88%,transparent) 0%,color-mix(in srgb,var(--stage-bg) 28%,transparent) 48%,transparent 75%)}}
