/* Science beta: a calm, readable teaching workspace. */
:root{--ink:#13253e;--muted:#52637a;--line:#dce4ee;--bg:#f4f7fb;--card:#fff;--accent:#2352b8;--accent2:#173c87;--ok:#08694b;--soft:#eef4ff;--shadow:0 4px 18px rgba(19,37,62,.055)}
body{font-size:16px;line-height:1.65}main.wrap{min-height:64vh;padding-top:34px;padding-bottom:52px}.wrap{max-width:1240px;padding-left:28px;padding-right:28px}h1,h2,h3{color:var(--ink);line-height:1.2;text-wrap:balance}h1{font-size:clamp(1.8rem,3.4vw,2.65rem);letter-spacing:-.035em;margin:8px 0 16px}h2{font-size:1.4rem;letter-spacing:-.025em;margin:0 0 12px}h3{font-size:1.12rem;margin:0 0 10px}p{margin:0 0 16px;max-width:80ch}a{color:var(--accent);text-underline-offset:3px}a:hover{color:var(--accent2)}.kicker{font-size:.76rem;letter-spacing:.12em;font-weight:800;color:#346395;margin-bottom:10px}.muted,.section-lead{color:var(--muted)}.section-lead{font-size:1rem;line-height:1.7;max-width:78ch}
header{background:#fff;backdrop-filter:none;border-bottom:1px solid var(--line)}.nav{min-height:78px;gap:26px}.brand{white-space:nowrap;font-size:1.3rem;line-height:1.1;display:flex;gap:5px;align-items:center}.brand:before{content:'E';display:grid;place-items:center;width:34px;height:36px;border-radius:9px;background:var(--accent);color:white;font-size:22px;font-weight:800;margin-right:6px}.nav nav{gap:4px 6px;justify-content:flex-end;max-width:990px;padding:9px 0}.nav nav a{font-size:.875rem;line-height:1.4;padding:8px 10px;border-radius:7px;font-weight:650}.nav nav a:hover,.nav nav a[aria-current=page]{background:#eef4ff;color:#173c87}.nav-logout{margin:0}.nav-logout button{background:transparent!important;color:var(--muted)!important;border:0!important;box-shadow:none!important;padding:8px 10px!important;font-size:.875rem!important;min-height:36px}
button,.btn{border-radius:9px;padding:11px 18px;min-height:44px;font-size:.9375rem;font-weight:700;line-height:1.45;box-shadow:none;transition:background .15s,border-color .15s}.btn:hover,button:hover{transform:none}.btn.secondary,button.secondary,.btn.ghost{background:#fff;color:var(--accent);border:1px solid #c9d8ee}.btn.secondary:hover,button.secondary:hover,.btn.ghost:hover{background:#eef4ff;border-color:#9eb8df}.actions{align-items:center;gap:10px}.small,.btn.small,button.small{font-size:.875rem;min-height:38px;padding:8px 12px}:focus-visible{outline:3px solid #77aaff;outline-offset:3px}button:disabled{cursor:progress}
.card{border-radius:13px;padding:26px;border:1px solid var(--line);box-shadow:var(--shadow);overflow-wrap:anywhere}.card+.card{margin-top:18px}.grid>.card+.card{margin-top:0}.grid{gap:20px}.grid.four .card{padding:23px}.stat,.metric{font-size:2rem;line-height:1.2;letter-spacing:-.03em;font-weight:750;margin-bottom:6px;font-variant-numeric:tabular-nums}.section{margin-top:30px;padding:0}.profile-row{margin-bottom:28px;align-items:flex-end}.profile-row h1{margin-bottom:8px}.profile-row p{margin-bottom:0}.auth-card{max-width:520px;margin:20px auto}.wide-auth{max-width:820px}.form label{font-size:.9375rem;color:#233d5e;font-weight:650;display:block;margin-bottom:6px}.form input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.form select,.form textarea{display:block;width:100%;border:1px solid #c7d2df;border-radius:8px;padding:11px 13px;font:inherit;color:var(--ink);background:#fff;min-height:44px}.form input[type=checkbox],.form input[type=radio]{accent-color:var(--accent);width:18px;height:18px;vertical-align:middle;margin-right:8px}.form textarea{min-height:110px;resize:vertical}.field{margin-bottom:18px}.form form>.field:last-of-type{margin-bottom:24px}.field-help,.smalltext,.auth-links{font-size:.875rem}.subject-selector{gap:10px}.subject-option{border:1px solid var(--line);background:#f8faff;border-radius:9px;padding:14px;display:flex!important;align-items:flex-start}.subject-option small{font-size:.8125rem}.checkgrid{gap:10px}
.table-wrap{border:1px solid var(--line);border-radius:12px;overflow-x:auto;background:#fff;box-shadow:var(--shadow);margin:16px 0 22px}.table{width:100%;border-collapse:collapse;margin:0;font-size:.9375rem}.table th{background:#edf3fa;color:#405675;font-size:.8125rem;font-weight:750;padding:14px 16px;text-align:left;letter-spacing:.015em;white-space:nowrap}.table td{padding:15px 16px;vertical-align:top;border-bottom:1px solid #e8eef5}.table tr:last-child td{border-bottom:0}.table tr:hover td{background:#fafcff}.table .empty{padding:36px 20px}.table input:not([type=checkbox]),.table select{min-width:90px;max-width:220px;font-size:.875rem;padding:8px}.badge{font-size:.8125rem;line-height:1.35;border-radius:6px;padding:5px 8px;display:inline-block;white-space:normal}.badge.good{background:#e7f5ef;color:#085d45}.badge.warn{background:#fff4dc;color:#855300}.badge.bad{background:#ffefed;color:#a13229}.notice,.flash{font-size:.9375rem;line-height:1.65;border-radius:9px;padding:16px 18px}.notice.ok,.flash.ok{background:#eaf7f0;color:#17543d;border-left:4px solid #278461}.notice.err,.flash.err{background:#fff0ee;color:#942e26;border-left:4px solid #c8564e}.notice.info{background:#edf4ff;color:#284c7a;border-left-color:#4680c5}
.hero{background:#112b4b;color:#e9f2ff;border-radius:18px;padding:52px;position:relative;margin:0 0 34px;box-shadow:none;border-bottom:5px solid #609de3}.hero h1{color:white;font-size:clamp(2.2rem,4vw,3.35rem);max-width:760px;margin:12px 0 20px;line-height:1.12}.hero p{font-size:1.08rem;max-width:740px;color:#d1e0f0}.hero .kicker{color:#9fcaff}.hero .trustline{color:#b6cae1;font-size:.8125rem;margin-top:22px}.hero .btn{background:white;color:#173c70;border:1px solid white}.hero .btn.ghost{background:transparent;color:#eef6ff;border-color:#5c7695}.workflow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.workflow-step{background:white;border:1px solid var(--line);padding:23px;border-radius:12px}.workflow-step b{display:inline-flex;background:#eaf2ff;color:#2457a8;border-radius:8px;width:32px;height:32px;align-items:center;justify-content:center;margin-bottom:14px}.workflow-step p{font-size:.9375rem;color:var(--muted);margin:0}.feature-card p{margin-bottom:0}.subject-chips{display:flex;gap:8px;flex-wrap:wrap}.subject-chips span{padding:6px 10px;border-radius:7px;background:#edf4ff;color:#284c7a;font-size:.875rem}.review-entry{margin:22px 0}.review-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.review-copy{background:#f6f9fd;border-radius:8px;padding:18px}.review-copy p:last-child{margin-bottom:0}.review-note{font-size:.875rem;color:var(--muted)}footer{padding:27px 0;background:#fff}.footer-note,.footer-links a{font-size:.875rem}.footer-legal{font-size:.8125rem;color:#617089}.footer-links{gap:16px}.paper{border-radius:10px}.paper p{max-width:none}.paper .question-copy{overflow-wrap:anywhere}.paper-head h2{font-size:1.5rem}.quality-progress-card{border-radius:14px;border:1px solid var(--line)}
@media(max-width:1020px){.nav{flex-wrap:wrap;gap:8px}.nav-toggle{display:inline-flex;margin-left:auto}.nav nav{display:none;width:100%;max-width:none;border-top:1px solid var(--line);flex-direction:column;align-items:stretch}.nav nav.open{display:flex}.nav nav a{text-align:left;padding:11px}.nav-logout button{width:100%;text-align:left}.hero{padding:34px}.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.wrap{padding-left:16px;padding-right:16px}main.wrap{padding-top:22px;padding-bottom:32px}.card{padding:21px;border-radius:11px}.hero{padding:28px 23px;border-radius:12px}.hero p{font-size:1rem}.hero .actions{align-items:stretch;flex-direction:column}.hero .btn{text-align:center}.workflow-grid,.grid.two,.grid.four,.review-columns{grid-template-columns:1fr}.profile-row{align-items:stretch;gap:20px}.profile-row .actions{display:grid;grid-template-columns:1fr 1fr}.profile-row .btn{text-align:center}.table th,.table td{padding:12px}.form .grid{gap:0}.paper{padding:20px 16px}.report-form{flex-wrap:wrap}.footer-links{gap:10px 16px}.auth-card{margin:8px auto}.stat{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{.hero,.nav-logout{display:none!important}main.wrap{padding:0}.paper{border:0;border-radius:0;box-shadow:none;padding:0}.paper h1,.paper h2,.paper h3{color:#111}.paper .answer{background:white}.q{break-inside:auto}.question-head{break-after:avoid}.mcq-options,.instructions{break-inside:avoid}.paper a{color:inherit}.paper .question-copy{overflow-wrap:normal}.table-wrap{box-shadow:none;overflow:visible}}
