html:has(body.companion),body.companion{background:transparent!important;overflow:hidden;margin:0;width:100%;height:100%;color:#24333f}.companion .app{background:transparent!important;height:100dvh;min-height:0;border:0;overflow:hidden}.companion header,.companion .stage-top,.companion .stage-bottom,.companion .drag-hint{display:none!important}.companion main{height:100%;display:block;position:relative}.companion .stage{position:absolute;inset:0;height:100%;min-height:0;background:transparent!important}.companion .stage:after{display:none}.companion #viewport{inset:0 0 15px!important;left:0!important;right:0!important}.companion .speech{display:none;position:fixed;top:18px;left:12px;max-width:min(250px,70vw);width:auto;padding:14px 17px;background:#fffffff0;box-shadow:0 4px 24px #102a391a;pointer-events:none;border-radius:15px 15px 4px 15px}.companion .speech.talking{display:block}.companion .speech p{font-size:14px;font-weight:550;line-height:1.45}.companion .panel{display:none;position:absolute;z-index:9;left:12px;right:12px;top:60px;bottom:70px;height:auto;min-height:0;border:1px solid #dce3ea;border-radius:20px;box-shadow:0 10px 50px #1a2b3e35;overflow:hidden}.companion.panel-open .panel{display:flex}.companion .panel-intro{padding:19px 22px 8px;display:block}.companion .panel-intro .eyebrow,.companion .panel-intro p{display:none}.companion .panel-intro h1{font-size:24px;line-height:1.15;margin:0;padding-right:22px;letter-spacing:-.9px}.companion .panel-intro h1 br{display:none}.companion .tabs{margin:0 22px;gap:24px}.companion .panel-content{padding:14px 22px}.companion .panel-footer{margin:0 22px;font-size:8px;padding:11px 0}.companion .panel-footer>span{max-width:150px}.companion .phrase{padding:10px;gap:10px}.companion .phrase strong{font-size:12px}.companion .phrase small{font-size:9px}.companion .phrase-list{gap:8px}.companion .voice-note{font-size:8px;margin:11px 0 16px}.companion .action-grid button{min-height:72px;padding:10px}.companion .action-grid strong{font-size:10px}.companion .section-heading>span{display:none}.companion-panel-close{position:absolute;top:12px;right:13px;width:29px;height:29px;border:0;background:#eef2f5;color:#788a96;border-radius:50%;font-size:20px;z-index:3}.companion dialog{max-height:calc(100dvh - 40px);padding:21px;border-radius:17px}.companion dialog::backdrop{background:transparent;backdrop-filter:none}.companion dialog h2{font-size:24px}.companion .field-note{font-size:9px!important}.companion .setting{padding:11px 0}.companion .setting small{font-size:9px}.companion .toast{bottom:65px;font-size:10px;padding:10px 15px;pointer-events:none}.companion #companionDock{position:fixed;bottom:6px;left:50%;transform:translateX(-50%);z-index:12;display:flex;gap:5px;background:#ffffffed;padding:5px;border:1px solid #dce3e9;border-radius:30px;box-shadow:0 3px 14px #182d3b18;opacity:0;pointer-events:none;transition:opacity .18s}.companion.is-hovering #companionDock,.companion.panel-open #companionDock,.companion.is-browser #companionDock{opacity:1;pointer-events:auto}#companionDock button{background:transparent;border:0;color:#526b80;width:29px;height:29px;border-radius:50%;display:grid;place-items:center;font-size:13px}#companionDock button:hover{background:#edf3fa;color:#245d9e}.companion #loadMessage{font-size:12px;max-width:200px;margin:auto;background:#fffffff0;border-radius:12px;padding:13px;inset:45% 0 auto}.companion:not(.is-browser) #viewport{cursor:grab}.companion.dragging #viewport{cursor:grabbing}.companion .stop-speech{pointer-events:all}

.companion.showcase #companionDock{display:none!important}
/* Native window grows around the fixed-size character; the panel never covers him. */
.companion:not(.is-browser) .stage{left:var(--avatar-left,0px);width:var(--avatar-width,100%);right:auto}.companion:not(.is-browser).panel-open .panel{top:12px;bottom:52px;width:var(--panel-width,360px);left:auto;right:0}.companion:not(.is-browser).panel-open[data-panel-side=left] .panel{left:0;right:auto}.companion:not(.is-browser) #companionDock{left:calc(var(--avatar-left,0px) + var(--avatar-width,100vw)/2)}.companion .speech{left:auto;right:12px;max-width:min(260px,90%);position:absolute}.companion:not(.is-browser) .speech{left:12px;right:auto;max-width:calc(var(--avatar-width,100vw) - 24px)}
.companion.is-browser.panel-open .stage{left:0;width:max(32%,calc(100% - 380px));right:auto}.companion.is-browser.panel-open .panel{left:auto;right:12px;top:12px;bottom:60px;width:min(360px,63vw)}.companion.is-browser.panel-open #companionDock{left:20%}.companion .motion-actions{gap:13px}.companion .motion-actions small{font-size:9px}.companion .panel-content{overflow-y:auto;min-height:0}.companion .phrase strong{line-height:1.4}.companion dialog{max-width:min(440px,calc(100vw - 28px));overflow-y:auto}
