* { box-sizing: border-box; }
:root { --center-ink: #20313b; --center-primary: #2c5975; }
.holding-page { margin: 0; min-height: 100vh; display: grid; place-items: center; background: #edf4f7; color: var(--center-ink); font-family: Arial, sans-serif; padding: 24px; }
.holding-card { width: min(720px, 100%); padding: clamp(28px, 7vw, 72px); background: white; border-radius: 22px; border: 1px solid #d8e3e8; }
.wordmark { font-size: 14px; font-weight: 700; letter-spacing: .16em; color: var(--center-primary); }
.holding-card h1 { font-size: clamp(32px, 5vw, 52px); line-height: 1.15; letter-spacing: -.035em; }
.holding-card p { color: #5b6c76; font-size: 18px; }
.holding-card a { color: var(--center-primary); display: inline-block; margin-top: 20px; }
.center-shell { display: grid; grid-template-columns: 100px 240px minmax(0,1fr); min-height: 100vh; }
.center-rail { padding: 22px 8px; display: flex; flex-direction: column; align-items: stretch; gap: 8px; }
.center-rail a { color: var(--center-primary); text-decoration: none; text-align: center; border-radius: 12px; padding: 12px 3px; font-size: 11px; }
.center-rail a:hover, .center-sidebar a:hover { background: #d8e3e8; }
.center-rail i { display: block; font-size: 24px; margin-bottom: 4px; }
.center-rail .center-brand { font-size: 24px; font-weight: 800; margin-bottom: 12px; }
.center-sidebar { background: white; padding: 34px 20px; border-right: 1px solid #d8e3e8; }
.center-sidebar a { display: block; padding: 12px; margin: 4px 0; border-radius: 10px; color: var(--center-ink); text-decoration: none; }
.center-main { background: #f6fafc; padding: clamp(20px, 4vw, 48px); }
a:focus-visible { outline: 3px solid #2c5975; outline-offset: 3px; }
@media(max-width: 1050px) { .center-shell { grid-template-columns: 90px minmax(0,1fr); } .center-sidebar { display: none; } }
@media(max-width: 600px) { .center-shell { display: block; } .center-rail { flex-direction: row; overflow-x: auto; padding: 8px; } .center-rail a { flex: 0 0 78px; } .center-rail .center-brand { margin-bottom: 0; } }

.center-login { max-width: 500px; padding: 40px; }
.center-login h1 { font-size: 30px; letter-spacing: -.025em; }
.center-login a { margin-top: 0; }
.center-form { max-width: 760px; }
.center-rail a[aria-current="page"], .center-sidebar a[aria-current="page"] { background: #d8e3e8; font-weight: 700; }
.center-main .table th, .center-main .table td { padding: 16px; }
