/* Epsilon: graph-paper pop. Math notebook paper, marker highlights, sticker cards. Overrides base.css */
:root{--paper:#ffffff;--paper2:#ffffff;--ink:#1b1d2b;--ink2:#3c3f55;--mut:#7b7f95;--rule:#d9e3f2;--acc:#2d5bff;--pen:#ff3b5c;--ok:#11a36b;--no:#ff3b5c;
  --s:'Newsreader','Iowan Old Style',Georgia,serif;--d:'Bricolage Grotesque','Fraunces',system-ui,sans-serif;--m:'JetBrains Mono',ui-monospace,monospace;--h:'Kalam','Caveat',cursive;
  --hl:#fff27a;--hl2:#ffc6e0;--hl3:#b9f3ff;--sh:color-mix(in srgb,var(--acc) 55%,#fff)}
body{font-family:var(--s);font-size:18.5px;background:#fff;
  background-image:linear-gradient(90deg,transparent 54px,rgba(255,59,92,.45) 54px,rgba(255,59,92,.45) 56px,transparent 56px),linear-gradient(rgba(70,130,230,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(70,130,230,.16) 1px,transparent 1px);
  background-size:100% 100%,24px 24px,24px 24px;background-attachment:fixed,local,local}
@media(max-width:700px){body{background-image:linear-gradient(rgba(70,130,230,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(70,130,230,.16) 1px,transparent 1px);background-size:24px 24px,24px 24px}}
nav.top{background:rgba(255,255,255,.88);border-bottom:2px solid var(--ink)}
.logo{font-family:var(--d);font-weight:800;font-size:1.35rem;letter-spacing:-.03em}
.logo .eps{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--hl);border:2px solid var(--ink);color:var(--ink);font-size:1.05rem;transform:rotate(-6deg)}
.crs a{font-family:var(--m);border-radius:8px;border:2px solid transparent;padding:5px 10px}
.crs a:hover,.crs a.on{border-color:var(--ink);background:var(--hl);transform:rotate(-1.5deg)}
.chero{padding:84px 0 44px;border-bottom:2px solid var(--ink)}
.chero h1{font-family:var(--d);font-weight:800;font-size:clamp(3.2rem,9vw,7.2rem);letter-spacing:-.05em;line-height:.88}
.chero h1::after{display:none}
.chero h1{background:linear-gradient(transparent 62%,color-mix(in srgb,var(--acc) 28%,#fff) 62%,color-mix(in srgb,var(--acc) 28%,#fff) 92%,transparent 92%);display:inline;box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:0 6px}
.chero .wrap>h1+p{margin-top:26px}
.chero .kick{color:var(--ink)}
.chero .kick span:first-child{background:var(--ink);color:#fff;padding:4px 10px;border-radius:6px;transform:rotate(-2deg);display:inline-block}
.chero p{color:var(--ink2);margin-top:22px}
.hstats{border:2px solid var(--ink);border-radius:14px;background:#fff;max-width:720px;box-shadow:5px 5px 0 var(--sh)}
.hstats div{padding:12px 18px;margin:0;border-right:2px dashed var(--rule)}
.hstats b{font-family:var(--d);font-weight:800}
.labbtn{border-radius:10px;background:var(--acc);color:#fff;border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink)}.labbtn:hover{transform:translate(-2px,-2px)}
.tabs{border-bottom:2px solid var(--ink);background:rgba(255,255,255,.92)}
.tabs .wrap{gap:10px;padding-top:12px;padding-bottom:12px}
.tabs button{font-family:var(--d);font-weight:700;font-size:.95rem;padding:7px 16px;border:2px solid var(--ink);border-radius:10px;color:var(--ink);background:#fff;transition:transform .15s}
.tabs button:nth-child(odd){transform:rotate(-1.5deg)}.tabs button:nth-child(even){transform:rotate(1.2deg)}
.tabs button.on{background:var(--hl);box-shadow:3px 3px 0 var(--ink)}
/* lessons as sticker cards */
.chap{background:#fff;border:2px solid var(--ink);border-radius:16px;margin-bottom:18px;box-shadow:6px 6px 0 var(--sh);overflow:hidden}
.chap:nth-child(3n+2){box-shadow:6px 6px 0 color-mix(in srgb,var(--pen) 45%,#fff)}.chap:nth-child(3n){box-shadow:6px 6px 0 #ffd84d}
.chap>header{grid-template-columns:120px 1fr auto;padding:20px 26px}
.chap .num{font-family:var(--m);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);background:var(--hl3);padding:3px 8px;border-radius:6px;justify-self:start}
.chap h3{font-family:var(--d);font-weight:800;font-size:1.5rem;letter-spacing:-.025em}
.chap .tog{border-radius:8px;border:2px solid var(--ink);color:var(--ink)}
.chap.open .tog{background:var(--hl);color:var(--ink)}
.chap .body{border-top:2px dashed var(--rule)}
.lede{font-size:1.24rem}
.lede::first-letter{all:unset}
.sec{font-family:var(--d);font-weight:800;font-size:.95rem;letter-spacing:0;text-transform:none;color:var(--ink)}
.sec::after{background:var(--rule);height:2px}
.ideas li{padding-left:58px;color:var(--ink)}
.ideas li .n{font-family:var(--d);font-weight:800;font-size:.9rem;color:var(--ink);background:var(--hl);border-radius:6px;padding:0 6px;top:3px}
.ideas li:nth-child(3n+2) .n{background:var(--hl2)}.ideas li:nth-child(3n) .n{background:var(--hl3)}
.ideas li b{background:linear-gradient(104deg,transparent 2%,var(--hl) 3%,var(--hl) 96%,transparent 98%);font-weight:700;padding:0 4px;border-radius:3px}
.eq{border:2px solid var(--ink);border-radius:12px;background:#fff;box-shadow:3px 3px 0 var(--hl3)}
.method{border:2px solid var(--ink);border-radius:14px;background:#fff}
.method li::before{border-color:var(--ink);background:var(--hl)}
.margin{border-left:0;padding:16px 18px 8px;background:var(--hl2);border:2px solid var(--ink);border-radius:12px;transform:rotate(1.5deg);box-shadow:4px 4px 0 var(--ink)}
.margin .ttl{font-family:var(--d);font-weight:800;color:var(--ink);transform:none;font-size:1.15rem}
.margin p{font-family:var(--h);color:var(--ink);font-size:1.15rem;transform:none!important}
@media(max-width:900px){.margin{transform:none}}
.go{border:2px solid var(--ink);border-radius:10px;padding:8px 16px;background:var(--hl);font-family:var(--d);font-weight:700;box-shadow:3px 3px 0 var(--ink)}
.go:hover{transform:translate(-1px,-1px);color:var(--ink)}
.btn{border-radius:10px;border-width:2px;font-family:var(--d);font-weight:700;text-transform:none;letter-spacing:0;font-size:.9rem}
.btn:not(.ghost){background:var(--acc);border-color:var(--ink);box-shadow:3px 3px 0 var(--ink)}
.btn.ghost{background:#fff}
select{border-radius:10px;border-width:2px;font-family:var(--d);font-weight:600}
.card{border:2px solid var(--ink);border-radius:18px;box-shadow:8px 8px 0 var(--sh)}
.card::before{display:none}
.shead{border-bottom:2px dashed var(--ink)}
.shead b{font-family:var(--d);font-weight:800}
.blank input{font-family:var(--h);font-size:1.55rem;color:#2d5bff;background:linear-gradient(transparent 70%,var(--hl3) 70%)}
.feedback{font-family:var(--h)}
.steps li::before{font-family:var(--d);font-weight:800;color:var(--pen)}
.final span b{background:var(--hl);border-bottom:0;padding:0 5px;border-radius:4px}
.grade{border-radius:20px;transform:rotate(-6deg);font-family:var(--d);font-weight:800;font-size:4.4rem;background:#fff}
.sheet{border:2px solid var(--ink);border-radius:18px}
.sheet h4{color:var(--ink);font-family:var(--d);font-weight:800;font-size:1rem;letter-spacing:0;text-transform:none;background:var(--hl);display:inline-block;padding:2px 8px;border-radius:6px;border-bottom:0}
.dg{border:2px solid var(--ink);border-radius:14px;background:#fff;box-shadow:4px 4px 0 var(--hl3)}
.dg .m{stroke:#aebbd3}.dg .fw2{fill:#f1f5fd}
.dg figcaption b{color:var(--ink);background:var(--hl);padding:0 5px;border-radius:4px}
.rvhead{border-radius:16px;background:var(--hl);border:2px solid var(--ink);box-shadow:5px 5px 0 var(--ink)}
.rvhead .ttl{color:var(--ink);font-family:var(--d);font-weight:800;letter-spacing:0;text-transform:none;font-size:1rem}
.foot{border-top:2px solid var(--ink);background:#fff}
.ssec .snum{background:var(--ink);border-radius:6px}.exb{border:2px solid var(--ink);border-left:6px solid var(--pen);border-radius:10px}
/* per-course accents */
body.t-precalc{--acc:#ff3b5c}body.t-calc1{--acc:#2d5bff}body.t-calc2{--acc:#7a3cff}body.t-calc3{--acc:#00a389}
body.t-linalg{--acc:#e8338a}body.t-diffeq{--acc:#f08a00}body.t-stats{--acc:#0f86d1}
