@font-face{font-family:Session Serif;src:url(assets/instrument-serif.woff2) format('woff2');font-display:swap}
@font-face{font-family:Session Mono;src:url(assets/geist-mono.woff2) format('woff2');font-weight:400 600;font-display:swap}
/* The approved presentation is scoped to rooms, never the surrounding app. */
body.session-presentation{
  --presentation-paper:#f5f2ea;--presentation-green:#25473b;--presentation-muted:#c5d3ca;--presentation-accent:#e5ad8a;--presentation-rule:#a9c5b54d;
  /* Landing-page cobalt, lightened for readable captions on the green room. */
  --presentation-blue:#365fc4;--presentation-reply:color-mix(in srgb,var(--presentation-blue) 42%,var(--presentation-paper));
  --presentation-caption-gutter:24px;--presentation-caption-left:150px;--presentation-caption-right:clamp(20px,3.6vw,54px);--presentation-footer-height:158px;--presentation-footer-inset:8px;--microphone-cue-bottom:calc(var(--presentation-footer-height) + 2px);--presentation-caption-height:calc(2 * 13px * 1.8 + 26px);
  --room-frame:var(--presentation-green);--room-paper:var(--presentation-green);--room-ink:var(--presentation-paper);--room-muted:var(--presentation-muted);--room-rule:var(--presentation-rule);--room-brown:var(--presentation-accent);--room-button:#f5f2ea;
  --font-serif:'Session Serif',Georgia,serif;--font-ui:'Session Mono',monospace;--font-mono:'Session Mono',monospace;
  --cream:var(--presentation-paper);--ink-body:var(--presentation-paper);--ink-2:var(--presentation-muted);--ink-3:var(--presentation-muted);--brass:var(--presentation-accent);
  margin:0;padding:0;background:#25473b url(assets/green-tile.png) repeat 0 0/512px 512px;color:var(--presentation-paper);color-scheme:dark;font:12px/1.7 var(--font-ui);
}
body.session-presentation [hidden]{display:none!important}
body.session-presentation ::selection{background:var(--presentation-accent);color:var(--presentation-green)}
body.session-presentation :is(input,textarea,[contenteditable]){caret-color:var(--presentation-accent)}
body.session-presentation :is(button,a,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--presentation-accent);outline-offset:4px}
body.session-presentation :is(.board-stage,.scratch-region,.nb-sheet-paper,.dialogue-scroll-text){scrollbar-color:#9fb5a7 transparent;scrollbar-width:thin;overscroll-behavior:contain}
body.session-presentation button{font-family:var(--font-ui);cursor:pointer}
body.session-presentation button:disabled{opacity:.45;cursor:default}
body.session-presentation .nb-topbar.product-room-header,body.session-presentation.player-body>.nb-topbar{
  flex:0 0 68px;min-height:68px;height:68px;padding:0 clamp(20px,3.6vw,54px);margin:0;border:0;border-bottom:1px solid var(--presentation-rule);background:transparent;box-shadow:none;
}
body.session-presentation .nb-brand-word{font:400 48px/1 'Instrument Serif',Georgia,serif!important;letter-spacing:-1px;color:var(--presentation-paper)!important;background:none;-webkit-text-fill-color:currentColor}
body.session-presentation :is(.session-room-subject,.session-room-header-label){color:var(--presentation-muted);font:11px var(--font-ui);border:0;position:absolute;left:50%;transform:translateX(-50%);padding:0;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.session-presentation .session-room-account-actions{display:none}
body.session-presentation .nb-page{padding:0!important;background:none}
body.session-presentation .nb-page-col{max-width:none;padding:0}
body.session-presentation .nb-tutor{border:0;border-radius:0;background:transparent;box-shadow:none;height:100%;min-height:0;overflow:hidden}
body.session-presentation .session-room-rail{position:fixed;inset:0 clamp(20px,3.6vw,54px) auto auto;height:68px;width:auto;display:flex;align-items:center;background:none;border:0;padding:0;z-index:90}
body.session-presentation .session-room-rail-bottom{display:none}
body.session-presentation .session-rail-action{width:auto;min-height:44px;padding:0 8px;display:flex;align-items:center;justify-content:center;flex-direction:row;gap:8px;border:0;background:none;color:#eac0b1;font:11px var(--font-ui);border-radius:4px}
body.session-presentation .session-rail-action svg{width:18px;height:18px}
body.session-presentation .session-rail-action:hover{background:#f5f2ea0d}
body.session-presentation .nb-tutor.teaching #tutor-board{inset:0;border:0;border-radius:0}
body.session-presentation .nb-tutor.teaching .presentation-student{display:none}
body.session-presentation #tutor-board iframe{background:transparent}
/* Four shared layouts; the caption and toolbar occupy their own bottom lane. */
body.session-presentation #tutor-live[hidden]{display:none!important}
body.session-presentation #tutor-zeno-wrap{width:100%;height:100%;animation:none!important;transform:none!important}
body.session-presentation #tutor-zeno{width:100%;height:100%;position:relative}
body.session-presentation #tutor-zeno>svg{width:100%;height:100%;display:block;overflow:visible}
body.session-presentation #tutor-zeno-name{display:none}
body.session-presentation :is(.nb-sheet-paper,.nb-plan,.nb-plan-box,.nb-orientation-card){background:transparent!important;color:var(--presentation-paper);border:0!important;border-radius:0!important;box-shadow:none!important}
body.session-presentation .nb-sheet-paper{padding:8px 0;max-height:100%;overflow:auto;translate:none!important}
body.session-presentation :is(.nb-sheet-pin,.nb-sheet-paper::before,.nb-sheet-paper::after){display:none!important}
body.session-presentation .nb-plan-box{border-top:1px solid var(--presentation-rule)!important;padding:16px 0;animation:none}
body.session-presentation .nb-plan-box-title{color:var(--presentation-paper);font:28px/1.25 var(--font-serif)}
body.session-presentation :is(.nb-plan-box-index,.nb-plan-box-note){color:var(--presentation-accent);background:none;font-weight:400}
/* One fixed strip shared by greetings, teaching, and student replies.
   Only viewport size sets its geometry; speaker and content never do. */
body.session-presentation .session-caption-strip{position:absolute;left:var(--presentation-caption-left);right:var(--presentation-caption-right);bottom:calc(var(--presentation-footer-height) - var(--presentation-footer-inset) - var(--presentation-caption-height));height:var(--presentation-caption-height);width:auto;max-width:none;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr;margin:0;padding:0;z-index:20;text-align:left;}
body.session-presentation .session-caption-strip>:is(#tutor-tutor-line,#tutor-student-line,#tutor-bubble,#student-bubble){grid-area:1/1;position:relative!important;inset:auto!important;transform:none!important;width:100%!important;min-width:0!important;max-width:none!important;height:100%!important;max-height:none!important;margin:0!important;float:none;overflow:visible;text-align:left!important;}
body.session-presentation .session-caption-strip [data-caption-prefix]{display:block;width:100%;min-width:0;max-width:none;max-height:2lh;margin:0;padding:0;color:var(--presentation-paper)!important;font:400 13px/1.8 var(--font-ui);letter-spacing:0;text-transform:none;white-space:normal;overflow-wrap:anywhere;overflow:auto;text-align:left;}
body.session-presentation .session-caption-strip [data-caption-paged=true]{overflow:hidden;}
body.session-presentation .session-caption-strip [data-caption-prefix]::before{content:attr(data-caption-prefix);color:var(--presentation-accent);font:inherit;}
body.session-presentation .session-caption-strip [data-caption-prefix]:has(>.caption-copy)::before{display:none;}
body.session-presentation .session-caption-strip [data-caption-prefix]:empty::before,body.session-presentation .session-caption-strip .caption-copy:empty::before{content:none;}
body.session-presentation .session-caption-strip .caption-copy{display:block;width:fit-content;max-width:100%;margin-inline:auto;text-align:left;}
body.session-presentation .session-caption-strip .caption-copy::before{content:attr(data-speaker);color:var(--presentation-accent);font:inherit;}
body.session-presentation .session-caption-strip [data-caption-prefix^="You:"]::before,
body.session-presentation .session-caption-strip .caption-copy[data-speaker^="You:"]::before{color:var(--presentation-reply);}
body.session-presentation .session-caption-strip .speech-label{display:none!important;}
body.session-presentation .session-caption-strip :is(.nb-zeno-said,.student-bubble){position:relative;width:100%;}
body.session-presentation .session-caption-strip .caption-pages-controls{position:absolute;top:calc(2 * 1.8 * 13px);right:0;display:flex;gap:4px;}
body.session-presentation .session-caption-strip #student-bubble:has(#typed-enter:not([hidden])){display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start;gap:12px;}
body.session-presentation .session-caption-strip #interrupt-transcript[contenteditable=true]{width:100%;min-height:2lh;max-height:2lh;overflow:auto;border-bottom:1px solid var(--presentation-rule);padding:0;}
body.session-presentation .session-caption-strip #typed-enter{position:static;grid-column:2;grid-row:1;margin:0;}
body.session-presentation .session-caption-strip .nb-room-composer-row{display:grid;grid-template-columns:auto minmax(0,1fr) 44px;align-items:start;gap:8px;padding:0;}
body.session-presentation .session-caption-strip .nb-room-composer-row>.speech-label{display:block!important;color:var(--presentation-reply)!important;font:400 13px/1.8 var(--font-ui);margin:0;}
body.session-presentation .session-caption-strip #tutor-composer-input{width:100%!important;min-width:0;min-height:2lh;max-height:2lh;height:2lh!important;resize:none;font:400 13px/1.8 var(--font-ui);padding:0!important;border:0!important;}
@media(max-width:760px){
 body.session-presentation .session-caption-strip :is([data-caption-prefix],#tutor-composer-input,.nb-room-composer-row>.speech-label){font-size:12px;}
 body.session-presentation .session-caption-strip .caption-pages-controls{top:calc(2 * 1.8 * 12px);}
}

body.session-presentation :is(.nb-zeno-said,.speech-bubble,.student-bubble){border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;color:var(--presentation-paper)!important;padding:0!important;margin:0!important;min-width:0!important;max-width:none!important;font:13px/1.8 var(--font-ui);animation:none!important}
body.session-presentation :is(.nb-zeno-said,.speech-bubble,.nb-tutor-tutor-line,.nb-tutor-student-line)::before,body.session-presentation :is(.nb-zeno-said,.speech-bubble,.nb-tutor-tutor-line,.nb-tutor-student-line)::after{display:none!important}
body.session-presentation :is(.nb-zeno-said,#tutor-bubble)::before{display:none!important}
body.session-presentation :is(.speech-label,.speech-text,.dialogue-scroll-text){font-family:var(--font-ui);letter-spacing:0;text-transform:none;color:inherit}
body.session-presentation .speech-label{font:11px/1.7 var(--font-ui);color:var(--presentation-accent);margin-bottom:7px}
body.session-presentation .speech-label::after{content:':'}
body.session-presentation[data-presentation-speaker=you] :is(#tutor-tutor-line,#tutor-bubble),body.session-presentation[data-presentation-speaker=zeno] :is(#tutor-student-line:not(.is-typing),#student-bubble),body.session-presentation[data-presentation-speaker=none] :is(#tutor-tutor-line,#tutor-student-line,#tutor-bubble,#student-bubble){visibility:hidden!important;pointer-events:none}
/* Actions retain their real event handlers and permission gates. */
body.session-presentation .session-room-response{position:absolute;inset:auto 20px 18px;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0;background:none;border:0;z-index:25}
body.session-presentation :is(#tutor-status-strip,#tutor-utility-controls){position:static!important;transform:none!important;inset:auto!important;display:flex;align-items:center;gap:8px;width:auto;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
body.session-presentation #tutor-status-strip{order:0;flex-direction:column}body.session-presentation #tutor-utility-controls{order:1}
body.session-presentation .nb-tutor-voice-row{display:flex;align-items:center;gap:10px}
body.session-presentation :is(.lesson-control,.nb-tutor-mic-btn,.nb-tutor-type-btn,.nb-tutor-break-btn){display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:9px;min-height:44px;width:auto;padding:0 12px;color:var(--presentation-paper);background:none;border:1px solid transparent;border-radius:4px;box-shadow:none;font:11px var(--font-ui);letter-spacing:0;text-transform:none}
body.session-presentation :is(.lesson-control,.nb-tutor-mic-btn,.nb-tutor-type-btn,.nb-tutor-break-btn):hover:not(:disabled){background:#f5f2ea10}
body.session-presentation :is(#raise-hand-button,#tutor-mic-btn){border-color:#a9c5b570;background:#18392f80}
body.session-presentation :is(#raise-hand-button,#tutor-mic-btn).is-recording,body.session-presentation[data-presentation-turn=hand] #raise-hand-button{background:var(--presentation-accent);border-color:var(--presentation-accent);color:#213d32}
body.session-presentation :is(.lesson-control-copy,.nb-tutor-mic-copy){display:flex;flex-direction:row;align-items:center;gap:8px;font:inherit}
body.session-presentation :is(.lesson-control,.nb-tutor-mic-btn,.nb-tutor-type-btn,.nb-tutor-break-btn) svg{width:18px;height:18px}
body.session-presentation kbd{font:9px var(--font-ui);border:1px solid currentColor;border-radius:3px;padding:2px 5px;opacity:.65;background:none;color:inherit;box-shadow:none;line-height:1.3}
body.session-presentation .presentation-redundant{display:none!important}
body.session-presentation .presentation-activity{text-transform:uppercase;color:var(--presentation-muted);font:11px/1.7 var(--font-ui);padding:0 12px}
body.session-presentation .presentation-activity[hidden]{display:none!important}
/* A button-only turn may hide input, but loading still belongs to this row. */
body.session-presentation .session-room-response[hidden]:has(.presentation-activity:not([hidden])){display:flex!important}
body.session-presentation[data-presentation-turn=recording] :is(#tutor-type-btn,#type-button){display:none!important}
body.session-presentation:is([data-presentation-turn=thinking],[data-presentation-turn=transcribing],[data-presentation-turn=invitation],[data-presentation-turn=explaining]) :is(#raise-hand-button,#tutor-mic-btn){display:none!important}
body.session-presentation :is(#tutor-composer,.nb-room-composer-row){background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important}
body.session-presentation #tutor-composer{position:relative!important;inset:auto!important;transform:none!important;width:100%;margin:auto;padding:0;border-bottom:1px solid var(--presentation-rule)!important}
body.session-presentation .session-room-response>#tutor-composer{position:absolute!important;bottom:66px!important;left:50%!important;transform:translateX(-50%)!important}
body.session-presentation :is(#tutor-composer-input,#interrupt-transcript[contenteditable=true]){color:var(--presentation-paper);background:none;border:0;border-bottom:1px solid var(--presentation-rule);border-radius:0;font:13px/1.8 var(--font-ui);padding:8px;min-height:44px;max-height:80px;resize:none}
body.session-presentation #tutor-composer-input::placeholder{color:var(--presentation-muted)}
body.session-presentation :is(#tutor-composer-send,#typed-enter){min-width:44px;min-height:44px;border:0;border-radius:4px;background:none;color:var(--presentation-accent)}
/* Teaching fills the available room; Piero sits at its bottom-left edge. */
body.session-presentation.player-body{padding:0;height:100dvh;display:flex;flex-direction:column;overflow:hidden}
body.session-presentation .blackboard,body.session-presentation .board-main{background:none;border:0;border-radius:0;box-shadow:none;min-height:0}
body.session-presentation .board-header{padding:18px clamp(20px,3.6vw,54px) 10px;background:none;border:0}
body.session-presentation .board-lesson-title{font:34px/1.2 var(--font-serif);color:var(--presentation-paper);font-weight:400}
body.session-presentation .board-progress{color:var(--presentation-muted)}
body.session-presentation .board-stage{background:none;border:0}
body.session-presentation .board-footer{flex-shrink:0;min-height:var(--presentation-footer-height);padding:var(--presentation-footer-inset) var(--presentation-caption-right) 18px var(--presentation-caption-left);background:none;border:0;display:flex;flex-direction:column;justify-content:flex-end;gap:10px}
body.session-presentation .board-controls,body.session-presentation #lesson-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:5px 8px;min-height:44px}
body.session-presentation #board-zeno>svg{width:100%;height:100%;overflow:visible}
body.session-presentation #hand-indicator{display:none!important}
body.session-presentation .scratch-region{background:transparent;border-left:1px solid var(--presentation-rule);border-radius:0;box-shadow:none;color:var(--presentation-paper)}
body.session-presentation .scratch-label{font:29px/1.2 var(--font-serif);color:var(--presentation-paper);letter-spacing:0;text-transform:none}
body.session-presentation .scratch-region :is(.scratch-inner,.live-tutor-panel){background:transparent;color:inherit}
/* Authored board contents keep their natural dimensions and source styles.
   Legacy token-based drawing inherits the room palette. */
body.session-presentation .blackboard{--board-ink:#f5f2ea;--board-ink-2:#c5d3ca;--board-ink-3:#c5d3ca;--board-bg:#25473b;--board-rule:#a9c5b54d;--accent:#e5ad8a}
body.session-presentation .presentation-voice{position:absolute;top:100%;left:50%;transform:translateX(-50%);height:22px;margin-top:6px}
.presentation-bars{height:22px;display:flex;align-items:center;gap:3px;color:#e5ad8a}
.presentation-bars i{display:block;width:2px;height:16px;border-radius:2px;background:currentColor;transform:scaleY(.18);transform-origin:center;transition:transform 40ms linear}.presentation-bars i:nth-child(3n){height:23px}.presentation-bars i:nth-child(3n + 1){height:11px}
body.session-presentation .presentation-student{position:absolute;right:clamp(20px,3.6vw,54px);bottom:18px;width:58px;display:flex;flex-direction:column;align-items:center;gap:4px;z-index:30;pointer-events:none}
.presentation-avatar{position:relative;display:grid;place-items:center;width:42px;height:42px;border:1px solid #a9c5b54d;border-radius:50%;background:#18392f80}
.presentation-avatar>svg{width:27px;height:27px}
.presentation-badge{position:absolute;right:-7px;bottom:-1px;display:grid;place-items:center;width:22px;height:22px;background:#e5ad8a;color:#25473b;border-radius:50%}
.presentation-badge svg{width:13px;height:13px}.presentation-student-name{font-size:10px;color:#c5d3ca}
.presentation-hand{animation:presentation-hand-arrives 380ms cubic-bezier(.16,1,.3,1)}
body.session-presentation[data-presentation-turn=hand] .presentation-student .presentation-bars{visibility:hidden}
body.session-presentation:is([data-presentation-turn=hand],[data-presentation-turn=recording]) .board-footer{padding-right:130px}
@keyframes presentation-hand-arrives{from{opacity:.4;transform:translateY(8px) rotate(-12deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
/* Joining, setup, forms and end-of-session receipts use the same materials. */
body.session-presentation :is(.nb-tutor-card,.nb-tutor-card-sheet,.session-ended-receipt){background:none;border:0;box-shadow:none;color:var(--presentation-paper)}
body.session-presentation :is(.nb-tutor-card-name,.session-ended-receipt h1){font-family:var(--font-serif);color:var(--presentation-paper)}
body.session-presentation :is(.nb-tutor-card-who,.nb-tutor-card-when,.nb-tutor-card-span,.nb-tutor-card-caption,.nb-tutor-agenda){color:var(--presentation-muted)}
body.session-presentation :is(.primary-button,.zcr-submit){background:var(--presentation-paper);color:var(--presentation-green);border:0;border-radius:4px;box-shadow:none;font:12px var(--font-ui)}
body.session-presentation .primary-button:hover:not(:disabled){background:#e5ad8a;color:#25473b}
body.session-presentation.orientation-room main{padding:0;min-height:0}
body.session-presentation.orientation-room .eyebrow{display:none}
body.session-presentation.orientation-room h1{font:30px/1.1 var(--font-serif)}
body.session-presentation.orientation-room .lab-feedback{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;align-self:flex-start;max-width:calc(100% - 48px);margin:0 24px;background:transparent;color:var(--presentation-paper);font-size:13px}
body.session-presentation.orientation-room .lab-feedback:has(> :not([hidden])){margin-block:12px}
body.session-presentation.orientation-room .lab-feedback>div{margin:0;padding:4px 0 4px 12px;background:transparent;border:0;border-left:2px solid var(--presentation-rule);border-radius:0;color:inherit}
body.session-presentation.orientation-room .lab-feedback #error{background:transparent;color:var(--presentation-paper);border-left-color:var(--presentation-accent)}
body.session-presentation.orientation-room .lab-feedback #orientation-reconnect{min-height:44px;margin:0;padding:8px 12px;border:1px solid var(--presentation-rule);border-radius:4px;color:var(--presentation-paper);text-decoration:none}
body.session-presentation.orientation-room .lab-feedback #orientation-reconnect:hover:not(:disabled){background:#f5f2ea0d;border-color:var(--presentation-accent)}
body.session-presentation .nb-orientation-card :is(h2,h3){font-family:var(--font-serif);font-weight:400;color:var(--presentation-paper)}
body.session-presentation .nb-orientation-card :is(input,select,textarea){background:#18392f80!important;color:var(--presentation-paper)!important;border:1px solid var(--presentation-rule)!important;border-radius:4px!important}
body.session-presentation .nb-orientation-card :is(button,a.nb-orient-option){background:transparent!important;color:var(--presentation-paper)!important;border:1px solid var(--presentation-rule)!important;border-radius:4px!important;box-shadow:none!important}
body.session-presentation .nb-orientation-card button:hover:not(:disabled){border-color:var(--presentation-accent)!important;background:#f5f2ea0d!important}
body.session-presentation .nb-orientation-card :is(.field span,.note,small){color:var(--presentation-muted)!important}
body.session-presentation .nb-orientation-card :is(.tile,.summary,.overview-card){background:none;border:0;border-top:1px solid var(--presentation-rule);border-radius:0;color:var(--presentation-paper)}
body.session-presentation .nb-orientation-card :is(button,a).primary{background:var(--presentation-paper)!important;color:var(--presentation-green)!important}
body.session-presentation .nb-orientation-card :is(button,a).primary:hover:not(:disabled){background:var(--presentation-accent)!important;color:var(--presentation-green)!important}
body.session-presentation .session-conversation-actions .nb-orientation-card {display:flex;justify-content:center;}
body.session-presentation .session-conversation-actions .nb-orientation-card :is(button,a).primary {
  display:inline-flex;align-items:center;justify-content:center;min-height:44px;
  margin:0;padding:12px 22px;border-radius:4px;font:400 13px/1.2 var(--font-ui);text-decoration:none;
}
body.session-presentation .nb-orientation-card :is(.tile p,.tile strong,.payment-price strong){color:var(--presentation-paper)}
body.session-presentation .nb-orientation-card :is(.payment-price,.payment-renewal,.payment-alternatives>p,.sms-choice-status){color:var(--presentation-muted)}
body.session-presentation .nb-orientation-card .payment-alternatives>p::before,
body.session-presentation .nb-orientation-card .payment-alternatives>p::after{background:var(--presentation-rule)}
body.session-presentation .nb-orientation-card .payment-plan-toggle{background:#18392f80;border:1px solid var(--presentation-rule);border-radius:4px}
body.session-presentation .nb-orientation-card .payment-plan-toggle button{border-color:transparent!important}
body.session-presentation .nb-orientation-card .payment-plan-toggle button[aria-pressed="true"]{background:var(--presentation-paper)!important;color:var(--presentation-green)!important}
body.session-presentation .nb-orientation-card .payment-error{color:#ffb5a4}
body.session-presentation .nb-orientation-card input::placeholder{color:var(--presentation-muted);opacity:1}
body.session-presentation.orientation-room .review-actions button{min-height:44px;padding:10px 14px;border:1px solid var(--presentation-rule);border-radius:4px;color:var(--presentation-paper);font-size:12px}
body.session-presentation.orientation-room .review-actions button:hover:not(:disabled){background:#f5f2ea0d;border-color:var(--presentation-accent)}
body.session-presentation.orientation-room .review-actions .primary{background:var(--presentation-paper);color:var(--presentation-green);border-color:var(--presentation-paper)}
body.session-presentation.orientation-room .review-actions .primary:hover:not(:disabled){background:var(--presentation-accent);color:var(--presentation-green)}
body.session-presentation .lab-sidebar{color:#25473b;--muted:#4d6758;--line:#25473b30;--room-muted:#4d6758;--room-ink:#25473b;color-scheme:light}
/* Practice uses the same bottom-left presenter and bottom caption lane. */
@media(max-width:760px){
  body.session-presentation .nb-topbar.product-room-header,body.session-presentation.player-body>.nb-topbar{height:60px;min-height:60px;flex-basis:60px;padding-inline:15px}
  body.session-presentation .nb-brand-word{font-size:38px!important}body.session-presentation .session-room-subject{font-size:9px;max-width:38%}
  body.session-presentation .session-room-rail{height:60px;right:10px}body.session-presentation .session-rail-action{font-size:10px}
  body.session-presentation{--presentation-caption-gutter:18px;--presentation-caption-left:104px;--presentation-caption-right:16px;--presentation-footer-height:190px;--presentation-footer-inset:6px;--presentation-caption-height:calc(2 * 12px * 1.8 + 26px)}
  body.session-presentation :is(.nb-zeno-said,.speech-text,.dialogue-scroll-text){font-size:12px}
  body.session-presentation .session-room-response{inset:auto 12px 18px;gap:3px}
  body.session-presentation :is(.lesson-control,.nb-tutor-mic-btn,.nb-tutor-type-btn,.nb-tutor-break-btn){font-size:10px;padding-inline:7px;gap:6px}
  body.session-presentation .board-header{padding:16px 16px 8px}body.session-presentation .board-lesson-title{font-size:26px}
  body.session-presentation .board-footer{min-height:190px;padding:6px 16px 18px 88px}
  body.session-presentation .board-controls,body.session-presentation #lesson-controls{gap:3px;justify-content:flex-start}
  body.session-presentation .presentation-student{right:15px;width:54px}.presentation-avatar{width:36px;height:36px}
  body.session-presentation:is([data-presentation-turn=hand],[data-presentation-turn=recording]) .board-footer{padding-right:78px}
  body.session-presentation .review-actions{flex-wrap:wrap;justify-content:flex-end;gap:2px}body.session-presentation .review-actions button{font-size:10px}
}
@media(prefers-reduced-motion:reduce){body.session-presentation .presentation-hand{animation:none}.presentation-bars i{transition:none}}

/* Explicitly retire the old capsule and bubble sizing, including inline sizes
   used by the speech follower. Keep its scroll position and audio ownership. */
body.session-presentation #tutor-root{background:transparent!important}
body.session-presentation #tutor-root .session-room-response{left:20px;right:20px;bottom:18px;transform:none;width:auto;max-width:none;min-height:44px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;flex-direction:row}
body.session-presentation #tutor-root .session-room-response .nb-tutor-voice-row{flex-direction:row}
body.session-presentation :is(#tutor-mic-btn,#tutor-type-btn,#tutor-break-btn){border-radius:4px;color:#f5f2ea;background:none;padding:0 12px}
body.session-presentation #tutor-mic-btn{border:1px solid #a9c5b570;background:#18392f80}
body.session-presentation #tutor-mic-btn.is-recording{background:#e5ad8a;color:#213d32;border-color:#e5ad8a}
body.session-presentation .nb-zeno-said{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important}
body.session-presentation #tutor-student-line.is-typing>.student-bubble{display:none}
body.session-presentation .dialogue-scroll-text[data-caption-paged=true]{overflow:hidden!important}
/* Reading controls sit below the fixed two-line caption area. */
body.session-presentation :is(.nb-zeno-said,.student-bubble){position:relative}
body.session-presentation .caption-pages-controls button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:24px;padding:0;border:0;border-radius:4px;background:transparent;color:var(--presentation-muted);cursor:pointer}
body.session-presentation .caption-pages-controls button:hover:not(:disabled){background:#f5f2ea10;color:var(--presentation-paper)}
body.session-presentation .caption-pages-controls button:disabled{opacity:.35;cursor:default}
body.session-presentation .caption-pages-controls button:focus-visible{outline:2px solid var(--presentation-accent);outline-offset:2px}
body.session-presentation .caption-pages-controls svg{width:14px;height:14px}
body.session-presentation .session-room-response{flex-wrap:wrap}
body.session-presentation :is(#tutor-status-strip,.nb-tutor-voice-row){min-width:0;max-width:100%;white-space:normal}
body.session-presentation #tutor-status{overflow-wrap:anywhere}
body.session-presentation .session-room-rail{flex-direction:row}
body.session-presentation:not([data-session-endable="1"]) .session-room-end{display:none}
body.session-presentation[data-session-endable="1"] .session-room-home{display:none}
body.session-presentation .lab-sidebar select{color:#25473b;color-scheme:light}
body.session-presentation .nb-orient-role-option .nb-orient-role-option-title{font:28px var(--font-serif)}
body.session-presentation #session-end-dialog{inset:0;padding:20px;background:transparent;border-radius:0;color:var(--presentation-green)}
body.session-presentation #session-end-dialog .nb-session-leave-backdrop{background:#102d2466;backdrop-filter:none;border-radius:0}
body.session-presentation #session-end-dialog .nb-session-leave-sheet{width:min(520px,100%);padding:46px 28px 28px;background:#f5f2ea;color:#25473b;border:0;border-radius:6px;box-shadow:0 18px 50px #071c2350}
body.session-presentation #session-end-dialog .session-overlay-close{position:absolute;inset:6px 6px auto auto;width:44px;height:44px;color:var(--presentation-green);border-radius:4px}
body.session-presentation #session-end-dialog .session-overlay-close:hover{background:#25473b0d}
body.session-presentation #session-end-dialog #session-end-error{color:#9a4535}
body.session-presentation #session-end-dialog :is(.session-overlay-zeno,.session-overlay-eyebrow){display:none}
body.session-presentation #session-end-title{font:38px/1.1 var(--font-serif);color:#25473b}
body.session-presentation #session-end-copy{font:12px/1.9 var(--font-ui);color:#526657}
body.session-presentation #session-end-dialog .nb-session-stay{background:#25473b;color:#f5f2ea;border-radius:4px;box-shadow:none;font:11px var(--font-ui)}
body.session-presentation #session-end-dialog .nb-session-confirm-leave{background:none;color:#9a4535;border:0;font:11px var(--font-ui)}
body.session-presentation.player-body{--chalk:#f5f2ea;--chalk-soft:#c5d3ca;--chalk-rule:#a9c5b54d;--chalk-box:#c5d3ca;--foil-first:#e5ad8a;--foil-outer:#a9c8e4;--foil-inner:#bdd6bb;--foil-last:#c9b7e3;--ballpoint:#a9c8e4;--accent:#e5ad8a;--board-surface:#25473b;--paper-grid:none}

body.session-presentation{--font-serif:'Session Serif',Georgia,serif!important;--font-ui:'Session Mono',monospace!important;--font-mono:'Session Mono',monospace!important}
body.session-presentation .session-rail-action svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
body.session-presentation #lesson-controls{background:none;border:0;border-radius:0;box-shadow:none;padding:0;min-height:44px}
body.session-presentation :is(.nb-topbar-actions a,.board-back-link){color:var(--presentation-muted);font:11px var(--font-ui);background:none;border:0}
body.session-presentation #tutor-begin-face>svg{width:100%;height:100%}
body.session-presentation .nb-tutor:has(#tutor-begin:not([hidden])) .session-room-response:not(:has(#microphone-preflight:not([hidden]))),body.session-presentation .nb-tutor.teaching .session-room-response,body.session-presentation.session-ended .session-room-response{display:none}
body.session-presentation #microphone-preflight{color:var(--presentation-paper);font:12px/1.7 var(--font-ui)}
body.session-presentation #microphone-preflight button{background:#f5f2ea;color:#25473b;border:0;border-radius:4px;font:13px/1 var(--font-ui)}
body.session-presentation #microphone-preflight p{color:var(--presentation-muted)}
body.session-presentation.session-ended .session-room-end{display:none}
body.session-presentation .session-ended-receipt{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:15px;padding:24px;z-index:3}
body.session-presentation .session-ended-receipt h1{font:clamp(42px,5vw,64px)/1.1 var(--font-serif);margin:0}
body.session-presentation .session-ended-receipt p{color:var(--presentation-muted);font-size:12px;margin:0 0 10px}
body.session-presentation .session-ended-symbol{display:block;color:var(--presentation-accent);margin-bottom:5px}
body.session-presentation .session-ended-symbol svg{display:block;width:18px;height:18px}


/* Waiting-room details; the shared transition module owns the drawing. */
body.session-presentation #tutor-begin .hs-room-header{display:none}
body.session-presentation .session-room-waiting-home{display:none;grid-column:3;grid-row:1;justify-self:end;font:11px var(--font-ui);color:var(--presentation-paper);text-decoration:none}
body.session-presentation:has(#tutor-begin:not([hidden])) .session-room-waiting-home{display:inline-flex}
body.session-presentation #tutor-begin-face .presentation-voice{display:none}
body.session-presentation #tutor-begin-face [data-rig=balls]>circle{fill:#fcfaf6;stroke:#25221d;stroke-width:1}
body.session-presentation #tutor-begin-face [data-rig=balls]>circle:nth-child(2){fill:#c2402a}
@keyframes presentation-arrive{from{opacity:0;transform:translateY(20px) scale(.96);filter:blur(3px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
body.session-presentation.orientation-lab .lab-sidebar .wordmark{font:400 40px/1 'Instrument Serif',Georgia,serif;letter-spacing:-1px;color:#fcfaf6;background:none;-webkit-text-fill-color:currentColor}
body.session-presentation.orientation-lab .lab-sidebar .wordmark span{font:11px/1.5 'Geist Mono',monospace;letter-spacing:0;text-transform:none;color:#c5d3ca}
body.session-presentation.orientation-lab .lab-sidebar{background:#25473b url(assets/green-tile.png) repeat 0 0/512px;color:#fcfaf6;border-right:1px solid #a9c5b54d;--muted:#c5d3ca;--room-muted:#c5d3ca;--line:#a9c5b54d}
body.session-presentation.orientation-lab .lab-sidebar :is(a,button){color:#fcfaf6}
body.session-presentation.orientation-lab .lab-sidebar button{background:transparent;border-color:#a9c5b54d;border-radius:6px}
body.session-presentation.orientation-lab .lab-sidebar button:hover{background:#fcfaf612}
body.session-presentation.orientation-lab .lab-sidebar button[aria-current=step],body.session-presentation.orientation-lab .lab-sidebar button.active{background:#fcfaf61f;color:#fcfaf6}
body.session-presentation .nb-topbar-actions a{letter-spacing:0;text-transform:none}
@media(max-width:760px){
}
/* Orientation keeps the microphone presenter's scale when a form appears.
   The panel may move or scroll; it does not select a smaller mascot. */

body.session-presentation #lesson-controls :is(.lesson-control-copy>span,kbd){font:inherit;letter-spacing:0;text-transform:none;color:inherit}
body.session-presentation #lesson-controls kbd{font-size:9px}
body.session-presentation:is([data-presentation-turn=hand],[data-presentation-turn=recording]) .dev-workspace-launcher{visibility:hidden}
body.session-presentation .board-controls .primary-button{letter-spacing:0;text-transform:none}

body.session-presentation .nb-page-col{width:100%;min-width:0;flex:1}
body.session-presentation #tutor-root{width:100%}
body.session-presentation #structured-author-state-review{background:var(--presentation-green);border:1px solid var(--presentation-rule);box-shadow:none;border-radius:4px}
body.session-presentation #structured-author-state-review button{background:transparent;color:var(--presentation-paper);border:0;font:11px var(--font-ui);letter-spacing:0;text-transform:none}
body.session-presentation #structured-author-state-review .structured-author-state-button--next{background:var(--presentation-accent);color:var(--presentation-green)}
.orientation-lab .orientation-lab-exit{display:inline-flex;align-items:center;gap:9px;min-height:44px;margin-bottom:12px;font:11px var(--font-mono);color:inherit;text-decoration:none}.orientation-lab .orientation-lab-exit:hover{text-decoration:underline;text-underline-offset:4px}.orientation-lab .orientation-lab-exit:focus-visible{outline:2px solid currentColor;outline-offset:4px}

body.session-presentation :is(#tutor-status,#interrupt-status){text-transform:uppercase}
