/* Shared Academy typography, palette, header and footer on every page. */
:root{--blue:#1756e8;--yellow:#ffda3d;--ink:#15243b;--muted:#596779;--paper:#fff;--page:#f7f9fc;--line:#dce3ee;--soft:#eaf1ff;--text:var(--ink);--bg:var(--page);--card:var(--paper);--pale:var(--soft);--navy:var(--ink);color-scheme:light}
html[data-theme="dark"]{--blue:#80aaff;--ink:#eef4ff;--muted:#b5c2d7;--paper:#14233b;--page:#0c1728;--line:#2d3e57;--soft:#1c3558;--text:var(--ink);--bg:var(--page);--card:var(--paper);--pale:var(--soft);--navy:var(--ink);color-scheme:dark}
html body{font-family:Inter,Arial,sans-serif;background:var(--page);color:var(--ink);-webkit-font-smoothing:antialiased}
html body :is(h1,h2,h3,h4,h5,h6){font-family:'Nunito Sans',Arial,sans-serif;font-weight:800;font-style:normal}
html body :is(button,input,select,textarea){font-family:Inter,Arial,sans-serif}
.academy-header,.academy-header *,.academy-footer,.academy-footer *{box-sizing:border-box}
header.academy-header{width:min(1440px,calc(100% - 96px));max-width:1440px;margin:0 auto;padding:16px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative;border:0;border-bottom:1px solid var(--line);background:transparent;min-height:99px}
.academy-header:after{position:absolute;bottom:-1px;left:0;width:84px;height:3px;border-radius:3px;background:linear-gradient(90deg,#1756e8 0 65%,#ffda3d 65%);content:''}
.academy-header .academy-brand{display:flex;align-items:center;gap:14px;min-width:0;text-decoration:none;color:var(--ink);padding:0;background:none;border:0;border-radius:12px}
.academy-symbol{display:grid;place-items:center;flex-shrink:0;width:66px;height:66px;border-radius:50%;background:#fff;border:1px solid #e4eaf3;box-shadow:0 4px 16px #213c6710}
.academy-symbol img{display:block;width:60px;height:60px;object-fit:contain;border-radius:50%;padding:0;margin:0}
.academy-lockup{min-width:0}.academy-name{display:block;font:800 34px/1.08 'Nunito Sans',Arial,sans-serif;letter-spacing:-1.1px;white-space:nowrap;color:var(--ink)}.academy-name>span{color:var(--blue)}
.academy-tagline{display:flex;align-items:center;gap:7px;margin-top:7px;font:600 9px/1.4 Inter,Arial,sans-serif;letter-spacing:1.2px;text-transform:uppercase;white-space:nowrap;color:var(--muted)}.academy-tagline:before{display:block;width:6px;height:6px;border-radius:50%;background:#ffda3d;content:'';flex-shrink:0}
.academy-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.academy-actions svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.academy-actions .academy-chat{display:flex;align-items:center;justify-content:center;gap:10px;min-height:46px;border:1px solid #1756e8;border-radius:50px;padding:12px 20px;background:#1756e8;color:#fff;font:600 13px/1.4 Inter,Arial,sans-serif;text-decoration:none;box-shadow:0 4px 12px #1756e81a}
.academy-chat:hover{background:#1043bd!important}.academy-actions .academy-theme{display:grid;place-items:center;min-height:46px;width:46px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--muted);cursor:pointer}.academy-theme:hover{background:var(--soft)}
.academy-header :is(a,button):focus-visible,.academy-footer a:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
footer.academy-footer{display:block;width:100%;max-width:none;margin:38px 0 0;padding:34px 0 20px;border-top:1px solid var(--line);background:var(--paper);color:var(--ink)}
.academy-footer-inner{width:min(1440px,calc(100% - 96px));margin:auto;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:24px 45px}.academy-footer-brand>a{font:800 24px/1.2 'Nunito Sans',Arial,sans-serif;letter-spacing:-.5px;text-decoration:none;color:var(--ink)}.academy-footer .academy-footer-brand p{font:400 12px/1.8 Inter,Arial,sans-serif;color:var(--muted);margin:10px 0 0}
.academy-footer nav{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:0;margin:0}.academy-footer nav>a{display:inline-block!important;font:400 13px/1.5 Inter,Arial,sans-serif;color:var(--ink);padding:5px 0;text-decoration:none}.academy-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.academy-footer-bottom{display:flex;align-items:center;flex-wrap:wrap;gap:10px 25px;grid-column:1/-1;padding-top:20px;border-top:1px solid var(--line);font:400 11px/1.6 Inter,Arial,sans-serif;color:var(--muted)}.academy-footer-bottom>span{margin-right:auto}.academy-footer-bottom a{color:var(--muted);text-decoration:none}
.academy-page-tools{width:min(1440px,calc(100% - 96px));margin:18px auto;display:flex;gap:14px 24px;flex-wrap:wrap;align-items:center;font:600 12px/1.5 Inter,Arial,sans-serif}.academy-page-tools a{color:var(--blue);text-decoration:none;padding:8px 0}.academy-page-tools .private-tag{color:var(--muted);background:var(--soft);border:1px solid var(--line);padding:7px 10px;border-radius:8px}
.resource-notices{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding:25px 0;margin-top:30px}.resource-notices p{line-height:1.7}
@media(max-width:700px){header.academy-header{width:calc(100% - 36px);padding:13px 0;gap:10px;min-height:77px}.academy-header .academy-brand{gap:9px}.academy-symbol{width:50px;height:50px}.academy-symbol img{width:46px;height:46px}.academy-name{font-size:25px;letter-spacing:-.7px}.academy-tagline{font-size:8px;letter-spacing:.2px;gap:5px;margin-top:5px}.academy-tagline:before{width:4px;height:4px}.academy-actions{gap:6px}.academy-actions .academy-chat,.academy-actions .academy-theme{width:44px;min-height:44px;padding:0}.academy-chat span{display:none}.academy-header:after{width:56px;height:2px}.academy-footer-inner{width:calc(100% - 40px);grid-template-columns:1fr 1fr;gap:24px 20px}.academy-footer-brand{grid-column:1/-1}.academy-footer-bottom{gap:12px}.academy-footer-bottom>span{width:100%}.academy-page-tools{width:calc(100% - 40px)}}
@media(max-width:360px){header.academy-header{gap:6px;width:calc(100% - 28px)}.academy-header .academy-brand{gap:7px}.academy-symbol{width:43px;height:43px}.academy-symbol img{width:39px;height:39px}.academy-name{font-size:21px;letter-spacing:-.5px}.academy-tagline{font-size:8px;letter-spacing:0;gap:4px}.academy-actions{gap:4px}}
/* Existing learning and admin cards retain their layouts with the same palette. */
html[data-theme="dark"] :is(.card,.registration-card,.help-card,.admin-panel,.finance-panel,.customer-card,.invoice-preview,.invoice-sheet,.session-request){background:var(--paper);color:var(--ink);border-color:var(--line)}
@media print{.academy-header,.academy-footer,.academy-page-tools{display:none!important}html body{background:white;color:#15243b}}

html body :is(h1,h2,h3,h4,h5,h6) :is(em,strong,span){font-family:inherit;font-style:inherit}
