/* EMS SkillLab studio styles — consolidated in original cascade order, generated for coordinated rebuild. */

/* ===== styles.css ===== */
:root{--ink:#10232e;--muted:#5c6c75;--teal:#087b76;--blue:#134f67;--mint:#dff4ef;--paper:#f5f8f8;--line:#d5e0e3;--soft:#eaf2f3;--warm:#fff5e9;--shadow:0 12px 34px rgba(16,35,46,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.52}.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:10px;z-index:99}.skip:focus{left:8px}.wrap{max-width:1180px;margin:auto;padding:0 22px}.releasebar{text-align:center;padding:8px 16px;background:var(--blue);color:#fff;font-size:.82rem}.top{position:sticky;top:0;z-index:10;background:rgba(245,248,248,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.nav{min-height:66px;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{font-weight:900;text-decoration:none;font-size:1.2rem;white-space:nowrap}.brand span{color:var(--teal)}nav{display:flex;gap:17px;overflow-x:auto;white-space:nowrap;padding:12px 0}nav a{text-decoration:none;font-size:.9rem}.hero{padding:72px 0 56px;background:linear-gradient(180deg,#e5f4f1,transparent)}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.74rem;font-weight:850;color:var(--teal)}h1{font-size:clamp(2.8rem,6vw,5rem);line-height:.98;letter-spacing:-.052em;margin:.18em 0 .28em}h2{font-size:clamp(2rem,4vw,3rem);line-height:1.05;letter-spacing:-.03em;margin:.2em 0}h3{margin:.3em 0}.lead,.section-head p,.hero-card span{color:var(--muted)}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.hero-card,.panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow)}.hero-card>a{display:flex;flex-direction:column;padding:13px 0;border-top:1px solid var(--line);text-decoration:none}.btn{display:inline-block;background:var(--teal);color:#fff;border:0;border-radius:10px;padding:12px 16px;font:inherit;font-weight:800;text-decoration:none;cursor:pointer}.ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}.secondary{background:var(--blue)}.full{width:100%}.section{padding:64px 0}.alt{background:#edf3f3}.section-head{max-width:820px;margin-bottom:28px}.tool-grid{display:grid;grid-template-columns:330px 1fr;gap:18px;align-items:start}.compact{height:max-content}.builder{display:grid;grid-template-columns:370px 1fr;gap:18px;align-items:start}.stickyform{position:sticky;top:84px}label{display:block;font-weight:750;margin-bottom:11px}select,input{width:100%;margin-top:5px;padding:11px 12px;border:1px solid #bbc8cd;border-radius:9px;background:#fff;font:inherit}.fieldhelp{margin:-4px 0 12px;color:var(--muted);font-size:.82rem}.two{display:grid;grid-template-columns:1fr 1fr;gap:9px}.micro{font-size:.82rem;color:var(--muted)}.empty{min-height:390px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted)}.printbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.station-head{border-bottom:2px solid var(--ink);padding-bottom:14px}.snapshot{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:13px}.snap{background:var(--soft);padding:10px;border-radius:9px}.snap b{display:block;font-size:1.1rem}.snap span{font-size:.74rem;color:var(--muted)}.quickrun{background:#f9fbfb;border:1px solid var(--line);border-radius:13px;padding:15px;margin-top:16px}.quickrun-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.quickrun-grid>div{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px}.jump{display:flex;gap:7px;flex-wrap:wrap;margin:13px 0}.jump a{font-size:.78rem;text-decoration:none;background:var(--soft);padding:6px 8px;border-radius:999px}.station-section{border-top:1px solid var(--line);padding-top:17px;margin-top:18px;scroll-margin-top:90px}.confidence{background:var(--mint);border-radius:12px;padding:14px}.talking{background:#f8fafb;border-left:4px solid var(--teal);padding:11px 13px;margin:8px 0}.script{background:var(--warm);padding:12px 14px;border-radius:10px}.timeline{display:grid;gap:8px}.phase{display:grid;grid-template-columns:105px 1fr;gap:12px;background:#f8fafb;border:1px solid var(--line);border-radius:10px;padding:11px}.phase-time{font-weight:850;color:var(--teal)}.equip-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.equip{padding:9px;background:var(--soft);border-radius:8px}.demo-table{display:grid;gap:7px}.demo-step{display:grid;grid-template-columns:100px 1fr;gap:10px;padding:10px;border:1px solid var(--line);border-radius:9px}.demo-step b{color:var(--teal)}.checklist{list-style:none;padding:0}.checklist li{padding:7px 0 7px 28px;position:relative;border-bottom:1px dotted #dce3e5}.checklist li:before{content:"☐";position:absolute;left:2px}.qa{padding:10px 0;border-bottom:1px solid var(--line)}.coach{border-left:4px solid var(--teal);background:#f8fafb;padding:10px 12px;margin:7px 0}.reminder{background:var(--warm);padding:11px;border-radius:9px;margin:7px 0}.focus-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.focus-grid article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}.scenario-card h2{margin-bottom:6px}.scenario-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:12px 0}.scenario-meta div{background:var(--soft);padding:10px;border-radius:9px}.student-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.student-steps article{background:var(--soft);border-radius:10px;padding:13px}.program-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.program-grid article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.program-grid span{font-size:.72rem;font-weight:850;background:var(--mint);padding:5px 8px;border-radius:999px}.signup{background:var(--blue);color:white;border-radius:20px;padding:32px;display:grid;grid-template-columns:1fr .8fr;gap:30px}.signup .eyebrow{color:#91ddd5}.signup-form{background:#fff;color:var(--ink);padding:18px;border-radius:13px}footer{padding:32px 0;background:white;border-top:1px solid var(--line)}.footer{display:flex;justify-content:space-between;gap:30px}.footer p{color:var(--muted);font-size:.84rem}.footerlinks{display:flex;gap:14px}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #8bd6cf;outline-offset:2px}
@media(max-width:900px){.hero-grid,.builder,.signup,.tool-grid{grid-template-columns:1fr}.stickyform{position:static}.snapshot{grid-template-columns:repeat(2,1fr)}.program-grid,.focus-grid{grid-template-columns:1fr}.equip-grid,.quickrun-grid{grid-template-columns:1fr}.phase{grid-template-columns:85px 1fr}.demo-step{grid-template-columns:80px 1fr}.student-steps{grid-template-columns:1fr}.nav{align-items:flex-start;flex-direction:column;padding:10px 0}.top{position:relative}.footer{flex-direction:column}}
@media(max-width:700px){#nl-badge-frame{display:none!important}.workspace-shell{padding-bottom:32px}.program-workspace{padding-bottom:40px}}
#nl-badge-frame{display:none!important}
@media print{.releasebar,.top,.hero,#student,.stickyform,#scenario,#program,#updates,footer,.printbar{display:none!important}.section.alt{background:white;padding:0}.builder{display:block}.output{border:0;box-shadow:none;padding:0}.wrap{max-width:none;padding:0}.station-section{break-inside:avoid}}

.field-help{display:block;margin-top:.38rem;color:#60707a;font-size:.82rem;line-height:1.35;font-weight:400}

.slim-select-sync{padding-top:.75rem;padding-bottom:.25rem}
.sync-toggle{display:flex;align-items:flex-start;gap:.55rem;font-weight:700}
.sync-toggle input{width:auto;margin-top:.2rem}


/* Beta 1.5 — simplified Station Builder */
.builder-clean{align-items:start}
.station-form-clean{display:grid;gap:14px}
.compact-head{margin-bottom:18px}
.form-block{border:1px solid #dce6ea;border-radius:14px;padding:14px;background:#fff}
.form-block-title{font-weight:800;font-size:.92rem;color:#1b3340;margin-bottom:10px}
.form-block-title.small{font-size:.86rem}
.selector-grid{display:grid;grid-template-columns:.75fr 1fr 1.25fr;gap:10px}
.resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.station-form-clean label{margin:0;font-size:.86rem}
.station-form-clean select,.station-form-clean input,.station-form-clean textarea{margin-top:6px}
.station-form-clean small{display:block;margin-top:4px;color:#6c7c85;font-size:.73rem;line-height:1.25}
.choice-row{display:flex;gap:7px;flex-wrap:wrap}
.choice-row.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.choice-btn{appearance:none;border:1px solid #c8d6dc;background:#f7fafb;color:#18313d;border-radius:10px;padding:10px 12px;font:inherit;font-weight:700;cursor:pointer;min-height:42px}
.choice-btn:hover{border-color:#7ea6aa;background:#f0f7f7}
.choice-btn.active{border-color:#157b78;background:#e9f6f5;box-shadow:0 0 0 1px #157b78 inset}
.choice-btn span{display:block;font-size:.72rem;font-weight:500;color:#61747d;margin-top:2px}
.choice-row:not(.three) .choice-btn{flex:1 1 82px}
.sr-only-select{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.compact-help{margin:8px 0 0!important;font-size:.78rem!important;line-height:1.35}
.optional-settings{border:1px solid #dce6ea;border-radius:12px;background:#f9fbfc}
.optional-settings>summary{cursor:pointer;font-weight:800;padding:12px 14px;list-style:none}
.optional-settings>summary::-webkit-details-marker{display:none}
.optional-settings>summary:before{content:"＋";display:inline-block;margin-right:7px}
.optional-settings[open]>summary:before{content:"−"}
.optional-inner{padding:0 14px 14px}
.local-settings-nested{margin-top:12px;border-top:1px solid #dce6ea;padding-top:10px}
.local-settings-nested summary{font-size:.84rem;font-weight:750;cursor:pointer;margin-bottom:8px}
.primary-build-btn{margin-top:2px}
.centered{text-align:center}
@media (max-width:900px){
  .selector-grid{grid-template-columns:1fr}
}
@media (max-width:620px){
  .station-form-clean{gap:10px}
  .form-block{padding:12px}
  .resource-grid{grid-template-columns:1fr 1fr}
  .choice-row.three{grid-template-columns:1fr 1fr 1fr}
  .choice-btn{padding:9px 7px;font-size:.86rem}
  .choice-btn span{font-size:.67rem}
}
@media (max-width:430px){
  .resource-grid{grid-template-columns:1fr 1fr}
  .choice-row.three{grid-template-columns:1fr}
  .choice-row.three .choice-btn{display:flex;align-items:center;justify-content:space-between;text-align:left}
  .choice-row.three .choice-btn span{margin-top:0}
}


/* Beta 1.6 — search-first workflow */
.skill-finder-section{padding-bottom:18px}
.skill-finder-card{background:#fff;border:1px solid #d9e5e9;border-radius:18px;padding:18px;box-shadow:0 12px 28px rgba(30,55,65,.06)}
.skill-finder-controls{display:grid;grid-template-columns:180px minmax(0,1fr);gap:12px;align-items:end}
.finder-search-label input{font-size:1rem}
.skill-search-results{display:grid;gap:6px;margin-top:8px;max-height:280px;overflow:auto}
.skill-result{display:flex;justify-content:space-between;gap:12px;align-items:center;width:100%;text-align:left;border:1px solid #dbe5e9;background:#fafcfd;border-radius:10px;padding:10px 12px;cursor:pointer}
.skill-result:hover,.skill-result:focus{border-color:#388f8b;background:#eef8f7}
.skill-result b{display:block}
.skill-result span{font-size:.78rem;color:#6b7d86}
.selected-skill-card{margin-top:12px;border-top:1px solid #e0e8eb;padding-top:14px;display:flex;justify-content:space-between;gap:18px;align-items:center}
.selected-skill-card.hidden{display:none}
.selected-skill-card h3{margin:.15rem 0 .35rem}
.selected-skill-card p{margin:0;max-width:720px}
.skill-action-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.lab-queue-section{padding-top:10px}
.lab-queue-panel{display:grid;gap:14px}
.lab-skill-list{display:flex;gap:8px;flex-wrap:wrap}
.lab-skill-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid #cbdadd;background:#f7fbfb;border-radius:999px;padding:7px 10px;font-weight:700}
.lab-skill-chip button{appearance:none;border:0;background:transparent;cursor:pointer;font-size:1rem;line-height:1}
.lab-combination-advice{display:grid;gap:8px}
.combo-card{border-left:4px solid #188781;background:#eef8f7;padding:10px 12px;border-radius:8px}
.combo-card b{display:block;margin-bottom:2px}
.lab-builder-note{font-size:.9rem;color:#52666f}
@media(max-width:720px){
  .skill-finder-controls{grid-template-columns:1fr}
  .selected-skill-card{align-items:flex-start;flex-direction:column}
  .skill-action-row{justify-content:flex-start}
}


/* Beta 1.7 — compact workspace and in-tool search */
.tool-workspace-nav{position:sticky;top:0;z-index:30;background:rgba(247,250,251,.96);backdrop-filter:blur(8px);border-bottom:1px solid #dbe5e9;padding:8px 0}
.workspace-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;max-width:760px;margin:0 auto}
.workspace-tab{appearance:none;border:1px solid #ccd9de;background:#fff;color:#28434e;border-radius:10px;padding:9px 10px;font:inherit;font-weight:750;cursor:pointer}
.workspace-tab:hover{border-color:#6ea1a3}
.workspace-tab.active{background:#167d79;color:#fff;border-color:#167d79}
.workspace-panel.workspace-hidden{display:none!important}
.workspace-panel{scroll-margin-top:64px}
.workspace-panel .wrap{padding-top:8px}
.workspace-panel .section-head{margin-bottom:12px}
.tool-search-panel{display:grid;gap:10px;align-content:start}
.station-search-grid{display:grid;grid-template-columns:150px minmax(0,1fr);gap:10px}
.inline-skill-results{display:grid;gap:5px;max-height:210px;overflow:auto;margin-top:4px}
.inline-skill-results:empty{display:none}
.inline-skill-result{appearance:none;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:1px solid #d7e2e6;background:#fbfdfd;border-radius:9px;padding:8px 10px;text-align:left;cursor:pointer}
.inline-skill-result:hover,.inline-skill-result:focus{border-color:#2b8b86;background:#eef8f7}
.inline-skill-result b{display:block;font-size:.88rem}
.inline-skill-result small{display:block;color:#6b7a82;margin-top:1px}
.inline-skill-result .choose-arrow{font-weight:800;color:#167d79}
.current-skill-pill{display:inline-flex;align-items:center;min-height:34px;border-radius:999px;background:#eef5f6;color:#34515b;padding:6px 10px;font-size:.82rem;font-weight:700;width:fit-content}
.current-skill-pill.selected{background:#e9f7f5;color:#126d69}
.station-form-clean{gap:10px}
.station-form-clean .form-block{padding:11px 12px}
.station-form-clean .form-block-title{margin-bottom:7px}
.compact-choice-block{padding-bottom:9px!important}
.station-form-clean .choice-btn{min-height:36px;padding:7px 9px}
.station-form-clean .resource-grid{gap:8px}
.station-form-clean .resource-grid input{padding-top:8px;padding-bottom:8px}
.station-form-clean .optional-settings>summary{padding:9px 11px}
.builder-clean{gap:14px}
.builder-clean .panel{padding-top:14px;padding-bottom:14px}
#instructor.section{padding-top:14px}
#student.section,#scenario.section,#program.section,#lab-builder.section{padding-top:14px}
@media(max-width:700px){
  .workspace-tabs{grid-template-columns:repeat(5,1fr);gap:4px}
  .workspace-tab{padding:8px 4px;font-size:.77rem}
  .station-search-grid{grid-template-columns:1fr}
}


/* Beta 1.8 — one global selector, one visible tool, internal output scrolling */
.workspace-shell{padding:16px 0 20px;background:#eef4f5;min-height:calc(100vh - 80px)}
.workspace-wrap{max-width:1500px}
.global-selector-card{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border:1px solid #d5e2e6;border-radius:16px;padding:12px 14px 8px;box-shadow:0 8px 24px rgba(28,51,60,.08)}
.global-selector-main{display:grid;grid-template-columns:150px minmax(320px,1.2fr) minmax(220px,.8fr);gap:12px;align-items:end}
.global-selector-main label{margin:0;font-size:.82rem;font-weight:800;color:#28424d}
.global-selector-main select,.global-selector-main input{margin-top:5px}
.global-search-wrap{position:relative}
.global-search-results{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:90;background:#fff;border:1px solid #cad9df;border-radius:10px;box-shadow:0 18px 36px rgba(20,45,55,.18);max-height:300px;overflow:auto;display:none}
.global-search-results.open{display:block}
.global-search-result{appearance:none;width:100%;display:flex;justify-content:space-between;gap:14px;text-align:left;border:0;border-bottom:1px solid #edf1f3;background:#fff;padding:9px 11px;cursor:pointer}
.global-search-result:last-child{border-bottom:0}
.global-search-result:hover,.global-search-result:focus{background:#edf8f7}
.global-search-result b{display:block;font-size:.9rem;color:#1c3440}
.global-search-result small{display:block;color:#6b7c84;margin-top:1px}
.global-search-result .result-provider{font-size:.72rem;color:#147b77;font-weight:800;white-space:nowrap}
.global-current{min-height:48px;border-left:1px solid #dfe8eb;padding-left:12px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.global-current-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:#71838b;font-weight:800}
.global-current b{font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.global-current>span:last-child{font-size:.76rem;color:#63747c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v18-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-top:9px}
.v18-tab{appearance:none;border:1px solid #ccd9de;background:#f8fbfb;color:#28434e;border-radius:8px;padding:7px 8px;font:inherit;font-weight:800;cursor:pointer}
.v18-tab:hover{border-color:#6da2a3}
.v18-tab.active{background:#147e79;color:#fff;border-color:#147e79}
.engine-controls{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
.workspace-stage{height:calc(100vh - 190px);min-height:560px;margin-top:10px}
.v18-panel{display:none;height:100%}
.v18-panel.active{display:block}
.workspace-two-col{display:grid;grid-template-columns:minmax(330px,410px) minmax(0,1fr);gap:12px;height:100%}
.workspace-controls,.workspace-output{background:#fff;border:1px solid #d5e2e6;border-radius:14px;box-shadow:0 8px 24px rgba(28,51,60,.06)}
.workspace-controls{padding:12px;overflow:auto}
.workspace-output{padding:16px 20px;overflow:auto;height:100%}
.full-output{max-width:1200px;margin:0 auto}
.selected-tool-skill{display:flex;gap:8px;align-items:baseline;border-bottom:1px solid #e4ecef;padding-bottom:8px;margin-bottom:9px;min-width:0}
.selected-tool-skill span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#71838b;font-weight:800}
.selected-tool-skill b{font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.control-row-group{margin-bottom:9px}
.control-label{font-size:.76rem;font-weight:850;color:#2d4752;margin-bottom:5px}
.compact-segments{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
.compact-segments.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.compact-segments button{appearance:none;border:1px solid #cad8dd;background:#f8fbfc;border-radius:8px;padding:7px 5px;font:inherit;font-size:.82rem;font-weight:800;color:#2b4651;cursor:pointer;min-height:36px}
.compact-segments button:hover{border-color:#70a3a4}
.compact-segments button.active{border-color:#147f7a;background:#e8f6f5;box-shadow:0 0 0 1px #147f7a inset}
.compact-segments button span{display:block;font-size:.65rem;font-weight:600;color:#6c7d85;margin-top:1px}
.resource-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:9px 0}
.resource-strip label{font-size:.7rem;font-weight:800;margin:0;color:#52666f}
.resource-strip label span{display:block;white-space:nowrap}
.resource-strip input{margin-top:4px;padding:8px 8px;text-align:center;font-weight:800}
.compact-focus-help{margin:5px 0 0!important;font-size:.71rem!important;line-height:1.25}
.workspace-advanced{margin:8px 0;border:1px solid #d7e2e6;border-radius:9px;background:#fafcfd}
.workspace-advanced>summary{cursor:pointer;padding:8px 10px;font-weight:800;font-size:.8rem}
.advanced-body{padding:0 10px 10px;display:grid;gap:7px}
.advanced-body label{font-size:.74rem;font-weight:750;margin:0}
.advanced-body input,.advanced-body textarea{margin-top:3px;padding:7px 8px}
.station-generate{margin-top:5px;padding-top:9px;padding-bottom:9px}
.station-note{margin:5px 0 0;text-align:center;font-size:.67rem!important;line-height:1.2}
.scenario-controls,.lab-controls,.planning-controls{align-self:start}
.lab-queue-title{font-size:.78rem;font-weight:850;margin:10px 0 6px}
.lab-skill-list{display:flex;gap:6px;flex-wrap:wrap}
.lab-skill-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #cbdadd;background:#f7fbfb;border-radius:999px;padding:6px 9px;font-weight:750;font-size:.78rem}
.lab-skill-chip button{appearance:none;border:0;background:transparent;cursor:pointer;font-size:.95rem}
.lab-combination-advice{display:grid;gap:7px}
.combo-card{border-left:4px solid #188781;background:#eef8f7;padding:9px 11px;border-radius:8px}
.lab-builder-note{margin-top:12px;font-size:.82rem;color:#52666f}
.planning-resource-strip{grid-template-columns:1fr 1fr}
.sr-only-select{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Keep long generated guides inside the workspace rather than making the page itself grow. */
.workspace-output .printbar{position:sticky;top:-16px;z-index:8;background:#fff;padding:4px 0 8px}
.workspace-output .station-section:last-child{padding-bottom:18px}

@media(max-width:900px){
  .global-selector-main{grid-template-columns:120px minmax(0,1fr)}
  .global-current{grid-column:1/-1;border-left:0;border-top:1px solid #e2eaed;padding:7px 0 0;min-height:auto}
  .workspace-stage{height:auto;min-height:0}
  .workspace-two-col{grid-template-columns:1fr;height:auto}
  .workspace-controls{overflow:visible}
  .workspace-output{height:auto;max-height:none;overflow:visible}
  .full-output{max-width:none}
}
@media(max-width:620px){
  .workspace-shell{padding-top:8px}
  .global-selector-card{padding:9px}
  .global-selector-main{grid-template-columns:1fr}
  .global-current{grid-column:auto}
  .v18-tabs{grid-template-columns:repeat(5,1fr);gap:3px}
  .v18-tab{font-size:.72rem;padding:7px 3px}
  .compact-segments{grid-template-columns:repeat(2,1fr)}
  .compact-segments.three{grid-template-columns:repeat(3,1fr)}
  .resource-strip{grid-template-columns:repeat(2,1fr)}
}

/* Beta 1.8 engine-only selects are not user controls. */
.sr-only-select{display:none!important}

/* Beta 1.8 final compact top-of-page layout */
.compact-app-intro{background:#f5f9fa;border-bottom:1px solid #dce6e9;padding:8px 0}
.compact-app-intro .wrap{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.compact-app-intro b{font-size:1rem;color:#17323d}
.compact-app-intro span{font-size:.82rem;color:#64767e}
.engine-controls{display:none!important}
.workspace-shell{padding-top:10px}
/* Beta 4.3 — let the document own scrolling and keep controls usable on narrow screens. */
.workspace-shell{min-height:0;padding-bottom:32px}
.workspace-stage{height:auto;min-height:0}
.workspace-two-col{height:auto}
.workspace-output{height:auto;max-height:none;overflow:visible}
.workspace-controls{max-height:none}
.role-switch{position:sticky;top:0;z-index:35;background:#eef4f5;padding:7px 0}
#nl-badge-frame,iframe[src*="netlify"],iframe[title*="Netlify" i]{display:none!important;visibility:hidden!important;pointer-events:none!important}
/* Beta 4.4 — touch targets, readable controls, print output and predictable focus. */
button,.btn,select,input{min-height:42px}
.role-switch button,.role-tabs button,.v18-tab{min-height:44px}
.role-switch{scrollbar-width:none}
.role-switch::-webkit-scrollbar{display:none}
.topic-results{overscroll-behavior:contain}
.workspace-shell :target{scroll-margin-top:110px}
.printbar{position:sticky;top:8px;z-index:20;background:#fff;padding:6px 0}
@media(max-width:620px){
  .wrap{padding-left:14px;padding-right:14px}
  .hero{padding:42px 0 34px}
  h1{font-size:clamp(2.25rem,12vw,3.5rem)}
  .actions .btn,.actions .text-action{width:100%;text-align:center}
  .role-switch{margin-left:-2px;margin-right:-2px}
  .role-switch button{font-size:.8rem}
  .printbar{top:0}
  .printbar .btn,.printbar button{flex:1 1 auto}
}
@media print{
  .printbar{position:static;background:transparent}
  button,.btn{min-height:0}
}
.product-plan-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#edf8f7;border:1px solid #b9dfdc;border-radius:12px;padding:10px 12px;margin-bottom:14px}
.product-plan-actions>b{margin-right:auto;color:#1c4f53}
.product-plan-actions .btn{padding:8px 11px;font-size:.82rem}
@media(max-width:620px){.product-plan-actions>b{width:100%}.product-plan-actions .btn{flex:1 1 45%}}
.onboarding-card{display:grid;grid-template-columns:1.1fr 1.7fr auto;gap:18px;align-items:center;background:#173f4b;color:#fff;border-radius:14px;padding:14px 18px;margin:0 auto 12px;max-width:1500px}
.onboarding-card .eyebrow{color:#9ae0d9}.onboarding-card>b,.onboarding-card span{display:block}.onboarding-card .micro{color:#d7e9eb;margin-top:3px}.onboarding-card ol{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0;padding-left:20px}.onboarding-card li{padding-left:3px}.onboarding-card li span{font-size:.76rem;color:#d7e9eb}.onboarding-card .ghost{background:transparent;border-color:#a6d9d7;color:#fff;white-space:nowrap}.trial-meter{font-size:.75rem;color:#d4eaeb;margin:8px 0 0}.signup-form .trial-meter{color:#667980}
@media(max-width:800px){.onboarding-card{grid-template-columns:1fr}.onboarding-card ol{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:620px){.onboarding-card{margin-left:14px;margin-right:14px;padding:14px}.onboarding-card ol{grid-template-columns:1fr}.onboarding-card .ghost{width:100%}}
@media(max-width:900px){
  .role-switch{overflow-x:auto;display:flex;gap:6px}
  .role-switch button{flex:1 0 auto;min-height:42px}
  .workspace-output{padding:13px}
}
@media(max-width:620px){
  .role-switch{justify-content:flex-start}
  .role-switch button{font-size:.78rem;padding:9px 10px}
  .workspace-shell{padding-bottom:56px}
  .workspace-output{border-radius:10px;padding:11px}
  .scenario-meta,.snapshot{grid-template-columns:1fr 1fr}
  .topic-results{max-height:52vh}
}
@media(max-width:620px){
  .compact-app-intro .wrap{display:block}
  .compact-app-intro span{display:block;margin-top:2px}
}
.feedback-section{background:#f2f6f6}.feedback-wrap{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.feedback-form{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:var(--shadow)}.feedback-form textarea{width:100%;margin-top:5px;padding:11px 12px;border:1px solid #bbc8cd;border-radius:9px;background:#fff;font:inherit;resize:vertical}.feedback-form label{margin-bottom:12px}.feedback-form button{margin-top:3px}.feedback-form input,.feedback-form select{margin-top:5px}@media(max-width:700px){.feedback-wrap{grid-template-columns:1fr}.feedback-section{padding-top:40px;padding-bottom:40px}}
.trial-plan{display:grid;gap:3px;background:#eaf7f5;color:#173f4b;border:1px solid #b9dfdc;border-radius:12px;padding:12px;margin-top:14px}.trial-plan small{color:#52666f}.trial-plan [data-trial-count]{font-weight:800;color:#147e79}
.account-ready-panel{display:grid;gap:6px;background:#f7fafb;border:1px solid #cadde1;border-radius:12px;padding:12px;margin-bottom:14px}.account-ready-panel span,.account-ready-panel small{color:#5d7078}.account-ready-panel button{width:max-content;max-width:100%}@media(max-width:620px){.account-ready-panel button{width:100%}}
.account-foundation{display:grid;gap:6px;max-width:420px;margin-top:16px;padding:12px;background:#f3f8f8;border:1px solid #c9dfe1;border-radius:12px}.account-foundation span,.account-foundation small{color:#5c7078}.account-foundation button{width:max-content;max-width:100%}@media(max-width:620px){.account-foundation button{width:100%}}
.backend-shell{display:grid;gap:7px;max-width:520px;margin-top:18px;padding:14px;background:#f3f8f8;border:1px solid #c9dfe1;border-radius:12px}.backend-shell span,.backend-shell small{color:#5c7078}.backend-shell button{width:max-content;max-width:100%}.backend-status{display:grid;gap:2px;padding:8px;background:#fff;border-radius:8px}.backend-status strong{color:#147e79}@media(max-width:620px){.backend-shell button{width:100%}}
.supabase-account{display:grid;gap:9px;max-width:460px;margin-top:16px;padding:14px;background:#eef8f6;border:1px solid #acd8d2;border-radius:12px}.supabase-account [data-auth-signed-out],.supabase-account [data-auth-signed-in]{display:grid;gap:8px}.supabase-account [hidden]{display:none!important}.supabase-account label{margin:0}.supabase-account button{width:max-content;max-width:100%}.supabase-account small{color:#52666f}@media(max-width:620px){.supabase-account button{width:100%}}
[data-backend-shell],[data-auth-integration]{display:none!important}
[data-account-foundation]{display:none!important}.form-submit-status{font-weight:800;color:#146d68;background:#eaf7f5;border-radius:8px;padding:9px;margin:10px 0 0}.form-submit-status:empty{display:none}.station-generate-status:not(:empty),[data-auth-status]:not(:empty){display:block;background:#eaf7f5;border:1px solid #b9dfdc;border-radius:8px;padding:9px;font-weight:750;color:#23565a}



/* ===== growth-v61.css ===== */
/* Public-facing instructor acquisition surface. Existing private workspace styling remains unchanged. */
.marketing-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:clamp(24px,4vw,60px);align-items:center;padding:clamp(32px,5vw,70px);margin:0 0 30px;background:linear-gradient(128deg,#e5f4f0 0%,#f3f8f7 55%,#e4edf3 100%);border:1px solid #c9dfdc;border-radius:24px;box-shadow:0 16px 42px rgba(22,49,58,.08);box-sizing:border-box}
.marketing-intro h2{font-size:clamp(2rem,3.7vw,3.7rem);letter-spacing:-.045em;line-height:1.06;max-width:800px;margin:14px 0 22px;color:#17333b}
.marketing-intro p{max-width:700px;line-height:1.65}.marketing-lead{font-size:clamp(1rem,1.4vw,1.18rem);color:#36535b}.marketing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:25px}.marketing-actions .btn{padding:15px 20px;box-shadow:0 6px 16px rgba(14,91,85,.17)}.marketing-link{font-weight:800;color:#135e61;text-underline-offset:4px}.marketing-terms{font-size:.84rem;color:#466068;margin-top:17px}
.marketing-showcase{background:#fff;color:#17343e;border:1px solid #d4e3e4;border-radius:20px;padding:clamp(20px,2.6vw,32px);box-shadow:0 14px 36px rgba(19,55,65,.1)}.marketing-showcase-top{display:flex;justify-content:space-between;gap:10px;color:#176969;font-size:.68rem;font-weight:850;letter-spacing:.12em}.marketing-showcase h3{font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.18;margin:16px 0 20px}.marketing-showcase ol{list-style:none;counter-reset:steps;padding:0;margin:0}.marketing-showcase li{display:grid;grid-template-columns:35px 1fr;column-gap:12px;counter-increment:steps;margin:0;padding:12px 0;border-top:1px solid #e5eeef}.marketing-showcase li::before{content:counter(steps);grid-row:span 2;width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#e5f4f0;color:#176969;font-weight:900}.marketing-showcase li strong{font-size:.98rem}.marketing-showcase li span{color:#53676b;font-size:.86rem;line-height:1.5}.marketing-showcase>a{display:inline-block;margin-top:20px;color:#135e61;font-weight:850;text-underline-offset:4px}
.marketing-intro{color:#17343e}
.marketing-showcase h3,.marketing-showcase li strong{color:#17343e}
.instructor-resources,.instructor-resources h2{color:#17343e}
.instructor-resources a{color:#12665e}
.tools-ready .marketing-intro,.tools-ready .instructor-resources{display:none}
@media(max-width:900px){.marketing-intro{grid-template-columns:1fr}.marketing-showcase{max-width:700px}}
@media(max-width:600px){.marketing-intro{padding:24px 20px;border-radius:16px}.marketing-actions{align-items:stretch;flex-direction:column;gap:12px}.marketing-actions .btn{text-align:center}.marketing-showcase{padding:20px}}



/* ===== airway-extra.css ===== */
/* Additions use the existing EMS SkillLab palette and component language. */
.scope-note{padding:12px 14px;border-left:4px solid var(--blue);background:var(--soft);margin:12px 0}.roadmap-title{margin-top:32px}details{margin:12px 0}summary{font-weight:750;cursor:pointer;min-height:36px}textarea{width:100%;font:inherit;border:1px solid #bbc8cd;border-radius:9px;padding:10px;resize:vertical}.panel{min-width:0;overflow-wrap:anywhere}.panel li{margin-bottom:8px}.panel h2{font-size:clamp(1.6rem,3vw,2.4rem)}.panel h4{margin-bottom:8px}.scope-note,.fieldhelp,.micro,.releasebar{font-size:.875rem}.local-settings{border-block:1px solid var(--line);padding:8px 0}a{color:var(--blue)}.btn{color:white}.ghost{color:var(--ink)}.station-section{break-inside:auto}details:focus-within,summary:focus-visible,textarea:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
@media(max-width:600px){.scenario-meta,.two{grid-template-columns:1fr}.wrap{padding-inline:14px}.panel{padding:16px}.printbar .btn{font-size:.875rem}.nav{gap:0}.nav nav{width:100%}.hero{padding:36px 0}.section{padding:38px 0}}
@media print{body.printing-guide #student:has(.print-target),body.printing-guide #scenario:has(.print-target),body.printing-guide #program:has(.print-target),body.printing-guide #instructor:has(.print-target){display:block!important}}
@media print{body.printing-guide .releasebar,body.printing-guide .top,body.printing-guide .hero,body.printing-guide footer{display:none!important}body.printing-guide main,body.printing-guide main .section,body.printing-guide main .wrap,body.printing-guide .builder,body.printing-guide .tool-grid{display:block!important;margin:0!important;padding:0!important;background:white!important}body.printing-guide main .section:not(:has(.print-target)){display:none!important}body.printing-guide .section:has(.print-target) .section-head,body.printing-guide .compact,body.printing-guide .stickyform,body.printing-guide .focus-grid,body.printing-guide .program-grid,body.printing-guide .roadmap-title{display:none!important}body.printing-guide .panel:not(.print-target){display:none!important}body.printing-guide .print-target{display:block!important;border:0!important;padding:0!important;box-shadow:none!important}body.printing-guide .printbar{display:none!important}body.printing-guide details{display:block}body.printing-guide details>*{display:block}body.printing-guide .station-section{break-inside:auto}body.printing-guide h3,body.printing-guide h4{break-after:avoid}body.printing-guide a{color:inherit;text-decoration:none}body.printing-guide .reminder,body.printing-guide .scope-note{border:1px solid #999}}
@media print{@page{margin:12mm}body.printing-guide{font-size:11pt;line-height:1.35}body.printing-guide .quickrun-grid{grid-template-columns:repeat(2,1fr)}body.printing-guide .quickrun{padding:9px}body.printing-guide .quickrun-grid>div{padding:7px}body.printing-guide .station-section{margin-top:10px;padding-top:10px}body.printing-guide p{margin:6px 0}body.printing-guide h2{font-size:20pt}body.printing-guide h3{font-size:13pt}body.printing-guide .scope-note,body.printing-guide .reminder{padding:8px}body.printing-guide .panel li{margin-bottom:4px}}



/* ===== ux-v30.css ===== */
/* EMS SkillLab Beta 3.0 — complete UI and workflow revamp */
:root{
  --navy:#0b2230;--navy-2:#153746;--teal-2:#0d8a82;--teal-soft:#e7f6f4;
  --canvas:#eef3f4;--card:#ffffff;--line-2:#d6e0e3;--text:#17303b;--sub:#657780;
  --focus:#8edbd5;--shadow-soft:0 16px 40px rgba(11,34,48,.08);
}
html{background:var(--canvas)}
body{background:var(--canvas);color:var(--text);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.5}
.wrap{max-width:1520px;padding-left:28px;padding-right:28px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
[hidden]{display:none!important}

/* New application header */
.app-header{position:sticky;top:0;z-index:120;background:var(--navy);color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}
.app-header-inner{min-height:64px;display:flex;align-items:center;gap:24px}
.app-brand{display:inline-flex;align-items:center;gap:9px;color:#fff;text-decoration:none;font-size:1.18rem;font-weight:900;letter-spacing:-.02em;white-space:nowrap}
.brand-mark{display:grid;place-items:center;min-width:42px;height:32px;padding:0 7px;border-radius:8px;background:var(--teal-2);font-size:.75rem;letter-spacing:.08em}
.app-header-copy{display:flex;flex-direction:column;min-width:0}
.app-header-copy b{font-size:.83rem}.app-header-copy span{font-size:.7rem;color:#b9c9cf}
.header-link{margin-left:auto;color:#dce9ed;text-decoration:none;font-size:.82rem;font-weight:750}
.header-link:hover{color:#fff}

/* Role launch page */
.launchpad{min-height:calc(100vh - 64px);display:flex;align-items:center;padding:44px 0 58px;background:
  radial-gradient(circle at 12% 12%,rgba(13,138,130,.2),transparent 34%),
  linear-gradient(135deg,#102b38 0%,#0b2230 62%,#173b45 100%);color:#fff}
.launchpad-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(620px,1.22fr);gap:54px;align-items:center}
.launch-copy .eyebrow{color:#83d9d2}.launch-copy h1{font-size:clamp(3rem,5vw,5.3rem);line-height:.96;letter-spacing:-.055em;max-width:730px;margin:.18em 0 .3em}
.launch-copy p{font-size:1.08rem;max-width:650px;color:#c7d6db}
.launch-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.launch-badges span{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);border-radius:999px;padding:7px 10px;font-size:.72rem;font-weight:750;color:#deebee}
.launch-roles{background:#f7fbfb;color:var(--text);border-radius:24px;padding:24px;box-shadow:0 28px 70px rgba(0,0,0,.22)}
.launch-roles h2{font-size:1.15rem;letter-spacing:-.015em;margin:0 0 14px}
.role-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.role-card{appearance:none;border:1px solid #d8e3e6;background:#fff;border-radius:16px;padding:18px;text-align:left;min-height:190px;display:flex;flex-direction:column;cursor:pointer;transition:.18s transform,.18s border-color,.18s box-shadow;color:var(--text)}
.role-card:hover,.role-card:focus-visible{transform:translateY(-2px);border-color:#75bcb8;box-shadow:0 14px 28px rgba(12,70,75,.1)}
.role-kicker{font-size:.7rem;text-transform:uppercase;letter-spacing:.09em;font-weight:850;color:var(--teal-2)}
.role-card b{font-size:1.18rem;margin:9px 0 6px;line-height:1.15}.role-card small{font-size:.81rem;color:var(--sub);line-height:1.45}
.role-card:after{content:"Open workspace →";margin-top:auto;padding-top:18px;font-size:.72rem;font-weight:850;color:var(--teal-2)}
.has-role .launchpad{display:none}

/* Workspace frame */
.workspace-shell{min-height:calc(100vh - 64px);padding:20px 0 42px;background:var(--canvas)}
.workspace-wrap{max-width:1520px}
.context-bar{position:sticky;top:64px;z-index:90;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border:1px solid var(--line-2);border-radius:16px;box-shadow:0 10px 28px rgba(20,45,55,.08);padding:10px 12px;margin-bottom:14px}
.role-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:9px}
.role-switch button{appearance:none;border:0;border-radius:9px;background:#edf3f4;color:#38515b;padding:8px 10px;font:inherit;font-size:.76rem;font-weight:850;cursor:pointer}
.role-switch button:hover{background:#e1ecee}.role-switch button.active{background:var(--navy);color:#fff}
.selection-grid{display:grid;grid-template-columns:140px 265px minmax(320px,1fr);gap:10px;align-items:end}
.field-block,.topic-combobox>label{margin:0;font-size:.7rem;font-weight:850;color:#425b65}.field-block>span{display:block}
.selection-grid select,.selection-grid input{margin-top:4px;height:42px;padding:9px 11px;border:1px solid #c6d4d9;border-radius:10px;background:#fff;color:var(--text);font-size:.9rem}
.selection-grid select:focus,.selection-grid input:focus{border-color:var(--teal-2);box-shadow:0 0 0 3px rgba(13,138,130,.11);outline:none}
.topic-combobox{position:relative;min-width:0}.topic-entry-wrap{position:relative}.topic-entry-wrap input{padding-right:42px;font-weight:750}.topic-clear{position:absolute;right:7px;top:10px;width:28px;height:28px;border:0;background:transparent;border-radius:7px;color:#6c7f87;font-size:1.2rem;line-height:1;cursor:pointer}.topic-clear:hover{background:#edf4f5;color:var(--navy)}
.topic-help{font-size:.62rem;color:#74858d;margin-top:3px;line-height:1.25}
.topic-results{position:absolute;left:0;right:0;top:calc(100% + 5px);display:none;z-index:150;background:#fff;border:1px solid #c8d7dc;border-radius:12px;box-shadow:0 18px 42px rgba(10,35,45,.18);max-height:min(410px,56vh);overflow:auto;padding:5px}
.topic-results.open{display:block}.topic-result{appearance:none;display:block;width:100%;border:0;border-radius:8px;background:#fff;text-align:left;padding:9px 10px;cursor:pointer;color:var(--text)}.topic-result:hover,.topic-result:focus,.topic-result.active{background:var(--teal-soft)}.topic-result[aria-selected="true"]{box-shadow:inset 3px 0 0 var(--teal-2)}.topic-result b{display:block;font-size:.84rem}.topic-result small{display:block;font-size:.65rem;color:#72828a;margin-top:1px}.topic-empty{padding:14px;color:#647780}
.role-required{min-height:48vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;text-align:center;background:#fff;border:1px dashed #c9d7db;border-radius:16px;color:#536a74}.role-required b{color:var(--navy)}

/* Role workspace with a true tool rail */
.role-workspace{display:grid;grid-template-columns:190px minmax(0,1fr);gap:16px;align-items:start;min-width:0}
.program-workspace{display:block}
.role-tabs{grid-column:1;grid-row:1 / span 3;display:flex;flex-direction:column;gap:6px;position:sticky;top:188px;background:var(--navy);border-radius:16px;padding:10px;box-shadow:var(--shadow-soft)}
.tool-rail-title{padding:6px 9px 8px;color:#9db5be;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850}
.role-tabs button{appearance:none;border:0;border-radius:10px;background:transparent;color:#d2e0e4;text-align:left;padding:10px 11px;font:inherit;cursor:pointer}
.role-tabs button b{display:block;font-size:.85rem}.role-tabs button small{display:block;font-size:.64rem;color:#91a7af;margin-top:1px;font-weight:600}
.role-tabs button:hover{background:rgba(255,255,255,.07)}.role-tabs button.active{background:#fff;color:var(--navy)}.role-tabs button.active small{color:#6e8088}
.role-panel,.student-difficulty-bar{grid-column:2;min-width:0}
.student-difficulty-bar{display:grid;grid-template-columns:minmax(210px,.5fr) minmax(420px,1fr);gap:18px;align-items:center;background:#fff;border:1px solid var(--line-2);border-radius:14px;padding:12px 14px;margin-bottom:10px}.student-difficulty-bar>div:first-child{display:flex;flex-direction:column}.student-difficulty-bar small{font-size:.68rem;color:var(--sub)}

/* Buttons / segmented controls */
.compact-segments{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.compact-segments.three{grid-template-columns:repeat(3,minmax(0,1fr))}.purpose-segments{grid-template-columns:repeat(4,minmax(0,1fr))}
.compact-segments button{appearance:none;border:1px solid #cbd8dc;background:#f7fafb;border-radius:10px;padding:8px 7px;min-height:42px;color:#2d4954;font:inherit;font-size:.78rem;font-weight:850;cursor:pointer}.compact-segments button span{display:block;font-size:.61rem;color:#71828a;font-weight:650;margin-top:1px}.compact-segments button:hover{border-color:#70aaa8}.compact-segments button.active{background:var(--teal-soft);border-color:var(--teal-2);box-shadow:inset 0 0 0 1px var(--teal-2);color:#0d6864}
.btn{border-radius:10px;padding:10px 15px;background:var(--teal-2);font-size:.84rem}.btn.secondary{background:#315f74}.btn:disabled{opacity:.45;cursor:not-allowed}
.control-label,fieldset legend{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;font-weight:850;color:#526973;margin:0 0 6px}
fieldset{min-width:0;border:0;padding:0;margin:0}

/* Natural-scroll content surfaces */
.workspace-controls,.workspace-output{background:#fff;border:1px solid var(--line-2);border-radius:16px;box-shadow:0 10px 28px rgba(27,53,63,.05)}
.workspace-output{padding:22px 26px;min-height:180px;overflow:visible;height:auto;max-width:none;margin:0}.full-output{max-width:none}.role-panel>.full-output{height:auto;min-height:0;overflow:visible}
.workspace-output .printbar{position:static;background:transparent;padding:0;margin:0 0 16px}.workspace-output .printbar .btn{padding:7px 10px;font-size:.7rem}
.workspace-output h2{font-size:clamp(1.65rem,2.6vw,2.65rem);line-height:1.03;letter-spacing:-.035em;margin:.18em 0 .18em}.workspace-output>p:first-of-type{margin-top:.2rem;color:#60727b}
.workspace-output .scope-note{margin:14px 0 18px;background:#edf7f6;border:0;border-left:4px solid var(--teal-2);border-radius:8px;padding:10px 12px;font-size:.79rem}
.workspace-output .quickrun,.workspace-output .confidence{border:0;border-radius:12px;background:#f4f8f9;padding:14px 16px;margin:14px 0}
.workspace-output .station-section{border-top:1px solid #e4ecee;padding-top:18px;margin-top:20px}.workspace-output .station-section h3{font-size:1rem;letter-spacing:-.01em;margin:0 0 8px}.workspace-output p,.workspace-output li{font-size:.86rem}.workspace-output li{margin-bottom:3px}.workspace-output .script{background:#fff7ec;border-left:4px solid #e3a55e;border-radius:8px;padding:12px 14px}.workspace-output .coach{border-left:3px solid var(--teal-2);background:#f6f9fa;border-radius:6px;padding:9px 11px}.workspace-output .reminder{border-radius:8px}.workspace-output details{font-size:.84rem}
.output-stale{min-height:150px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border:1px dashed #c5d4d8;background:#f8fbfb;border-radius:14px;padding:22px;color:#657780}.output-stale b{color:var(--navy);margin-bottom:4px}

/* Station builder */
.station-workbench,.scenario-workbench,.program-builder-grid{display:grid;gap:12px}.workspace-controls{padding:18px 20px}.builder-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;border-bottom:1px solid #e2eaed;padding-bottom:13px;margin-bottom:14px}.builder-heading h2{font-size:1.35rem;margin:1px 0 0;letter-spacing:-.025em}.builder-heading p{max-width:620px;margin:0;color:var(--sub);font-size:.78rem}
.station-choice-grid,.scenario-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.control-row-group{min-width:0}.compact-focus-help{margin:8px 0 10px!important;font-size:.72rem!important}.resource-strip{display:grid;gap:8px;margin:10px 0}.station-class-fields{grid-template-columns:repeat(3,minmax(0,160px))}.resource-strip label{font-size:.68rem;font-weight:800;color:#526873;margin:0}.resource-strip label span{display:block}.resource-strip input{margin-top:4px;padding:8px 9px;text-align:center;font-weight:850}.workspace-advanced{border:1px solid #d7e2e6;border-radius:10px;background:#fafcfc;margin:12px 0}.workspace-advanced>summary{cursor:pointer;padding:9px 11px;font-size:.76rem;font-weight:850}.advanced-body{padding:0 11px 11px;display:grid;gap:8px}.advanced-body label{font-size:.72rem;margin:0}.advanced-body textarea{margin-top:4px;padding:8px}.builder-actions{display:flex;align-items:center;gap:14px;margin-top:12px}.builder-actions .btn{min-width:220px}.station-generate-status{font-size:.7rem;color:#647983;font-weight:750;min-height:18px}.station-generate-status.success{color:#2b7459}.station-generate-status.error{color:#963b34}

/* Scenario */
.scenario-action-row{display:flex;gap:8px;margin-top:12px}.scenario-action-row .btn{min-width:170px}.scenario-run-summary{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 14px}.scenario-run-summary span,.scenario-code,.scenario-variant-pill{display:inline-block;border:1px solid #cadadd;background:#f5f9fa;border-radius:999px;padding:4px 8px;font-size:.64rem;font-weight:850;color:#3c5964}.scenario-learner-card,.scenario-facilitator-card{border:1px solid #d6e2e5;border-radius:14px;padding:16px;margin:14px 0;background:#fff}.scenario-learner-card{border-left:5px solid var(--teal-2)}.scenario-facilitator-card{border-left:5px solid #315f74;background:#fbfcfd}.scenario-card-head{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid #e5ecee;padding-bottom:9px;margin-bottom:10px}.scenario-card-head span:first-child{font-size:.62rem;text-transform:uppercase;letter-spacing:.07em;font-weight:850;color:#70828a}.scenario-card-head b{display:block;font-size:1rem}.scenario-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.scenario-meta div{background:#f1f6f7;padding:10px;border-radius:9px;font-size:.78rem}.scenario-task{background:#eaf7f5;border-radius:10px;padding:11px 12px;margin-top:10px}.student-reflection{border-top:1px solid #dfe8ea;margin-top:10px;padding-top:8px}.student-reflection summary{cursor:pointer;font-weight:800}

/* Program / Lead workspace */
.program-role .selection-grid{grid-template-columns:140px}.program-role .context-bar{max-width:none}.program-controls{padding:20px}.program-number-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.program-number-grid label,.program-settings-row label{margin:0;font-size:.67rem;font-weight:800;color:#526873}.program-number-grid input,.program-settings-row input,.program-settings-row select{margin-top:4px;padding:8px 9px}.program-settings-row{display:grid;grid-template-columns:1.1fr 1.2fr .7fr;gap:10px;margin:10px 0 14px}.program-skill-picker{border-top:1px solid #e2eaed;padding-top:14px}.program-picker-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}.program-picker-heading>div{display:flex;flex-direction:column}.program-picker-heading small{font-size:.67rem;color:var(--sub)}.program-picker-heading button{appearance:none;border:0;background:transparent;color:var(--teal-2);font-weight:850;font-size:.72rem;cursor:pointer}.program-category-chips{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:8px}.category-chip{appearance:none;border:1px solid #cbdadd;background:#f6fafb;border-radius:999px;padding:5px 8px;font-size:.63rem;font-weight:850;cursor:pointer}.category-chip.active{background:var(--navy);border-color:var(--navy);color:#fff}.program-search-label{font-size:.67rem;font-weight:800;color:#526873;margin:0}.program-search-label input{margin-top:4px;padding:8px 10px}.program-picker-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:10px;margin-top:8px}.program-skill-options{border:1px solid #d8e2e5;border-radius:10px;max-height:330px;overflow:auto;background:#fff}.program-skill-group{position:sticky;top:0;z-index:2;background:#edf4f5;padding:6px 9px;border-bottom:1px solid #dce6e8;font-size:.64rem;font-weight:850;color:#506671}.program-skill-option{display:flex!important;gap:8px;align-items:flex-start;margin:0!important;padding:7px 9px;border-bottom:1px solid #edf1f2;cursor:pointer;font-weight:600!important}.program-skill-option:hover{background:#f7fbfb}.program-skill-option input{width:auto;margin:2px 0 0}.program-skill-option b{display:block;font-size:.76rem}.program-skill-option small{display:block;font-size:.61rem;color:#73838b}.program-selected-panel{border:1px solid #d8e2e5;border-radius:10px;background:#f7fafb;padding:10px}.program-selected-panel>b{display:block;font-size:.72rem;margin-bottom:7px}.lab-skill-list{display:flex;gap:5px;flex-wrap:wrap}.lab-skill-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid #cbdadd;background:#fff;border-radius:999px;padding:5px 7px;font-size:.66rem;font-weight:750}.lab-skill-chip button{appearance:none;border:0;background:transparent;cursor:pointer;color:#6a7c83;font-size:.85rem}.program-output{height:auto;overflow:visible}.program-plan-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.program-plan-summary>div{background:#f2f7f8;border:1px solid #dce6e8;border-radius:10px;padding:10px;text-align:center}.program-plan-summary b{display:block;font-size:1.3rem;color:#126e69}.program-plan-summary span{font-size:.65rem;color:#677a82}.program-station-card{border:1px solid #d8e3e6;border-radius:12px;padding:12px;margin:9px 0;background:#fbfdfd}.program-station-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;border-bottom:1px solid #e4ecee;padding-bottom:7px}.program-station-head span{font-size:.62rem;text-transform:uppercase;font-weight:850;color:var(--teal-2)}.program-station-head b{font-size:.88rem}.program-station-head em{font-style:normal;font-size:.61rem;border:1px solid #ccdadd;border-radius:999px;padding:3px 6px}.rotation-table{overflow:auto;border:1px solid #d9e4e6;border-radius:9px}.rotation-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(96px,1fr);border-bottom:1px solid #e7edef}.rotation-row>*{padding:7px 8px;border-right:1px solid #edf1f2;font-size:.72rem}.rotation-head{background:#edf4f5}

/* Footer/update cleanup */
.updates-section{padding:46px 0}.signup{border-radius:18px;box-shadow:var(--shadow-soft)}
footer{background:#fff}.footerlinks{flex-wrap:wrap}

/* Responsive */
@media(max-width:1160px){
  .launchpad-grid{grid-template-columns:1fr;gap:28px}.launch-copy h1{max-width:900px}.role-card-grid{grid-template-columns:repeat(3,1fr)}
  .selection-grid{grid-template-columns:120px 220px minmax(0,1fr)}
  .role-workspace{grid-template-columns:165px minmax(0,1fr)}
  .role-tabs{top:188px}.program-number-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
  .wrap{padding-left:18px;padding-right:18px}.app-header-copy{display:none}.launchpad{min-height:auto;padding:34px 0}.role-card-grid{grid-template-columns:1fr}
  .context-bar{position:relative;top:auto}.selection-grid,.program-role .selection-grid{grid-template-columns:1fr 1fr}.topic-combobox{grid-column:1/-1}
  .role-workspace{display:block}.role-tabs{position:relative;top:auto;display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:10px;background:var(--navy);padding:7px}.tool-rail-title{display:none}.role-tabs button{text-align:center}.role-tabs button small{display:none}
  .student-difficulty-bar{grid-template-columns:1fr;margin-bottom:10px}.station-choice-grid,.scenario-choice-grid{grid-template-columns:1fr}.builder-heading{align-items:flex-start;flex-direction:column;gap:5px}.builder-heading p{max-width:none}
  .station-class-fields{grid-template-columns:repeat(3,1fr)}.program-number-grid{grid-template-columns:repeat(3,1fr)}.program-settings-row{grid-template-columns:1fr 1fr}.program-picker-layout{grid-template-columns:1fr}.program-selected-panel{min-height:90px}
  .workspace-output{padding:18px}.scenario-meta{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .wrap{padding-left:12px;padding-right:12px}.app-header-inner{min-height:56px}.app-header{position:relative}.header-link{display:none}.launch-copy h1{font-size:2.7rem}.launchpad{padding:26px 0}.launch-roles{padding:14px;border-radius:16px}.role-card{min-height:145px;padding:14px}
  .workspace-shell{padding-top:10px}.role-switch{grid-template-columns:1fr}.selection-grid,.program-role .selection-grid{grid-template-columns:1fr}.topic-combobox{grid-column:auto}
  .role-tabs{grid-template-columns:repeat(3,1fr)}.role-tabs button{padding:8px 4px;font-size:.72rem}.student-difficulty-bar{padding:10px}.compact-segments.three{grid-template-columns:repeat(3,1fr)}.compact-segments button{font-size:.71rem;padding:7px 3px}.purpose-segments{grid-template-columns:repeat(2,1fr)}
  .station-class-fields{grid-template-columns:repeat(3,1fr)}.builder-actions{align-items:stretch;flex-direction:column}.builder-actions .btn{width:100%;min-width:0}.scenario-action-row{display:grid;grid-template-columns:1fr 1fr}.scenario-action-row .btn{min-width:0}.scenario-meta{grid-template-columns:1fr}.scenario-card-head{flex-direction:column}.program-number-grid{grid-template-columns:repeat(2,1fr)}.program-settings-row{grid-template-columns:1fr}.program-plan-summary{grid-template-columns:repeat(2,1fr)}.program-station-head{grid-template-columns:1fr}
  .workspace-output{padding:15px}.workspace-output h2{font-size:1.75rem}.updates-section{padding:28px 0}.signup{padding:20px}
}
@media(max-width:390px){
  .station-class-fields{grid-template-columns:1fr 1fr}.station-class-fields label:last-child{grid-column:1/-1}.compact-segments.three{grid-template-columns:1fr}.scenario-action-row{grid-template-columns:1fr}.program-number-grid{grid-template-columns:1fr 1fr}.role-tabs button{font-size:.68rem}.topic-results{max-height:44vh}
}
@media print{
  .app-header,.launchpad,.context-bar,.role-tabs,.student-difficulty-bar,.workspace-controls,#updates,footer{display:none!important}
  .workspace-shell{background:#fff;padding:0}.role-workspace,.role-panel{display:block!important}.role-panel[hidden]{display:none!important}.workspace-output.print-target{display:block!important;border:0!important;box-shadow:none!important;padding:0!important}.workspace-output:not(.print-target){display:none!important}.wrap{max-width:none;padding:0}.printbar{display:none!important}
}



/* ===== ux-v31.css ===== */
/* EMS SkillLab Beta 3.1 — homepage conversion, equitable instructor language, and low-friction lab planning */

/* Homepage: explain value first, then role, then subscription path */
.launchpad{min-height:auto;align-items:stretch;padding:58px 0 42px;background:
  radial-gradient(circle at 8% 5%,rgba(20,170,159,.23),transparent 28%),
  radial-gradient(circle at 86% 18%,rgba(91,141,156,.18),transparent 28%),
  linear-gradient(135deg,#0a2432 0%,#0d2d3b 58%,#153f47 100%)}
.launchpad-v31{display:grid;gap:34px}
.hero-v31{max-width:980px}.hero-v31 .eyebrow{color:#7fd9d1}.hero-v31 h1{font-size:clamp(3.25rem,6vw,6.35rem);line-height:.93;letter-spacing:-.062em;margin:.15em 0 .28em;max-width:940px;color:#fff}
.hero-lede{max-width:820px;font-size:1.08rem;line-height:1.6;color:#c9d9de;margin:0}
.hero-actions{display:flex;align-items:center;gap:16px;margin-top:22px}.hero-actions .btn{text-decoration:none}.text-action{color:#cfe8e5;text-decoration:none;font-weight:800;font-size:.85rem}.text-action:hover{color:#fff}
.capability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.capability-grid>div{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px;min-height:132px}.capability-grid span{display:block;color:#78d6ce;font-weight:900;font-size:.67rem;letter-spacing:.09em}.capability-grid b{display:block;color:#fff;font-size:1rem;margin:7px 0 4px}.capability-grid small{display:block;color:#bfd0d6;font-size:.76rem;line-height:1.45}
.launch-roles{background:#f7fbfb;border-radius:22px;padding:22px;box-shadow:0 26px 64px rgba(0,0,0,.18)}.role-heading-copy{display:grid;grid-template-columns:auto 1fr;column-gap:16px;align-items:end;margin-bottom:14px}.role-heading-copy .eyebrow{grid-column:1/-1;color:var(--teal-2)}.role-heading-copy h2{font-size:1.35rem;margin:2px 0 0}.role-heading-copy p{justify-self:end;margin:0;color:var(--sub);font-size:.78rem}
.role-card{min-height:205px}.role-card:after{display:none}.role-card em{margin-top:auto;padding-top:18px;font-style:normal;font-size:.72rem;font-weight:900;color:var(--teal-2)}
.has-role .launchpad,.has-role .access-preview{display:none}
.access-preview{background:#fff;border-bottom:1px solid var(--line-2);padding:36px 0}.access-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr);gap:34px;align-items:center}.access-copy h2{font-size:2rem;line-height:1.05;letter-spacing:-.035em;margin:.25em 0 .4em}.access-copy p{color:var(--sub);max-width:700px}.beta-access-note{background:#edf7f6;border-left:4px solid var(--teal-2);padding:10px 12px;border-radius:8px;font-size:.8rem}.plan-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.plan-preview{border:1px solid #d8e3e6;border-radius:16px;padding:18px;background:#f9fbfb}.plan-preview.featured{background:#0d2d3b;color:#fff;border-color:#0d2d3b}.plan-preview>span{display:inline-block;font-size:.66rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-2)}.plan-preview.featured>span{color:#77ddd4}.plan-preview h3{font-size:1.12rem;margin:7px 0}.plan-preview ul{padding-left:18px;margin:10px 0 18px}.plan-preview li{font-size:.78rem;margin:5px 0;color:#62757e}.plan-preview.featured li{color:#d6e3e6}.plan-foot{font-size:.68rem}

/* Builder inputs: fewer decisions, better labels */
.purpose-segments{grid-template-columns:repeat(3,minmax(0,1fr))!important}.compact-segments button b{display:block}.compact-segments button span{line-height:1.25}.station-choice-grid,.scenario-choice-grid{align-items:start}
.workspace-advanced{margin-top:10px}.workspace-advanced>summary{font-size:.72rem;color:#526a74}
.station-output-views{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:-3px 0 14px}.station-output-views>span{font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#71838a;margin-right:3px}.station-output-views button{appearance:none;border:1px solid #cad8dc;background:#fff;color:#38525d;border-radius:999px;padding:5px 9px;font:inherit;font-size:.68rem;font-weight:850;cursor:pointer}.station-output-views button.active{background:var(--navy);border-color:var(--navy);color:#fff}
.station-guide-body[data-guide-view="quick"] .guide-coach-detail,.station-guide-body[data-guide-view="quick"] .guide-full-only{display:none}.station-guide-body[data-guide-view="coach"] .guide-full-only{display:none}

/* Program planner: time that humans enter naturally and fewer mobile chips */
.program-number-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.duration-field>span{display:block;font-size:.67rem;font-weight:800;color:#526873}.duration-inputs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:4px}.duration-inputs label{display:grid!important;grid-template-columns:1fr auto;align-items:center;border:1px solid #cbd8dc;background:#fff;border-radius:9px;overflow:hidden}.duration-inputs input{border:0!important;margin:0!important;min-width:0;padding:8px!important}.duration-inputs small{padding:0 8px 0 2px;font-size:.62rem;color:#71838a;font-weight:800}.program-settings-row{grid-template-columns:repeat(3,minmax(0,1fr))}.program-category-filter{display:block;margin-bottom:8px!important;font-size:.67rem;font-weight:800;color:#526873}.program-category-filter select{display:block;width:100%;margin-top:4px;padding:8px 9px;border:1px solid #cbd8dc;border-radius:9px;background:#fff}.program-picker-layout{grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr)}
.lab-plan-brief{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;border-bottom:1px solid #dfe8ea;padding:6px 0 12px;margin-bottom:12px}.lab-plan-brief b{font-size:1rem}.lab-plan-brief span{font-size:.75rem;color:var(--sub);text-align:right}.plan-advice{display:grid;gap:2px;border:1px solid #d5e7e4;background:#f4fbfa;border-left:4px solid var(--teal-2);border-radius:9px;padding:10px 12px;margin:9px 0}.plan-advice b{font-size:.78rem}.plan-advice span{font-size:.75rem;color:#566c75}.program-station-card{padding:11px 12px}.program-station-card p{font-size:.76rem}.program-station-card ul{margin:.5rem 0;padding-left:18px}.program-station-card li{margin:3px 0;font-size:.76rem}

/* General density */
.workspace-controls{padding:16px 18px}.builder-heading{margin-bottom:12px;padding-bottom:10px}.builder-heading p{font-size:.74rem}.resource-strip{margin:8px 0}.workspace-output{padding:19px 22px}.workspace-output .station-section{padding-top:13px;margin-top:13px}.workspace-output .station-section h3{margin-bottom:6px}.workspace-output .quickrun,.workspace-output .confidence{padding:12px 14px}.program-controls{padding:17px 18px}.program-skill-picker{padding-top:12px}

@media(max-width:1160px){
  .capability-grid{grid-template-columns:repeat(2,1fr)}.access-grid{grid-template-columns:1fr}.program-number-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
  .launchpad{padding:38px 0 30px}.hero-v31 h1{font-size:clamp(2.8rem,8vw,4.8rem)}.role-heading-copy{display:block}.role-heading-copy p{margin-top:4px}.access-preview{padding:28px 0}.plan-preview-grid{grid-template-columns:1fr 1fr}.program-number-grid{grid-template-columns:repeat(3,1fr)}.program-settings-row{grid-template-columns:1fr 1fr}.program-picker-layout{grid-template-columns:1fr}
}
@media(max-width:620px){
  .launchpad{padding:24px 0 22px}.launchpad-v31{gap:22px}.hero-v31 h1{font-size:2.55rem;line-height:.98}.hero-lede{font-size:.93rem;line-height:1.5}.hero-actions{margin-top:16px}.capability-grid{grid-template-columns:1fr 1fr;gap:7px}.capability-grid>div{min-height:0;padding:11px}.capability-grid b{font-size:.87rem}.capability-grid small{font-size:.68rem}.launch-roles{padding:12px}.role-card-grid{gap:8px}.role-card{min-height:0;padding:12px}.role-card b{font-size:1rem}.role-card small{font-size:.74rem}.role-card em{padding-top:10px}.access-preview{padding:22px 0}.access-grid{gap:18px}.access-copy h2{font-size:1.55rem}.plan-preview-grid{grid-template-columns:1fr}.plan-preview{padding:13px}.plan-preview h3{font-size:1rem}.program-controls{padding:13px}.program-number-grid{grid-template-columns:1fr 1fr;gap:7px}.duration-field{grid-column:1/-1}.program-settings-row{grid-template-columns:1fr;gap:7px}.program-picker-heading{display:grid;grid-template-columns:1fr auto}.program-picker-heading small{line-height:1.35}.program-category-filter select,.program-search-label input{height:40px}.program-picker-layout{gap:7px}.program-skill-options{max-height:260px}.program-skill-option{padding:6px 8px}.program-selected-panel{min-height:0;padding:8px}.lab-skill-chip{font-size:.62rem;padding:4px 6px}.lab-plan-brief{display:grid;gap:3px}.lab-plan-brief span{text-align:left}.program-station-card{padding:10px}.workspace-controls{padding:13px}.builder-heading{gap:3px}.builder-heading h2{font-size:1.15rem}.compact-segments button{min-height:40px}.purpose-segments{grid-template-columns:1fr!important}.station-choice-grid,.scenario-choice-grid{gap:10px}.station-class-fields{grid-template-columns:repeat(3,1fr)}.workspace-output{padding:13px}.station-output-views{margin-bottom:10px}.role-switch{grid-template-columns:repeat(3,1fr)}.role-switch button{padding:7px 4px;font-size:.67rem}
}
@media(max-width:390px){
  .capability-grid{grid-template-columns:1fr}.program-number-grid{grid-template-columns:1fr 1fr}.station-class-fields{grid-template-columns:1fr 1fr}.station-class-fields label:last-child{grid-column:1/-1}.compact-segments.three{grid-template-columns:1fr}.role-switch{grid-template-columns:1fr}.plan-preview-grid{grid-template-columns:1fr}
}
/* Keep the homepage focused until a role is chosen; avoid empty output cards. */
body:not(.has-role) .workspace-shell{display:none}
#program-output:empty{display:none}



/* ===== ux-v32.css ===== */
/* EMS SkillLab Beta 3.2 — conversion homepage, recommendation-first lab planning, and mobile density refinement */

/* Header */
.header-nav{margin-left:auto;display:flex;align-items:center;gap:14px}.header-nav .header-link{margin-left:0}

/* Homepage */
.launchpad{padding:52px 0 38px;display:block;min-height:auto}
.launchpad-v32{display:grid;gap:26px}
.hero-v32{max-width:1120px}
.hero-v32 .eyebrow{color:#82ddd5}
.hero-v32 h1{font-size:clamp(3.6rem,7vw,7.2rem);line-height:.9;letter-spacing:-.066em;margin:.14em 0 .25em;color:#fff;max-width:980px}
.hero-v32 .hero-lede{max-width:900px;font-size:1.15rem;color:#c9d8dd;line-height:1.55}
.proof-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.proof-strip span{display:inline-flex;gap:5px;align-items:center;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.055);border-radius:999px;padding:7px 10px;color:#c9d9de;font-size:.72rem}.proof-strip b{color:#fff}
.how-it-works-v32{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.11);border-radius:20px;padding:22px}
.section-heading-v32{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);gap:8px 30px;align-items:end;margin-bottom:14px}.section-heading-v32 .eyebrow{grid-column:1/-1;color:#7fd9d1}.section-heading-v32 h2{font-size:1.7rem;line-height:1.05;color:#fff;margin:0}.section-heading-v32 p{margin:0;color:#bfd0d6;font-size:.82rem;line-height:1.45}
.workflow-grid-v32{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.workflow-grid-v32 article{border-radius:14px;background:rgba(7,27,37,.28);padding:14px;min-height:126px}.workflow-grid-v32 span{display:block;color:#6fd7cf;font-size:.65rem;font-weight:900;letter-spacing:.08em}.workflow-grid-v32 b{display:block;color:#fff;font-size:1rem;margin:6px 0 3px}.workflow-grid-v32 p{margin:0;color:#bdced4;font-size:.73rem;line-height:1.45}
.return-value-v32{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.return-value-v32>div{display:grid;gap:2px;background:#f6fbfb;border:1px solid #d6e5e6;border-radius:14px;padding:13px 14px}.return-value-v32 b{font-size:.82rem;color:#0a615e}.return-value-v32 span{font-size:.73rem;color:#60747d;line-height:1.4}
.launch-roles-v32{box-shadow:0 24px 60px rgba(0,0,0,.16)}

/* Access / subscription preview */
.access-preview{padding:32px 0;background:#fff}
.access-v32{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);gap:26px;align-items:start}
.access-copy h2{font-size:2rem;line-height:1.04;margin:.2em 0 .4em;letter-spacing:-.035em}.access-copy>p{font-size:.86rem;line-height:1.55}
.plan-preview-grid-v32{grid-template-columns:repeat(3,minmax(0,1fr))}.plan-preview{min-height:235px;display:flex;flex-direction:column}.plan-preview .plan-foot{margin-top:auto;padding-top:8px}

/* Station builder clarity */
.purpose-segments button span{font-size:.64rem}.support-resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.support-resource-grid>div{background:#f4f8f9;border:1px solid #dfe8ea;border-radius:10px;padding:10px}.support-resource-grid>div>b{display:block;margin-bottom:5px;font-size:.76rem}.support-resource-grid ol,.support-resource-grid ul{margin:.25rem 0;padding-left:18px}.support-resource-grid li{font-size:.75rem;margin:3px 0}

/* Recommendation-first Program planner */
.program-settings-row{grid-template-columns:1.15fr 1.15fr .7fr}
.grouping-review{border:1px solid #d5e3e5;background:#f7fbfb;border-radius:12px;padding:12px;margin-top:12px}.grouping-review-empty{display:grid;gap:3px}.grouping-review-empty b{font-size:.8rem}.grouping-review-empty span{font-size:.72rem;color:var(--sub)}
.grouping-review-head{display:flex;justify-content:space-between;gap:14px;align-items:center}.grouping-review-head>div:first-child{display:grid;gap:2px}.grouping-review-head .control-label{margin:0}.grouping-review-head b{font-size:.82rem}.grouping-choice{display:flex;gap:5px;flex-wrap:wrap}.grouping-choice button{appearance:none;border:1px solid #c8d8db;background:#fff;border-radius:999px;padding:6px 9px;font:inherit;font-size:.66rem;font-weight:850;color:#38535d;cursor:pointer}.grouping-choice button.active{background:var(--navy);border-color:var(--navy);color:#fff}.grouping-suggestions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:10px}.grouping-suggestion{display:grid;gap:2px;border:1px solid #dce7e9;background:#fff;border-radius:9px;padding:8px 9px}.grouping-suggestion b{font-size:.73rem}.grouping-suggestion span{font-size:.66rem;color:#647780;line-height:1.35}.grouping-fit,.grouping-scaffold{font-size:.71rem;line-height:1.4;margin:9px 0 0}.grouping-scaffold{border-left:3px solid var(--teal-2);padding-left:8px;color:#4f6771}

/* Slightly more app-like density */
.workspace-shell{padding-top:14px}.context-bar{margin-bottom:10px}.role-tabs{gap:4px}.workspace-controls{padding:14px 16px}.workspace-output{padding:17px 20px}.builder-heading{margin-bottom:9px;padding-bottom:8px}.program-controls{padding:15px 16px}.program-skill-picker{padding-top:10px}.program-selected-panel{padding:8px}.program-skill-options{max-height:300px}.role-card{min-height:190px}

@media(max-width:1160px){
  .workflow-grid-v32{grid-template-columns:repeat(2,1fr)}.access-v32{grid-template-columns:1fr}.plan-preview-grid-v32{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
  .section-heading-v32{grid-template-columns:1fr}.section-heading-v32 p{max-width:680px}.return-value-v32{grid-template-columns:1fr}.plan-preview-grid-v32{grid-template-columns:1fr 1fr}.program-settings-row{grid-template-columns:1fr 1fr}.grouping-review-head{align-items:flex-start;flex-direction:column}.grouping-suggestions{grid-template-columns:1fr}
}
@media(max-width:620px){
  .header-nav{display:none}.launchpad{padding:24px 0 18px}.launchpad-v32{gap:16px}.hero-v32 h1{font-size:3rem;line-height:.94}.hero-v32 .hero-lede{font-size:.92rem}.hero-actions{gap:10px;align-items:flex-start;flex-direction:column}.proof-strip{margin-top:14px;gap:5px}.proof-strip span{font-size:.63rem;padding:5px 7px}.how-it-works-v32{padding:13px;border-radius:15px}.section-heading-v32{margin-bottom:10px}.section-heading-v32 h2{font-size:1.3rem}.section-heading-v32 p{font-size:.73rem}.workflow-grid-v32{grid-template-columns:1fr 1fr;gap:6px}.workflow-grid-v32 article{min-height:0;padding:10px}.workflow-grid-v32 b{font-size:.86rem}.workflow-grid-v32 p{font-size:.66rem}.return-value-v32{gap:6px}.return-value-v32>div{padding:9px 10px}.launch-roles-v32{padding:11px}.role-heading-copy h2{font-size:1.18rem}.role-heading-copy p{font-size:.7rem}.role-card-grid{gap:6px}.role-card{min-height:0;padding:11px}.role-card b{font-size:.94rem;margin:5px 0 3px}.role-card small{font-size:.68rem;line-height:1.35}.role-card em{padding-top:7px;font-size:.65rem}.access-preview{padding:20px 0}.access-copy h2{font-size:1.45rem}.access-copy>p{font-size:.76rem}.plan-preview-grid-v32{grid-template-columns:1fr}.plan-preview{min-height:0;padding:12px}.plan-preview h3{font-size:.95rem}.plan-preview li{font-size:.71rem}.support-resource-grid{grid-template-columns:1fr}.grouping-review{padding:9px}.grouping-choice{display:grid;grid-template-columns:1fr 1fr;width:100%}.grouping-choice button{border-radius:8px;padding:7px}.program-controls{padding:11px}.workspace-controls{padding:11px}.workspace-output{padding:12px}.program-skill-options{max-height:220px}
}
@media(max-width:390px){
  .workflow-grid-v32{grid-template-columns:1fr}.proof-strip{display:grid;grid-template-columns:1fr 1fr}.proof-strip span{border-radius:8px}.grouping-choice{grid-template-columns:1fr}.program-number-grid{gap:6px}.program-skill-options{max-height:200px}
}

/* Guard intrinsic-width overflow in the Program workspace, especially on phones. */
.program-workspace,.program-builder-grid,.program-controls,.program-output,.program-skill-picker,.program-picker-layout,.program-number-grid,.program-settings-row,.grouping-review{min-width:0;max-width:100%;width:100%;box-sizing:border-box}
.program-number-grid>* ,.program-settings-row>* ,.program-picker-layout>*{min-width:0}
.program-number-grid input,.program-settings-row select,.program-settings-row input,.program-category-filter select,.program-search-label input{max-width:100%;box-sizing:border-box}
@media(max-width:620px){
  .program-builder-grid{grid-template-columns:minmax(0,1fr)!important}
  .program-controls,.program-output{overflow:visible!important;height:auto!important}
  .program-number-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .program-settings-row{grid-template-columns:minmax(0,1fr)!important}
  .program-picker-layout{grid-template-columns:minmax(0,1fr)!important}
}



/* ===== ux-v33.css ===== */
/* EMS SkillLab Beta 3.3 — conversion + workflow refinement */

/* Landing / conversion */
.hero-v32 h1{max-width:1120px;font-size:clamp(3.25rem,6.2vw,6.4rem);line-height:.94;letter-spacing:-.058em}
.hero-v32 .hero-lede{max-width:860px;font-size:1.08rem}
.plan-cta{display:inline-flex;align-items:center;justify-content:center;margin-top:auto;width:max-content;min-height:38px;padding:8px 12px;border-radius:10px;background:#0f7e77;color:#fff!important;text-decoration:none;font-size:.72rem;font-weight:900}
.plan-cta-light{background:#fff;color:#0c3342!important}
.plan-cta-muted{background:#edf2f3;color:#63757d!important}
.role-card-grid{align-items:stretch}
.role-card{border-radius:14px}

/* Student level should visually change the whole activity, not just one line */
.student-difficulty-bar{align-items:center}
.student-level-hero{display:grid;gap:6px;border:1px solid #d3e2e4;border-left:5px solid #12867f;border-radius:14px;padding:14px 16px;margin:10px 0 14px;background:linear-gradient(135deg,#f5fbfa,#fff)}
.student-level-hero[data-level="analyze"]{border-left-color:#285e78;background:linear-gradient(135deg,#f4f8fb,#fff)}
.student-level-hero[data-level="evaluate"]{border-left-color:#8d5d23;background:linear-gradient(135deg,#fff8ef,#fff)}
.student-level-hero>span{font-size:.67rem;text-transform:uppercase;letter-spacing:.07em;font-weight:900;color:#52707a}
.student-level-hero>b{font-size:1.04rem;line-height:1.35;color:#143440}
.student-level-hero p{margin:0;color:#60747c;font-size:.78rem}
.student-level-hero.practice-level{margin-top:8px}
.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.decision-grid>div{border:1px solid #dce7e9;background:#f8fbfb;border-radius:11px;padding:11px 12px}
.decision-grid>div>b{font-size:.76rem}
.prompt-bank{margin-top:10px;padding:10px 12px;border-radius:10px;background:#eef6f7}
.prompt-bank>b{font-size:.76rem}
.student-reference{margin:12px 0;border:1px solid #d6e2e5;border-radius:10px;background:#fafcfc;padding:0}
.student-reference summary{cursor:pointer;padding:10px 12px;font-weight:850;color:#254a58}
.student-reference>ol,.student-reference>ul{padding:0 28px 12px}

/* Scenario identity belongs in the card, not a floating bubble */
.scenario-card-head-clean{display:block}
.scenario-card-head-clean>div{min-width:0}
.scenario-code-line{display:block;margin-top:4px;font-size:.61rem;font-weight:750;color:#72858d;letter-spacing:.02em}
.scenario-run-summary{margin-top:4px}
.scenario-run-summary span{border-radius:8px;padding:5px 8px}

/* Program planning */
.rotation-input-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;margin-top:4px;border:1px solid #cbd8dc;border-radius:9px;background:#fff;overflow:hidden}
.rotation-input-wrap input{border:0!important;margin:0!important;padding:8px 9px!important;min-width:0}
.rotation-input-wrap small{padding:0 8px 0 2px;color:#71838a;font-size:.62rem;font-weight:800}
.grouping-question{margin:9px 0 0;padding:9px 10px;border-left:3px solid var(--teal-2);background:#edf7f6;border-radius:8px;font-size:.72rem;line-height:1.4}
.grouping-suggestion em{font-style:normal;font-size:.61rem;color:#60747c}
.grouping-fit{font-weight:750;color:#355560}

/* Reduce UI weight and scrolling */
.workspace-output .station-section{margin-top:10px;padding-top:10px}
.workspace-output .station-section h3{font-size:1rem}
.workspace-output p,.workspace-output li{line-height:1.48}
.workspace-output .scope-note{margin:8px 0 12px}
.station-controls .workspace-advanced{margin-top:8px}
.program-controls .builder-heading{margin-bottom:8px}
.program-skill-picker{margin-top:4px}

@media (max-width:760px){
  .hero-v32 h1{font-size:2.55rem;line-height:.98;letter-spacing:-.05em}
  .hero-v32 .hero-lede{font-size:.86rem;line-height:1.45}
  .proof-strip{grid-template-columns:1fr 1fr}
  .role-card{padding:12px}
  .role-card b{font-size:.95rem}
  .role-card small{font-size:.69rem}
  .student-difficulty-bar{padding:9px 10px}
  .student-difficulty-bar>div:first-child small{font-size:.65rem}
  .student-level-hero{padding:11px 12px;margin:7px 0 10px}
  .student-level-hero>b{font-size:.91rem}
  .decision-grid{grid-template-columns:1fr}
  .scenario-learner-card,.scenario-facilitator-card{padding:12px;margin:10px 0}
  .scenario-card-head{margin-bottom:8px;padding-bottom:7px}
  .scenario-meta{gap:6px}
  .scenario-meta div{padding:8px;font-size:.72rem}
  .scenario-task{padding:9px 10px}
  .program-number-grid{gap:6px}
  .program-number-grid input,.duration-inputs input,.rotation-input-wrap input{font-size:.82rem}
  .program-settings-row{gap:7px;margin:8px 0 10px}
  .grouping-review{margin-top:8px}
  .grouping-suggestions{gap:5px}
  .program-station-card{padding:10px;margin:7px 0}
}

@media (max-width:480px){
  .launchpad{padding-top:18px}
  .hero-v32 h1{font-size:2.2rem}
  .hero-actions .btn{width:100%;text-align:center}
  .workflow-grid-v32{grid-template-columns:1fr 1fr}
  .role-card-grid{grid-template-columns:1fr}
  .plan-preview-grid-v32{grid-template-columns:1fr}
  .compact-segments.three{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .compact-segments.three button{min-height:52px;padding:6px 4px;font-size:.68rem}
  .compact-segments.three button span{font-size:.55rem}
  .purpose-segments.three button b{font-size:.67rem;line-height:1.05}
  .purpose-segments.three button span{line-height:1.1}
  .station-class-fields{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .station-class-fields label:last-child{grid-column:auto!important}
  .station-class-fields input{padding:8px 4px!important;text-align:center}
  .program-number-grid{grid-template-columns:1fr 1fr!important}
  .program-number-grid>label,.program-number-grid>.duration-field{min-width:0}
  .program-settings-row{grid-template-columns:1fr!important}
  .program-picker-layout{grid-template-columns:1fr}
  .program-selected-panel{min-height:0}
  .grouping-choice{grid-template-columns:1fr 1fr!important}
  .grouping-choice button{font-size:.62rem}
  .workspace-output{padding:10px}
  .workspace-output h2{font-size:1.45rem}
  .printbar{gap:5px;flex-wrap:wrap}
  .printbar .btn{min-height:34px;padding:7px 9px;font-size:.66rem}
}

@media (max-width:350px){
  .compact-segments.three{grid-template-columns:1fr!important}
  .station-class-fields{grid-template-columns:1fr 1fr!important}
  .station-class-fields label:last-child{grid-column:1/-1!important}
  .workflow-grid-v32{grid-template-columns:1fr}
  .proof-strip{grid-template-columns:1fr}
}



/* ===== ui-v53.css ===== */
/* EMS SkillLab Beta 5.3 — mobile navigation and density correction. */
.mobile-quick-nav{display:none}
.account-section{background:#eaf3f2;border-top:1px solid #d7e3e4;border-bottom:1px solid #d7e3e4}
.account-wrap{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:28px;align-items:start}
.account-copy h2{font-size:clamp(1.8rem,3vw,2.6rem);margin:.2em 0 .35em}
.account-copy p{color:#5f727a;max-width:640px}
.account-mount{min-width:0}
.account-mount .supabase-account{max-width:none;margin:0;background:#fff;box-shadow:0 12px 30px rgba(20,55,63,.07)}
.account-loading{margin:0;padding:14px;background:#fff;border:1px solid #c9dfe1;border-radius:12px}
#account,#tools,#updates,#feedback,#access-preview,#role-heading{scroll-margin-top:90px}

@media(max-width:900px){
  .account-wrap{grid-template-columns:1fr;gap:14px}
  .account-copy h2{font-size:1.7rem}
}

@media(max-width:700px){
  .app-header{position:sticky!important;top:0!important}
  .app-header-inner{min-height:48px!important;padding-top:6px;padding-bottom:6px}
  .app-brand{font-size:1rem}.brand-mark{min-width:34px;height:28px;font-size:.65rem}
  .mobile-quick-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:5px 12px 7px;background:#0b2230;border-top:1px solid rgba(255,255,255,.1);overflow:visible}
  .mobile-quick-nav a{display:flex;align-items:center;justify-content:center;min-height:36px;padding:6px 4px;border-radius:8px;color:#dce9ed;text-decoration:none;font-size:.69rem;font-weight:850;text-align:center}
  .mobile-quick-nav a:hover,.mobile-quick-nav a:focus-visible{background:rgba(255,255,255,.1);color:#fff}
  body:not(.has-role) .workspace-jump-link{display:none}
  body.has-role .role-start-link,body.has-role .mobile-quick-nav a[href="#access-preview"]{display:none}
  body.has-role .mobile-quick-nav{grid-template-columns:repeat(3,minmax(0,1fr))}
  .launchpad-v32{display:flex;flex-direction:column}
  .hero-v32{order:1}.launch-roles-v32{order:2}.how-it-works-v32{order:3}.return-value-v32{order:4}
  .hero-v32 h1{font-size:clamp(2rem,10vw,2.65rem)!important}
  .hero-v32 .hero-lede{font-size:.84rem!important}
  .launch-roles-v32{margin-top:0}
  .role-card small{display:none}
  .role-card em{padding-top:6px!important}
  .role-card{padding:10px!important}
  .onboarding-card{grid-template-columns:1fr auto!important;margin-left:14px!important;margin-right:14px!important;padding:10px 12px!important;gap:8px!important}
  .onboarding-card .micro,.onboarding-card ol{display:none!important}
  .onboarding-card .ghost{width:auto!important;min-height:38px;padding:7px 10px;font-size:.7rem}
  .role-switch{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;overflow:visible!important}
  .role-switch button{min-width:0!important;padding:8px 3px!important;font-size:.72rem!important;white-space:normal;line-height:1.15}
  .role-switch [data-role-switch="lab"] span,.role-switch [data-role-switch="program"] span{font-size:0}
  .role-switch [data-role-switch="lab"] span:after{content:"Instructor";font-size:.72rem}
  .role-switch [data-role-switch="program"] span:after{content:"Program";font-size:.72rem}
  .context-bar{padding:8px!important}
  .account-section,.updates-section,.feedback-section{padding:26px 0!important}
  .account-copy h2,.signup h2,.feedback-wrap h2{font-size:1.5rem;line-height:1.05}
  .account-copy p,.signup p,.feedback-wrap p{font-size:.78rem}
  .account-mount .supabase-account{padding:12px}
  .signup{padding:14px!important;gap:14px!important}
  .signup-form,.feedback-form{padding:13px!important}
  #account,#tools,#updates,#feedback,#access-preview,#role-heading{scroll-margin-top:105px}
}

@media(max-width:360px){
  .mobile-quick-nav{padding-left:7px;padding-right:7px}
  .mobile-quick-nav a{font-size:.63rem}
  .role-switch button{font-size:.67rem!important}
}

@media print{.mobile-quick-nav,.account-section{display:none!important}}



/* ===== billing-v54.css ===== */
body:not(.tools-ready) #tools {display:none!important}
[hidden] {display:none!important}
.account-actions {display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}
.account-actions .btn {white-space:normal;min-height:44px}
[data-test],.sandbox-notice {padding:12px;border:1px solid #b48b23;border-radius:8px;background:#fff8df;color:#493800}
[data-plans] details {border-top:1px solid #cadcde;padding:12px 0}
[data-plans] pre {white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;max-height:420px;overflow:auto}
.supabase-account {min-width:0;overflow-wrap:anywhere}
.supabase-account summary {cursor:pointer;min-height:44px;padding:10px 0}
@media(max-width:600px){.account-actions{flex-direction:column}.account-actions .btn{width:100%}}



/* ===== app-v55.css ===== */
:root{--navy:#0b1420;--surface:#132130;--teal:#64ded0;--ink:#e9f1f6;--muted:#9bacbc;--line:#293a4b;--accent:#087f80}
*{box-sizing:border-box}body{margin:0;background:var(--navy);color:var(--ink);font-family:Inter,Segoe UI,system-ui,sans-serif;font-size:15px;line-height:1.55}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}a{color:inherit}h1,h2,h3,p{overflow-wrap:break-word}h1,h2,h3{letter-spacing:-.025em}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #00bfae;outline-offset:3px}[hidden]{display:none!important}
.shell-sidebar{position:fixed;inset:0 auto 0 0;width:224px;padding:30px 20px;background:#101c29;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:30}.shell-brand{display:flex;align-items:center;gap:10px;font-size:21px;text-decoration:none;font-weight:750}.shell-mark{background:var(--teal);color:#0d2931;display:grid;place-items:center;width:38px;height:38px;border-radius:12px;font-size:26px}.shell-sidebar small{color:var(--muted);margin:6px 0 32px 49px;font-size:11px;letter-spacing:.1em}.shell-sidebar nav{display:grid;gap:8px}.shell-sidebar nav a{text-decoration:none;padding:12px 14px;color:#b9c8d6;border-radius:9px;font-weight:600}.shell-sidebar nav a.active,.shell-sidebar nav a:hover{background:#1d3b43;color:var(--teal)}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-size:12px}.sidebar-bottom b{color:var(--ink)}.shell-top{height:76px;margin-left:224px;padding:0 40px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);color:var(--muted)}.shell-top a{text-decoration:none}.release-chip{color:var(--teal);border:1px solid #315452;background:#17302f;border-radius:20px;padding:5px 10px;font-size:12px}.shell-main{margin-left:224px;min-height:85vh}.dashboard{max-width:1300px;padding:42px 40px 60px;margin:auto}.dashboard-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.dashboard h1{font-size:clamp(30px,3.5vw,46px);max-width:660px;line-height:1.12;margin:12px 0 18px;color:var(--ink)}.dashboard p{color:var(--muted)}.dashboard .eyebrow{color:var(--teal);letter-spacing:.13em;font-size:11px}.dashboard-role{display:flex;gap:6px;margin:25px 0}.dashboard-role button,.provider-pills button{background:transparent;border:1px solid var(--line);color:#c8d6df;padding:9px 16px;border-radius:8px}.dashboard-role button.active,.provider-pills button.active{background:#21484a;color:var(--teal);border-color:#40817d}.dashboard-hero{display:grid;grid-template-columns:1.7fr 1fr;border:1px solid #355d63;border-radius:18px;overflow:hidden;background:linear-gradient(115deg,#193e49,#152d37 65%,#142532);margin:20px 0 28px}.dashboard-hero>div{padding:28px 32px}.dashboard-hero h2{color:#fff;font-size:27px;margin:6px 0 10px}.dashboard-hero p{max-width:540px;color:#c0d3db}.dashboard-hero .btn{background:var(--teal);color:#102d34;border:none;padding:14px 20px;border-radius:9px;font-weight:750;box-shadow:0 4px 0 #071a2380}.hero-workflow{border-left:1px solid #ffffff12;display:grid;align-content:center;gap:12px}.hero-workflow span{font-size:13px;color:#c6d7df}.hero-workflow b{display:inline-grid;place-items:center;width:26px;height:26px;border:1px solid #56757c;border-radius:50%;margin-right:10px;color:var(--teal)}.dashboard-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.dashboard-card{background:var(--surface);border:1px solid var(--line);border-radius:13px;text-align:left;padding:23px;color:var(--ink);transition:border-color .15s,transform .15s}.dashboard-card:hover{border-color:#64ded0;transform:translateY(-2px)}.dashboard-card .icon{display:block;color:var(--teal);font-size:24px;margin-bottom:12px}.dashboard-card strong{display:block;font-size:17px}.dashboard-card span:last-child{display:block;font-size:13px;color:var(--muted);margin-top:7px}.dashboard-bottom{display:grid;grid-template-columns:1.6fr 1fr;gap:26px;margin-top:35px}.section-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.section-label h2{font-size:19px;margin:0;color:var(--ink)}.section-label a{color:var(--teal);font-size:13px}.empty-state{padding:26px;background:var(--surface);border:1px dashed #405468;border-radius:12px;text-align:center}.empty-state h3{color:var(--ink);font-size:17px}.empty-icon{color:var(--teal);font-size:24px}.recent-card{display:block;width:100%;border:1px solid var(--line);border-radius:9px;background:var(--surface);padding:16px;color:var(--ink);text-align:left;text-decoration:none;margin-bottom:9px}.recent-card span{display:block;font-size:12px;color:var(--muted);margin-top:5px}.provider-pills{display:flex;gap:6px;flex-wrap:wrap}.dashboard-stats{display:flex;gap:20px;margin-top:20px;color:var(--muted);font-size:13px}.dashboard-stats b{color:var(--teal)}
body:not([data-page=dashboard]) .dashboard{display:none}body:not([data-page=tools]) #tools{display:none!important}body:not([data-page=account]) #account{display:none!important}body:not([data-page=feedback]) #feedback{display:none!important}body:not([data-page=access-preview]) #access-preview{display:none!important}.updates-section,.onboarding-card,.backend-shell,.account-foundation,[data-auth-integration]{display:none!important}.shell-main>.section,.shell-main>#account{padding:35px}.shell-main .wrap{width:auto;max-width:1300px;margin:auto}.workspace-shell{background:#eaf0f3;color:#17313e;padding:24px;min-height:90vh}.context-bar{border-radius:12px!important}.workspace-output{scroll-margin-top:25px;border-radius:12px!important;min-width:0}.workspace-output h2{color:#123846}.workspace-output p{color:#253d4a}.workspace-controls{border-radius:12px!important}.workspace-output .btn,.workspace-controls .btn{background:#087f80!important;color:#fff!important;border:1px solid #076769!important;min-height:45px;box-shadow:0 2px 0 #084149}.workspace-output .btn.secondary{background:#edf7f6!important;color:#125c5b!important}.fresh-output{outline:3px solid #16a89f;box-shadow:0 0 0 8px #16a89f20!important}.assessment-dataset{margin:20px 0;border:1px solid #a8ceca;border-radius:10px;padding:14px;background:#f2fbf9}.assessment-dataset summary{font-weight:700;cursor:pointer}.assessment-dataset h3{font-size:16px;color:#086b68}.supabase-account{background:#fff;color:#213a48;padding:28px;border-radius:15px;max-width:960px;margin:auto}.supabase-account h3{color:#153944}.supabase-account label{display:block;margin:12px 0;font-weight:600}.supabase-account input{display:block;width:100%;padding:12px;border:1px solid #adbfca;border-radius:7px;color:#153944;background:#fff;min-height:44px}.supabase-account .btn{background:#087f80;color:#fff;border:0;min-height:44px;border-radius:8px;padding:11px 17px;margin:4px 2px}.supabase-account .btn.secondary,.supabase-account .btn.ghost{background:#eaf2f3;color:#214d59}.supabase-account textarea{width:100%;color:#17313e;background:#fff}.supabase-account [data-auth-form]{max-width:520px}.supabase-account [role=status]{font-size:14px}.access-preview{background:#152c38;color:white;padding:45px}.access-preview h2,.access-preview h3{color:inherit}.access-preview .plan-preview{background:#203e49;color:#fff}.access-preview p{color:#c0d4dd}.shell-main #feedback{color:#213b48;background:#eaf0f3}.footer{margin-left:224px;padding:20px 40px;color:var(--muted)}.footer a{color:#a7c9d0}.rotation-table{overflow-x:auto;max-width:100%}.product-plan-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.shell-main #account>div>h2{color:#e9f1f6}.shell-main #account>div>p{color:#b2c5d1}
@media(max-width:1000px){.shell-sidebar{width:190px}.shell-top,.shell-main,.footer{margin-left:190px}.shell-top{padding:0 24px}.dashboard{padding:30px 24px}.dashboard-cards{gap:10px}.dashboard-card{padding:18px}.dashboard-hero{grid-template-columns:1fr}.hero-workflow{display:none}.workspace-shell{padding:12px}}
@media(max-width:700px){.shell-sidebar{position:static;width:100%;padding:14px 18px;display:block;border-bottom:1px solid var(--line)}.shell-sidebar small,.sidebar-bottom{display:none}.shell-sidebar nav{display:flex;gap:2px;margin-top:14px;overflow-x:auto}.shell-sidebar nav a{white-space:nowrap;font-size:12px;padding:9px 11px}.shell-top{height:52px;margin:0;padding:0 20px;font-size:12px}.shell-main,.footer{margin-left:0}.dashboard{padding:26px 18px}.dashboard-head{display:block}.dashboard h1{font-size:33px}.dashboard-hero>div{padding:23px}.dashboard-role{flex-wrap:wrap}.dashboard-cards{grid-template-columns:1fr}.dashboard-card .icon{float:left;margin:0 18px 0 0}.dashboard-bottom{grid-template-columns:1fr}.dashboard-stats{margin-bottom:16px}.supabase-account{padding:19px}.shell-main>#account{padding:18px}.workspace-shell{padding:8px}.provider-pills button{padding:8px 12px}.footer{padding:18px}.shell-main .wrap{max-width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.shell-sidebar,.shell-top,.dashboard,.footer{display:none!important}.shell-main{margin:0}.workspace-output{box-shadow:none!important}details>*{display:block!important}}
/* Final contrast and route styling. */
footer{background:#0f1b28!important;border-top:1px solid #293a4b!important}.footer{background:transparent!important}.footer p,.footer a{color:#aabdcc!important}.account-section{background:#0b1420!important}.account-copy h2{color:#e9f1f6!important}.account-copy p{color:#aabdcc!important}.workspace-controls .micro{color:#536d79!important}
@media print{.printing-guide .product-plan-actions,.printing-guide .printbar,.printing-guide button,.printing-guide [role=status]{display:none!important}.printing-guide details{break-inside:auto}.printing-guide h3{break-after:avoid}.printing-guide .assessment-dataset{background:white!important;border:0!important}}

/* 5.5 launch patch: account management, membership flow, and billing contrast. */
.account-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-bottom:18px}
.account-card{border:1px solid #d8e3e7;border-radius:13px;background:#f8fbfc;padding:20px;color:#213a48}
.account-card h3{margin:2px 0 8px;color:#153944}.account-kicker{display:block;font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:#087f80}.account-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.account-card-heading .btn.compact{min-height:38px;padding:8px 12px;margin:0}.account-email,.account-help{color:#4a626d;margin:8px 0 12px}.account-subsection{border-top:1px solid #dbe6e9;margin-top:18px;padding-top:8px}.account-subsection summary{font-weight:750;color:#174c58}.account-subsection form{padding-top:6px}.account-inline-status{min-height:1.3em;margin:7px 0 0;color:#365762}.billing-summary{font-size:16px;font-weight:750;color:#153944;background:#e8f4f3;border:1px solid #b7d8d4;border-radius:9px;padding:12px}.billing-disclosure{color:#314c57;line-height:1.6}.sandbox-account-notice{background:#fff3cd!important;border:1px solid #d7a92b!important;color:#493800!important;border-radius:9px;padding:12px}.sandbox-account-notice b{color:#493800!important}.saved-card{margin-top:0}.saved-card>summary{font-size:16px;font-weight:800;color:#153944}.account-global-status{margin:14px 2px 0;color:#365762!important}.recovery-card{margin-bottom:18px;background:#fff8df;border-color:#d7a92b}.recovery-card p{color:#493800}
.access-preview .sandbox-notice{background:#fff3cd!important;border-color:#d7a92b!important;color:#493800!important;font-weight:600}.access-preview .sandbox-notice b{color:#493800!important}.access-preview .sandbox-notice *{color:#493800!important}
@media(max-width:900px){.account-grid{grid-template-columns:1fr}}

/* 5.5 public-launch polish */
.account-legal{font-size:13px;color:#526b76!important;line-height:1.5}.account-legal a{color:#087f80;font-weight:700}.feedback-section .feedback-wrap{max-width:1100px}.feedback-form button{min-height:46px}.access-preview .plan-preview p{line-height:1.55}.access-copy>p:last-child{max-width:780px}.dashboard-card[hidden],.recent-card[hidden]{display:none!important}


/* Final launch UX: keep workspace selector controls in normal page flow.
   The provider/category/topic bar should scroll away with the workspace content
   instead of floating over generated scenarios and station guides. */
.context-bar{
  position:relative!important;
  top:auto!important;
  z-index:auto!important;
  backdrop-filter:none!important;
}
.context-bar .role-switch{
  position:static!important;
  top:auto!important;
  z-index:auto!important;
}


.trial-invitation{margin:24px 0;padding:24px;border:1px solid #40817d;border-radius:14px;background:#17383f}.trial-invitation h2{font-size:23px;color:#fff}.trial-invitation .btn{display:inline-block;background:var(--teal);color:#102d34}.trial-invitation[hidden]{display:none}.saved-card details:focus{outline:2px solid #087f80;outline-offset:4px}
/* Conversion path: clarify the free-trial steps for paid-search visitors. */
.trial-signup-summary{max-width:640px;margin:8px 0 14px;color:#365762!important;line-height:1.6}.trial-signup-steps{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.trial-signup-steps span{display:inline-flex;align-items:center;gap:7px;background:#e8f4f3;border:1px solid #b7d8d4;border-radius:999px;padding:7px 10px;color:#174c58;font-size:13px;font-weight:700}.trial-signup-steps b{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#087f80;color:#fff;font-size:11px}@media(max-width:600px){.trial-signup-steps{display:grid}.trial-signup-steps span{border-radius:9px}}

/* Unified workspace shell: retain the dark dashboard chrome around readable paper-like tools.
   The premium app.js is intentionally unchanged; the shared public stylesheet owns the theme. */
body[data-page="tools"] #tools{
  background:linear-gradient(180deg,#101c29 0,#0b1420 360px);
  color:#e9f1f6;
}
body[data-page="tools"] #tools .context-bar{
  background:#132130;
  color:#e9f1f6;
  border:1px solid #293a4b;
  box-shadow:0 8px 22px rgba(0,0,0,.14);
}
body[data-page="tools"] #tools .context-bar .role-switch{
  background:transparent;
}
body[data-page="tools"] #tools .context-bar .topic-help,
body[data-page="tools"] #tools .context-bar .micro{
  color:#b9cbd5;
}
body[data-page="tools"] #tools .workspace-controls,
body[data-page="tools"] #tools .workspace-output{
  background:#fff;
  color:#17313e;
  border-color:#cddde2;
  box-shadow:0 10px 28px rgba(0,0,0,.16);
}
body[data-page="tools"] #tools .workspace-controls{
  background:#f8fbfc;
}
@media print{
  body[data-page="tools"] #tools,
  body[data-page="tools"] #tools .context-bar{
    background:#fff!important;
    color:#17313e!important;
    box-shadow:none!important;
  }
  body[data-page="tools"] #tools .workspace-controls,
  body[data-page="tools"] #tools .workspace-output{
    box-shadow:none!important;
  }
}



/* ===== retention-v56.css ===== */
.retention-hub{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);gap:18px;margin:30px 0 24px}
.retention-value,.weekly-value,.library-shell,.semester-shell{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:24px}.retention-value{background:linear-gradient(135deg,#183847,#122936 62%,#102331)}
.retention-value h2,.weekly-value h2,.library-shell h2,.semester-shell h2{margin:5px 0 10px;color:var(--ink)}.retention-value p,.weekly-value p,.library-shell p,.semester-shell p{color:var(--muted)}
.retention-loop{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.retention-loop span{border:1px solid #365365;background:#102532;border-radius:999px;padding:6px 10px;font-size:12px;color:#c7d9e2}.retention-loop b{color:var(--teal)}
.retention-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.retention-metric{padding:12px;border:1px solid #34505f;border-radius:10px;background:#0d202b}.retention-metric b{display:block;color:var(--teal);font-size:23px}.retention-metric span{font-size:11px;color:#9fb6c2}
.retention-actions,.weekly-actions,.library-actions,.semester-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.retention-actions .btn,.weekly-actions .btn,.library-actions .btn,.semester-actions .btn{background:var(--teal);color:#102d34;border:0;border-radius:9px;padding:11px 15px;font-weight:800}.retention-actions a,.library-link{color:var(--teal);font-weight:700;text-decoration:none}
.weekly-value{display:flex;flex-direction:column;justify-content:center}.weekly-value .eyebrow,.library-shell .eyebrow,.semester-shell .eyebrow{color:var(--teal);font-size:11px;letter-spacing:.12em}.weekly-actions .secondary{background:#1b3b46;color:#dff8f4;border:1px solid #315d63}
.library-shell,.semester-shell{margin:18px 0}.library-heading,.semester-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:15px}.library-heading>div,.semester-heading>div{max-width:780px}.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.library-card{border:1px solid #2f4557;border-radius:12px;background:#101f2c;padding:18px}.library-card h3{font-size:16px;margin:6px 0;color:#fff}.library-card p{font-size:13px;margin:7px 0 14px}.library-meta{font-size:11px;color:#78dcd2;letter-spacing:.04em}.library-actions .compact{min-height:36px;padding:8px 10px;font-size:12px}.library-actions .compact:disabled{opacity:.45}.library-link{font-size:12px}.retention-empty{display:grid;gap:10px;padding:22px;border:1px dashed #405468;border-radius:12px;color:var(--muted)}.retention-empty strong{color:var(--ink)}
.semester-setup{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:10px;margin:16px 0}.semester-setup label{font-size:12px;color:#aabdcc}.semester-setup input{display:block;width:100%;margin-top:5px;background:#0e202c;color:#eef6f8;border:1px solid #385161;border-radius:8px;padding:10px;min-height:42px}.semester-plan{display:grid;gap:8px;margin-top:16px}.semester-week{display:grid;grid-template-columns:110px minmax(220px,1fr) 90px 100px;gap:9px;align-items:center;border:1px solid #293f50;border-radius:10px;padding:10px;background:#0f202d}.week-number b{display:block;color:#fff}.week-number span{font-size:11px;color:#79d9cf}.semester-week>input{width:100%;background:#132a38;color:#eef6f8;border:1px solid #385161;border-radius:7px;padding:9px}.week-check{color:#aabdcc;font-size:12px}.week-build{border:1px solid #3f696d;border-radius:7px;background:#17383f;color:#bff3ed;padding:8px;font-weight:700}.semester-status{color:#8fded6;font-size:12px;min-height:1.4em}.subscription-reason{margin-top:14px;border-left:3px solid var(--teal);padding:10px 0 10px 14px;color:#c7d9e2}.subscription-reason b{color:#fff}
.semester-shell>summary{cursor:pointer;list-style:none}.semester-shell>summary::-webkit-details-marker{display:none}.semester-summary{display:flex;justify-content:space-between;align-items:center;gap:18px}.semester-summary::after{content:'Open planner';color:var(--teal);font-size:12px;font-weight:800}.semester-shell[open] .semester-summary::after{content:'Close planner'}.semester-shell>.semester-body{margin-top:16px;border-top:1px solid #293f50;padding-top:4px}
@media(max-width:1000px){.retention-hub{grid-template-columns:1fr}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.semester-setup{grid-template-columns:1fr 1fr}.semester-week{grid-template-columns:90px 1fr 80px}.semester-week .week-build{grid-column:2/-1}}
@media(max-width:700px){.retention-value,.weekly-value,.library-shell,.semester-shell{padding:18px}.retention-metrics{grid-template-columns:1fr 1fr}.retention-metric:last-child{grid-column:1/-1}.library-grid{grid-template-columns:1fr}.library-heading,.semester-heading{display:block}.semester-setup{grid-template-columns:1fr}.semester-week{grid-template-columns:1fr}.semester-week .week-build{grid-column:auto}.week-number{display:flex;justify-content:space-between}.retention-actions .btn,.weekly-actions .btn{width:100%}.semester-summary{align-items:flex-start}.semester-summary::after{white-space:nowrap}}


/* ===== experience-v62.css ===== */
/* EMS SkillLab: calmer, curiosity-led visual system.
   Keep the private scenario engine and existing interactions unchanged.
   Design goals: visual hierarchy, low cognitive load, legible clinical output,
   and a consistent path from first visit to the workspace. */
:root{
  --skill-paper:#f4f8f7;
  --skill-card:#ffffff;
  --skill-ink:#17343e;
  --skill-muted:#526c73;
  --skill-border:#d8e5e4;
  --skill-teal:#087b76;
  --skill-mint:#e8f6f1;
  --skill-warm:#fff4e4;
}
html,body{background:var(--skill-paper)}
.shell-sidebar{background:#153641;border-right-color:#31535c}
.shell-sidebar nav a{color:#d5e7e8}
.shell-sidebar nav a.active,.shell-sidebar nav a:hover{background:#e5f6f1;color:#135b5b}
.shell-sidebar .sidebar-bottom{border-top-color:#3a5a61;color:#c2d7d9}
.shell-sidebar .sidebar-bottom b{color:#fff}
.shell-top{background:#fff;border-bottom:1px solid var(--skill-border);color:var(--skill-muted)}
.shell-top a{color:#126b68;font-weight:750}
.release-chip{background:#e6f6f0;border-color:#b8ddd3;color:#14665e}
.shell-main{background:var(--skill-paper)}
/* The main action is visible and confident without making every surface dark. */
.dashboard{color:var(--skill-ink)}
.dashboard h1,.dashboard .section-label h2{color:var(--skill-ink)}
.dashboard p,.dashboard .dashboard-stats{color:var(--skill-muted)}
.dashboard .eyebrow,.dashboard .dashboard-stats b{color:var(--skill-teal)}
.dashboard-role button,.provider-pills button{background:#fff;border-color:var(--skill-border);color:#36565f}
.dashboard-role button:hover,.provider-pills button:hover{border-color:#8bbeb5;background:#f0f9f5}
.dashboard-role button.active,.provider-pills button.active{background:#dcf2eb;border-color:#6fae9f;color:#075b55}
.dashboard-hero{
  border:1px solid #b9dcd1;
  background:radial-gradient(circle at 100% 0%,#fff0d9 0%,transparent 43%),linear-gradient(115deg,#dff3ec,#f4faf6 74%);
  box-shadow:0 14px 34px rgba(20,74,70,.07);
}
.dashboard-hero h2{color:#173b42}
.dashboard-hero p{color:#47636a}
.dashboard-hero .eyebrow{color:#087b76}
.dashboard-hero .btn{background:#087b76;color:#fff;box-shadow:0 4px 0 #095a54}
.dashboard-hero .btn:hover{background:#076762}
.hero-workflow{border-left:1px solid #c5dfd5}
.hero-workflow span{color:#345a5d}
.hero-workflow b{color:#087b76;border-color:#a5cfc3;background:#fff}
.dashboard-card,.recent-card{background:#fff;border-color:var(--skill-border);color:var(--skill-ink);box-shadow:0 5px 18px rgba(24,66,65,.04)}
.dashboard-card{transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.dashboard-card:hover{border-color:#7dbab0;transform:translateY(-2px);box-shadow:0 12px 24px rgba(24,66,65,.1)}
.dashboard-card .icon,.empty-icon{color:#087b76}
.dashboard-card span:last-child,.recent-card span{color:var(--skill-muted)}
.empty-state{background:#fff;border-color:#b8d7d0}
.empty-state h3{color:var(--skill-ink)}
.section-label a{color:#087b76}
/* Positive progress cues: save, return and reuse remain discoverable. */
.retention-value,.weekly-value,.library-shell,.semester-shell{border-color:var(--skill-border);background:#fff;color:var(--skill-ink);box-shadow:0 5px 20px rgba(24,66,65,.04)}
.retention-value{background:linear-gradient(130deg,#e5f6ee,#f8fcf9 76%)}
.retention-value h2,.weekly-value h2,.library-shell h2,.semester-shell h2{color:var(--skill-ink)}
.retention-value p,.weekly-value p,.library-shell p,.semester-shell p{color:var(--skill-muted)}
.retention-loop span{background:#fff;border-color:#c3e0d8;color:#305b5b}
.retention-loop b,.retention-metric b{color:#087b76}
.retention-metric{background:#fff;border-color:#cce4dc}
.retention-metric span{color:var(--skill-muted)}
.retention-actions a,.library-link{color:#087b76}
.weekly-value .eyebrow,.library-shell .eyebrow,.semester-shell .eyebrow{color:#087b76}
.weekly-actions .secondary{background:#edf5f3;color:#185f5a;border-color:#b9d9d2}
.library-card{background:#f8fbfa;border-color:var(--skill-border)}
.library-card h3,.retention-empty strong{color:var(--skill-ink)}
.library-meta{color:#087b76}
.retention-empty{border-color:#bfd9d2;color:var(--skill-muted)}
.semester-setup label,.week-check{color:var(--skill-muted)}
.semester-setup input,.semester-week>input{background:#fff;color:var(--skill-ink);border-color:#bed7d2}
.semester-week{background:#f8fbfa;border-color:var(--skill-border)}
.week-number b{color:var(--skill-ink)}
.week-number span,.semester-status{color:#087b76}
.week-build{background:#e4f5ef;border-color:#9bcdbf;color:#09655e}
.semester-summary::after{color:#087b76}
.trial-invitation{background:linear-gradient(120deg,#fff4e4,#fffaf2);border-color:#efd5aa}
.trial-invitation h2{color:var(--skill-ink)}
.trial-invitation p{color:#586a6b}
.trial-invitation .btn{background:#087b76;color:#fff}
/* One continuous light experience: workspace remains document-focused. */
body[data-page="tools"] #tools{background:var(--skill-paper);color:var(--skill-ink)}
body[data-page="tools"] #tools .context-bar{background:#fff;color:var(--skill-ink);border:1px solid var(--skill-border);box-shadow:0 5px 20px rgba(24,66,65,.05)}
body[data-page="tools"] #tools .context-bar .role-switch{background:transparent}
body[data-page="tools"] #tools .context-bar .role-switch button.active{background:#087b76;color:#fff}
body[data-page="tools"] #tools .context-bar .topic-help,
body[data-page="tools"] #tools .context-bar .micro{color:var(--skill-muted)}
body[data-page="tools"] #tools .workspace-controls,
body[data-page="tools"] #tools .workspace-output{background:#fff;color:var(--skill-ink);border-color:var(--skill-border);box-shadow:0 7px 24px rgba(24,66,65,.06)}
body[data-page="tools"] #tools .workspace-controls{background:#fbfdfc}
/* Membership and support should feel like part of the same product. */
body[data-page="account"] .account-section{background:var(--skill-paper)!important}
body[data-page="account"] .account-copy h2{color:var(--skill-ink)!important}
body[data-page="account"] .account-copy p{color:var(--skill-muted)!important}
body[data-page="access-preview"] .access-preview{background:#f4f8f7;color:var(--skill-ink)}
body[data-page="access-preview"] .access-preview h2,
body[data-page="access-preview"] .access-preview h3{color:var(--skill-ink)}
body[data-page="access-preview"] .access-preview p{color:var(--skill-muted)}
body[data-page="access-preview"] .access-preview .plan-preview{background:#fff;color:var(--skill-ink);border:1px solid var(--skill-border)}
body[data-page="access-preview"] .access-preview .plan-preview h3{color:var(--skill-ink)}
body[data-page="access-preview"] .access-preview .plan-preview p{color:var(--skill-muted)}
/* Public introduction: inviting and informative, never a fake countdown. */
.marketing-intro{background:linear-gradient(120deg,#e8f6f0 0%,#fffaf1 55%,#f2f8f7 100%);border-color:#cce3d9}
.marketing-curiosity{color:#0d665e;font-weight:750;font-size:1rem;line-height:1.5}
.marketing-actions .btn{background:#087b76;color:#fff}
.marketing-actions .btn:hover{background:#076762}
.marketing-showcase{border-color:var(--skill-border)}
/* Motion helps orient, but is never required. */
@media(max-width:700px){
  .dashboard-hero{grid-template-columns:1fr}
  .hero-workflow{border-left:0;border-top:1px solid #c5dfd5}
  .dashboard-card:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .dashboard-card{transition:none}
}
@media print{
  body[data-page="tools"] #tools,
  body[data-page="tools"] #tools .context-bar,
  body[data-page="tools"] #tools .workspace-output{background:#fff!important;color:#17313e!important;box-shadow:none!important}
}



/* ===== experience-v63.css ===== */
/* Experience v63: purposeful discovery and polished clinical workbench.
   Engagement is earned through meaningful tasks, not artificial urgency. */
.dashboard-hero{position:relative;isolation:isolate;overflow:hidden}
.dashboard-hero::after{content:"";position:absolute;right:-60px;top:-100px;width:300px;height:300px;border:1px solid rgba(8,123,118,.16);border-radius:50%;pointer-events:none;z-index:-1;box-shadow:0 0 0 36px rgba(8,123,118,.035),0 0 0 72px rgba(8,123,118,.025)}
.dashboard-hero .btn,.workspace-primary,.discovery-action button{transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.dashboard-hero .btn:hover,.workspace-primary:hover,.discovery-action button:hover{transform:translateY(-2px);box-shadow:0 9px 20px rgba(7,91,85,.2)}
.dashboard-card{position:relative;overflow:hidden}
.dashboard-card::after{content:"→";position:absolute;right:20px;top:20px;font-size:22px;color:#7bb7ab;transition:transform .18s ease}
.dashboard-card:hover::after{transform:translateX(4px)}
.dashboard-card:focus-visible,.discovery-action button:focus-visible,.workspace-primary:focus-visible,.workspace-secondary:focus-visible{outline:3px solid #0a7d74;outline-offset:3px}
.discovery-card{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(230px,.7fr);gap:22px;align-items:center;margin:22px 0 8px;padding:clamp(22px,3vw,34px);border-radius:20px;background:linear-gradient(118deg,#fffdf9 0%,#fff4e5 65%,#eaf6f0 100%);border:1px solid #eadcc6;box-shadow:0 10px 30px rgba(83,64,39,.055)}
.discovery-kicker,.workspace-kicker{display:block;color:#0a766d;letter-spacing:.12em;font-size:11px;font-weight:850}
.discovery-card h2{font-size:clamp(21px,2.3vw,29px);line-height:1.23;letter-spacing:-.035em;margin:9px 0 10px;color:#17343e;max-width:700px}
.discovery-card p{color:#49636a;max-width:680px;margin:0 0 12px}
.discovery-reveal{border-top:1px solid #e4d6c0;padding-top:10px;max-width:680px}
.discovery-reveal summary{color:#096f66;font-weight:800;cursor:pointer;list-style:revert}
.discovery-reveal[open] p{margin:11px 0 0;color:#34545c;line-height:1.6}
.discovery-action{display:grid;gap:12px;align-content:center;background:rgba(255,255,255,.8);border:1px solid #e6e9de;border-radius:15px;padding:21px}
.discovery-action>span{font-size:18px;font-weight:850;color:#17343e;line-height:1.35}
.discovery-action button,.workspace-primary{background:#087b76;color:#fff;border:1px solid #087b76;border-radius:11px;padding:14px 17px;text-align:left;font-size:14px;font-weight:800;line-height:1.4;cursor:pointer}
.discovery-action button span,.workspace-primary span{float:right;padding-left:10px}
.discovery-action small{color:#536b71;line-height:1.45}
/* Make the workspace an intentional destination, not a sudden block of forms. */
body[data-page="tools"] #tools{padding-top:26px}
.workspace-wrap{max-width:1460px}
.workspace-intro{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.65fr);gap:24px;align-items:center;background:linear-gradient(110deg,#e4f4ee 0%,#f5faf7 63%,#fff5e9 100%);border:1px solid #c6dfd6;border-radius:21px;padding:clamp(22px,3.2vw,36px);margin-bottom:18px;box-shadow:0 10px 28px rgba(24,66,65,.05)}
.workspace-intro h2{font-size:clamp(26px,3vw,39px);line-height:1.12;letter-spacing:-.045em;color:#17343e;margin:9px 0 10px;max-width:720px}
.workspace-intro p{font-size:15px;color:#47656b;max-width:680px;margin:0 0 20px}
.workspace-intro-actions{display:flex;gap:10px;flex-wrap:wrap}
.workspace-secondary{border:1px solid #91bfb5;background:#fff;color:#12665e;border-radius:11px;padding:14px 17px;font-size:14px;font-weight:800;cursor:pointer}
.workspace-secondary:hover{background:#ecf8f3}
.workspace-steps{list-style:none;padding:18px 20px;margin:0;background:#fff;border:1px solid #d6e7e1;border-radius:15px;display:grid;gap:15px}
.workspace-steps li{display:flex;align-items:center;gap:12px}
.workspace-steps li+li{border-top:1px solid #e9f0ed;padding-top:15px}
.workspace-step-number{font-size:12px;font-weight:900;color:#0a776d;background:#e5f6ef;border-radius:10px;min-width:37px;height:37px;display:grid;place-items:center}
.workspace-steps strong{display:block;color:#193b43;font-size:14px}
.workspace-steps small{display:block;color:#597178;font-size:12px;margin-top:2px}
/* Workspace settings: visible, clearly labeled, with more breathing room. */
body[data-page="tools"] #tools .context-bar{padding:18px 20px!important;border-radius:17px!important;margin-bottom:16px;box-shadow:0 8px 24px rgba(24,66,65,.05)}
body[data-page="tools"] #tools .context-bar .role-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:17px}
body[data-page="tools"] #tools .context-bar .role-switch button{min-height:46px;border:1px solid #d2e5de;background:#f4f9f7;color:#31555b;font-weight:800;border-radius:10px}
body[data-page="tools"] #tools .context-bar .role-switch button:hover{background:#e9f5f0}
body[data-page="tools"] #tools .context-bar .role-switch button.active{background:#087b76!important;color:#fff!important;border-color:#087b76;box-shadow:0 4px 12px rgba(8,123,118,.15)}
body[data-page="tools"] #tools .context-bar .field-block>span,
body[data-page="tools"] #tools .context-bar .topic-combobox>label{color:#30555e;font-weight:800}
body[data-page="tools"] #tools .selection-grid select,
body[data-page="tools"] #tools .selection-grid input{border-color:#b8d4ce;border-radius:10px;min-height:45px;background:#fff;color:#17343e}
body[data-page="tools"] #tools .role-required{min-height:240px;border:1px dashed #a8d1c6;background:#fff;color:#536c72}
/* Navigation within a workspace should look like a polished tool selector, not dark tabs. */
body[data-page="tools"] #tools .role-tabs{background:#fff;border:1px solid #d8e5e4;border-radius:16px;box-shadow:0 6px 18px rgba(24,66,65,.05);padding:9px;gap:7px;top:24px}
body[data-page="tools"] #tools .tool-rail-title{color:#55737a}
body[data-page="tools"] #tools .role-tabs button{color:#365861;background:#f6faf8;border:1px solid transparent;border-radius:11px;min-height:61px;padding:12px}
body[data-page="tools"] #tools .role-tabs button b{font-size:14px}
body[data-page="tools"] #tools .role-tabs button small{color:#5d777d;font-size:11px}
body[data-page="tools"] #tools .role-tabs button:hover{background:#e8f5ef;border-color:#c7e4d8}
body[data-page="tools"] #tools .role-tabs button.active{background:#e4f4ed;color:#095e56;border:1px solid #8ec8b7;box-shadow:inset 4px 0 0 #087b76}
body[data-page="tools"] #tools .role-tabs button.active small{color:#416c68}
body[data-page="tools"] #tools .workspace-controls,
body[data-page="tools"] #tools .workspace-output{border-radius:16px!important}
body[data-page="tools"] #tools .workspace-output{padding:clamp(16px,2.5vw,28px)}
body[data-page="tools"] #tools .workspace-controls{padding:clamp(15px,2vw,24px)}
body[data-page="tools"] #tools .builder-heading h2{color:#17343e}
body[data-page="tools"] #tools .role-panel{min-width:0}
@media(max-width:1000px){
  .workspace-intro{grid-template-columns:1fr}
  .workspace-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .workspace-steps li{align-items:flex-start}
  .workspace-steps li+li{border-top:0;padding-top:0}
  .discovery-card{grid-template-columns:1fr}
}
@media(max-width:900px){
  body[data-page="tools"] #tools .role-tabs{position:relative;top:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
  body[data-page="tools"] #tools .role-tabs button{min-height:48px;text-align:center;padding:9px 5px}
  body[data-page="tools"] #tools .role-tabs button.active{box-shadow:inset 0 -4px 0 #087b76}
}
@media(max-width:600px){
  .workspace-intro{padding:20px 16px}
  .workspace-intro-actions{display:grid}
  .workspace-steps{grid-template-columns:1fr}
  .workspace-steps li+li{border-top:1px solid #e9f0ed;padding-top:10px}
  .discovery-card{padding:19px}
  body[data-page="tools"] #tools .context-bar{padding:12px!important}
  body[data-page="tools"] #tools .context-bar .role-switch button{font-size:12px;min-height:48px}
  body[data-page="tools"] #tools .role-tabs button b{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .dashboard-hero .btn,.workspace-primary,.discovery-action button,.dashboard-card::after{transition:none}
  .dashboard-hero .btn:hover,.workspace-primary:hover,.discovery-action button:hover{transform:none}
}
@media print{
  .workspace-intro,.discovery-card{display:none!important}
  body[data-page="tools"] #tools .role-tabs,body[data-page="tools"] #tools .context-bar{box-shadow:none!important}
}



/* ===== experience-v64.css ===== */
/* Clinical engagement v64: real choices, immediate educational feedback, readable workbench. */
.decision-lab{margin:26px 0 20px;background:#fff;border:1px solid #c7e2d9;border-radius:23px;overflow:hidden;box-shadow:0 14px 32px rgba(25,77,70,.08)}
.decision-lab-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 30px 20px;background:linear-gradient(115deg,#e4f5ef,#f9fcfa 68%,#fff5e8)}
.decision-lab-header h2{font-size:clamp(25px,3vw,37px);color:#163b41;line-height:1.1;margin:7px 0}
.decision-lab-header p{margin:0;color:#4c6970;font-size:14px;max-width:620px}
.decision-counter{min-width:132px;text-align:right}
.decision-counter strong{font-size:12px;color:#0a746a}
.decision-progress{height:7px;border-radius:99px;background:#cde3db;margin-top:9px;overflow:hidden}
.decision-progress span{display:block;width:0;height:100%;background:#087b76;border-radius:99px;transition:width .25s ease}
.decision-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(255px,.72fr);gap:0}
.decision-case{padding:28px 30px 32px;min-width:0}
.decision-category{font-size:11px;letter-spacing:.12em;font-weight:850;color:#0b766b}
.decision-case h3{font-size:clamp(21px,2.5vw,30px);line-height:1.2;color:#17343e;margin:10px 0 8px}
.decision-case>p{color:#4e6970;line-height:1.6;margin:0 0 20px}
.decision-options{display:grid;gap:9px;border:0;margin:0;padding:0}
.decision-options legend{font-size:14px;font-weight:850;color:#284b53;margin-bottom:11px}
.decision-options button{width:100%;text-align:left;background:#f8fbfa;border:1px solid #d4e5df;border-radius:12px;padding:13px 15px;color:#254952;font-size:14px;font-weight:700;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}
.decision-options button:hover:not(:disabled){background:#ecf7f2;border-color:#7cb9aa;transform:translateX(2px)}
.decision-options button:focus-visible{outline:3px solid #087b76;outline-offset:2px}
.decision-options button:disabled{cursor:default;opacity:1}
.decision-options button[data-outcome="correct"]{background:#e4f5ec;border-color:#439f7f;color:#14583f}
.decision-options button[data-outcome="incorrect"]{background:#fff2e7;border-color:#dba66e;color:#805126}
.decision-feedback{margin-top:15px;padding:14px 17px;background:#eef8f4;border-left:4px solid #087b76;border-radius:9px;color:#264f53;line-height:1.55;font-size:14px}
.decision-feedback strong{display:block;color:#173e40;margin-bottom:3px}
.decision-next{background:#087b76;color:#fff;border:0;border-radius:11px;padding:12px 17px;margin-top:15px;font-size:14px;font-weight:850;cursor:pointer}
.decision-next:hover{background:#09665f}
.decision-payoff{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:28px 26px;background:#f7faf7;border-left:1px solid #e1ebe5}
.decision-payoff-kicker{font-size:11px;font-weight:850;color:#0c756c;letter-spacing:.1em}
.decision-payoff h3{color:#1c4146;font-size:22px;line-height:1.25;margin:0}
.decision-payoff p{color:#536e74;font-size:14px;line-height:1.6;margin:0}
.decision-build{background:#087b76;color:#fff;border:0;border-radius:12px;padding:14px 16px;font-size:14px;font-weight:850;cursor:pointer;text-align:left}
.decision-build:hover{background:#086b64}
.decision-build span{float:right}
.decision-samples{font-size:13px;font-weight:750;color:#086c63;text-decoration:underline;text-underline-offset:3px}
/* Workbench: use room for the work, not oversized welcome panels. */
body[data-page="tools"] #tools{padding-top:17px}
body[data-page="tools"] #tools .workspace-intro{grid-template-columns:minmax(0,1fr) minmax(260px,.5fr);padding:23px 26px;margin-bottom:14px;gap:22px;background:linear-gradient(115deg,#e9f7f1,#f9fcfa 75%,#fff8ef)}
body[data-page="tools"] #tools .workspace-intro h2{font-size:clamp(23px,2.6vw,33px);margin:5px 0 6px}
body[data-page="tools"] #tools .workspace-intro p{margin-bottom:12px;font-size:13px}
body[data-page="tools"] #tools .workspace-intro-actions button{padding:10px 13px;font-size:13px}
body[data-page="tools"] #tools .workspace-steps{grid-column:2;grid-row:1 / span 2;padding:13px 15px;gap:10px}
body[data-page="tools"] #tools .workspace-steps li+li{padding-top:10px}
body[data-page="tools"] #tools .workspace-guidance{grid-column:1;display:flex;align-items:center;gap:9px;color:#28675e;font-size:12px;font-weight:750}
.workspace-guidance-dot{height:8px;width:8px;flex:0 0 8px;background:#0c9989;border-radius:50%}
body[data-page="tools"] #tools .context-bar{position:relative;top:auto}
body[data-page="tools"] #tools .role-tabs{top:20px}
body[data-page="tools"] #tools .role-panel>.workspace-output{min-height:220px}
@media(max-width:980px){
 .decision-layout{grid-template-columns:1fr}
 .decision-payoff{border-left:0;border-top:1px solid #e1ebe5}
 body[data-page="tools"] #tools .workspace-intro{grid-template-columns:1fr}
 body[data-page="tools"] #tools .workspace-steps{grid-column:1;grid-row:auto}
 body[data-page="tools"] #tools .workspace-guidance{grid-column:1}
}
@media(max-width:600px){
 .decision-lab-header{padding:19px;display:block}
 .decision-counter{margin-top:13px;text-align:left;max-width:160px}
 .decision-case,.decision-payoff{padding:20px}
 body[data-page="tools"] #tools .workspace-intro{padding:18px}
 body[data-page="tools"] #tools .workspace-steps{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.decision-progress span,.decision-options button{transition:none}.decision-options button:hover:not(:disabled){transform:none}}
@media print{.decision-lab,.workspace-guidance{display:none!important}}



/* ===== lab-preview-v65.css ===== */
/* A small, useful pre-signup win for EMS instructors. All styles are scoped. */
.marketing-showcase .lab-preview-intro{color:#435f65;font-size:.91rem;line-height:1.5;margin:0 0 18px}
.marketing-showcase .lab-preview-form{display:grid;gap:14px}
.marketing-showcase .lab-preview-progress{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.78rem;font-weight:750;color:#31545a}
.marketing-showcase .lab-preview-progress progress{width:40%;height:9px;accent-color:#087b76}
.marketing-showcase .lab-preview-fields{display:grid;gap:12px}
.marketing-showcase .lab-preview-fields label{display:grid;gap:5px;font-size:.82rem;font-weight:750;color:#294c53}
.marketing-showcase .lab-preview-fields select{width:100%;min-height:44px;padding:9px 12px;border:1px solid #a9c8c5;border-radius:9px;background:#fff;color:#17343e;font:inherit;font-size:.92rem}
.marketing-showcase .lab-preview-primary{justify-content:center;text-align:center;width:100%;min-height:46px;background:#087b76;color:#fff;font-weight:800}
.marketing-showcase .lab-preview-clarifier{color:#526b73;font-size:.75rem;line-height:1.4}
.marketing-showcase .lab-preview-result{display:grid;gap:10px}
.marketing-showcase .lab-preview-result[hidden],.marketing-showcase .lab-preview-form[hidden]{display:none}
.marketing-showcase .lab-preview-result h4{font-size:1.14rem;line-height:1.28;margin:0;color:#17343e}
.marketing-showcase .lab-preview-result p{margin:0;color:#38575e;line-height:1.48}
.marketing-showcase .lab-preview-result .lab-preview-steps{list-style:decimal;margin:4px 0 0;padding-left:21px;color:#284850;display:grid;gap:8px}
.marketing-showcase .lab-preview-result .lab-preview-steps li{display:list-item;counter-increment:none;border:0;padding:0;font-size:.85rem;line-height:1.48}
.marketing-showcase .lab-preview-result .lab-preview-steps li::before{content:none}
.marketing-showcase .lab-preview-result .lab-preview-controls{display:flex;flex-wrap:wrap;gap:12px}
.marketing-showcase .lab-preview-secondary{background:#eef7f4;border:1px solid #bbd7d1;border-radius:9px;color:#155e5b;font-size:.8rem;font-weight:750;padding:9px 11px;cursor:pointer}
.marketing-showcase .lab-preview-trial{display:block;background:#087b76;color:#fff!important;border-radius:9px;padding:12px 16px;font-size:.93rem;font-weight:800;text-decoration:none;text-align:center}
.marketing-showcase .lab-preview-trial:hover{background:#096b65}
.marketing-showcase .lab-preview-status{min-height:0;font-size:.76rem;color:#345e5d}
.marketing-showcase .lab-preview-pricing{font-size:.75rem!important;color:#38575e}
.marketing-showcase .lab-preview-warning{font-size:.74rem!important;color:#526b73}
#tools .lab-preview-carry{border-left:3px solid #087b76;background:#e6f6f0;padding:12px 14px;font-size:.86rem;line-height:1.45;color:#24464b}
.marketing-showcase .lab-preview-secondary:focus-visible,.marketing-showcase .lab-preview-fields select:focus-visible,.marketing-showcase .lab-preview-primary:focus-visible,.marketing-showcase .lab-preview-trial:focus-visible{outline:3px solid #0c8f80;outline-offset:2px}



/* ===== studio-next-v1.css ===== */
/* Next-generation studio skin: visual-only changes around existing authenticated logic.
 * Existing generators, auth, saved work, export, and billing retain their selectors.
 */
:root{--studio-navy:#091d2e;--studio-teal:#16baa7;--studio-ink:#153041;--studio-paper:#f4f8f8;--studio-line:#dce8e8;--studio-muted:#5c7380}
body{font-family:Inter,"Segoe UI",system-ui,sans-serif;background:var(--studio-paper);color:var(--studio-ink)}
.shell-sidebar{width:245px;background:var(--studio-navy)!important;border-right:1px solid #284556;padding:29px 19px}
.shell-brand{font-weight:850;letter-spacing:-.045em;font-size:21px;color:#fff}
.shell-mark{background:#26d0b9;color:#082c32;border-radius:11px}
.shell-sidebar small{color:#8daab5;letter-spacing:.13em}
.shell-sidebar nav{gap:5px}
.shell-sidebar nav a{color:#c2d8de!important;border-radius:10px;font-size:14px;font-weight:720;padding:13px 15px}
.shell-sidebar nav a.active,.shell-sidebar nav a:hover{background:#204453!important;color:#8cf5df!important}
.shell-sidebar .sidebar-bottom{border-color:#36505d;color:#9cb5bd}
.shell-top{margin-left:245px;height:72px;background:#fff;border-bottom:1px solid var(--studio-line);color:#496675;padding:0 36px}
.shell-top a{color:#087c71;font-weight:750}
.release-chip{background:#e5f5f1;border:1px solid #bfe2d9;color:#137467}
.shell-main{margin-left:245px;background:var(--studio-paper);min-height:90vh}
.footer{margin-left:245px}
.dashboard{max-width:1280px;padding:43px 36px 72px}
.dashboard h1{font-size:clamp(32px,3.4vw,49px);letter-spacing:-.055em;line-height:1.06;color:#153041}
.dashboard p{color:var(--studio-muted)}
.dashboard .eyebrow{color:#0b8a7c;font-weight:850;letter-spacing:.14em}
.dashboard-head{align-items:center}
.dashboard-stats{gap:9px}
.dashboard-stats span{background:#fff;border:1px solid var(--studio-line);padding:10px 13px;border-radius:10px;color:#5b7180;font-weight:700}
.dashboard-stats b{color:#087c71}
.dashboard-role{margin:27px 0 18px;background:#e5eeee;border:1px solid #d1e0e0;padding:5px;border-radius:12px;width:max-content;max-width:100%}
.dashboard-role button{background:transparent;border:0;color:#4e6a75;font-weight:800;padding:10px 17px;border-radius:9px}
.dashboard-role button.active{background:#fff;color:#0b756b;border:0;box-shadow:0 2px 8px #0b364216}
.dashboard-hero{background:linear-gradient(115deg,#0c3043,#0a2336 75%,#123c46);border:1px solid #2b5762;border-radius:20px;margin:24px 0;box-shadow:0 15px 35px #0a263217}
.dashboard-hero>div{padding:35px}
.dashboard-hero h2{font-size:clamp(25px,2.7vw,35px);letter-spacing:-.05em;color:#fff}
.dashboard-hero p{color:#c1d7dc}
.dashboard-hero .btn{background:#25d0b7;color:#082f38;box-shadow:none;border-radius:10px}
.hero-workflow{background:#ffffff08}
.hero-workflow span{font-size:13px;color:#d1e1e5}
.hero-workflow b{border-color:#528e8d;color:#9af5df}
.dashboard-cards{gap:15px}
.dashboard-card{background:#fff;border:1px solid var(--studio-line);border-radius:17px;padding:27px 25px;color:var(--studio-ink);box-shadow:0 4px 18px #123c4510}
.dashboard-card:hover{border-color:#2bbca9;box-shadow:0 12px 32px #103a451b}
.dashboard-card .icon{color:#099c8d}
.dashboard-card strong{font-size:18px;letter-spacing:-.025em}
.dashboard-card span:last-child{color:var(--studio-muted);line-height:1.6}
.dashboard-bottom{gap:20px}
.section-label h2{color:var(--studio-ink)}
.section-label a{color:#087c71}
.recent-card,.empty-state{background:#fff;border-color:var(--studio-line);color:var(--studio-ink)}
.recent-card:hover{border-color:#23bba9}
.recent-card span{color:var(--studio-muted)}
.empty-state h3{color:var(--studio-ink)}
.provider-pills button{border:1px solid #ccdddd;color:#426675;background:#fff;font-weight:750}
.provider-pills button.active{background:#dff4ef;color:#0c756b;border-color:#6dc9ba}
.shell-main .marketing-intro{border:0;border-radius:0;box-shadow:none;margin:0;padding:62px 42px 50px;background:radial-gradient(ellipse at 80% 15%,#1d5060,transparent 48%),linear-gradient(145deg,#0b2436,#081b2b)!important;color:#fff}
.marketing-intro .eyebrow{color:#7de9d8}
.marketing-intro h2{color:#fff;font-size:clamp(2.7rem,4.3vw,4.9rem);letter-spacing:-.06em}
.marketing-intro .marketing-lead,.marketing-intro .marketing-curiosity{color:#d1e0e5}
.marketing-intro .marketing-terms{color:#b4c9d2}
.marketing-intro .marketing-link{color:#8cf0de}
.marketing-actions .btn{background:#24d0b6;color:#092d38;box-shadow:none;border-radius:10px;font-weight:850}
.marketing-actions .btn.secondary{background:transparent;border:1px solid #789ba6;color:#f2ffff}
.marketing-showcase{background:#fff;color:var(--studio-ink);border-radius:18px;box-shadow:0 18px 45px #0003}
.marketing-showcase h3,.marketing-showcase p{color:var(--studio-ink)}
.marketing-showcase .lab-preview-intro,.marketing-showcase .lab-preview-clarifier{color:#59727b}
.instructor-resources{background:#e5f3f0!important}
.instructor-resources a{color:#08766b;font-weight:750}
.decision-lab{border-radius:20px;box-shadow:0 12px 28px #113a4410}
.decision-lab-header{background:linear-gradient(120deg,#e0f5ef,#fff 80%)}
.retention-value,.weekly-value,.library-shell{border-radius:18px}
.workspace-shell{background:var(--studio-paper);padding:24px 26px;min-height:80vh}
.workspace-controls,.workspace-output{box-shadow:0 4px 20px #123c4510;border:1px solid #dbe8e9!important;border-radius:15px!important}
.workspace-intro{border-radius:15px}
.context-bar{background:#fff;border:1px solid #dce8e9}
.role-tabs button{font-weight:750}
.supabase-account{border:1px solid var(--studio-line);box-shadow:0 12px 34px #113d4810}
.access-preview{background:#0d2a3b}
.shell-main #account{background:#f2f7f7}
.account-copy h2,.account-copy p{color:var(--studio-ink)!important}
.shell-main #feedback{background:#f2f7f7}
.footer{background:var(--studio-navy)!important}
@media(max-width:1000px){.shell-sidebar{width:210px}.shell-top,.shell-main,.footer{margin-left:210px}.dashboard{padding:30px 25px}.shell-main .marketing-intro{padding:43px 27px}.workspace-shell{padding:13px}}
@media(max-width:700px){.shell-sidebar{position:static;width:100%;padding:13px 15px}.shell-sidebar nav{margin-top:10px;gap:5px}.shell-sidebar nav a{padding:10px 12px}.shell-top,.shell-main,.footer{margin-left:0}.shell-top{height:54px;padding:0 18px}.dashboard{padding:27px 18px}.dashboard-head{display:block}.dashboard h1{font-size:35px}.dashboard-stats{flex-wrap:wrap}.dashboard-hero>div{padding:25px}.dashboard-cards{grid-template-columns:1fr}.dashboard-card{padding:21px}.shell-main .marketing-intro{padding:36px 19px}.marketing-intro h2{font-size:clamp(2.2rem,9vw,3.3rem)}.workspace-shell{padding:8px}.dashboard-role{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-role button{padding:10px 5px;font-size:12px}}
@media print{.shell-sidebar,.shell-top,.dashboard,.footer{display:none!important}.shell-main{margin:0;background:#fff}.workspace-shell{background:#fff}.workspace-output{box-shadow:none!important}}



/* ===== studio-v2.css ===== */
/* EMS SkillLab Studio 2: product-focused redesign; retains functional selectors and JS. */
:root{--studio-navy:#0b1b30;--studio-ink:#122b3d;--studio-muted:#59717f;--studio-paper:#f3f7fa;--studio-teal:#0ca995;--studio-line:#d9e4ea}
html{scroll-padding-top:80px}
body{background:var(--studio-paper);color:var(--studio-ink)}
.shell-sidebar{background:#0a1b2e!important;border:0!important;box-shadow:4px 0 25px #07172810}
.shell-brand{font-size:1.35rem;letter-spacing:-.045em}
.shell-sidebar nav a{display:flex;align-items:center;min-height:45px;border-radius:11px;margin:3px 0}
.shell-sidebar nav a.active{background:#174454!important;box-shadow:inset 3px 0 #42d8be}
.shell-sidebar nav a[href="/"]{margin-top:24px;border-top:1px solid #314e5b;padding-top:17px}
.shell-top{background:#fff;box-shadow:0 1px 0 #e1eaed}
.shell-main{background:var(--studio-paper)}
.account-signed-in .marketing-intro,.account-signed-in .instructor-resources{display:none!important}
.account-signed-in[data-page="dashboard"] .dashboard{padding-top:40px}
.dashboard{max-width:1320px}
.dashboard-head{margin-bottom:18px}
.dashboard-head h1{max-width:720px;font-size:clamp(2.3rem,4.2vw,3.8rem);font-weight:850}
.dashboard-head p{font-size:1.04rem;max-width:700px}
.dashboard-role{box-shadow:0 1px 4px #092c3512}
.dashboard-hero{background:radial-gradient(circle at 88% 12%,#226675 0,transparent 42%),linear-gradient(125deg,#102a43,#0a1c30)!important;border:0;border-radius:22px;min-height:250px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);overflow:hidden}
.dashboard-hero>div:first-child{padding:clamp(25px,3.5vw,48px)}
.dashboard-hero h2{font-size:clamp(1.65rem,3vw,2.7rem);line-height:1.15;max-width:640px}
.dashboard-hero .btn{min-height:48px;padding:12px 20px;border-radius:10px;font-weight:850}
.hero-workflow{background:#ffffff0a!important;display:flex;flex-direction:column;justify-content:center;gap:16px;padding:30px 25px}
.hero-workflow span{color:#d7e6ea;font-size:.91rem}
.hero-workflow b{background:#d8f8f0;color:#0b665e;border:0}
.dashboard-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:34px}
.dashboard-card{min-height:174px;display:flex;flex-direction:column;align-items:flex-start;gap:11px;background:#fff;border:1px solid #dce7ed!important;border-radius:17px;box-shadow:0 8px 25px #12374909;transition:transform .16s,box-shadow .16s,border-color .16s}
.dashboard-card:hover,.dashboard-card:focus-visible{transform:translateY(-2px);border-color:#0fb29d!important;box-shadow:0 13px 30px #12374917}
.dashboard-card .icon{display:grid;place-items:center;width:40px;height:40px;background:#e4f7f3;border-radius:11px;color:#098e7e;font-size:1.4rem}
.dashboard-card strong{font-size:1.18rem}
.dashboard-bottom>section{background:#fff;border:1px solid #e0e9ed;border-radius:18px;padding:25px;box-shadow:0 7px 25px #12374908}
.dashboard-bottom .section-label{margin-bottom:15px}
.dashboard-bottom .section-label h2{font-size:1.13rem}
.recent-card{border-radius:11px!important;min-height:45px}
.workspace-shell{background:var(--studio-paper);padding:28px 24px 70px}
.workspace-wrap{max-width:1360px}
.workspace-intro{background:radial-gradient(circle at 90% 15%,#1e6572,transparent 40%),linear-gradient(115deg,#112f48,#0b2035)!important;color:#fff;border:0!important;border-radius:20px;box-shadow:0 12px 34px #0d31431a}
.workspace-intro h2{font-size:clamp(1.7rem,3vw,2.65rem);color:#fff}
.workspace-intro p,.workspace-intro small{color:#d0e1e7}
.workspace-intro .workspace-primary{background:#27cdb4;color:#0b2935;border-radius:9px;font-weight:800}
.workspace-intro .workspace-secondary{border:1px solid #a5c3c9;color:#f3fffe;background:#ffffff12;border-radius:9px}
.context-bar{background:#fff;border:1px solid #dbe7ec!important;border-radius:16px!important;padding:18px;box-shadow:0 7px 26px #1237490a}
.role-switch{background:#edf3f5;border-radius:12px;padding:5px}
.role-switch button{border-radius:9px}
.role-switch button.active{background:#fff;color:#087f72;box-shadow:0 2px 10px #12374912}
.workspace-controls,.workspace-output,.program-controls{background:#fff;border:1px solid #dce7ec!important;border-radius:16px!important;box-shadow:0 7px 24px #1237490a}
.role-tabs{background:#fff;border:1px solid #dce7ec;border-radius:14px}
.role-tabs button{border-radius:10px}
#account{background:var(--studio-paper)!important}
.account-wrap{max-width:1150px}
.account-copy h2{font-size:clamp(1.85rem,3vw,2.8rem);line-height:1.15}
.supabase-account{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important}
.supabase-account [data-out]{background:#fff;border:1px solid #dce8eb;border-radius:20px;padding:clamp(20px,4vw,42px);box-shadow:0 12px 35px #1237490c;max-width:660px;margin:auto}
.supabase-account [data-out] h3{font-size:1.6rem;letter-spacing:-.035em}
.supabase-account [data-out] input{min-height:48px;border-radius:9px}
.supabase-account [data-out] .btn{min-height:45px;border-radius:9px}
.auth-feedback{display:block;background:#fff1ee;color:#912c22;border:1px solid #eeb8ae;padding:13px 15px;margin:14px 0 0;border-radius:10px;font-weight:750;line-height:1.5}
.auth-feedback[hidden]{display:none!important}
.account-global-status{max-width:660px;margin:14px auto;padding:12px 15px;border-radius:10px;background:#e8f3f3;color:#245765;font-size:.88rem}
.account-grid{gap:20px;align-items:start}
.account-card{background:#fff!important;border:1px solid #dbe7ec!important;border-radius:17px!important;box-shadow:0 9px 30px #1237490a}
.account-card h3{font-size:1.5rem;letter-spacing:-.035em}
.account-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.account-card-heading .btn.compact{width:auto;min-width:105px;flex-shrink:0}
.account-email{overflow-wrap:anywhere;font-size:.96rem}
.account-card label{font-weight:750;color:#314f5c}
.account-card input{min-height:48px;border-radius:9px}
.account-card .btn{border-radius:9px}
.account-subsection{border-top:1px solid #e0e9ed;padding:17px 0}
.account-subsection summary{font-size:1rem}
.saved-card{margin-top:22px}
.account-signed-in[data-page="account"] .account-copy .eyebrow{color:#098c7e}
@media(max-width:1050px){.dashboard-hero{grid-template-columns:1fr}.hero-workflow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:20px}.dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 html{scroll-padding-top:132px}
 .shell-sidebar{position:sticky!important;top:0;z-index:90;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:11px 14px 9px!important;background:#0a1b2e!important}
 .shell-brand{font-size:1.1rem}
 .shell-sidebar>small,.shell-sidebar .sidebar-bottom{display:none!important}
 .shell-sidebar nav{display:flex;width:100%;overflow-x:auto;white-space:nowrap;scrollbar-width:none;gap:5px;margin:0!important;padding:0 0 2px}
 .shell-sidebar nav::-webkit-scrollbar{display:none}
 .shell-sidebar nav a{font-size:.78rem;min-height:38px;flex-shrink:0;margin:0;padding:9px 11px!important}
 .shell-sidebar nav a[href="/"]{margin:0;border:0;padding:9px 11px!important}
 .shell-top{display:none}
 .dashboard{padding:26px 16px 50px}
 .dashboard-head h1{font-size:2.2rem}
 .dashboard-stats{gap:6px}
 .dashboard-stats span{font-size:.76rem;padding:8px 10px}
 .dashboard-hero{border-radius:16px;margin-top:17px}
 .dashboard-hero>div:first-child{padding:26px 21px}
 .dashboard-hero h2{font-size:1.75rem}
 .hero-workflow{grid-template-columns:1fr;gap:11px;padding:19px 21px}
 .hero-workflow span{display:flex;align-items:center;gap:12px}
 .dashboard-cards{grid-template-columns:1fr;gap:10px}
 .dashboard-card{min-height:115px;padding:18px!important;display:grid;grid-template-columns:43px 1fr;column-gap:13px;row-gap:3px;align-items:center}
 .dashboard-card .icon{grid-row:1/3}
 .dashboard-card strong{font-size:1rem}
 .dashboard-card span:last-child{font-size:.82rem}
 .dashboard-bottom{display:block}
 .dashboard-bottom>section{padding:20px;margin-bottom:14px}
 .workspace-shell{padding:15px 12px 45px}
 .workspace-intro{border-radius:15px}
 .workspace-intro h2{font-size:1.8rem}
 .workspace-intro-actions{display:flex;flex-direction:column;align-items:stretch}
 .workspace-intro-actions button{width:100%;min-height:44px}
 .context-bar{padding:12px}
 .role-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
 .role-switch button{min-width:0;font-size:.76rem;white-space:normal}
 .selection-grid{grid-template-columns:1fr}
 .account-wrap{padding:0 14px}
 .account-copy h2{font-size:1.95rem}
 .supabase-account [data-out]{padding:23px 18px}
 .account-grid{grid-template-columns:1fr}
 .account-card{padding:20px!important}
 .account-card-heading{align-items:flex-start}
 .account-card-heading h3{font-size:1.3rem}
 .account-card-heading .btn.compact{min-width:88px;font-size:.8rem;padding:10px}
 .account-email{font-size:.86rem}
 .footer{margin-left:0}
}
@media(prefers-reduced-motion:reduce){.dashboard-card{transition:none}}



/* ===== studio-command.css ===== */
/* Studio 3: product-centered interface replacing course-style dashboard.
   Older dashboard DOM remains mounted for legacy app listeners but is visually retired. */
:root{--c-bg:#f6f8fa;--c-paper:#fff;--c-ink:#10283a;--c-secondary:#526778;--c-line:#dce5ea;--c-accent:#057c6e;--c-navy:#0c1c2e;--c-soft:#e9f6f2}
body{background:var(--c-bg)}
.dashboard>.dashboard-head,.dashboard>.dashboard-role,.dashboard>.dashboard-hero,.dashboard>.dashboard-cards,.dashboard>.decision-lab,.dashboard>.trial-invitation,.dashboard>.retention-hub{display:none!important}
.dashboard{max-width:1450px;padding:0 40px 60px}
.dashboard>.library-shell{margin-top:36px;background:#fff;border:1px solid var(--c-line);border-radius:20px;box-shadow:none;padding:30px}
.dashboard>.library-shell .library-heading{align-items:flex-start}
.dashboard>.library-shell h2{font-size:clamp(1.4rem,2.5vw,2rem);line-height:1.2}
.dashboard>.library-shell p{max-width:740px;line-height:1.65;color:var(--c-secondary)}
.dashboard>.semester-shell{margin-top:20px;background:#fff;border:1px solid var(--c-line);border-radius:18px}
.dashboard>.dashboard-bottom{margin-top:24px}
.command-center{margin:0 -40px 0;padding:52px 40px 28px;background:radial-gradient(ellipse at 85% 0%,#e3f4ef 0,transparent 37%),linear-gradient(#f7f9fb,#f5f8fa);color:var(--c-ink);font-family:Inter,"Segoe UI",system-ui,sans-serif}
.command-center *{box-sizing:border-box}
.command-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:32px}
.command-heading h2{font-size:clamp(2.2rem,3.8vw,3.65rem);line-height:1.07;letter-spacing:-.065em;max-width:750px;margin:12px 0 14px;color:#10283a;font-weight:850}
.command-heading p{font-size:1.04rem;line-height:1.65;max-width:720px;color:#5d7180;margin:0}
.command-kicker{font-size:.71rem;letter-spacing:.17em;font-weight:850;color:#087c70;display:flex;align-items:center;gap:9px}
.command-pulse{display:inline-block;width:8px;height:8px;border-radius:50%;background:#18aa95;box-shadow:0 0 0 4px #d8f2eb}
.command-library-link{display:inline-flex;gap:18px;align-items:center;text-decoration:none;font-size:.85rem;font-weight:850;color:#0b655d;white-space:nowrap;background:#fff;padding:12px 16px;border:1px solid #dce8e7;border-radius:10px}
.command-library-link:hover,.command-library-link:focus-visible{border-color:#17a28d;background:#ecf9f5}
.command-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:22px;align-items:stretch}
.command-main{background:#fff;border:1px solid #dce7eb;border-radius:22px;padding:clamp(24px,3vw,40px);box-shadow:0 16px 45px #183e5110}
.command-step{font-size:.71rem;font-weight:900;letter-spacing:.16em;color:#4e6978;display:flex;gap:12px;align-items:center;margin:0 0 16px}
.command-step>span{display:grid;place-items:center;border:1px solid #a9d9d1;color:#0a8778;background:#eaf9f5;width:30px;height:30px;border-radius:9px;font-size:.72rem;letter-spacing:0}
.command-selectors{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:15px;align-items:end;margin:0 0 35px}
.command-fieldset{border:0;margin:0;padding:0;min-width:0}
.command-fieldset legend,.command-provider{display:block;color:#3f5a69;font-size:.82rem;font-weight:800;margin-bottom:9px}
.command-chips{display:flex;gap:6px;background:#f1f5f6;border:1px solid #e1e9eb;border-radius:12px;padding:5px;min-width:0}
.command-chips button{border:0;border-radius:8px;background:transparent;color:#536b78;padding:12px 11px;flex:1;font-size:.81rem;font-weight:800;white-space:nowrap;min-width:0;cursor:pointer}
.command-chips button.is-selected{background:#fff;color:#096f65;box-shadow:0 3px 11px #1c4b5219}
.command-provider{margin-bottom:0}
.command-provider select{width:100%;display:block;min-height:50px;margin-top:9px;padding:10px 13px;background:#fff;color:#173647;border:1px solid #cad9de;border-radius:10px;font:750 .92rem Inter,system-ui,sans-serif}
.command-options{display:grid;gap:10px;margin-bottom:18px}
.command-option{width:100%;display:grid;grid-template-columns:45px minmax(0,1fr) 20px;gap:15px;align-items:center;text-align:left;padding:17px 19px;background:#fff;border:1.5px solid #dce6ea;border-radius:14px;color:#183345;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}
.command-option:hover{border-color:#0a9787;background:#f7fcfa}
.command-option.is-selected{background:#edf9f5;border-color:#12a18d;box-shadow:inset 3px 0 #0f9e8a}
.command-option-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:11px;background:#e9f1f3;color:#2e6470;font-size:.82rem;font-weight:850}
.command-option.is-selected .command-option-icon{background:#0b8778;color:white}
.command-option strong{display:block;font-size:1rem;line-height:1.3;font-weight:850;letter-spacing:-.015em}
.command-option small{display:block;color:#607581;font-size:.78rem;line-height:1.5;margin-top:4px}
.command-option>span:last-child{font-size:1.25rem;color:#38887c}
.command-start{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;border:0;background:#0b746a;color:#fff;border-radius:12px;padding:18px 22px;font-size:.99rem;font-weight:850;cursor:pointer;transition:background .15s}
.command-start:hover{background:#085a53}
.command-help{font-size:.78rem;line-height:1.55;color:#6b7e89;margin:14px 2px 0}
.command-preview{background:#0c2032;color:#fff;border-radius:22px;padding:clamp(22px,2.8vw,35px);display:flex;flex-direction:column;gap:22px;box-shadow:0 18px 45px #0b253023;overflow:hidden}
.command-preview-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:.68rem;font-weight:900;letter-spacing:.15em;color:#a8d3d1}
.command-example-badge{font-size:.66rem;letter-spacing:0;background:#173d4b;color:#c1e4e2;padding:7px 10px;border-radius:7px;font-weight:700;text-align:center}
.command-paper{background:#fff;color:#142f40;border-radius:12px;box-shadow:0 18px 38px #0003;padding:clamp(19px,2.4vw,29px);transform:rotate(-.5deg)}
.command-paper-header{display:flex;align-items:flex-start;gap:14px}
.command-paper-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:9px;background:#0b8778;color:white;font-size:1.4rem;font-weight:900;flex-shrink:0}
.command-paper-label{font-size:.58rem;letter-spacing:.14em;font-weight:900;color:#578178}
.command-paper h3{font-size:clamp(1.2rem,2vw,1.55rem);line-height:1.22;letter-spacing:-.04em;margin:5px 0 12px;color:#142f40}
.command-paper-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}
.command-paper-meta span{font-size:.66rem;background:#eef4f5;color:#436474;padding:5px 9px;border-radius:5px;font-weight:750}
.command-paper-rule{height:1px;background:#dbe5e8;margin:24px 0}
.command-paper-section{margin-bottom:21px}
.command-paper-section b{display:block;font-size:.65rem;letter-spacing:.14em;color:#087b70;margin-bottom:7px}
.command-paper-section p{font-size:.91rem;line-height:1.62;color:#344e5c;margin:0}
.command-paper-footer{border-top:1px solid #e2eaed;padding-top:15px;font-size:.66rem;line-height:1.5;color:#70848e}
.command-samples{color:#a1f0dd;text-decoration:none;font-size:.86rem;font-weight:800;display:flex;justify-content:space-between;align-items:center;padding:8px 2px}
.command-samples:hover{text-decoration:underline}
.command-bottom{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:25px;padding:20px 4px}
.command-bottom>div{border-right:1px solid #d8e4e7;padding:4px 18px}
.command-bottom>div:first-child{padding-left:0}
.command-bottom>div:last-child{border:0}
.command-bottom strong{display:block;font-size:.93rem;color:#193849;font-weight:850}
.command-bottom span{display:block;font-size:.77rem;color:#657a85;margin-top:4px}
.command-center button:focus-visible,.command-center a:focus-visible,.command-center select:focus-visible{outline:3px solid #0ba992;outline-offset:3px}
.command-option[hidden]{display:none!important}
@media(max-width:1170px){.command-layout{grid-template-columns:minmax(0,1fr) minmax(310px,.78fr)}.command-selectors{grid-template-columns:1fr}.command-preview{padding:24px}}
@media(max-width:900px){.command-layout{grid-template-columns:1fr}.command-preview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);align-items:start}.command-preview-top{grid-column:1/-1}.command-samples{align-self:end}.command-paper{grid-column:2;grid-row:2/4}.command-bottom{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){
 .dashboard{padding:0 14px 40px}
 .command-center{margin:0 -14px;padding:29px 14px 16px}
 .command-heading{display:block;margin-bottom:20px}
 .command-heading h2{font-size:clamp(2rem,8vw,2.65rem);letter-spacing:-.055em}
 .command-heading p{font-size:.9rem}
 .command-library-link{margin-top:17px;padding:10px 13px;font-size:.79rem}
 .command-main{padding:21px 17px;border-radius:16px}
 .command-step{font-size:.65rem}
 .command-selectors{gap:14px;margin-bottom:27px}
 .command-chips button{font-size:.76rem;padding:11px 5px}
 .command-option{padding:13px 12px;grid-template-columns:37px minmax(0,1fr) 15px;gap:11px}
 .command-option-icon{width:36px;height:36px}
 .command-option strong{font-size:.92rem}
 .command-option small{font-size:.73rem}
 .command-start{padding:16px 17px;font-size:.89rem}
 .command-preview{display:flex;padding:21px 17px;border-radius:16px;gap:16px}
 .command-preview-top{font-size:.61rem}
 .command-paper{padding:20px;transform:none}
 .command-paper h3{font-size:1.22rem}
 .command-paper-section p{font-size:.84rem}
 .command-bottom{grid-template-columns:1fr;gap:0;margin-top:12px;padding:8px 0}
 .command-bottom>div,.command-bottom>div:first-child{padding:13px 6px;border:0;border-bottom:1px solid #dce5e9}
 .command-bottom>div:last-child{border:0}
 .dashboard>.library-shell{margin-top:20px;padding:20px 16px;border-radius:15px}
 .dashboard>.library-shell .library-heading{display:block}
 .dashboard>.library-shell .library-heading button{margin-top:15px}
 .dashboard>.dashboard-bottom{display:none}
 .dashboard>.semester-shell{border-radius:15px}
}
@media(prefers-reduced-motion:reduce){.command-option,.command-start{transition:none}}

