/* A clear welcome for teachers; existing sign-in controls keep their behaviour. */
#landing{background:#f8f6f0;color:#242226}
#landing .landing{background:transparent;width:min(1440px,100%);margin:auto;padding:0 40px 40px}
#landing .landing:before{content:none}
#landing .landing-nav{padding:18px 0;gap:24px;border-bottom:1px solid #ded7c9;background:transparent;backdrop-filter:none;height:auto;min-height:86px}
#landing .landing-nav>a{font:650 15px/1.4 system-ui,sans-serif;color:#38343a}
#landing .landing-nav>button{font:700 15px/1.3 system-ui,sans-serif;min-height:46px;padding:12px 20px;background:#fff;color:#282429;border:1px solid #c9beab}
#landing .landing-body{max-width:none;min-height:0;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(350px,.92fr);gap:32px;padding:38px 0;align-items:stretch}
#landing .hero-copy{display:flex;flex-direction:column;justify-content:center;position:relative;isolation:isolate;overflow:hidden;border-radius:24px;padding:clamp(28px,4vw,60px);min-height:580px;max-width:none;color:#fff7e5;background:#211e21 url('assets/teachverse-laboratory.webp') 64% center/cover}
#landing .hero-copy:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#201b21f2,#201b21dc 45%,#201b2180)}
#landing .hero-copy .eyebrow{font:750 11px/1.6 system-ui,sans-serif;letter-spacing:.13em;color:#ffce36}
#landing .hero-copy h1{font-size:clamp(39px,4.1vw,64px);line-height:1.06;letter-spacing:-.025em;color:#fff7e5;margin:24px 0;max-width:620px}
#landing .hero-copy>p{font:450 17px/1.8 system-ui,sans-serif;color:#f5eddf;max-width:470px;margin:0}
#landing .hero-stats{display:flex;gap:25px;flex-wrap:wrap;margin-top:35px}
#landing .hero-stats>div{border-left:3px solid #ffcc25;padding-left:13px;min-width:160px}
#landing .hero-stats b{display:block;font:700 17px/1.4 system-ui,sans-serif;color:#ffe191}
#landing .hero-stats span{font:600 10px/1.6 system-ui,sans-serif;color:#e8ded1;letter-spacing:.08em}
#landing .portal-card{margin:0;background:#fffdf7;color:#29252a;border:1px solid #ded5c7;border-radius:24px;padding:32px;box-shadow:0 12px 35px #3428220a;display:flex;flex-direction:column;justify-content:center;min-width:0}
#landing .portal-card>.eyebrow{font-size:11px;color:#795a07}
#landing .portal-card h2{font-size:clamp(29px,2.8vw,41px);line-height:1.1;color:#29252a;letter-spacing:-.02em;margin:15px 0}
#landing .portal-card>p{font:400 15px/1.7 system-ui,sans-serif;color:#625b61;margin:0 0 24px}
#landing .role-grid{display:grid;grid-template-columns:1fr;gap:12px}
#landing .role-card{display:flex;flex-direction:row;align-items:center;gap:15px;text-align:left;min-height:90px;padding:16px;border:1px solid #dbd0bf;border-radius:14px;background:#fff;color:#29252a;width:100%}
#landing .role-card[data-login]{background:#fff3bc;border-color:#e5bd32}
#landing .role-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;color:#8d6715;background:#f9efda;border-radius:12px;font-size:29px}
#landing .role-icon svg{width:34px;height:34px}
#landing .role-card-copy{flex:1;min-width:0;margin:0}
#landing .role-card b{font:750 19px/1.3 system-ui,sans-serif;color:#29252a}
#landing .role-card small{display:block;font:400 13px/1.5 system-ui,sans-serif;color:#63594e;margin-top:4px;white-space:normal}
#landing .role-arrow{font-size:24px;color:#8a650b;position:static;flex:0 0 30px}
#landing .role-card:hover{border-color:#9c7518;box-shadow:0 4px 12px #34282212}
#landing .portal-note{font:500 12px/1.6 system-ui,sans-serif;color:#696156;background:transparent;border-color:#e5dac9;margin-top:23px}
#landing .landing-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:28px 0;border-top:1px solid #ded7c9}
#landing .landing-detail{padding:0;background:transparent;border:0;color:#29252a;box-shadow:none;min-height:0}
#landing .landing-detail .eyebrow{font-size:11px;color:#7c5a06}
#landing .landing-detail h3{font-size:25px;line-height:1.2;margin:14px 0;color:#29252a}
#landing .landing-detail p{font:400 15px/1.8 system-ui,sans-serif;color:#5d555b}
/* Classroom buttons share a readable size and a distinct primary action. */
#workspace .class-tools-grid{gap:20px;align-items:start}
#workspace .class-tools-grid .live-tool{padding:24px;min-width:0}
#workspace .class-tools-grid .live-tool h3{font-size:23px;line-height:1.3}
#workspace .class-tools-grid .live-tool p,#workspace .class-tools-grid .live-tool label{font:450 14px/1.65 system-ui,sans-serif}
#workspace .class-tools-grid .live-tool button{font:650 15px/1.35 system-ui,sans-serif;min-height:44px;padding:11px 18px;border-radius:10px;white-space:normal;cursor:pointer}
#workspace .class-tools-grid .live-tool input,#workspace .class-tools-grid .live-tool select{font:500 16px/1.4 system-ui,sans-serif;min-height:46px}
#workspace .tv-tool-window-actions button{font:700 13px/1.3 system-ui,sans-serif!important;padding:10px 14px!important;min-height:44px;min-width:44px;white-space:normal}
#workspace .tv-tool-window-actions button:before{content:none!important}
#workspace .live-tool small{font-size:12px;line-height:1.5}
#workspace .tv-event-control header{border-bottom:1px solid #e5dfd2;padding-bottom:18px}
#workspace .tv-event-control header>i{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#fff1b4;color:#6d500a;font-size:27px;flex-shrink:0}
#workspace .tv-event-control [data-present-event]{background:#242127;color:#fff6df;border:1px solid #242127;flex:0 0 auto}
#workspace #tvRunClassEvent{background:#ffcc25;color:#252126;border:1px solid #dba916;font-weight:750}
#workspace #tvManageClassEvents{background:#fff;color:#514a3f;border:1px solid #d3c8b8}
#workspace .tv-event-configuration label{font-weight:750;color:#332d25}
#workspace .tv-event-configuration p{color:#625c52}
#workspace .tv-event-control .tv-event-stage-actions button{background:#ffffff10;border:1px solid #d5cfbd90;color:#fff8e9}
#workspace .tv-event-control .tv-event-stage-actions .primary{background:#ffcc25;color:#252126;border-color:#ffcc25}
.tv-event-screen-copy>button.primary{font-family:system-ui,sans-serif;font-weight:750;border:1px solid #ffd363;box-shadow:0 5px 25px #0004;min-height:56px}
.tv-question-language.tv-adventure-language{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 22px;padding:18px 22px;background:#25252a;border:1px solid #605740;border-radius:16px;color:#fff8e9}
.tv-adventure-language label{font:700 15px/1.5 system-ui,sans-serif;color:#fff1b1;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.tv-adventure-language select{font:500 16px system-ui,sans-serif;min-height:46px;border:1px solid #786e56;border-radius:9px;padding:10px;background:#fffdf5;color:#28252a;max-width:100%}
.tv-adventure-language p{font:400 13px/1.6 system-ui,sans-serif;color:#eee6d5;max-width:440px;margin:0}
.tv-daily-recovery{padding:18px 22px;border:1px solid #6b5b37;border-radius:15px;background:#292723;color:#ffdf91;margin:18px 0;font:650 16px/1.5 system-ui,sans-serif}
.tv-daily-recovery p{margin:6px 0 0;color:#e9dfc9;font:400 14px/1.65 system-ui,sans-serif}
#workspace .settings-panel p,#workspace .settings-panel label{font-size:14px;line-height:1.6}
#workspace .settings-panel input:not([type=checkbox]){min-height:44px;font-size:16px}
button:focus-visible,select:focus-visible{outline:3px solid #b78710;outline-offset:3px}
@media(max-width:1000px){#landing .landing-body{grid-template-columns:1fr 1fr;gap:22px}#landing .hero-copy{padding:30px;min-height:520px}#landing .portal-card{padding:26px}#landing .landing-nav{flex-wrap:wrap}#landing .landing-details{gap:22px}#landing .hero-stats{gap:18px}}
@media(max-width:760px){#landing .landing{padding:0 20px 25px}#landing .landing-body{grid-template-columns:1fr;padding:22px 0;gap:20px}#landing .hero-copy{min-height:0;padding:30px 25px}#landing .hero-copy h1{font-size:42px}#landing .hero-copy>p{font-size:15px}#landing .hero-stats{margin-top:25px}#landing .portal-card{padding:25px}#landing .landing-nav>a{display:none}#landing .landing-nav{justify-content:space-between;gap:12px}#landing .landing-nav .brand{margin:0}#landing .landing-nav>button{font-size:13px;padding:10px 13px}#landing .landing-details{grid-template-columns:1fr;gap:25px}.tv-question-language.tv-adventure-language{align-items:stretch;flex-direction:column;gap:12px}#workspace .tv-event-control [data-present-event]{width:100%}#workspace .tv-event-tool-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){#landing *{scroll-behavior:auto;transition:none}}

@media(max-width:760px){#landing .portal-card{order:-1}#landing .landing-nav>button{display:block}#landing .hero-copy{min-height:0}#landing .hero-copy h1{font-size:38px}}
