.reasoning-label{margin:0 0 1rem;color:var(--text,#f3f1ed);font-size:1.05rem;text-align:center}
.reasoning-hint{margin:1.1rem auto 0;max-width:48ch;color:var(--muted,#b2b2c3);font-size:.86rem;line-height:1.6;text-align:center}
.reasoning-shape-prompt{display:flex;align-items:center;flex-direction:column;gap:.5rem;padding:.75rem 0 1.5rem}
.reasoning-shape-svg{display:block;width:100%;height:100%;max-width:130px;max-height:130px;fill:var(--lavender,#b9a8ed)}
.reasoning-shape-prompt>.reasoning-shape-svg{width:120px;height:120px;fill:var(--mint,#b9eedb)}
.reasoning-shape-options,.reasoning-number-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;max-width:650px;margin:0 auto}
.reasoning-shape-option,.reasoning-number-option{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:138px;padding:1.7rem .75rem .75rem;border:1px solid #555969;border-radius:10px;background:#1b1e29;color:var(--text,#f3f1ed);cursor:pointer;transition:background .15s,border-color .15s}
.reasoning-shape-option:hover,.reasoning-number-option:hover{background:#272b38;border-color:var(--lavender,#b9a8ed)}
.reasoning-shape-option:focus-visible,.reasoning-number-option:focus-visible,.reasoning-route-cell:focus-visible,.reasoning-route-grid:focus-visible,.reasoning-route-controls button:focus-visible{outline:3px solid var(--mint,#b9eedb);outline-offset:4px}
.reasoning-option-index{position:absolute;top:.55rem;left:.65rem;font-size:.75rem;color:#c5c2d0;font-variant-numeric:tabular-nums}
.reasoning-shape-option>.reasoning-shape-svg{height:95px}
.reasoning-number-sequence{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(.5rem,2vw,1.25rem);padding:1.5rem 0 2rem;margin:0;list-style:none;font-size:clamp(1.35rem,3.6vw,2.15rem);font-variant-numeric:tabular-nums}
.reasoning-number-sequence li{display:flex;align-items:center;gap:clamp(.5rem,2vw,1.25rem)}
.reasoning-number-sequence li+li::before{content:",";color:#818394;font-size:1.3rem;align-self:flex-end}
.reasoning-number-unknown{color:var(--mint,#b9eedb)}
.reasoning-number-option{min-height:100px}
.reasoning-number-value{font-size:1.65rem;font-variant-numeric:tabular-nums}
.reasoning-route-summary{display:flex;justify-content:space-between;gap:1rem;max-width:360px;margin:0 auto 1rem;color:var(--muted,#b2b2c3);font-size:.85rem;font-variant-numeric:tabular-nums}
.reasoning-route-summary .is-visited{color:var(--mint,#b9eedb)}
.reasoning-route-grid{display:grid;grid-template-columns:repeat(var(--route-size),minmax(0,1fr));gap:6px;width:min(100%,360px);margin:0 auto;padding:3px;border-radius:4px}
.reasoning-route-cell{display:flex;align-items:center;justify-content:center;aspect-ratio:1;border:1px solid #5a5e70;border-radius:5px;background:#242836;color:#dedbe9;font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;font-variant-numeric:tabular-nums}
.reasoning-route-cell:hover:not(:disabled){border-color:var(--mint,#b9eedb);background:#323a42}
.reasoning-route-cell:disabled{border-color:#252834;background:repeating-linear-gradient(135deg,#1b1e27 0 3px,#252832 3px 4px);cursor:default;opacity:.8}
.reasoning-route-cell.is-visited{background:#37584f;border-color:#85b5a3;color:#edf8f2}
.reasoning-route-cell.is-current{background:var(--mint,#b9eedb);border-color:#ecfff7;color:#14251f;box-shadow:inset 0 0 0 2px #14251f}
.reasoning-route-feedback{min-height:2.5em;max-width:45ch;margin:.9rem auto;color:var(--muted,#b2b2c3);font-size:.85rem;line-height:1.5;text-align:center}
.reasoning-route-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem}
.reasoning-route-controls button{min-height:44px;padding:.65rem 1rem;border:1px solid #575a6a;border-radius:6px;font:inherit;font-size:.9rem;cursor:pointer}
.reasoning-route-secondary{background:transparent;color:var(--text,#f3f1ed)}
.reasoning-route-submit{background:var(--mint,#b9eedb);color:#14251f}
.reasoning-route-controls button:disabled{opacity:.4;cursor:default}
@media(max-width:480px){.reasoning-shape-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;max-width:330px}.reasoning-shape-option{min-height:128px}.reasoning-number-options{grid-template-columns:repeat(2,minmax(0,1fr))}.reasoning-number-option{min-height:82px}.reasoning-shape-prompt{padding-bottom:1rem}.reasoning-shape-prompt>.reasoning-shape-svg{height:95px;width:95px}.reasoning-route-grid{width:min(100%,310px)}}
@media(prefers-reduced-motion:reduce){.reasoning-shape-option,.reasoning-number-option{transition:none}}
