/* SmartStudy Physics notes — shared chapter stylesheet */
:root{
  --ink:#1C2B4B; --soft:#4C5A80; --paper:#FBFAF7; --card:#fff; --rule:#E7E3D8;
  --accent:#2244CC; --hl:#EEF2FF; --hlink:#B63A32; --good:#1E7A46;
  --actbg:#F4F7FF; --actbd:#C9D6FF; --shadow:0 1px 2px rgba(28,43,75,.05),0 6px 18px rgba(28,43,75,.05);
}
@media (prefers-color-scheme:dark){:root{
  --ink:#E8EAF4; --soft:#9FA8C4; --paper:#14171F; --card:#1B1F2A; --rule:#2C3242;
  --accent:#93A8FF; --hl:#20263a; --hlink:#E08078; --good:#5FD08A;
  --actbg:#1a2033; --actbd:#33406a; --shadow:0 1px 2px rgba(0,0,0,.3),0 6px 18px rgba(0,0,0,.25);
}}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font:16px/1.68 Georgia,"Times New Roman",serif;padding:0 0 70px}
.sans{font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.wrap{max-width:720px;margin:0 auto;padding:0 18px}

.top{border-bottom:1px solid var(--rule);background:var(--card)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;padding:12px 18px}
.crumbs{font-family:system-ui,sans-serif;font-size:12.5px;color:var(--soft)}
.crumbs a{color:var(--soft);text-decoration:none} .crumbs a:hover{color:var(--accent)}
.pill{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:11px;letter-spacing:.05em;color:var(--accent);border:1px solid var(--actbd);border-radius:20px;padding:3px 10px;white-space:nowrap}

h1{font-family:system-ui,sans-serif;font-size:27px;letter-spacing:-.01em;margin:26px 0 4px}
.lede{font-size:14px;color:var(--soft);font-family:system-ui,sans-serif;margin-bottom:20px}
h2{font-family:system-ui,sans-serif;font-size:20px;margin:30px 0 8px;padding-top:10px;border-top:2px solid var(--rule);letter-spacing:-.01em}
h2 .n{color:var(--accent);font-family:"IBM Plex Mono",monospace;font-size:15px;margin-right:8px}
h3{font-family:system-ui,sans-serif;font-size:16px;margin:20px 0 6px;color:var(--ink)}
p{margin:10px 0} strong{color:var(--ink)}
ul,ol{margin:10px 0 10px 22px} li{margin:5px 0}
a{color:var(--accent)}

.toc{background:var(--card);border:1px solid var(--rule);border-radius:10px;padding:14px 18px;margin:6px 0 8px;box-shadow:var(--shadow)}
.toc h4{font-family:system-ui,sans-serif;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--soft);margin-bottom:8px}
.toc a{display:block;font-family:system-ui,sans-serif;font-size:14px;color:var(--accent);text-decoration:none;padding:3px 0;border-bottom:1px dashed var(--rule)}
.toc a:last-child{border-bottom:none}

/* math notation */
.m{font-family:"Cambria Math",Georgia,serif;white-space:nowrap}
.m sub{font-size:.72em;vertical-align:-.28em} .m sup{font-size:.72em;vertical-align:.42em}
.frac{display:inline-flex;flex-direction:column;vertical-align:-.55em;text-align:center;margin:0 .12em}
.frac>.num{border-bottom:1.4px solid currentColor;padding:0 .35em;line-height:1.25}
.frac>.den{padding:0 .35em;line-height:1.25}
.eqn{font-family:"Cambria Math",Georgia,serif;font-size:18px;text-align:center;background:var(--hl);border-radius:8px;padding:12px 14px;margin:14px 0;overflow-x:auto}
.eqn .lab{display:block;font-family:system-ui,sans-serif;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--soft);margin-bottom:5px}

/* diagrams */
figure{margin:18px 0;text-align:center}
figure svg{max-width:100%;height:auto;background:var(--card);border:1px solid var(--rule);border-radius:10px;box-shadow:var(--shadow)}
figcaption{font-family:system-ui,sans-serif;font-size:12.5px;color:var(--soft);margin-top:8px}

/* boxes */
.example,.callout,.activity{border-radius:10px;padding:15px 17px;margin:18px 0;box-shadow:var(--shadow)}
.example{background:var(--card);border:1px solid var(--rule);border-left:4px solid var(--accent)}
.example h4,.callout h4,.activity h4{font-family:system-ui,sans-serif;font-size:12px;letter-spacing:.07em;text-transform:uppercase;margin-bottom:8px}
.example h4{color:var(--accent)}
.callout{background:var(--hl);border:1px solid var(--actbd)}
.callout h4{color:var(--hlink)}
.activity{background:var(--actbg);border:1px solid var(--actbd)}
.activity h4{color:var(--accent)}
.activity .sans{font-size:14.5px}

/* interactive widgets */
.widget{margin-top:10px}
.widget canvas{width:100%;max-width:100%;display:block;border-radius:8px;background:var(--card);border:1px solid var(--rule);touch-action:none}
.wrow{display:flex;align-items:center;gap:12px;margin-top:10px;font-family:system-ui,sans-serif;font-size:13.5px;flex-wrap:wrap}
.wrow label{flex:none} .wrow input[type=range]{flex:1;min-width:130px;accent-color:var(--accent)}
.wrow b{font-family:"IBM Plex Mono",monospace;color:var(--accent)}
.wbtns{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.wbtns button{font:inherit;font-family:system-ui,sans-serif;font-size:13px;font-weight:600;cursor:pointer;border-radius:7px;border:1.5px solid var(--accent);background:var(--card);color:var(--ink);padding:7px 13px}
.wbtns button.on{background:var(--accent);color:#fff}
.readpair{font-family:system-ui,sans-serif;font-size:13.5px;margin-top:8px;color:var(--ink)}
.readpair .same,.readpair .good{color:var(--good);font-weight:600}

/* self-check quiz */
.quiz .q{background:var(--card);border:1px solid var(--rule);border-radius:8px;padding:13px 15px;margin:10px 0}
.quiz .qtext{font-family:system-ui,sans-serif;font-size:14.5px;font-weight:600;margin-bottom:9px}
.quiz .opts{display:flex;flex-direction:column;gap:6px}
.quiz .opt{font-family:system-ui,sans-serif;font-size:14px;text-align:left;border:1.5px solid var(--rule);background:var(--paper);color:var(--ink);border-radius:7px;padding:8px 11px;cursor:pointer}
.quiz .opt:hover{border-color:var(--accent)}
.quiz .opt.correct{border-color:var(--good);background:rgba(30,122,70,.1)}
.quiz .opt.wrong{border-color:var(--hlink);background:rgba(182,58,50,.1)}
.quiz .expl{display:none;font-family:system-ui,sans-serif;font-size:13.5px;color:var(--soft);margin-top:9px;line-height:1.5}
.quiz .expl.show{display:block}

/* chapter nav */
.chnav{display:flex;justify-content:space-between;gap:10px;margin-top:34px;font-family:system-ui,sans-serif}
.chnav a{flex:1;text-decoration:none;border:1px solid var(--rule);border-radius:9px;padding:11px 14px;color:var(--ink);background:var(--card);font-size:14px}
.chnav a.next{text-align:right} .chnav a:hover{border-color:var(--accent)}
.chnav a span{display:block;font-size:11px;color:var(--soft);text-transform:uppercase;letter-spacing:.06em}
.foot{font-family:system-ui,sans-serif;font-size:12px;color:var(--soft);margin-top:22px;text-align:center}
