:root{color-scheme:light;--bg:#f2f5fa;--surface:#fff;--text:#13243c;--muted:#52647d;--line:#d4dfed;--blue:#124fca;--focus:#ffb700;--error:#9c1936;--error-bg:#fff0f3}
:root[data-theme=dark]{color-scheme:dark;--bg:#0b1423;--surface:#142238;--text:#ecf3ff;--muted:#aec0d7;--line:#30435e;--blue:#8bb6ff;--error:#ffb3c2;--error-bg:#3b2030}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:1rem/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--blue)}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.topbar{min-height:88px;padding:20px 5%;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);background:var(--surface)}.brand{display:flex;align-items:center;gap:12px;color:var(--text);font-size:1.25rem;font-weight:750;text-decoration:none}.mark{background:#124fca;color:white;padding:7px 9px;border-radius:9px;font-size:1rem;letter-spacing:-.04em}.brand-detail{border-left:1px solid var(--line);padding-left:16px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.actions{display:flex;gap:12px;align-items:center}.actions form{margin:0}button.theme,button.secondary{padding:8px 14px;background:transparent;color:var(--text);border:1px solid var(--line);border-radius:8px;font-size:.875rem}.login-layout{min-height:calc(100vh - 155px);max-width:1180px;margin:auto;padding:60px 32px;display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:center}.eyebrow{font-size:.8125rem;letter-spacing:.12em;font-weight:700;color:var(--blue)}h1,h2{line-height:1.2;letter-spacing:-.035em}.intro h1{font-size:clamp(2.5rem,4.5vw,3.75rem);font-weight:700;margin:20px 0}.intro p{max-width:360px;color:var(--muted)}.intro-rule{width:72px;height:4px;background:#124fca;margin:32px 0}.card{padding:32px;background:var(--surface);border:1px solid var(--line);border-radius:16px}.login-card{max-width:470px;width:100%;box-shadow:0 18px 60px #0016400b}.card h2{font-size:1.7rem;margin:12px 0}.muted{color:var(--muted)}.small{font-size:.875rem}.login-card label{display:block;margin:22px 0 7px;font-size:.9375rem;font-weight:650}input{width:100%;min-height:48px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:var(--bg);color:var(--text)}.password-field{display:flex;gap:8px;align-items:center}.password-field input{min-width:0}.password-field button{background:none;border:0;color:var(--blue);font-size:.875rem}.primary{background:#124fca;color:#fff;border:0;border-radius:8px;padding:13px 20px;font-weight:650}.submit{width:100%;margin:28px 0 16px}.error{background:var(--error-bg);color:var(--error);padding:12px;border-radius:8px;border:1px solid currentColor}.workspace{max-width:1180px;padding:24px 32px 64px;margin:auto;min-height:calc(100vh - 155px)}.workspace h1{font-size:2.4rem;margin:18px 0}.subnav{display:flex;gap:24px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:42px;padding-bottom:14px}.subnav a{text-decoration:none;color:var(--muted)}.subnav a[aria-current]{color:var(--blue);font-weight:700}.profile{margin-top:28px;max-width:640px}dl{display:grid;grid-template-columns:110px 1fr;gap:12px}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}.notice{max-width:720px;margin-top:32px;border-left:3px solid var(--blue);padding:4px 24px}.notice h2{font-size:1.2rem}.table-wrap{overflow:auto;padding:0}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;font-size:.875rem}td,th{padding:16px;border-bottom:1px solid var(--line)}th{color:var(--muted)}.pagination{display:flex;gap:24px;align-items:center;margin:24px 0;font-size:.875rem}footer{padding:20px;text-align:center;color:var(--muted);font-size:.8125rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip{position:absolute;top:-80px;background:var(--surface);padding:12px;z-index:10}.skip:focus{top:0}@media(max-width:760px){.brand-detail{display:none}.login-layout{grid-template-columns:1fr;gap:24px;padding:32px 20px}.intro h1{font-size:2.25rem}.intro-rule,.intro .small{display:none}.login-card{max-width:none}.card{padding:24px}.workspace{padding:24px 20px}.topbar{padding:16px;flex-wrap:wrap}.actions{gap:8px}.table-wrap{padding:0}dl{grid-template-columns:1fr;gap:4px}dd{margin-bottom:12px}}
