.console-command{position:relative;min-width:0}
.console-typed{display:none}
.console-scroll-ready .console-original{opacity:0}
.console-scroll-ready .console-typed{display:block;position:absolute;inset:0 auto auto 0;white-space:inherit}
.console-scroll-ready .is-typing .console-typed::after{content:'';display:inline-block;width:2px;height:1em;background:var(--action);margin-left:3px;vertical-align:-.1em}
.console-scroll-progress{font:11px/1.5 var(--mono);color:var(--muted);white-space:nowrap}
.console-bottom-copy{display:flex;flex-wrap:wrap;gap:16px}

/* A dedicated companion rail keeps BMO beside, rather than over, the console. */
.console-showcase{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:32px;align-items:center}
.console-showcase .terminal-window{width:100%;min-width:0}
.bmo-console-slot{align-self:stretch;min-width:0}
#console-feature .console-bottom{width:calc(100% - 272px)}
#console-feature .log-row{display:grid;grid-template-columns:74px 44px minmax(0,1fr);gap:8px;white-space:normal}
#console-feature .console-command{white-space:pre-wrap;overflow-wrap:anywhere}
.console-scroll-ready .console-typed{inset:0;width:100%}
.bmo-guide{position:fixed;left:0;top:0;width:var(--bmo-size,210px);z-index:60;color:var(--ink);font-family:var(--sans);isolation:isolate;will-change:transform;pointer-events:none}
.bmo-guide[hidden],.bmo-speech[hidden]{display:none!important}
.bmo-presence{position:relative;width:100%}
.bmo-float{position:relative;z-index:1}
.bmo-avatar-button{position:relative;width:var(--bmo-size);height:var(--bmo-size);border:0;border-radius:50%;padding:0;background:radial-gradient(circle at 32% 26%,#f2ffe7,#c8ecc0 55%,#6eaa8c);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 14px 32px #061a241c;cursor:pointer;pointer-events:auto}
.bmo-avatar-button img{display:block;width:118%;height:auto;max-width:none;flex-shrink:0;clip-path:inset(0 0 1% 0);mix-blend-mode:multiply}
.bmo-avatar-button::after{content:'';position:absolute;inset:0;border-radius:50%;box-shadow:inset -14px -20px 32px #26503d38,inset 4px 5px 15px #ffffff77;pointer-events:none}
.bmo-sphere-canvas{display:none;position:absolute;inset:0;width:100%;height:100%}
.bmo-webgl-ready{background:transparent;overflow:visible;box-shadow:none}
.bmo-webgl-ready .bmo-sphere-canvas{display:block}
.bmo-webgl-ready img,.bmo-webgl-ready::after{display:none}
.bmo-avatar-button:focus-visible{outline:3px solid var(--action);outline-offset:6px}
.bmo-name{display:block;text-align:center;font:750 11px/1.6 var(--sans);letter-spacing:.14em;color:var(--ink);margin-top:16px}
.bmo-shadow{position:absolute;top:calc(var(--bmo-size) + 10px);left:18%;width:64%;height:14px;border-radius:50%;background:radial-gradient(ellipse,#183a2a30,transparent 70%);pointer-events:none}
.bmo-speech{position:absolute;right:calc(100% + 20px);bottom:28px;width:250px;padding:16px 18px;border:1px solid var(--border);border-radius:20px 20px 5px 20px;background:var(--surface);box-shadow:0 9px 28px #061a2414;pointer-events:auto}
.bmo-speech::after{content:'';position:absolute;right:-7px;bottom:15px;width:12px;height:12px;background:var(--surface);border-top:1px solid var(--border);border-right:1px solid var(--border);transform:rotate(45deg)}
.bmo-docked-console .bmo-speech{right:auto;left:50%;top:calc(var(--bmo-size) + 54px);bottom:auto;transform:translateX(-50%);width:240px;border-radius:16px}
.bmo-docked-console .bmo-speech::after{right:calc(50% - 6px);bottom:auto;top:-7px;transform:rotate(-45deg)}
.bmo-speech-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px}
.bmo-speech-top strong{color:var(--online);font-size:12px}.bmo-section-name{font:10px/1.5 var(--mono);color:var(--muted);text-align:right}
.bmo-message{font-size:14px;line-height:1.6;margin:0;color:var(--ink);text-wrap:pretty}
.bmo-docked-console .bmo-message{font-size:13px;line-height:1.55}
.bmo-collapse{display:block;margin-top:12px;padding:4px 0;border:0;background:transparent;color:var(--muted);font:500 11px var(--sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.bmo-collapse:hover{color:var(--action)}.bmo-collapse:focus-visible{outline:2px solid var(--action);outline-offset:3px}
body:has(.music-panel:not([hidden])) .bmo-guide,#app:has(.mobile-nav-panel:not([hidden])) .bmo-guide{visibility:hidden!important;pointer-events:none}
@media(min-width:900px) and (max-width:1300px){#console-feature .terminal-body{grid-template-columns:1fr}#console-feature .terminal-side{display:none}}
@media(max-width:899px){
 .console-showcase{display:block}.bmo-console-slot{display:none}#console-feature .console-bottom{width:100%}
 .bmo-name{font-size:10px;margin-top:10px}
 .bmo-speech{right:0;bottom:calc(var(--bmo-size) + 40px);width:min(250px,calc(100vw - 40px));padding:14px 16px;border-radius:18px}
 .bmo-speech::after{right:35px;bottom:-7px;transform:rotate(135deg)}.bmo-message{font-size:13px}
 .bmo-avatar-button::after{box-shadow:inset -8px -12px 18px #26503d38,inset 2px 3px 8px #ffffff77}
}
@media(max-width:600px){
 :root #app #console-feature .terminal-logs{font-size:11px;line-height:1.8;padding:20px 14px;overflow-x:hidden}
 #console-feature .log-row{grid-template-columns:57px 32px minmax(0,1fr);gap:7px;margin-bottom:8px}
}
