/* School Launch · College Vocabulary presentation layer (local only; no external assets) */
.vw-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:18px 0 4px;padding:12px 14px;background:var(--paper);border:1px solid var(--line);border-radius:10px}
.vw-tools a.wk-step{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1.5px solid var(--line);border-radius:6px;text-decoration:none;font-weight:700;color:var(--forge);background:var(--ground)}
.vw-tools a.wk-step:hover{border-color:var(--forge)}
.vw-tools .wk-step[aria-disabled="true"]{visibility:hidden}
.wk-pick{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.wk-pick select{min-height:44px;font:inherit;font-size:16px;letter-spacing:0;text-transform:none;color:var(--ink);background:var(--ground);border:1.5px solid var(--line);border-radius:6px;padding:0 10px;max-width:58vw}
.wk-acts{display:flex;gap:8px;margin-left:auto;flex-wrap:wrap}
.vbtn{min-height:44px;padding:0 14px;border-radius:6px;border:1.5px solid var(--forge);background:transparent;color:var(--forge);font:700 15px var(--sans);cursor:pointer}
.vbtn[aria-pressed="true"]{background:var(--forge);color:var(--forge-ink)}
.wk-prog{flex-basis:100%;display:flex;align-items:center;gap:12px;font-size:14px;color:var(--muted)}
.wk-bar{flex:1;height:8px;border-radius:99px;background:var(--linen);overflow:hidden;min-width:80px}
.wk-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--brass),var(--forge));border-radius:99px}
.vw-legend{font-size:14px;color:var(--muted);margin:6px 0 0}
.vw-legend b{color:var(--brass)}
/* intro */
.vw .lsec > p:first-child{padding:14px 18px;background:var(--linen);border-radius:8px;border-left:4px solid var(--brass)}
.vw .lsec > p:first-child + p{font-size:15.5px;color:var(--muted);padding:0 4px}
/* day headings */
.vw h2{margin:34px 0 14px;padding-bottom:6px;border-bottom:2px solid var(--brass);font-family:var(--display);color:var(--forge)}
/* word cards */
.wgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 6px}
@media (max-width:760px){.wgrid{grid-template-columns:minmax(0,1fr)}}
.wc{position:relative;background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--forge);border-radius:10px;padding:16px 18px 14px;display:flex;flex-direction:column;gap:10px;min-width:0;font-family:var(--serif)}
.wc-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.wc-n{font:700 13px var(--sans);color:var(--muted);font-variant-numeric:tabular-nums;min-width:1.6em}
.vw .wc h3{margin:0;font-family:var(--serif);font-weight:600;font-size:clamp(26px,3.2vw,32px);line-height:1.1;color:var(--ink);letter-spacing:.005em}
.vw .wc h3 .mk{font:600 14px var(--sans);color:var(--brass);margin-left:8px;letter-spacing:.1em;vertical-align:middle}
.wc-pos{flex-basis:100%;font-style:italic;color:var(--muted);font-size:16px;margin-top:-4px}
.lbl{font:700 11.5px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wc-def{font-size:18px;line-height:1.45}
.wc-ex{margin:0;font-style:italic;font-size:16.5px;line-height:1.5;padding-left:14px;border-left:3px solid var(--brass-soft)}
.wc-ex .lbl{font-style:normal}
.wc-q{margin:0;padding:10px 14px;background:var(--linen);border-radius:6px;border-left:3px solid var(--forge);font-size:16px;line-height:1.5}
.wc-q .lbl{color:var(--forge)}
.wc-q.wc-read{background:transparent;border-left-color:var(--brass);font-style:italic}
.wc-q.wc-read .lbl{font-style:normal;color:var(--muted)}
.wc-rel{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;margin:0;font-size:15.5px}
.wc-rel dt{font:700 11.5px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-top:3px}
.wc-rel dd{margin:0}
.wc-root{margin-top:auto;display:flex;gap:8px;align-items:baseline;font-size:15px;padding-top:8px;border-top:1px dashed var(--line)}
.tag{flex:none;display:inline-block;font:700 11px var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:3px 8px;border-radius:99px;background:var(--brass);color:#1F1B16}
.wc-note{font-size:15.5px}
.wc-reveal{display:none}
/* flashcard mode */
.fc .wc{cursor:pointer}
.fc .wc:not(.open) > :not(.wc-head):not(.wc-reveal){display:none}
.fc .wc:not(.open) .wc-pos{display:none}
.fc .wc .wc-reveal{display:block;font:600 14px var(--sans);color:var(--forge);background:none;border:0;padding:0;text-align:left;cursor:pointer;min-height:32px}
.fc .wc.open .wc-reveal{display:none}
.fc .vw .lsec > h2 ~ p,.fc .vw details{display:none}
/* quiz */
.vw h2 ~ p{max-width:75ch}
.vw details{margin:16px 0;padding:12px 16px;border:1.5px solid var(--forge);border-radius:10px;background:var(--paper)}
.vw summary{font-weight:700;cursor:pointer;color:var(--forge)}
.wk-nav{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:16px 0}
/* grade index */
.wl{list-style:none;margin:0;padding:0!important;display:grid!important;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px!important}
.wl li{margin:0;position:relative;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--brass);border-radius:8px;padding:12px 14px 12px 14px;font-size:15.5px;line-height:1.45;color:var(--muted)}
.wl li:hover{border-color:var(--forge)}
.wl li a{display:block;text-decoration:none;font-family:var(--display);font-size:19px;color:var(--forge);margin-bottom:2px}
.wl li a::after{content:"";position:absolute;inset:0}
.wl li.done{border-left-color:var(--forge);background:var(--linen)}
.wl li.done a b::after{content:" \2713";color:var(--forge)}
.gp{margin:0 0 16px;display:flex;align-items:center;gap:12px;font-size:14px;color:var(--muted)}
.grade-card h3{font-family:var(--display);color:var(--forge);font-size:24px}
.grade-card h3 a{text-decoration:none;color:inherit}
.grade-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))!important}
.grade-card{border-top:4px solid var(--brass);background:var(--paper)!important;border:1px solid var(--line)}
@media (max-width:560px){.vw-tools{padding:10px}.wk-acts{margin-left:0}.wc{padding:14px 14px 12px}}
/* print: compact two-column sheet */
@media print{
  @page{size:letter;margin:.3in .35in}
  html,body{background:#fff!important;color:#000!important;font-size:8pt}
  :root{--ink:#000;--muted:#333;--forge:#000;--brass:#555;--line:#999;--linen:#fff;--paper:#fff}
  .site-head,.site-foot,.noprint,.wk-nav,.vw-tools,.vw-legend,.wc-reveal{display:none!important}
  .wrap{max-width:none;padding:0}
  .course-hero{padding:0!important;margin:0 0 4pt!important}
  .course-hero h1{font-size:15pt!important;color:#000!important}
  .course-hero .eyebrow{display:none}
  .lead{font-size:8.5pt!important}
  .card{border:0!important;box-shadow:none!important;padding:0!important;background:none!important}
  .vw .lsec{font-size:7.5pt;line-height:1.25;columns:3;column-gap:12pt;column-rule:.5pt solid #bbb}
  .vw .lsec > p,.vw .lsec > p:first-child + p{font-size:7.5pt!important;color:#000}
  .vw .lsec > p:first-child{padding:0;border:0;background:none}
  .vw .lsec > p{margin:0 0 3pt}
  .vw h2{font-size:9.5pt!important;margin:4pt 0 2pt;padding:0 0 1pt;border-bottom:1px solid #000;break-after:avoid}
  .wgrid{display:block}
  .wc,.fc .wc{display:block;break-inside:avoid;border:0;border-top:.5pt solid #999;border-radius:0;padding:2pt 0 3pt;margin:0;gap:0}
  .fc .wc:not(.open) > *{display:block!important}
  .fc .wc:not(.open) .wc-pos{display:inline!important}
  .fc .wc > .wc-reveal{display:none!important}
  .wc > *{margin:0 0 1pt}
  .wc-head{display:block}
  .vw .wc h3{display:inline;font-size:10pt!important}
  .vw .wc h3 .mk{font-size:7pt}
  .wc-n{font-size:7pt;min-width:0}
  .wc-pos{display:inline!important;margin:0 0 0 4pt;font-size:7.3pt}
  .wc-def{font-size:7.8pt;line-height:1.25}
  .wc-ex,.wc-q{font-size:7.3pt;line-height:1.25;padding:0 0 0 5pt;border-left:1.5pt solid #777;background:none}
  .lbl{display:inline;font-size:6.5pt;margin-right:3pt}
  .wc-rel{display:block;font-size:7pt}
  .wc-rel dt,.wc-rel dd{display:inline;font-size:7pt}
  .wc-rel dt{font-size:6.5pt}
  .wc-rel dd::after{content:"  ";white-space:pre}
  .wc-root{display:block;border:0;padding:0;font-size:7pt}
  .tag{background:none;border:.5pt solid #000;padding:0 3pt;font-size:6pt;color:#000}
  .vw details{border:0;padding:0;margin:3pt 0;background:none;font-size:7.5pt}
  .vw h2 ~ p{max-width:none}
  a{color:#000!important;text-decoration:none}
}
