:root{font:16px system-ui,sans-serif;color:#182339;background:#f4f6fa;--red:#ad243b;--line:#dbe2ec;--nav:#172235}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;max-width:100%}button{cursor:pointer;white-space:normal;border:1px solid var(--line);background:white;color:inherit;border-radius:9px;padding:.65rem .85rem;min-height:44px}button:hover{border-color:var(--red)}button:disabled{cursor:wait;opacity:.6}button.primary{background:var(--red);border-color:var(--red);color:white}a{color:var(--red)}h1,h2,h3,p{margin:0 0 .7rem;overflow-wrap:anywhere}h1{font-size:clamp(1.65rem,4vw,2.6rem);line-height:1.12}h2{font-size:1.25rem}small,.muted{color:#526078}.eyebrow{font-size:.73rem;letter-spacing:.12em;font-weight:750;text-transform:uppercase}.layout{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}aside{background:var(--nav);color:white;padding:1.25rem}aside .muted{color:#bdc9db}.brand{display:flex;align-items:center;gap:.65rem;margin-bottom:1.7rem}.mark{display:grid;place-items:center;border-radius:10px;background:#bd2b45;width:42px;height:42px;font-weight:800;flex:none;font-size:.78rem}nav{display:grid;gap:.35rem}nav button{width:100%;text-align:left;background:transparent;color:#e2e8f2;border-color:transparent}nav button[aria-current]{background:#33405a;color:white}main{padding:clamp(1rem,4vw,3rem);width:100%;max-width:1250px;min-width:0}header{margin-bottom:1.4rem}.panel,.tile,.row{background:white;border:1px solid var(--line);border-radius:14px;padding:1rem;min-width:0;overflow-wrap:anywhere}.panel{margin-bottom:1rem}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,205px),1fr));gap:.8rem;margin-bottom:1rem}.stack{display:grid;gap:.65rem}.actions{display:flex;gap:.55rem;flex-wrap:wrap}.row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.row > div{min-width:0}.row p{margin:0}.badge{display:inline-block;border-radius:999px;background:#e9eef7;padding:.23rem .58rem;color:#384862;font-size:.8rem}.late{background:#fbe1e4;color:#8d1931}.soon{background:#fff0cf;color:#674510}.login{max-width:465px;margin:clamp(1rem,10vh,6rem) auto;padding:1rem}.login .brand{color:#172235}form{display:grid;gap:.7rem;margin-top:.7rem}label{display:grid;gap:.25rem;min-width:0}input:not([type=checkbox]),select{width:100%;min-width:0;padding:.68rem;border-radius:8px;border:1px solid #a9b6ca;background:white;color:inherit}fieldset{min-width:0;margin:0;border:1px solid var(--line);border-radius:8px}fieldset label,.check{display:flex;align-items:center;gap:.45rem}.menu{display:none}#notice:not(:empty){position:fixed;bottom:1rem;right:1rem;left:auto;max-width:min(32rem,calc(100% - 2rem));padding:.8rem;background:#172235;color:white;border-radius:8px;overflow-wrap:anywhere}details{min-width:0}summary{cursor:pointer;padding:.4rem 0}
@media(max-width:680px){.layout{display:block}aside{padding:.8rem 1rem}.brand{margin:0}.menu{display:block;margin-left:auto;background:#253650;color:white;border-color:#54637a}nav{display:none;margin-top:.65rem}nav.open{display:grid}main{padding:1rem}}
