:root{--bg:var(--canvas);--paper:var(--surface);--ink:var(--text)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 system-ui,sans-serif}button,input{font:inherit}button{cursor:pointer;color:inherit;border:1px solid var(--line);background:var(--control-bg);padding:10px 16px;min-height:44px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:650}button:hover{background:var(--hover)}button:disabled{opacity:.55;cursor:default}button.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}button.primary:hover{filter:brightness(1.08)}button.quiet{background:transparent;color:var(--muted)}button:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1:focus{outline:none}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2{font-family:Georgia,serif;font-weight:600;line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(36px,5vw,64px);margin:8px 0 20px}h1 span{color:var(--accent)}h2{font-size:28px;margin:18px 0 13px}h3{font-size:18px;margin:9px 0}p{margin:0 0 15px}small,.eyebrow{font-size:11px;letter-spacing:1.3px}.eyebrow{font-weight:750;text-transform:uppercase;color:var(--accent);display:flex;gap:8px;align-items:center}.icon{height:19px;width:19px;vertical-align:middle;object-fit:contain;flex-shrink:0;filter:var(--icon-filter)}button.primary .icon{filter:var(--icon-on-accent)}.muted{color:var(--muted);font-size:13px}header,footer{max-width:1260px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 32px;border-bottom:1px solid var(--line)}.brand{font-weight:850;letter-spacing:1px;padding:0;border:0;background:none;font-size:18px}.brand:hover{background:none}.brand span{font-size:10px;color:var(--muted);font-weight:400;letter-spacing:2px;margin-left:6px}nav{display:flex;gap:8px}nav button{font-size:12px;min-height:38px;padding:7px 11px}main{max-width:1200px;margin:auto;padding:35px 32px 45px;min-height:78vh}footer{border:0;border-top:1px solid var(--line);font-size:10px;letter-spacing:1px;color:var(--muted)}a{color:var(--accent);text-underline-offset:4px}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:16px 0 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;background:var(--paper);color:var(--ink);padding:10px;z-index:5}.skip-link:focus{top:10px}.shelf-title{margin:8px 0 28px}.shelf-title h1{margin-bottom:12px}.shelf-title>p:last-child{color:var(--muted);font-size:18px}.shelf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.poster{border:1px solid var(--accent);background:var(--surface);overflow:hidden;border-radius:6px;display:flex;flex-direction:column}.cardtop{font:10px/1.5 Consolas,monospace;letter-spacing:1.2px;color:var(--accent);padding:9px 14px}.cover-art{display:block;width:100%;aspect-ratio:320/126;object-fit:cover;image-rendering:pixelated}.cover{padding:19px;display:flex;flex-direction:column;flex:1}.cover h2{font-size:26px;margin:0 0 12px;display:flex;gap:8px;align-items:center}.cover h2 .icon{width:22px;height:22px}.cover p{color:var(--muted);font-size:14px}.cover small{font-size:9px;letter-spacing:.6px;color:var(--accent);margin-top:auto}.cover .actions{border-top:1px solid var(--line);padding-top:13px}.cover button{flex-grow:1}.best{font-size:12px!important;margin:9px 0 0}.help{margin-top:28px;border-block:1px solid var(--line);padding:14px 0}.help summary{padding:9px 0;cursor:pointer;font-weight:650}.help ol{padding-left:24px;max-width:76ch}.help li{margin:10px 0;color:var(--muted);font-size:14px}.odds{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:20px 0}.odds>span{display:grid;justify-items:start;align-content:start;gap:7px;border:1px solid var(--line);padding:14px;font-size:12px}.odds b{font-size:13px}.play-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:-12px 0 18px}.play-top button{padding-left:0;border:0}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:var(--raised);margin-bottom:16px;border-radius:6px;overflow:hidden}.metrics>div{padding:15px 20px;border-right:1px solid var(--line)}.metrics>div:last-child{border:0}.metrics small{display:block;color:var(--muted);font-size:9px;letter-spacing:1px}.metrics b{display:flex;align-items:center;gap:8px;font-size:25px;margin-top:4px}.metrics b span{font-size:15px;font-weight:400;color:var(--muted)}.streak{display:flex;align-items:center;gap:15px;margin:20px 0 26px}.streak>span{font-size:12px;color:var(--muted)}.sockets{display:flex;align-items:center;gap:10px}.sockets i{position:relative;width:15px;height:15px;border:2px solid var(--line-strong);border-radius:50%;background:var(--surface)}.sockets i:not(:last-child):after{content:'';position:absolute;height:2px;background:var(--line-strong);width:10px;left:13px;top:5px}.sockets i.lit{background:var(--accent);border-color:var(--accent);}.play-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(285px,1fr);gap:27px;align-items:start}.question,.feedback{padding:28px;border-radius:6px;background:var(--paper);color:var(--ink);box-shadow:4px 5px 0 var(--shadow)}.question h1,.feedback h1{font-size:clamp(25px,3vw,37px);margin:20px 0}.q-heading{display:flex;gap:13px;align-items:center}.q-heading .eyebrow{color:var(--accent);margin:0 0 3px}.q-heading small{font:10px Consolas,monospace;color:var(--muted)}.icon-tile{width:44px;height:44px;border:1px solid var(--line);background:var(--raised);display:flex;align-items:center;justify-content:center;border-radius:6px}.question .icon,.feedback .icon{filter:var(--icon-filter)}.question .muted,.feedback .muted{color:var(--muted)}.question form{margin-top:23px}.question fieldset{padding:0;margin:0;border:0}.option{display:flex;align-items:center;gap:12px;position:relative;margin:10px 0;padding:13px;border:1px solid var(--line);background:var(--control-bg);border-radius:5px;cursor:pointer;min-height:58px;font-size:16px}.option:focus-within{outline:3px solid var(--accent);outline-offset:2px}.option.selected{background:var(--selected);border:2px solid var(--accent);padding:12px}.option input{position:absolute;width:1px;height:1px;opacity:0}.letter{height:30px;width:30px;border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center;font:700 15px Consolas,monospace;flex-shrink:0;border-radius:3px}.option>.icon{margin-left:auto;opacity:0}.option.selected>.icon{opacity:1}.question input[type=text]{display:block;width:100%;background:var(--control-bg);color:var(--text);border:2px solid var(--line-strong);border-radius:5px;min-height:50px;padding:12px;font-size:17px;margin:7px 0 10px}.question form>label{font-weight:700;font-size:13px}.question .primary,.feedback .primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.question .primary .icon,.feedback .primary .icon{filter:var(--icon-on-accent)}.question .quiet{color:var(--muted);border-color:var(--line)}.question .quiet:hover{background:var(--hover)}.question .actions>.primary{flex:1}#message{font-size:13px;font-weight:600;color:var(--danger);margin:10px 0}.challenge{border:3px double var(--warning);box-shadow:4px 5px 0 var(--shadow),inset 0 4px 0 var(--warning)}.challenge-tag{margin-top:20px;background:var(--warning-bg);padding:9px 12px;font-size:12px;display:flex;gap:8px;align-items:center}.challenge .icon-tile{border-radius:10px;background:var(--raised);border:3px double var(--line);height:54px;width:54px}.feedback>.eyebrow{color:var(--positive);font-size:13px;letter-spacing:0}.feedback>.eyebrow.miss{color:var(--danger)}.entry{font-size:13px}.explain{font-size:16px;line-height:1.65}.correction{padding:10px 13px;border-left:3px solid var(--accent);background:var(--selected);font-size:14px}.chip-zone{border-top:1px solid var(--line);margin-top:24px;padding-top:3px}.chip-zone h2{font-size:25px}.chip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:21px 0}.chip{min-width:0;width:100%;min-height:158px;padding:12px 6px;position:relative;display:flex;flex-direction:column;gap:10px;border:4px double var(--line);border-radius:10px;font-size:12px;box-shadow:3px 4px 0 var(--shadow),inset 0 0 0 3px var(--shadow);overflow:hidden}.chip.covered{background:var(--raised);color:var(--text)}.chip.covered:before,.chip.covered:after{content:'';position:absolute;height:5px;width:5px;border:1px solid var(--line);border-radius:50%;background:var(--selected);top:8px;left:8px}.chip.covered:after{top:auto;left:auto;bottom:8px;right:8px}.chip.covered:hover:not(:disabled){transform:translateY(-4px);box-shadow:3px 8px 0 var(--shadow),inset 0 0 0 3px var(--shadow)}.chip .icon{width:34px;height:34px}.chip-code{font:700 10px Consolas,monospace;letter-spacing:2px}.chip.flipped{background:var(--positive-bg);animation:flip .55s ease-out;opacity:1;cursor:default}.chip.flipped b{font-size:13px;line-height:1.3}.chip.flipped.tier-4{background:var(--warning-bg);border-color:var(--warning)}.chip:disabled.covered{opacity:.65}.reward{padding:14px;background:var(--positive-bg);border:1px solid var(--line);font-size:14px;display:flex;align-items:center;flex-wrap:wrap;gap:10px}.reward.tier-4{background:var(--warning-bg);border-color:var(--warning)}.badge{font-size:10px;border:1px solid currentColor;border-radius:3px;padding:3px 7px;display:inline-block;font-weight:700}.no-chip{border:1px dashed var(--line);padding:14px;display:flex;gap:10px;align-items:center;font-size:13px}.next{justify-content:flex-end}.review{border-top:1px solid var(--line);margin-top:20px;padding-top:12px;font-size:13px}.review summary{cursor:pointer;font-weight:650}.review p{padding-top:10px}.journey{border:3px double var(--line);background:var(--surface);overflow:hidden;margin-bottom:18px}.journey svg{display:block;width:100%}.journey-head{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:10px 12px;background:var(--surface);color:var(--text);font:10px Consolas,monospace;letter-spacing:.8px}.journey-head .icon{height:15px;width:15px}.bench-note{background:var(--raised);border-left:3px solid var(--accent);padding:17px;display:flex;align-items:start;gap:12px}.bench-note p{margin:0;color:var(--muted);font-size:13px}.bench-note b{color:var(--text)}.grade{background:var(--surface);color:var(--ink);padding:27px;border-radius:5px;margin-bottom:17px}.grade>div{display:flex;justify-content:space-between;gap:15px;align-items:end;margin:15px 0}.grade strong{font:700 76px/1 Georgia,serif;letter-spacing:-4px}.grade b{font-size:20px}.grade p{font-size:13px;margin:0}.result-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:17px 0}.result-stats article{background:var(--raised);border:1px solid var(--line);padding:16px}.result-stats small{display:block;color:var(--muted);font-size:10px;letter-spacing:.6px}.result-stats b{font-size:23px;display:block;margin-top:7px}.celebration{padding:17px;border:1px solid var(--accent);color:var(--accent);margin:20px 0;display:flex;align-items:center;gap:9px}.actions+.journey{margin-top:25px}.collection{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin:23px 0}.collected{border:1px solid var(--line);padding:18px 13px;background:var(--raised);display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;border-radius:6px}.collected>.icon{width:29px;height:29px}.collected h3{font-size:14px;line-height:1.35;margin:5px 0}.collected strong{font-size:23px}.collected .muted{font-size:10px}.collected .badge{color:var(--warning)}.collected.tier-4{border-color:var(--warning);background:var(--warning-bg)}.record{border-top:1px solid var(--line);padding:13px 0}.record summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;font-size:13px}.record h3{padding-top:13px}.storage-warning{margin-top:25px;color:var(--warning);border-left:3px solid;padding:12px;font-size:13px}@keyframes flip{0%{transform:perspective(600px) rotateY(90deg)}100%{transform:perspective(600px) rotateY(0)}}
@media(min-width:900px){.play-grid aside{position:sticky;top:24px}}
@media(max-width:900px){.shelf{gap:12px}.cover{padding:15px}.cover h2{font-size:23px}.play-grid{grid-template-columns:1fr}.play-grid aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}.bench-note{align-self:start}.collection{grid-template-columns:repeat(3,1fr)}.result-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){header,footer{padding:14px 16px}.brand{font-size:15px}.brand span{display:none}nav{gap:5px}nav button{padding:5px 7px;font-size:11px}nav .icon{width:15px;height:15px}main{padding:26px 16px 35px}.shelf{grid-template-columns:1fr;gap:22px}.shelf-title h1{font-size:47px}.shelf-title>p:last-child{font-size:16px}.cover-art{aspect-ratio:320/108}.cover{padding:18px}.cover h2{font-size:28px}.shelf-title{margin-bottom:23px}.odds{grid-template-columns:repeat(2,1fr)}.metrics{grid-template-columns:repeat(2,1fr)}.metrics>div{padding:12px 15px}.metrics>div:nth-child(2){border-right:0}.metrics>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.metrics b{font-size:22px}.play-top .eyebrow{font-size:9px;letter-spacing:1px;text-align:right}.streak{align-items:start;gap:12px;margin-bottom:19px}.streak>span{font-size:11px}.sockets{flex-shrink:0;margin-top:3px}.question,.feedback{padding:21px 18px}.question h1,.feedback h1{font-size:27px}.q-heading small{font-size:9px}.q-heading .eyebrow{font-size:10px}.q-heading{gap:11px}.option{font-size:15px}.play-grid{gap:21px}.play-grid aside{display:block}.bench-note{margin-top:18px}.chip-grid{gap:9px}.chip{min-height:140px;border-width:3px}.chip.flipped b{font-size:11px}.chip .icon{width:29px;height:29px}.chip-zone h2{font-size:25px}.chip-zone .muted{font-size:12px}.reward{font-size:13px}.result-stats{grid-template-columns:repeat(2,1fr)}.grade{padding:23px}.grade strong{font-size:65px}.grade b{font-size:17px}.collection{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-head{font-size:9px}.feedback .next button{flex:1}.question .actions button{font-size:14px}footer{flex-wrap:wrap;font-size:9px}.collection .badge{font-size:9px}.explain{font-size:15px}}
@media(max-width:350px){header{padding-inline:10px}.brand{font-size:13px}nav button{font-size:10px;padding-inline:5px}nav .icon{width:12px;height:12px}main{padding-inline:12px}.question,.feedback{padding:18px 14px}.chip{min-height:132px}.chip.flipped b{font-size:10px}.metrics small{font-size:8px}.streak{flex-wrap:wrap;gap:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.chip.covered:hover:not(:disabled){transform:none}}

.lesson-source{font-size:11px;line-height:1.6;color:var(--muted);margin:0 0 18px}.lesson-source a{color:var(--accent);text-underline-offset:3px}

/* Original Signal Dive rarity palette and outlined icon badges. */
.tier-0{--rarity:var(--rarity-0)}.tier-1{--rarity:var(--rarity-1)}.tier-2{--rarity:var(--rarity-2)}.tier-3{--rarity:var(--rarity-3)}.tier-4{--rarity:var(--rarity-4)}
.rarity-icon{width:21px;height:21px;display:inline-block;flex-shrink:0;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.rarity-badge{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--rarity);color:var(--rarity);border-radius:28px;padding:7px 11px;font:700 12px/1.35 'Segoe UI',Arial,sans-serif;max-width:100%;text-align:center;background:var(--surface)}
.rarity-badge .rarity-icon{width:18px;height:18px}
.chip.flipped,.chip.flipped.tier-4{background:var(--surface);border-color:var(--rarity);color:var(--rarity);box-shadow:0 0 0 1px var(--rarity),3px 4px 0 var(--shadow)}
.chip.flipped>.rarity-icon{width:34px;height:34px}
.chip.flipped>span{color:var(--text)}
.reward,.reward.tier-4{background:var(--surface);border-color:var(--rarity);color:var(--text);gap:12px;padding:15px}
.reward .badge{color:var(--rarity)}
.collected,.collected.tier-4{background:var(--surface);border-color:var(--rarity);color:var(--text);padding:18px 10px;gap:12px}
.collected .badge{color:var(--rarity)}
.odds>span{background:var(--surface);justify-items:start}
.odds .rarity-badge{font-size:11px;padding:6px 9px;gap:6px}
@media(max-width:640px){.rarity-badge{font-size:11px;padding:6px 9px;gap:6px}.reward{padding:12px}.collected{padding:15px 9px}.chip.flipped>.rarity-icon{height:30px;width:30px}}

.infinite-tools{display:flex;align-items:center;gap:15px;margin:0 0 20px}.infinite-tools span{font-size:12px;color:var(--muted)}
.chip-grid.answer-chip-grid{grid-template-columns:minmax(130px,210px);justify-content:center}.answer-chip-grid .chip{min-height:190px}
.answer-group{border-top:1px solid var(--line);margin:22px 0 0;padding-top:17px}.answer-group ul{list-style:none;margin:15px 0 0;padding:0}.answer-group li{padding:14px 0;border-bottom:1px solid var(--line)}.answer-group li:last-child{border-bottom:0}.answer-group b{display:block;font-size:14px;color:var(--text)}.answer-group p{font-size:13px;margin:7px 0;color:var(--muted)}.answer-group small{font-size:11px;letter-spacing:0;color:var(--muted)}
.review:has(.answer-group){background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:17px;margin-top:22px}.review:has(.answer-group)>p{font-size:12px;color:var(--muted)}
.spelling{background:var(--raised);border:1px solid var(--line-strong);padding:19px;border-radius:6px;margin-top:20px}.spelling h2{font:700 18px/1.5 'Segoe UI',Arial,sans-serif;margin:0 0 8px;letter-spacing:0}.spelling p{font-size:13px}.spelling button{font-size:13px}.spelling button:not(.primary){color:var(--text);background:var(--control-bg)}.spelling h2:focus{outline:none}
@media(max-width:640px){.infinite-tools{align-items:start;gap:10px}.infinite-tools button{font-size:12px;flex-shrink:0}.infinite-tools span{font-size:11px}.cover .actions{flex-direction:column;align-items:stretch}.answer-group small{overflow-wrap:anywhere}}

/* Classroom challenge shares the game palette and uses a focused quiz layout. */
.classroom-card {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding: 25px 28px;
  border: 1px solid var(--accent);
  border-radius: 6px;
  background: var(--raised);
}
.classroom-card h2, .classroom-heading h1 { margin: 0 0 10px; }
.classroom-card p:last-child { margin: 0; color: var(--muted); }
.classroom-card button { flex-shrink: 0; }
.practice-title { margin: 38px 0 16px; }
.classroom { max-width: 960px; margin-inline: auto; }
.classroom-heading { margin-bottom: 24px; }
.classroom-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  align-items: start;
  gap: 22px;
}
.classroom-form { margin: 0; }
.classroom-form .eyebrow { color: var(--accent); }
.classroom-form legend {
  padding: 0;
  margin: 5px 0 12px;
  font: 700 clamp(22px, 4vw, 33px)/1.2 Georgia, serif;
}
.classroom-form legend:focus { outline: none; }
.classroom-form .option span { overflow-wrap: anywhere; }
.classroom [hidden] { display: none; }
#classroom-message { color: var(--danger); font-size: 14px; font-weight: 650; }
#classroom-message:empty { display: none; }
.classroom-panel {
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--raised);
}
.classroom-panel h2 { margin: 0; font-size: 20px; }
.classroom-panel progress { width: 100%; height: 12px; accent-color: var(--accent); margin: 12px 0; }
.classroom-panel p { color: var(--muted); font-size: 13px; margin: 15px 0 0; }
.classroom-numbers { display: grid; grid-template-columns: repeat(5, 1fr); gap: 5px; }
.classroom-numbers button { min-width: 0; min-height: 40px; padding: 4px; }
.classroom-numbers button.answered { background: var(--selected); color: var(--text); }
.classroom-numbers button[aria-current] { outline: 2px solid var(--accent); outline-offset: -2px; }
.classroom-review { margin-top: 34px; }
.classroom-review > p { color: var(--muted); }
.classroom-review ol { padding: 0; list-style: none; }
.classroom-review summary { font-size: 15px; }
.classroom-review details p { margin: 10px 0 0; overflow-wrap: anywhere; }
.review-correct { color: var(--positive); }
.review-incorrect { color: var(--danger); }

@media (max-width: 720px) {
  .classroom-grid { grid-template-columns: 1fr; }
  .classroom-card { flex-direction: column; align-items: flex-start; gap: 16px; padding: 20px; }
  .classroom-card button { width: 100%; }
  .classroom-numbers { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}

.live-link {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 7px 11px;
  border: 1px solid var(--accent);
  border-radius: 5px;
  color: var(--accent);
  font-size: 13px;
  font-weight: 750;
  text-decoration: none;
  white-space: nowrap;
}
.live-link:hover { background: var(--hover); }
.mode-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.mode-grid .classroom-card { flex-direction: column; align-items: flex-start; gap: 18px; }
.mode-grid .classroom-card > :last-child { margin-top: auto; }
.live-card { border-color: var(--line-strong); background: var(--surface); }
.live-card .live-link { justify-content: center; min-height: 44px; padding-inline: 16px; }
@media (max-width: 580px) {
  .mode-grid { grid-template-columns: 1fr; }
  .mode-grid .live-link { width: 100%; }
  .shelf-title h1 { font-size: clamp(34px, 9vw, 47px); }
}
@media (max-width: 640px) { nav .live-link { font-size: 11px; padding-inline: 7px; } }
@media (max-width: 350px) { nav .live-link { font-size: 10px; padding-inline: 5px; } }

@media (max-width: 650px) {
  header { flex-wrap: wrap; gap: 8px; }
  header nav { flex-wrap: wrap; }
}
@media (max-width: 450px) {
  header nav { display: grid; width: 100%; grid-template-columns: repeat(4, minmax(0, 1fr)); }
  header nav .icon { display: none; }
  header nav button, header nav .live-link { min-width: 0; padding-inline: 4px; font-size: 11px; justify-content: center; }
  header nav .theme-switch { font-size: 11px; white-space: normal; }
}

.study { width: min(100%, 720px); margin-inline: auto; }
.study-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-block: 12px; }
.study-toolbar p { margin: 0; color: var(--muted); font-variant-numeric: tabular-nums; }
.study-card {
  width: 100%;
  min-height: clamp(235px, 36vh, 320px);
  padding: clamp(18px, 5vw, 38px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  justify-items: start;
  gap: 18px;
  text-align: left;
  background: var(--surface);
  border-color: var(--line-strong);
  border-top: 3px solid var(--accent);
}
.study-card[data-side="back"] { grid-template-rows: auto auto 1fr auto; border-top-color: var(--positive); }
.study-card .eyebrow, .study-hint { align-self: end; }
.study-card strong { font: 600 clamp(23px, 5vw, 36px)/1.2 Georgia, serif; overflow-wrap: anywhere; }
.study-hint, .study-explanation { color: var(--muted); font-weight: 500; }
.study-hint { font-size: 13px; }
.study-rate, .study-summary { background: var(--raised); border: 1px solid var(--line); border-radius: 6px; padding: 16px; }
.study-rate { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.study-rate p, .study-rate .actions, .study-summary h2 { margin: 0; }
.study-rate p { color: var(--muted); font-size: 14px; }
.study-tallies { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-top: 16px; color: var(--muted); }
.study-tallies p { margin: 0; }
.study-tallies strong { font-size: 22px; color: var(--text); }
