:root{font-family:Segoe UI,Arial,sans-serif;color:#19382e;background:#eef2ec;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:grid;place-items:center;padding:32px 18px;background:radial-gradient(ellipse at top left,#dce8d3,transparent 55%),#f3f5f0}.access-card{width:min(100%,490px);padding:40px;background:#fff;border:1px solid #d9e2d4;border-radius:18px;box-shadow:0 16px 70px #19382e12}.access-wide{width:min(100%,850px)}.brand{text-decoration:none;color:#4d5355;font-family:Georgia,serif;font-size:33px;font-weight:bold;letter-spacing:-1px}.brand b{color:#b21f36;font-size:45px}.eyebrow{font-size:10px;letter-spacing:2px;color:#69816b;margin:18px 0 28px}h1{font-size:28px;line-height:1.2;margin:0 0 12px}h2{font-size:19px}p{font-size:14px;line-height:1.65;color:#5c7065}form{margin:26px 0 20px}label{display:block;font-size:13px;font-weight:600;margin:19px 0}input,select{display:block;width:100%;font:16px Segoe UI,sans-serif;color:#19382e;border:1px solid #cbd9c9;border-radius:7px;padding:13px;margin-top:8px;min-width:0}input:focus,select:focus{outline:2px solid #799d72;outline-offset:2px}.password-field{display:flex;align-items:stretch;border:1px solid #cbd9c9;border-radius:7px;margin-top:8px}.password-field input{border:0;margin:0}.password-field button{border:0;background:transparent;padding:0 12px;color:#315c45;cursor:pointer}.primary{border:0;border-radius:8px;background:#214d3e;color:white;cursor:pointer;padding:14px 20px;font:600 14px Segoe UI,sans-serif;width:100%}.primary:disabled{opacity:.6}.notice{background:#edf3e7;border-radius:7px;padding:13px;font-size:12px}.footnote{font-size:11px;color:#7a897e}.error{color:#ab3333;font-size:13px;min-height:1em}.access-card [hidden]{display:none!important}table{width:100%;border-collapse:collapse;font-size:13px;margin:20px 0}td,th{text-align:left;padding:12px 8px;border-bottom:1px solid #e3e9df;overflow-wrap:anywhere}.session-banner{display:flex;align-items:center;gap:14px;padding:14px 18px;background:#edf3e7;border-radius:8px;margin-bottom:20px;font-size:12px}.session-banner span{flex:1}.session-banner a,.session-banner button{color:#214d3e;background:white;border:1px solid #ceddc7;border-radius:5px;padding:8px;font:inherit;cursor:pointer;text-decoration:none}@media(max-width:550px){.access-card{padding:26px 22px}.session-banner{flex-wrap:wrap}table{font-size:11px}td,th{padding:8px 3px}}
