.crossout-page{max-width:1100px;padding-top:24px}
.crossout-page .page-heading{text-align:center;margin-bottom:16px}
.crossout-page h1{font-size:clamp(30px,4vw,42px);margin-bottom:12px}
.crossout-page .lead{max-width:780px;margin:0 auto;font-size:var(--reading);line-height:1.6}
.crossout-rounds{display:flex;justify-content:center;gap:10px;margin:20px 0}
.crossout-rounds span{display:grid;place-items:center;width:38px;height:38px;border:1px solid #c8d9cc;border-radius:50%;background:#fffdf6;color:#60767a;font-weight:700}
.crossout-rounds .now,.crossout-rounds .done{background:#6d5d95;color:white;border-color:#6d5d95}
.crossout-sheet{padding:8px 24px;background:#fffdf6;border:2px solid #dbd9cc;border-radius:26px;box-shadow:0 6px 0 #dce5d7}
.crossout-row{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px;align-items:center;padding:22px 0}
.crossout-row+.crossout-row{border-top:1px solid #e3e5d9}
.crossout-picture{display:grid;place-items:center;aspect-ratio:1;background:#f5f0e8;border-radius:20px;border:1px solid #e2ddcf}
.crossout-picture img{width:100%;height:110px;object-fit:contain}
.crossout-work{min-width:0}
.crossout-step{font-size:14px;color:#60767a;margin:0 0 7px}
.crossout-source{display:flex;flex-wrap:wrap;align-items:center;padding:4px 0 10px;font-size:calc(var(--reading) + 3px);line-height:1.5}
.crossout-token{position:relative;border:0;background:transparent;padding:5px 0;min-height:44px;color:#293d45;letter-spacing:.025em;white-space:nowrap;font-size:inherit;font-weight:500;border-radius:3px}
.crossout-token:hover:not(:disabled){background:#efe9f7}
.crossout-token.crossed{color:#7c8585;text-decoration:line-through;text-decoration-color:#c14e50;text-decoration-thickness:3px;opacity:1}
.crossout-letter{min-width:24px}
.crossout-letter.remaining{background:#edf5e8;color:#276b56;border-bottom:2px solid #87ab83}
.crossout-result{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.crossout-result label{font-size:16px}
.crossout-result input{min-width:0;width:180px;max-width:100%;min-height:48px;border:2px dashed #c5cbbd;border-radius:10px;background:#fffefa;padding:7px 10px;letter-spacing:.17em;text-transform:uppercase;font-size:var(--reading);color:#293d45}
.crossout-result input:disabled{background:#f4f2eb;color:#426c59;opacity:1}
.crossout-result input[aria-invalid=true]{border-color:#b85d49}
.crossout-result input:focus-visible{outline:3px solid #8051b6;outline-offset:3px}
.crossout-result .secondary{min-height:48px;padding:8px 16px;font-size:14px}
.crossout-result .secondary:disabled{opacity:.45}
.crossout-reset{border:1px solid #d6ddd1;background:transparent;border-radius:12px;font-size:25px;width:44px;min-height:44px;flex-shrink:0}
.crossout-reset:disabled{opacity:.3}
.crossout-row.solved .crossout-step{color:#276b56;font-weight:700}
.crossout-row.solved input{border-style:solid;border-color:#87ab83;background:#edf5e8;font-weight:700}
.crossout-feedback{min-height:52px;margin:20px auto 0;text-align:center;font-size:var(--reading);max-width:750px;color:#41655d;line-height:1.5}
@media(max-width:650px){
 .crossout-page{padding:18px 14px 28px}.crossout-page .eyebrow{font-size:10px;letter-spacing:.1em}.crossout-sheet{padding:4px 14px;border-radius:20px}.crossout-row{grid-template-columns:76px minmax(0,1fr);gap:12px;padding:18px 0;align-items:start}.crossout-picture img{height:76px}.crossout-picture{border-radius:15px}.crossout-source{font-size:var(--reading)}.crossout-step{font-size:12px}.crossout-result{gap:8px}.crossout-result label{width:100%;font-size:14px}.crossout-result input{width:min(180px,100%)}.crossout-result .secondary{padding:8px 12px}.crossout-feedback{font-size:var(--reading)}
}
@media(max-width:420px){
 .crossout-sheet{padding:0 12px}.crossout-row{grid-template-columns:minmax(0,1fr);gap:10px}.crossout-picture{width:80px;height:80px;margin:auto}.crossout-picture img{height:78px}.crossout-step{text-align:center;font-size:14px}.crossout-result input{width:calc(100% - 55px)}.crossout-result label{width:auto}.crossout-source{justify-content:center}.crossout-result .secondary{margin-left:auto}
}
