/* Academy article styles. Uses the site's existing design tokens (style.css); no overrides of existing rules. */
main[data-p=academy]{padding-top:var(--s6)}
main[data-p=academy]>*{max-width:760px}
.ac{margin:0}
.ac h1{margin:0 0 var(--s3);font-size:var(--fs-h1-sm);line-height:1.25}
.ac h2{margin:var(--s7) 0 var(--s3);padding-top:var(--s2);scroll-margin-top:calc(var(--hdr-h) + 16px)}
.ac h3{margin:var(--s5) 0 var(--s2)}
.ac p,.ac li{line-height:1.8}
.ac ul,.ac ol{padding-left:1.4em}
.ac-meta{margin:0 0 var(--s5);color:var(--tx-2);font-size:var(--fs-sm)}
.ac-sum,.ac-toc,.ac-ex,.ac-fm,.ac-qa,.ac-rel a,.ac-ref,.ac-list a{border:1px solid var(--line);border-radius:14px}
.ac-sum{margin:0 0 var(--s4);padding:var(--s4) var(--s5);background:var(--brand-soft);background:color-mix(in srgb,var(--brand-soft) 70%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px)}
.ac-sum-t,.ac-toc-t,.ac-lb{display:block;margin:0 0 var(--s2);color:var(--brand);font-size:var(--fs-xs);font-weight:600;letter-spacing:.06em}
.ac-sum ul{margin:0;padding-left:1.2em}
.ac-sum li{margin-bottom:.35em}
.ac-toc{margin:0 0 var(--s5);padding:var(--s4) var(--s5);background:var(--bg-2);background:color-mix(in srgb,var(--bg-2) 80%,transparent)}
.ac-toc ol{margin:0;padding-left:1.4em;columns:1}
.ac-toc li{margin:0 0 .3em;font-size:var(--fs-sm)}
.ac-toc a{text-decoration:none}
.ac-ex,.ac-fm{margin:var(--s4) 0;padding:var(--s3) var(--s4);background:var(--bg-2);border-left:3px solid var(--brand);overflow-x:auto}
.ac-ex p:last-child,.ac-fm p:last-child{margin-bottom:0}
.ac-ex p{margin:0 0 .5em}
.ac-fm{font-weight:500;font-variant-numeric:tabular-nums;line-height:1.9}
.ac-tbl{margin:var(--s4) 0;border:1px solid var(--line);border-radius:12px}
.ac-qa{margin:0 0 var(--s3);padding:var(--s3) var(--s4);background:var(--bg-2)}
.ac-qa h3{margin:0 0 var(--s2);font-size:var(--fs-md)}
.ac-qa p{margin:0}
.ac-ref{margin:var(--s6) 0 var(--s4);padding:var(--s3) var(--s4);background:var(--bg-2);font-size:var(--fs-sm);line-height:1.8}
.ac-ref p{margin:0 0 .4em}
.ac-ref p:last-child{margin:0}
.ac-rel,.ac-list{display:grid;grid-template-columns:1fr;gap:var(--s3);margin:0 0 var(--s5)}
.ac-rel a,.ac-list a{display:block;padding:var(--s3) var(--s4);background:var(--bg-2);text-decoration:none;color:var(--tx);font-weight:500;transition:border-color var(--t) var(--ease),transform var(--t) var(--ease)}
.ac-rel a:hover,.ac-list a:hover{border-color:var(--brand);transform:translateY(-1px)}
.ac-rel small,.ac-list small{display:block;margin-top:2px;color:var(--tx-2);font-weight:400;font-size:var(--fs-xs);line-height:1.5}
.ac .disc{border-radius:12px}
.ac-edu-list{max-width:var(--w-text);margin:var(--s5) 0}
.ac-edu-list h2{margin:0 0 var(--s2)}
@media(min-width:640px){.ac-rel,.ac-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.ac-sum,.ac-toc{padding:var(--s3) var(--s4)}.ac h2{margin-top:var(--s6)}}
@media(prefers-reduced-motion:reduce){.ac-rel a,.ac-list a{transition:none}.ac-rel a:hover,.ac-list a:hover{transform:none}}
.ac-more{margin:var(--s3) 0 0;font-weight:500}
.ac-pointer{margin:0 0 var(--s4)}
