/* Shared footer and information pages for every subject. */
.site-footer{padding:12px clamp(16px,4vw,64px);font-size:var(--type-menu,14px);text-align:left;color:var(--ink,#fff)}
.site-footer a{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-decoration:none}
.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.site-footer a:focus-visible{outline:3px solid var(--focus,#c5a3ff);outline-offset:4px}
.hero>.site-footer{position:absolute;bottom:12px;left:0;z-index:2;padding-inline:clamp(24px,6vw,96px)}
.site-info{max-width:780px}
.site-info .info-links{display:flex;flex-wrap:wrap;gap:4px 24px;margin-block:16px 28px}
.site-info .info-links a{display:inline-flex;align-items:center;min-height:44px}
.site-info section{border-top:var(--divider-width,2px) solid var(--divider-color,#ffffff4d);padding-block:24px;scroll-margin-top:24px}
.site-info h2{font-size:var(--type-teaching-heading,18px);color:var(--accent-ink,var(--ink));margin:0 0 12px;font-weight:600}
.site-info h3{font-size:var(--reading-size,16px);margin:24px 0 8px;font-weight:600}
.site-info p{margin:0 0 14px}
.site-info details{margin-block:12px}
.site-info summary{cursor:pointer;min-height:44px;padding-block:10px;font-weight:600}
.site-info details>div{padding-block:8px}
.site-info dl{margin:0}
.site-info dt{font-weight:600;margin-top:14px}
.site-info dd{margin:4px 0 0}
@media(forced-colors:active){.site-info section{border-color:CanvasText}.site-footer a{color:LinkText}}
.header-account{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-decoration:none;font-size:var(--type-menu,14px);padding-inline:8px}
.header-account:hover{text-decoration:underline}
#account-content{max-width:620px}
#account-content form{display:grid;gap:12px;max-width:420px;margin-block:24px}
#account-content input{font:inherit;min-height:44px;padding:10px 12px;border:var(--divider-width,2px) solid var(--divider-color);border-radius:10px;background:var(--surface);color:var(--ink);min-width:0}
#account-content button{width:fit-content;margin:4px 12px 4px 0}
#account-content .primary{background:var(--brand-gradient);color:#fff;border-color:transparent}
.account-import,.account-conflict{border-top:var(--divider-width) solid var(--divider-color);padding-block:20px}
.account-small{font-size:var(--type-ui,14px)}
.account-save-status{padding:12px;border:var(--divider-width) solid var(--divider-color);border-radius:10px;background:var(--surface)}
@media(max-width:420px){.site-header .header-actions{gap:2px}.header-account{padding-inline:3px;font-size:12px}.site-header .header-display{font-size:12px;padding-inline:6px}}

.header-auth{display:inline-flex;align-items:center;gap:0;white-space:nowrap}
.header-auth>.header-account{padding-inline:4px}
.auth-switch{display:flex;gap:24px;margin-block:16px}
.auth-switch a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.auth-switch a[aria-current=page]{color:var(--accent-ink,var(--accent));border-bottom:2px solid currentColor}
#account-content .password-help{margin:0}
@media(max-width:600px){.hero>.site-header{height:auto;min-height:100px;flex-wrap:wrap;gap:0 12px;padding-block:8px}.hero>.site-header .header-actions{justify-content:flex-end;flex-wrap:wrap;gap:0 4px}.hero .header-auth{flex-basis:100%;justify-content:flex-end;order:-1}.hero .header-auth .header-account{font-size:var(--type-menu,14px)}}
