.account-page { margin:0; background:#151a21; color:#e5edf6; color-scheme:dark; font:16px/1.6 Arial,Helvetica,sans-serif; }
.account-page *, #coronarias-account * { box-sizing:border-box; }
.account-page a, #coronarias-account a { color:#b5d6ff; text-underline-offset:3px; }
.account-page a:hover, #coronarias-account a:hover { color:#fff; }
.account-page :is(input,button,a):focus-visible, #coronarias-account :is(button,a):focus-visible { outline:3px solid #93c5fd; outline-offset:3px; }
.account-page [hidden], #coronarias-account [hidden] { display:none!important; }
.account-skip { position:absolute; top:-80px; left:20px; z-index:100; padding:10px 18px; background:#203653; border-radius:6px; }
.account-skip:focus { top:12px; }
.account-site-header { max-width:1180px; margin:0 auto; display:flex; justify-content:space-between; align-items:center; gap:24px; padding:26px 32px; border-bottom:1px solid #354254; }
.account-brand { display:inline-flex; align-items:center; gap:12px; text-decoration:none; color:#e5edf6!important; font-size:23px; line-height:1.2; letter-spacing:.025em; }
.account-brand small { display:block; margin-top:4px; font-size:11px; font-weight:400; letter-spacing:.1em; text-transform:uppercase; }
.account-brand-mark { width:43px; height:47px; display:grid; place-items:center; border:1px solid #729abc; border-radius:5px; font-family:Georgia,serif; font-size:30px; color:#b5d6ff; background:#203045; }
.account-site-header nav { display:flex; gap:24px; font-size:14px; }
.account-main { width:min(100% - 40px,800px); margin:52px auto; }
.account-main-wide { width:min(100% - 48px,1160px); margin-top:24px; }
.account-card { padding:36px; background:#222a35; border:1px solid #3e4b5e; border-radius:16px; box-shadow:0 16px 50px #0002; }
.account-login-card { max-width:480px; margin:auto; }
.account-eyebrow { margin:0 0 12px; color:#a8cce9; font-size:11px; letter-spacing:.17em; font-weight:700; }
.account-page h1 { font-size:clamp(26px,4vw,36px); line-height:1.18; letter-spacing:-.025em; margin:0 0 18px; color:#f4f8fc; }
.account-page h2 { font-size:18px; line-height:1.35; margin:26px 0 10px; color:#f4f8fc; }
.account-intro { margin:0 0 28px; color:#c4d0df; }
.account-page p { overflow-wrap:anywhere; }
.account-form { display:grid; gap:20px; }
.account-form label { display:block; color:#edf4fb; font-weight:600; font-size:14px; margin:0 0 6px; }
.account-form input { width:100%; min-height:46px; padding:10px 12px; border:1px solid #687b93; border-radius:7px; background:#151d28; color:#fff; font:inherit; }
.account-password { display:flex; position:relative; }
.account-password input { padding-right:85px; }
.account-password-toggle { position:absolute; right:4px; top:4px; bottom:4px; border:0; border-radius:4px; background:#26394e; color:#dcecff; padding:0 10px; cursor:pointer; font-size:12px; }
.account-hint { font-size:13px; line-height:1.55; color:#b8c6d8; margin:8px 0 0; }
.account-form > .account-hint { margin:0; }
.account-button { display:inline-flex; justify-content:center; align-items:center; gap:6px; min-height:42px; padding:9px 16px; border:1px solid #637990; border-radius:7px; background:#263748; color:#e8f2ff!important; text-decoration:none; font:600 14px/1.35 Arial,Helvetica,sans-serif; cursor:pointer; }
.account-button:hover { background:#344c64; }
.account-button:disabled { opacity:.58; cursor:wait; }
.account-primary { background:#a9d2f5; border-color:#a9d2f5; color:#102a42!important; }
.account-primary:hover { background:#c4e4ff; border-color:#c4e4ff; }
.account-login-footer { border-top:1px solid #3e4b5e; margin-top:27px; padding-top:18px; font-size:13px; color:#b8c6d8; }
.account-login-footer p { margin:0 0 10px; }
.account-login-footer a { display:block; width:fit-content; margin-top:7px; }
.account-status { padding:12px 14px; margin:0; border-radius:7px; font-size:14px; background:#203653; border:1px solid #557ba9; color:#d4e8ff; }
.account-status.account-error { background:#462a36; border-color:#966071; color:#ffced7; }
.account-status.account-success { background:#183b34; border-color:#397f70; color:#b7f5dc; }
.account-footer { max-width:1180px; margin:30px auto 0; padding:26px 24px; color:#99acc2; text-align:center; font-size:12px; }
.account-feature-list { margin:30px 0; border-top:1px solid #3e4b5e; }
.account-feature-list article { display:flex; align-items:flex-start; gap:20px; padding:22px 0; border-bottom:1px solid #3e4b5e; }
.account-feature-list article > span { color:#95b6d3; font:14px/1.5 monospace; padding-top:3px; }
.account-feature-list h2 { margin:0 0 8px; }
.account-feature-list p { margin:0; color:#c4d0df; }
.account-info { padding:20px; background:#1b2838; border-left:3px solid #80b8e5; border-radius:4px; margin-bottom:28px; }
.account-info h2 { margin:0 0 8px; }
.account-info p { margin:0; }
.account-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.account-admin-heading, .account-section-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.account-admin-heading { margin:30px 0 24px; }
.account-admin-heading .account-intro { margin:0; }
.account-admin-heading > a { flex-shrink:0; }
.account-section-heading { margin-bottom:10px; }
.account-section-heading h2 { margin:0; }
.account-table-wrap { overflow:auto; margin-top:20px; }
.account-table { width:100%; border-collapse:collapse; text-align:left; font-size:13px; }
.account-table th { font-size:11px; font-weight:600; color:#b8c6d8; letter-spacing:.02em; }
.account-table th, .account-table td { padding:15px 12px; vertical-align:top; border-bottom:1px solid #3e4b5e; }
.account-table th:first-child, .account-table td:first-child { padding-left:0; }
.account-table th:last-child, .account-table td:last-child { padding-right:0; }
.account-table td strong { display:block; color:#f3f7fd; font-size:14px; }
.account-table .account-user-meta { color:#b8c6d8; margin:3px 0 0; font-size:12px; }
.account-table .account-button { min-height:32px; padding:6px 9px; font-size:12px; white-space:nowrap; }
.account-table-actions { display:flex; flex-wrap:wrap; gap:7px; }
.account-badge { display:inline-block; border-radius:20px; padding:2px 9px; white-space:nowrap; color:#b7f5dc; background:#183b34; font-size:12px; }
.account-badge-inactive { background:#462a36; color:#ffced7; }
.account-create-card { margin-top:24px; }
.account-create-card h2 { margin-top:0; }
.account-create-form { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:22px; }
.account-create-submit { align-self:center; }
.account-full-row { grid-column:1/-1; }
.account-sr-only { position:absolute; width:1px; height:1px; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
#coronarias-account { background:#172331; color:#dce9f7; border-bottom:1px solid #42546a; font:13px/1.4 Arial,Helvetica,sans-serif; }
#coronarias-account:empty { display:none; }
#coronarias-account .account-bar { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:10px 18px; min-height:44px; padding:8px 24px; max-width:1600px; margin:auto; }
#coronarias-account .account-identity { margin-right:auto; display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; }
#coronarias-account .account-user-name { font-weight:600; color:#fff; }
#coronarias-account .account-user-login { color:#b8c6d8; font-size:12px; }
#coronarias-account .account-bar button { background:transparent; color:#dce9f7; border:1px solid #698099; border-radius:5px; padding:5px 11px; cursor:pointer; font:inherit; }
#coronarias-account .account-bar button:hover { background:#2b4057; }
#coronarias-account .account-bar button:disabled { opacity:.6; cursor:wait; }
#coronarias-account .account-session-alert { margin:0; padding:10px 24px; background:#44351e; color:#ffe0a4; border-top:1px solid #826638; }
#coronarias-account .account-session-alert a { color:#e3f0ff; font-weight:600; margin-left:7px; }
.account-main-wide #coronarias-account { border:1px solid #42546a; border-radius:8px; }
@media (max-width:640px) {
  .account-site-header { padding:18px 20px; align-items:flex-start; }
  .account-site-header nav { flex-direction:column; gap:6px; text-align:right; font-size:12px; }
  .account-brand { font-size:19px; gap:8px; }
  .account-brand-mark { width:34px; height:42px; font-size:27px; }
  .account-brand small { font-size:9px; }
  .account-main { width:calc(100% - 28px); margin:28px auto; }
  .account-card { padding:24px 20px; border-radius:12px; }
  .account-admin-heading, .account-section-heading { align-items:flex-start; flex-direction:column; gap:12px; }
  .account-create-form { grid-template-columns:1fr; }
  .account-table { min-width:720px; }
  #coronarias-account .account-bar { padding:10px 14px; gap:8px 12px; }
  #coronarias-account .account-identity { flex-basis:100%; }
  #coronarias-account .account-session-alert { padding:10px 14px; }
}
@media print { #coronarias-account { display:none!important; } }
