:root{color-scheme:dark;--teal:#50b9c5}*{box-sizing:border-box}body{margin:0;background:#070a0a;color:#f3f7f6;font:16px/1.6 system-ui,sans-serif}header{max-width:980px;margin:auto;padding:24px;display:flex;align-items:center;justify-content:space-between;border-top:4px solid var(--teal)}header img{width:150px;max-height:100px;object-fit:contain}main{max-width:620px;margin:20px auto 60px;padding:28px;border:1px solid #395053;border-radius:16px;background:#0c1617}main.wide{max-width:980px}h1{font-size:clamp(1.6rem,5vw,2.1rem);line-height:1.2}h2{font-size:1.4rem}h3{margin:0}a{color:#91d5dd}label{display:block;margin:16px 0 6px}input,select,button{font:inherit;min-height:48px;border-radius:8px}input,select{width:100%;padding:12px;background:#090d0e;color:#fff;border:1px solid #637d80}button,.button{display:inline-block;padding:12px 20px;background:var(--teal);color:#071e21;border:1px solid transparent;font-weight:700;cursor:pointer;text-decoration:none}button:disabled{opacity:.55;cursor:wait}.secondary{background:transparent;border:1px solid #8eb3b7;color:#e5f6ee}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.actions a{align-self:center}.muted{color:#c0d0d2;font-size:.9rem}.eyebrow{color:#8dd9e2;font-size:.9rem;font-weight:700}.password{display:flex;gap:8px}.password input{min-width:0;flex:1}.password button{flex-shrink:0}#notice{color:#ffe0a9;overflow-wrap:anywhere}#notice:empty{display:none}.access-request{padding:20px 0;border-bottom:1px solid #466063;overflow-wrap:anywhere}.access-request p{margin:5px 0}footer{text-align:center;padding:20px;color:#b9cdcf;font-size:.9rem}:focus-visible{outline:3px solid #91d5dd;outline-offset:3px}input[hidden]{display:none}@media(max-width:650px){main{margin:12px;padding:22px}header{padding:20px}.actions button{flex:1}.actions a{min-height:44px}}

/* A focused dark entry surface with generous, phone-friendly controls. */
body{background:#06090b;color:#f2f7fa}main{background:#0d171d;border-color:#34525f;border-radius:22px;padding:clamp(24px,5vw,44px);box-shadow:0 20px 60px #0004}main>p{color:#b5c6ce;line-height:1.7}main h1{margin:12px 0 18px}input,select{background:#080f15;border-color:#48616f;border-radius:12px}input:focus,select:focus{border-color:#91d5dd}button,.button{border-radius:12px;min-height:50px}#login-form>button[type=submit]{width:100%;margin-top:12px;background:#65c3cf;color:#06191e}.actions{gap:10px;padding-top:20px;border-top:1px solid #29434d}.actions button{flex:1;min-width:120px;background:#10212a;border-color:#41616f;color:#c5e7ef}.muted{color:#b5c6ce}.eyebrow{letter-spacing:.07em;color:#91d5dd}footer{color:#afc2cc}@media(max-width:650px){main{margin:18px 16px 36px}.actions button{flex-basis:calc(50% - 10px);white-space:normal}.password button{padding-inline:12px}}

/* Match the course's black and deep teal navigation. */
:root{--teal:#006d75}body{background:#000;color:#eef6f6}main{background:#091315;border-color:#294448}header{border-top-color:#006d75}input,select{background:#030a0b;border-color:#456b70}button,.button,#login-form>button[type=submit]{background:#006d75;color:#fff;border-color:#228d94}.actions button{background:#0b292d;border-color:#315c61;color:#c4edef}a,.eyebrow{color:#8ae0e4}

@media screen{
html[data-theme=light]{color-scheme:light}
html[data-theme=light] body{background:#f5f8f8;color:#162e33}
html[data-theme=light] main{background:#fff;border-color:#bdcfd2;box-shadow:0 12px 36px #1633370d}
html[data-theme=light] main :is(p,.muted,label,h1,h2,h3){color:#334f54}
html[data-theme=light] main :is(a,.eyebrow){color:#00646c}
html[data-theme=light] :is(input,select){background:#fff;color:#162e33;border-color:#718f94;color-scheme:light}
html[data-theme=light] .actions button{background:#e6f1f2;color:#16464b;border-color:#718f94}
html[data-theme=light] #notice{color:#8a2032}
html[data-theme=light] footer{color:#475f64}
html[data-theme=light] :focus-visible{outline-color:#006d75}
}
