/* Classroom view keeps the character large and chat available on demand. */
.stage-view-actions { display:flex; align-items:center; gap:8px; margin-left:auto; }
.stage-view-actions button { display:inline-flex; align-items:center; justify-content:center; gap:5px; min-height:36px; font-size:11px; letter-spacing:0; white-space:nowrap; }
.stage-view-actions button[hidden] { display:none; }
.fullscreen-button { color:#4d7559; background:#f2f8e9; border-color:#d8e5ca; }
.fullscreen-button:hover { background:#e4f1d8; }
#fullscreenIcon { font-size:20px; line-height:1; }
body.bunny-presenting { overflow:hidden; }
.workspace.is-presentation {
  position:fixed; inset:0; z-index:1000; width:100%; height:100%;
  height:100dvh; padding:0; gap:0; grid-template-columns:minmax(0,1fr);
  background:#e8f5e6;
}
.workspace.is-presentation .stage-card {
  min-width:0; min-height:0; display:grid;
  grid-template-rows:auto minmax(0,1fr) auto auto;
  border:0; border-radius:0; box-shadow:none;
}
.workspace.is-presentation .stage-head { height:auto; min-height:64px; padding:10px max(22px,env(safe-area-inset-right)) 10px max(22px,env(safe-area-inset-left)); }
.workspace.is-presentation .stage-view-actions button { min-height:42px; padding:10px 15px; font-size:13px; }
.workspace.is-presentation .stage { height:auto; min-height:0; }
.workspace.is-presentation #stage .bunny-wrap { width:auto; height:calc(100% - 82px); max-width:88%; aspect-ratio:420 / 480; bottom:12px; }
.workspace.is-presentation #stage .bunny { width:100%; height:100%; }
.workspace.is-presentation #stage .speech { top:16px; max-width:min(84%,850px); font-size:clamp(16px,2.1vh,25px); padding:13px 24px; }
.workspace.is-presentation .scene-sun { top:13%; right:12%; width:66px; height:66px; font-size:32px; }
.workspace.is-presentation .scene-sun:before,.workspace.is-presentation .scene-sun:after { top:24px; }
.workspace.is-presentation .scene-sun:before { left:23px; }
.workspace.is-presentation .scene-sun:after { right:23px; }
.workspace.is-presentation .cloud-left { left:15%; top:20%; }
.workspace.is-presentation .cloud-right { right:19%; top:30%; }
.workspace.is-presentation .stage-footer { min-height:54px; padding:7px 25px; }
.workspace.is-presentation .stage-footer strong { font-size:14px; }
.workspace.is-presentation .bunny-emotions { gap:10px; padding:0 20px max(12px,env(safe-area-inset-bottom)); }
.workspace.is-presentation .bunny-emotions button { max-width:135px; padding:10px; }
.workspace.is-presentation .bunny-emotions button span { font-size:12px; }
.workspace.is-presentation:not(.presentation-chat-open) .chat-card { display:none; }
.workspace.is-presentation.presentation-chat-open { grid-template-columns:minmax(0,1fr) min(390px,35vw); }
.workspace.is-presentation .chat-card { min-height:0; min-width:0; border-radius:0; border:0; border-left:1px solid #dce7d3; box-shadow:-8px 0 28px #395d4810; }
.workspace.is-presentation .chat-card .messages { min-height:0; max-height:none; flex:1 1 0; padding:20px 15px; }
.workspace.is-presentation .chat-head { padding:20px 15px 16px; }
.workspace.is-presentation .chat-head h2 { font-size:21px; }
.workspace.is-presentation .quick-prompts { padding:12px; gap:6px; }
.workspace.is-presentation .composer { margin-inline:12px; gap:5px; }
.workspace.is-presentation .chat-status { padding:9px 15px; }
@media(max-width:760px) {
  .stage-head { padding-inline:15px; gap:8px; }
  .stage-head #stage-title { font-size:9px; letter-spacing:.07em; }
  .stage-view-actions button { padding:7px 9px; font-size:10px; }
  .workspace.is-presentation.presentation-chat-open { grid-template-columns:minmax(0,1fr); }
  .workspace.is-presentation.presentation-chat-open .chat-card { position:absolute; z-index:5; top:76px; right:12px; bottom:max(12px,env(safe-area-inset-bottom)); width:min(370px,calc(100% - 24px)); border:1px solid #dce7d3; border-radius:22px; box-shadow:0 15px 60px #274d4933; }
  .workspace.is-presentation .stage-head { min-height:64px; padding:8px 12px; gap:8px; }
  .workspace.is-presentation #stage-title { max-width:110px; line-height:1.4; }
  .workspace.is-presentation .stage-view-actions { gap:6px; }
  .workspace.is-presentation .stage-view-actions button { padding:9px; font-size:11px; }
  .workspace.is-presentation .stage-footer { padding-inline:14px; }
  .workspace.is-presentation .stage-footer strong { font-size:11px; }
  .workspace.is-presentation .bunny-emotions { gap:5px; padding-inline:10px; }
  .workspace.is-presentation .bunny-emotions button { padding:8px 3px; }
  .workspace.is-presentation .bunny-emotions button span { font-size:9px; }
}
@media(max-height:540px) and (orientation:landscape) {
  .workspace.is-presentation .stage-head { min-height:44px; padding-block:4px; }
  .workspace.is-presentation .stage-view-actions button { min-height:32px; padding:5px 10px; font-size:11px; }
  .workspace.is-presentation .stage-footer { min-height:40px; padding-block:3px; }
  .workspace.is-presentation .bunny-emotions { padding-bottom:6px; }
  .workspace.is-presentation .bunny-emotions button { flex-direction:row; padding:6px; font-size:18px; }
  .workspace.is-presentation #stage .speech { font-size:14px; padding:8px 14px; top:8px; }
  .workspace.is-presentation #stage .bunny-wrap { height:calc(100% - 50px); bottom:0; }
}
