@font-face{font-family:Manrope;src:url('./fonts/manrope-latin.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap}
@font-face{font-family:Sora;src:url('./fonts/sora-latin.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
:root{--font-body:Manrope,sans-serif;--font-display:Sora,sans-serif;--ink:#183c35;--muted:#5d716a;--green:#215e4e;--green2:#e5efdf;--cream:#f5f6ef;--paper:#fffffc;--line:#dde4d9;--gold:#b78b47;--shadow:0 7px 28px #203d3010;font-family:var(--font-body);background:var(--cream)}
body{font-family:var(--font-body)}
h1,h2,h3,.brand,.question p,.coach-prompt,.synthesis,.metric-big,.skill-hero h2,.report-context h2,.report-synthesis,.modal-head h2,.modal-body blockquote{font-family:var(--font-display)}
.prompt-block{font-family:var(--font-body)}
h1,.page-title h1{font-size:clamp(25px,2.7vw,36px);font-weight:500;letter-spacing:-1.3px;line-height:1.25}
h2,h3{letter-spacing:-.35px}p{line-height:1.7}button,a,input,textarea,select{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b68de2;outline-offset:4px}
.layout{--sidebar-width:246px;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);transition:grid-template-columns .22s ease;min-height:100vh}
.layout.sidebar-collapsed{--sidebar-width:78px}
.sidebar{position:fixed;width:var(--sidebar-width);height:100dvh;display:flex;flex-direction:column;padding:23px 17px 16px;background:#173f36;color:#ecf3e8;border:0;z-index:30;transition:width .22s ease,padding .22s ease;overflow-y:auto;overflow-x:visible;scrollbar-width:thin;scrollbar-color:#607b6d transparent}
.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:7px;flex:none}
.brand{display:flex;align-items:center;font-size:20px;letter-spacing:-.9px;padding:0;color:#f3f8ed;text-decoration:none;gap:8px}
.brand-mark{width:32px;height:35px;background:transparent;color:#d9ef9d;border-radius:0}.brand-mark svg{width:30px;height:30px}
.brand-name{display:inline-flex;align-items:center}.brand small{font-family:var(--font-body);background:#ffffff15;color:#e8f1df;font-size:8px;margin-left:4px}
.sidebar-toggle{width:29px;height:32px;display:grid;place-items:center;border:1px solid #ffffff30;border-radius:8px;background:#ffffff09;color:#dfebd9;flex:none;padding:5px}
.sidebar-toggle:hover{background:#ffffff20}.sidebar-toggle svg{width:17px;height:17px}
.workspace-card{margin:26px 0 23px;background:#ffffff08;border:1px solid #ffffff16;border-radius:12px;color:#b9cdbc;padding:14px;gap:8px;font-size:10px;display:flex}.workspace-card strong{color:#f1f4e9;font-size:12px;line-height:1.6}.workspace-card .eyebrow{color:#b9cdbc;font-size:8px;letter-spacing:1.7px}
.nav{float:none;display:flex;flex-direction:column;margin:0;gap:6px}
.nav button{color:#d5e1ce;min-height:44px;border-radius:10px;font-size:12px;font-weight:600;padding:11px;gap:11px;position:relative;justify-content:flex-start}
.nav button:hover:not(.active){background:#ffffff12;color:white}.nav button.active{background:#d7ee9c;color:#183d30;box-shadow:0 4px 15px #102c251a}.nav button svg{width:19px;height:19px}
.nav-live{background:#427146}.nav button span{position:static;color:inherit;font-size:inherit;padding:0}
.sidebar-label{color:#acc4af;font-size:8px;letter-spacing:1.8px;margin:25px 9px 12px;display:flex}.sidebar-label span{color:#d1dfcc}
.group-list{display:flex;gap:5px;max-height:220px;overflow-y:auto;min-height:80px;flex-shrink:1}.room-link{color:#d5e2cf;min-height:45px;padding:7px 9px;border-radius:9px;gap:10px;flex:none}.room-link-symbol{color:#d3e3c8;background:#ffffff10;width:28px;height:28px;border-radius:8px;font-size:10px;flex:none}.room-link small{color:#b2c7b4;font-size:9px}.room-link strong{font-size:11px}.room-link:hover,.room-link.selected{background:#ffffff0e;border-color:#ffffff2a}.room-link.selected .room-link-symbol{background:#d3e5bb;color:#214531}.room-status.green{background:#9dc397}.room-status.amber{background:#f0c97d}.room-status.red{background:#eaa69b}.room-status.blue{background:#9ac3d9}
.all-rooms{display:flex;min-height:32px;margin:9px 9px 13px;color:#c7dfb4;font-size:10px}.all-rooms svg{width:15px;height:15px}
.sidebar-bottom{border-color:#ffffff20;margin-top:auto;padding:12px 4px 0;display:block}.sidebar-bottom>button{color:#c0d1bb;font-size:10px;padding:9px 0;min-height:34px;gap:10px}.sidebar-bottom>button:hover{color:white}.sidebar-bottom>button svg{width:17px;height:17px}.profile{display:flex;margin-top:13px}.profile small{color:#b6cab6;font-size:9px;line-height:1.5}.profile strong{font-size:11px}.profile .badge{background:#dcebc8;color:#244d37}
.sidebar-scrim{display:none}
.sidebar-collapsed .sidebar{padding:22px 12px 16px;overflow:visible}.sidebar-collapsed .sidebar-header{flex-direction:column;gap:16px}.sidebar-collapsed .brand{justify-content:center}.sidebar-collapsed .brand-name,.sidebar-collapsed .workspace-card,.sidebar-collapsed .nav button span,.sidebar-collapsed .nav-live,.sidebar-collapsed .sidebar-label,.sidebar-collapsed .profile,.sidebar-collapsed .room-link>span:nth-child(2),.sidebar-collapsed .room-status{display:none}
.sidebar-collapsed .nav{margin-top:25px;gap:8px}.sidebar-collapsed .nav button{justify-content:center;padding:12px;font-size:0;min-height:47px}.sidebar-collapsed .nav button svg{width:22px;height:22px}.sidebar-collapsed .group-list{border-top:1px solid #ffffff20;margin-top:22px;padding-top:16px;overflow:visible;max-height:none;min-height:0}.sidebar-collapsed .room-link{padding:7px;justify-content:center;min-height:43px;position:relative}.sidebar-collapsed .room-link-symbol{width:29px;height:29px}.sidebar-collapsed .all-rooms{font-size:0;justify-content:center;margin:8px 0 12px}.sidebar-collapsed .all-rooms svg{width:18px;height:18px}.sidebar-collapsed .sidebar-bottom{padding:10px 0 0}.sidebar-collapsed .sidebar-bottom>button{font-size:0;width:100%;justify-content:center;min-height:40px}.sidebar-collapsed .sidebar-bottom>button svg{width:20px;height:20px}
.sidebar-collapsed [data-tooltip]:after{content:attr(data-tooltip);position:absolute;left:calc(100% + 13px);top:50%;transform:translateY(-50%);font:600 11px var(--font-body);background:#173f36;color:#f3f7ed;border:1px solid #6f8e73;border-radius:7px;padding:9px 12px;white-space:nowrap;box-shadow:var(--shadow);pointer-events:none;opacity:0;z-index:50}
.sidebar-collapsed [data-tooltip]:hover:after,.sidebar-collapsed [data-tooltip]:focus-visible:after{opacity:1}
.main-column{grid-column:2;min-width:0}.topbar{background:#fbfcf6;height:66px;padding:0 32px;gap:10px}.breadcrumb{font-size:11px;color:var(--ink);gap:8px;flex-wrap:wrap;line-height:1.5}.breadcrumb strong{font-weight:700}.breadcrumb .view-indicator{display:block;width:6px;height:6px;border-radius:50%;background:#4b7958}.course-crumb{color:var(--muted);font-size:10px;margin-left:6px}.top-actions{gap:8px}.top-actions .pill{font-size:9px}.top-actions .button{white-space:nowrap}.workspace{max-width:1500px;padding:32px}.page-title{margin-bottom:23px;gap:24px}.page-title p{font-size:12px;max-width:690px;margin-top:10px}.page-title>.row{padding-top:2px}
.button{border-radius:9px;font-weight:650;transition:background .15s ease,transform .15s ease,box-shadow .15s ease}.button:hover{transform:translateY(-1px);box-shadow:0 3px 8px #1c3e3010}.button.primary{background:#245e4d;border-color:#245e4d}.button.primary:hover{background:#194b3c}.button.text-link{font-size:10px;border:0;padding:0;background:transparent;color:var(--green);text-decoration:underline;box-shadow:none;transform:none}.pill{font-weight:600}.card{border-radius:17px;box-shadow:var(--shadow);background:var(--paper);border-color:#dfe5da}.card-head{padding:19px 23px;background:#ffffff70}.card-body{padding:23px}.card-head h2{font-size:14px;font-weight:500}.card-head .button{font-size:10px}.card-head .clock time{font-family:var(--font-display);font-size:18px}
.session-phase{gap:8px}.phase{border-radius:10px;padding:12px 14px;background:#ffffff80;gap:10px;display:flex}.phase strong{font-size:11px;white-space:normal}.phase span.small{font-size:9px}.phase-number{width:25px;height:25px;margin:0}.phase.active{background:#e4eddb;border-color:#b9cbae;color:#234b37}.phase.active .phase-number{background:#245e4d;border-color:#245e4d;color:white}.phase.active span.small{color:#506a50}.phase.complete{background:#f0f4e9}.phase-instruction{font-size:11px;line-height:1.7;padding:14px 2px 20px;color:#5e725d}.session-grid{grid-template-columns:minmax(0,1.48fr) minmax(300px,1fr);gap:24px}.question{border:0;padding:0;margin-bottom:0}.question>span{font-size:10px;margin-bottom:8px}.question p{font-size:clamp(17px,1.55vw,22px);font-weight:400;line-height:1.55;letter-spacing:-.6px}
.room-stage{padding:6px 0 17px;margin-bottom:22px}.group-orbit{position:relative;width:100%;max-width:490px;height:328px;margin:2px auto 6px}.orbit-ring{position:absolute;width:228px;height:228px;left:50%;top:52%;transform:translate(-50%,-50%);border:1px dashed #bdcfb2;border-radius:50%;box-shadow:0 0 0 23px #eff4e838}.orbit-center{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);width:152px;height:152px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:#eef4e6;border:1px solid #dfebd4;box-shadow:0 0 0 12px #f5f8ef;color:#487049;text-align:center}.orbit-mark{color:#2b7763;display:grid;place-items:center;margin-bottom:2px}.orbit-mark svg{width:30px;height:30px}.orbit-center strong{font-family:var(--font-display);font-size:15px;font-weight:500;letter-spacing:-.5px}.orbit-center>span:not(.orbit-mark){font-size:9px;letter-spacing:.6px}.orbit-center small{font-size:8px;margin-top:4px;color:#62765c}
.orbit-person{position:absolute;display:flex;flex-direction:column;align-items:center;gap:5px;width:130px;padding:6px;border:0;background:transparent;color:var(--ink);border-radius:14px;transform:translateX(-50%)}.orbit-person:hover{background:#edf3e580}.orbit-person .badge{width:49px;height:49px;background:#d3b06b;color:#fff;font-size:15px;border:5px solid var(--paper);box-shadow:0 3px 12px #254f2c10;transition:box-shadow .15s ease}.orbit-person-0{left:50%;top:2px}.orbit-person-1{left:19%;top:213px}.orbit-person-2{left:81%;top:213px}.orbit-person-0 .badge{background:#d29475}.orbit-person-1 .badge{background:#a3b996}.orbit-person-2 .badge{background:#a7a0cd}.orbit-person.selected .badge{box-shadow:0 0 0 2px #7c9b68,0 4px 12px #254f2c10}.orbit-person strong{font-size:12px;font-weight:700}.orbit-person small{font-size:9px;color:#60715c;white-space:nowrap}.participation-options{display:flex;justify-content:center;gap:4px;flex-wrap:wrap}.participation-options .button{font-size:9px;padding:7px 8px;border-color:transparent}.participation-options svg{width:13px;height:13px}.stage-caption{font-size:9px;text-align:center;line-height:1.8;margin-top:10px;color:#62725f}
.assignment-card{grid-template-columns:1fr;gap:13px;margin-bottom:25px;padding:18px 18px 0;border-radius:12px;box-shadow:none;background:#f7f8f0}.assignment-intro h2{font-size:15px;line-height:1.6}.assignment-intro>p{font-size:11px}.draft-excerpt{background:#eaf0df;border-radius:9px;padding:14px 16px}.draft-excerpt p{font-size:11px;color:#4e634c;line-height:1.8}.draft-excerpt>span{font-size:10px}.response-pattern{padding-top:3px}.response-pattern p{font-size:11px;color:#53674e}.assignment-foot{font-size:9px;padding:11px 0}.assignment-card:focus{outline:2px solid #799d66;outline-offset:5px}
.coach-card{background:#eeebf6;border:1px solid #dfd7ee;box-shadow:0 8px 24px #49356408}.coach-head{margin-bottom:21px}.coach-symbol{background:#ffffff70;border-color:#d5c9e4;color:#716188;border-radius:10px;width:37px;height:37px}.coach-head h2{font-size:15px;font-weight:500}.coach-card .pill.green{background:#e2e9d8}.coach-state{font-size:13px;line-height:1.9;color:#594f6c;margin:23px 0 25px}.coach-prompt{font-size:clamp(18px,1.65vw,23px);line-height:1.65;letter-spacing:-.6px;color:#342f45}.coach-card .rule{border-color:#d7cce6;margin:23px 0}.prompt-evidence{background:#e5deee;color:#61516e;border-radius:9px;padding:13px;font-size:11px}.prompt-evidence strong{color:#4d3e5b}.scenario-grid{gap:7px}.scenario-grid button{font-size:11px;padding:11px 9px;background:#ffffff70;border-color:#d8cde6;border-radius:8px;min-height:40px}.scenario-grid button.active{background:#d7cbe7;border-color:#9780b0;color:#4b3567}.coach-actions .button{font-size:10px}.coach-card .small.muted{color:#665776}.demo-gates{font-size:10px}.demo-gates>span{font-size:9px}.checkpoints-card h2{font-weight:500}.checkpoint{min-height:58px}.checkpoint strong{font-size:11px}.checkpoint small{font-size:10px}.checkpoint-marker{width:27px;height:27px}.badge{font-family:var(--font-body)}
.transcript{max-height:420px;gap:22px}.turn p{font-size:12px;line-height:1.8}.turn-top{font-size:11px}.turn-top time{font-size:10px;color:#667a6a}.turn .text-button{font-size:10px;color:#3a6a4a}.composer textarea{font-size:12px;background:#fbfcf5;min-height:90px;border-radius:10px;padding:13px}.composer label.mini-heading{font-size:12px}.composer select{font-size:11px;min-height:35px}.session-footer{font-size:10px}.feedback h3{font-size:13px;line-height:1.6;font-weight:500}.feedback p{font-size:12px}.feedback-meta{font-size:10px}.metric-big{font-weight:400}.synthesis,.report-synthesis{font-size:21px;line-height:1.6;letter-spacing:-.6px}.group-card{border-radius:10px}.group-card:hover{background:#edf4e4;border-color:#b4c69e}.group-card p{font-size:11px;line-height:1.6}.queue-item p,.indicator p{font-size:11px}.report-context{border-radius:14px;background:#eaf0df}.report-context h2{font-size:23px}.report-grid .card{box-shadow:var(--shadow)}.modal-head h2{font-size:22px;line-height:1.45;font-weight:500}.modal-body blockquote{font-size:18px}.modal-body p{line-height:1.8}.modal-body .notice{line-height:1.8}.bottom-note{font-size:10px}
@media(min-width:1500px){.workspace{padding:38px 42px}.topbar{padding:0 42px}.group-orbit{height:360px}.orbit-person-1,.orbit-person-2{top:240px}.orbit-ring{width:245px;height:245px}}
@media(max-height:800px) and (min-width:761px){.sidebar{padding-top:19px}.workspace-card{margin-top:20px;margin-bottom:17px;padding:11px}.sidebar-label{margin-top:19px}.group-list{max-height:180px}.room-link{min-height:39px;padding-top:5px;padding-bottom:5px}.sidebar-bottom>button{min-height:31px;padding:7px 0}.profile{margin-top:10px}.sidebar-collapsed .group-list{max-height:none}.sidebar-collapsed .room-link{min-height:36px;padding:4px}.sidebar-collapsed .nav{margin-top:20px}.sidebar-collapsed .nav button{min-height:43px}.sidebar-collapsed .group-list{margin-top:18px;padding-top:12px}}
@media(max-width:1100px){.session-grid,.instructor-grid{grid-template-columns:1fr}.session-grid>.stack{display:grid;grid-template-columns:1fr 1fr;align-items:start}.session-grid>.stack .demo-gates{grid-column:1/-1;grid-row:2}.group-orbit{max-width:460px}.assignment-card{grid-template-columns:1.05fr 1fr}.assignment-foot{grid-column:1/-1}.course-crumb{display:none}.workspace{padding:27px}.topbar{padding:0 27px}.card-body{padding:22px}.page-title p{max-width:560px}.group-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.layout,.layout.sidebar-expanded,.layout.sidebar-collapsed{display:grid;grid-template-columns:78px minmax(0,1fr)}.sidebar{width:var(--sidebar-width);position:fixed;height:100dvh;display:flex;flex-direction:column;border:0;padding:22px 17px 16px}.sidebar-expanded .sidebar{box-shadow:10px 0 40px #12332330}.sidebar-expanded .sidebar-scrim{display:block;position:fixed;inset:0;background:#203d3652;border:0;z-index:25}.sidebar-expanded .brand{font-size:20px;justify-content:flex-start;gap:8px}.sidebar-expanded .brand small{display:inline}.sidebar-expanded .workspace-card,.sidebar-expanded .sidebar-label,.sidebar-expanded .group-list,.sidebar-expanded .all-rooms,.sidebar-expanded .profile{display:flex}.sidebar-expanded .nav{margin:0;flex-direction:column;gap:6px}.sidebar-expanded .nav button{font-size:12px;justify-content:flex-start;padding:11px;min-height:44px}.sidebar-expanded .nav button span{display:inline;position:static;font-size:12px;color:inherit;padding:0}.sidebar-expanded .nav-live{display:block}.sidebar-expanded .sidebar-bottom>button{font-size:10px;justify-content:flex-start;width:auto}.sidebar-expanded .profile strong,.sidebar-expanded .profile small{display:block}.sidebar-expanded .group-list{max-height:180px}.sidebar-expanded .room-link>span:nth-child(2){display:block}.sidebar-expanded .room-status{display:block}.sidebar-expanded .all-rooms{font-size:10px}.sidebar-collapsed .sidebar{padding:22px 12px 16px}.topbar{height:auto;min-height:67px;padding:12px 18px;flex-wrap:wrap}.breadcrumb{font-size:10px}.top-actions{gap:5px}.top-actions>.pill{display:none}.top-actions .button{font-size:9px;padding:6px 8px}.workspace{padding:23px 18px}.page-title{display:block}.page-title h1{font-size:27px}.page-title p{font-size:12px;max-width:none}.page-title>.row{margin-top:14px;flex-direction:row;align-items:center}.page-title .button{font-size:11px}.page-title .button svg{display:block}.phase{display:block;padding:11px 8px}.phase-number{width:23px;height:23px;margin-bottom:8px;font-size:10px}.phase strong{font-size:9px;line-height:1.5;white-space:normal}.phase span.small{font-size:8px}.session-phase{gap:5px}.phase-instruction{font-size:11px;padding-bottom:18px}.phase-instruction svg{display:none}.session-grid,.instructor-grid,.session-grid>.stack{display:grid;grid-template-columns:1fr}.session-grid>.stack .demo-gates{grid-row:auto;grid-column:auto}.assignment-card{grid-template-columns:1fr;padding:16px 15px 0}.assignment-foot{grid-column:auto}.card-head{padding:16px}.card-head h2{font-size:12px}.card-head>.row{gap:7px}.card-head .clock time{font-size:15px}.card-head .button{font-size:8px;padding:6px}.card-body{padding:17px}.question p{font-size:18px}.group-orbit{height:306px;min-width:0}.orbit-ring{width:196px;height:196px}.orbit-center{width:130px;height:130px;box-shadow:0 0 0 9px #f5f8ef}.orbit-center strong{font-size:13px}.orbit-center small{font-size:7px}.orbit-person{width:105px}.orbit-person-1{left:19%;top:202px}.orbit-person-2{left:81%;top:202px}.orbit-person .badge{width:44px;height:44px;font-size:13px}.orbit-person strong{font-size:11px}.orbit-person small{font-size:8px}.participation-options{gap:3px}.participation-options .button{font-size:9px;padding:7px 4px}.participation-options svg{display:none}.stage-caption{font-size:9px}.coach-prompt{font-size:20px}.group-grid{grid-template-columns:repeat(2,1fr)}.vault-intro,.vault-grid,.report-grid{grid-template-columns:1fr}.report-context{padding:18px}.report-context h2{font-size:20px}.bottom-note{display:block}.bottom-note>span{display:block}}
@media(max-width:760px){.sidebar-expanded .sidebar-scrim{left:var(--sidebar-width)}}
@media(max-width:410px){.workspace{padding-left:11px;padding-right:11px}.topbar{padding-left:11px;padding-right:11px}.card-body{padding:13px}.group-orbit{height:302px}.orbit-ring{width:175px;height:175px}.orbit-person-1{left:18%}.orbit-person-2{left:82%}.orbit-person{width:91px}.orbit-person small{font-size:7px}.orbit-center{width:115px;height:115px}.orbit-mark svg{width:24px;height:24px}.orbit-center small{max-width:85px;line-height:1.4}.phase{padding:10px 6px}.phase strong{font-size:8px}.question p{font-size:16px}.card-head{flex-wrap:wrap;gap:10px}.composer-bottom{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* The compact rail stays usable on short and landscape screens. Native titles and ARIA labels identify its controls. */
.sidebar-collapsed .sidebar{overflow-y:auto;overflow-x:hidden}
.sidebar-collapsed .group-list{flex-shrink:0}
.sidebar-collapsed [data-tooltip]:after{display:none}
