:root{--ink:#102a30;--muted:#60747a;--teal:#0e8f8d;--teal2:#076d6b;--soft:#e7f6f4;--cream:#f8faf8;--danger:#a63333;--dangerSoft:#fff1f1;--line:#dbe6e4}*{box-sizing:border-box}html{background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}body{margin:0}a{color:inherit}button,input,textarea,select{font:inherit}.shell{width:min(920px,100% - 32px);margin:auto}.header{justify-content:space-between;align-items:center;padding:22px 0;display:flex}.brand{font-size:1.3rem;font-weight:900;text-decoration:none}.brand span{color:var(--teal)}.nav{color:var(--muted);gap:18px;display:flex}.hero{padding:54px 0 34px}.eyebrow{color:var(--teal2);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:800}h1{letter-spacing:-.055em;margin:16px 0 22px;font-size:clamp(2.35rem,7vw,5rem);line-height:.98}h2{letter-spacing:-.04em;font-size:clamp(1.7rem,4vw,2.65rem)}.lead{color:var(--muted);max-width:720px;font-size:1.15rem;line-height:1.65}.actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;min-height:48px;padding:0 20px;font-weight:800;text-decoration:none;display:inline-flex}.primary{background:var(--teal);color:#fff}.secondary{border-color:var(--line);background:#fff}.grid{grid-template-columns:repeat(3,1fr);gap:16px;margin:30px 0;display:grid}.two{grid-template-columns:repeat(2,1fr)}.card{border:1px solid var(--line);background:#fff;border-radius:22px;padding:24px}.muted{color:var(--muted);line-height:1.55}.emergency{border-left:5px solid var(--danger);background:var(--dangerSoft);border-radius:14px;margin:24px 0;padding:18px 20px}.page{padding:26px 0 70px}.form{gap:18px;max-width:680px;display:grid}.field{gap:8px;display:grid}label{font-weight:800}input,textarea,select{background:#fff;border:1px solid #bfd0cd;border-radius:13px;width:100%;padding:13px 14px}textarea{min-height:180px}.help{color:var(--muted);font-size:.9rem}.error{color:var(--danger);font-weight:700}.success{background:var(--soft);border:1px solid #b8dfdb;border-radius:16px;padding:20px}.code{color:#fff;background:#102a30;border-radius:14px;padding:16px;font-family:monospace;font-size:clamp(1.2rem,5vw,2rem);font-weight:900;display:inline-block}.thread{gap:14px;margin:24px 0;display:grid}.message{border-radius:18px;max-width:78%;padding:15px 17px;line-height:1.55}.student{background:var(--teal);color:#fff;margin-left:auto}.staff{border:1px solid var(--line);background:#fff}.meta{opacity:.75;margin-top:7px;font-size:.78rem}.table-wrap{overflow:auto}table{border-collapse:collapse;background:#fff;width:100%}th,td{border-bottom:1px solid var(--line);text-align:left;padding:13px}.badge{background:var(--soft);color:var(--teal2);border-radius:999px;padding:5px 9px;font-size:.8rem;font-weight:800;display:inline-flex}.footer{border-top:1px solid var(--line);color:var(--muted);padding:28px 0 50px}@media (max-width:720px){.grid,.two{grid-template-columns:1fr}.nav{display:none}.message{max-width:92%}}.header-navigation{position:relative}.menu-toggle{color:#0b3438;cursor:pointer;background:#fff;border:1px solid #0a4b5040;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;padding:0;font-size:25px;line-height:1;display:none}@media (max-width:760px){.menu-toggle{display:flex}.header-navigation .nav{z-index:1000;background:#fff;border:1px solid #0a4b5033;border-radius:14px;flex-direction:column;align-items:stretch;gap:4px;min-width:220px;padding:12px;display:none;position:absolute;top:52px;right:0;box-shadow:0 12px 30px #0a282d29}.header-navigation .nav.nav-open{display:flex}.header-navigation .nav a{white-space:nowrap;border-radius:9px;padding:11px 12px;display:block}.header-navigation .nav a:hover,.header-navigation .nav a:focus-visible{background:#e9f7f6}}.nav form{margin:0}.nav-logout{color:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}@media (max-width:760px){.header-navigation .nav form{width:100%}.header-navigation .nav .nav-logout{text-align:left;border-radius:9px;width:100%;padding:11px 12px;text-decoration:none;display:block}.header-navigation .nav .nav-logout:hover,.header-navigation .nav .nav-logout:focus-visible{background:#e9f7f6}}
