.tab:disabled { cursor: not-allowed; opacity: .5; }
.hero-header { position: relative; min-height: 305px; padding: 37px 5.7vw 30px; overflow: hidden; align-items: flex-start; background-color: #061a35; background-image: linear-gradient(90deg, #061a35 0%, #061a35 20%, rgba(6,26,53,.88) 34%, rgba(6,26,53,.35) 49%, rgba(6,26,53,.06) 63%, rgba(6,26,53,.03) 73%, rgba(6,26,53,.18) 80%, rgba(6,26,53,.52) 88%, rgba(6,26,53,.86) 95%, #061a35 100%), url('assets/hero-lab.png'); background-position: center, 55% 64%; background-size: cover, auto 138%; background-repeat: no-repeat; }
.hero-copy { position: relative; z-index: 1; width: min(650px, 47vw); }
.hero-header h1 { font-size: clamp(2.7rem, 3.75vw, 3.55rem); line-height: 1.04; letter-spacing: -.025em; }
.hero-header .header-copy { max-width: 590px; margin-top: 17px; font-size: clamp(1.08rem, 1.38vw, 1.3rem); line-height: 1.42; }
.lab-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; border: 0; margin: 0 0 28px; padding: 3px 0 9px; }
.lab-action { --face:#2377da; --edge:#0751a9; position: relative; display: flex; align-items: center; justify-content: center; gap: 9px; width: 100%; min-height: 54px; padding: 10px 18px; border: 0; border-radius: 9px; color: #fff; background: var(--face); box-shadow: 0 6px 0 var(--edge), 0 12px 17px rgba(18,35,63,.2); text-align: center; transform: translateY(0); transition: transform .16s ease, box-shadow .16s ease, filter .16s ease; }
.lab-action::before { content:""; position:absolute; inset:2px 16px auto; height:2px; background:rgba(255,255,255,.75); }
.lab-action:hover:not(:disabled) { transform: translateY(-2px); filter: brightness(1.05); box-shadow: 0 8px 0 var(--edge), 0 16px 21px rgba(18,35,63,.23); }
.lab-action:active:not(:disabled) { transform: translateY(4px); box-shadow: 0 2px 0 var(--edge), 0 7px 11px rgba(18,35,63,.18); }
.lab-action.active { color:#fff; outline: 4px solid rgba(18,102,216,.15); }
.build-action { --face:#2377da; --edge:#0751a9; }
.test-action { --face:#1caa96; --edge:#087b6c; }
.practice-action { --face:#7259d8; --edge:#4c36ad; }
.lab-action strong { font-size:1.08rem; line-height:1; text-transform:uppercase; }
.lab-action .lock { font-size:.92rem; line-height:1; }
.lab-action:disabled { --face:#94a1b2; --edge:#687586; cursor:not-allowed; filter:saturate(.45); opacity:.72; box-shadow:0 5px 0 var(--edge),0 10px 14px rgba(18,35,63,.14); }
@media (max-width: 800px) { .hero-header { min-height: 300px; padding: 30px 25px; background-image: linear-gradient(90deg,rgba(4,20,42,.98) 0%,rgba(4,20,42,.90) 56%,rgba(4,20,42,.35) 100%),url('assets/hero-lab.png'); background-position:center,63% 65%; background-size:cover,auto 118%; } .hero-copy{width:78%;} .hero-header h1{font-size:clamp(2rem,8vw,2.8rem);} .lab-actions{grid-template-columns:1fr;} .lab-action{min-height:50px;} }
.study-intro p { max-width: 65ch; }
.study-sequence { padding: 12px 14px; background: #edf3fa; border-radius: 10px; }
.exam-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.exam-timer { font-size: 1.5rem; font-weight: 900; color: var(--blue-deep); background: #edf3fa; border-radius: 10px; padding: 8px 14px; font-variant-numeric: tabular-nums; }
.exam-timer.warning { background: #fff4d6; color: #7a5700; }
.exam-question label { display: block; padding: 7px 8px; border-radius: 8px; }
.exam-question label:hover { background: #f2f7ff; }
.claude-explanation { border-left: 4px solid var(--teal); background: #f0fbf8; border-radius: 10px; padding: 16px; margin: 18px 0; }
.claude-explanation p:last-child { margin-bottom: 0; }
.survey-question { border: 0; border-top: 1px solid var(--line); padding: 20px 0; }
.rating-scale { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; max-width: 420px; margin-top: 14px; }
.rating-scale label { cursor: pointer; }
.rating-scale input { position: absolute; opacity: 0; }
.rating-scale span { display: block; text-align: center; border: 1px solid var(--line); border-radius: 9px; padding: 9px; background: #fff; font-weight: 800; }
.rating-scale input:checked + span { background: var(--blue); border-color: var(--blue); color: #fff; }
.scale-anchors { display: flex; justify-content: space-between; max-width: 420px; color: var(--muted); font-size: .78rem; margin-top: 5px; }
.comments-label { display: grid; gap: 7px; margin: 20px 0; }
.comments-label span { color: var(--muted); }
.comments-label textarea { font: inherit; border: 1px solid var(--line); border-radius: 10px; padding: 12px; resize: vertical; }

.study-sequence-list { display: grid; gap: .65rem; margin: 1.25rem 0; padding: 0; list-style: none; }
.study-sequence-list li { padding: .8rem 1rem; border: 1px solid #d6e4f4; border-radius: 12px; background: #f5f9fe; color: #15345f; }
.study-results .result-grid { align-items: stretch; }
.study-results .result-score { display: block; margin-top: .45rem; font-size: 2rem; font-weight: 800; color: #075fe4; }
