/* The Curriculum page */
.crumbs{margin:1.2rem 0 .4rem;font-size:.92rem;color:var(--ink-soft)}
.crumbs a{color:var(--ink-soft)}
#app h1{margin:.4rem 0 .6rem}
#app .lede{max-width:66ch;color:var(--ink-soft)}
.picks{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin:1.2rem 0}
.pick{display:grid;gap:.3rem;height:100%;padding:1rem;border:2px solid var(--line);border-top:6px solid var(--c-math);border-radius:var(--radius);background:var(--card);color:var(--ink);text-decoration:none}
.pick.std{border-top-color:var(--knowledge)}
.pick:hover{border-color:var(--ink)}
.pick strong{font:600 1.2rem/1.2 var(--head)}
.pick span{color:var(--ink-soft);font-size:.95rem}
.pick small{color:var(--ink-soft);font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}
.gradepick{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.5rem;margin:.6rem 0 1.4rem}
.stdsub h2{margin-top:1.4rem}
.units{list-style:none;padding:0;display:grid;gap:.7rem;margin:1rem 0}
.units a{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"n t c" "n s c";gap:.1rem 1rem;align-items:center;padding:.8rem 1rem;border:2px solid var(--line);border-radius:var(--radius);background:var(--card);color:var(--ink);text-decoration:none}
.units a:hover{border-color:var(--ink)}
.units .un{grid-area:n;font-weight:700;color:var(--ink-soft);font-size:.9rem;min-width:4.5em}
.units strong{grid-area:t;font:600 1.1rem/1.25 var(--head)}
.units .secs{grid-area:s;color:var(--ink-soft);font-size:.9rem}
.gcount{grid-area:c;font-weight:700;font-size:.85rem;border-radius:999px;padding:.15rem .6rem;white-space:nowrap}
.gcount.has{background:var(--ok);color:#1d3a14}
.gcount.none{background:var(--paper2);color:var(--ink-soft);border:1px solid var(--line)}
p.un{margin:0;color:var(--ink-soft);font-weight:700}
.secs{color:var(--ink-soft)}
.stdbox{border:2px solid var(--line);border-radius:var(--radius);padding:.5rem .9rem;background:var(--paper2);margin:1rem 0}
.stdbox summary{font-weight:700;cursor:pointer}
.stdbox ul{margin:.6rem 0 0;padding-left:1.1rem;display:grid;gap:.35rem;font-size:.95rem}
.gchips{list-style:none;padding:0;display:grid;gap:.4rem;margin:.4rem 0 1rem}
.gchip{padding:.45rem .7rem;border:1px solid var(--line);border-radius:10px;background:var(--card)}
.gchip a:first-child{font-weight:700}
.gchip .pr{margin-left:.6rem;font-size:.9rem}
.notice{padding:.8rem 1rem;border:1px dashed var(--line);border-radius:var(--radius);background:var(--paper2)}
.tablewrap{overflow-x:auto;margin:.5rem 0 1rem}
table.lessons td{vertical-align:top}
table.lessons .goal{margin:.2rem 0 0;font-size:.9rem;color:var(--ink-soft)}
table.lessons .codes{font-size:.85rem;white-space:nowrap}
ul.mini{margin:0;padding-left:1rem;font-size:.92rem}
.plan.big{display:grid;gap:.6rem;padding-left:1.4rem;max-width:72ch}
.kit{margin:2rem 0 1rem}
.credit{font-size:.85rem;color:var(--ink-soft);margin-top:2rem;max-width:80ch}
/* printed unit guide and letter */
.ptable{width:100%;border-collapse:collapse;font-size:10pt}
.ptable th,.ptable td{border-bottom:1px solid #bbb;padding:.25em .35em;text-align:left;vertical-align:top}
.sign{margin-top:1.5em}.sign i{display:block;width:16em;border-bottom:1px solid #111;height:2em}
@media (max-width:640px){.units a{grid-template-columns:1fr;grid-template-areas:"n" "t" "s" "c";justify-items:start}}
.button.small{min-height:36px;padding:.2rem .7rem;font-size:.85rem}
