.solver-hero-stage{padding:.5rem 0 1rem}.solver-card{background:hsl(var(--bg-surface-1));border:1px solid hsl(var(--border-subtle));border-radius:20px;padding:clamp(1rem,2.5vw,2rem);box-shadow:var(--shadow-tile)}.solver-header{text-align:center;margin-bottom:1rem}.solver-badge{display:inline-block;padding:.2rem .65rem;background:hsl(var(--bg-elevated));border:1px solid hsl(var(--border-subtle));border-radius:9999px;font-size:.72rem;font-weight:700;color:hsl(var(--primary));letter-spacing:var(--tracking-wide);margin-bottom:.35rem}.solver-title{font-size:var(--text-h2);margin-top:.15rem;margin-bottom:.15rem}.solver-sub{font-size:.9rem;color:hsl(var(--text-secondary));margin-bottom:0}.input-cluster{display:flex;gap:.75rem;margin:1rem 0 .75rem}@media(max-width:640px){.solver-hero-stage{padding:0}.solver-card{padding:.5rem;border-radius:12px}.solver-header{display:none}.input-cluster{margin:.25rem 0}}.input-wrapper{position:relative;flex:1}.letter-input{width:100%;height:56px;padding:0 45px 0 1.25rem;border-radius:12px;border:2px solid hsl(var(--border-subtle));background:hsl(var(--bg-elevated));font-family:var(--font-display);font-size:1.25rem;font-weight:800;color:hsl(var(--text-primary));text-transform:uppercase;letter-spacing:.1em}.letter-input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 4px hsl(var(--primary) / .15)}.btn-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:transparent;border:none;font-size:1.1rem;color:hsl(var(--text-muted));cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.btn-search{padding:0 1.75rem;height:56px;font-size:1rem;white-space:nowrap;flex-shrink:0}.controls-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid hsl(var(--border-subtle))}.control-group{display:flex;align-items:center;gap:.65rem}.control-label{font-size:.85rem;font-weight:600;color:hsl(var(--text-secondary))}.blank-stepper,.sort-segmented{display:inline-flex;background:hsl(var(--bg-surface-2));border-radius:8px;padding:2px;border:1px solid hsl(var(--border-subtle))}.stepper-btn,.sort-btn{padding:.35rem .75rem;border:none;background:transparent;font-weight:700;font-size:.85rem;color:hsl(var(--text-secondary));cursor:pointer;border-radius:6px;transition:all var(--duration-fast) ease}.stepper-btn.active,.sort-btn.active{background:hsl(var(--bg-elevated));color:hsl(var(--primary));box-shadow:var(--shadow-sm)}.tile-rack-preview{display:flex;flex-wrap:wrap;gap:.4rem;min-height:50px;align-items:center;justify-content:center;margin-bottom:1rem}.filter-pills-row{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;margin-bottom:1.5rem}.filter-pill{padding:.35rem .85rem;border-radius:9999px;border:1px solid hsl(var(--border-subtle));background:hsl(var(--bg-elevated));font-size:.8rem;font-weight:600;color:hsl(var(--text-secondary));cursor:pointer;white-space:nowrap;min-height:36px}.filter-pill.active{background:hsl(var(--primary));color:hsl(var(--text-inverted));border-color:hsl(var(--primary))}.results-stage{background:hsl(var(--bg-canvas));border:1px solid hsl(var(--border-subtle));border-radius:14px;padding:1.25rem}.results-summary{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding-bottom:.85rem;border-bottom:1px solid hsl(var(--border-subtle));font-size:.9rem;font-weight:700;color:hsl(var(--text-primary))}.summary-top{color:hsl(var(--primary))}.shelf-group{margin-top:1.25rem}.shelf-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.65rem}.shelf-title{font-family:var(--font-display);font-weight:700;font-size:.95rem;color:hsl(var(--text-primary))}.bingo-badge{font-size:.7rem;font-weight:800;background:hsl(var(--accent));color:#fff;padding:.15rem .5rem;border-radius:4px;letter-spacing:.05em}.shelf-tiles-grid{display:flex;flex-wrap:wrap;gap:.5rem}.word-card{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .75rem;background:hsl(var(--bg-elevated));border:1px solid hsl(var(--border-subtle));border-radius:8px;cursor:pointer;box-shadow:var(--shadow-sm);min-height:42px;transition:transform .15s ease,border-color .15s ease,background-color .15s ease}.word-card:hover{transform:translateY(-2px);border-color:hsl(var(--primary))}.word-card.copied{background:hsl(var(--accent) / .15);border-color:hsl(var(--accent))}.word-text{font-family:var(--font-display);font-weight:700;font-size:.95rem;color:hsl(var(--text-primary));text-transform:uppercase}.word-points{font-family:var(--font-mono);font-size:.75rem;font-weight:700;color:hsl(var(--text-muted));background:hsl(var(--bg-surface-2));padding:.1rem .35rem;border-radius:4px}.word-blank-hint{font-size:.7rem;font-weight:800;color:hsl(var(--primary))}.no-matches{padding:1.5rem;text-align:center;color:hsl(var(--text-secondary));font-size:.95rem}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media(max-width:680px){.input-cluster{flex-direction:column}.btn-search{width:100%}}.embed-modal-dialog{border:none;border-radius:20px;padding:0;background:transparent;max-width:540px;width:90vw;box-shadow:0 20px 40px #00000040}.embed-modal-dialog::backdrop{background:#00000080;backdrop-filter:blur(4px)}.embed-modal-card{background:hsl(var(--bg-surface-1));border:1px solid hsl(var(--border-subtle));border-radius:20px;padding:1.5rem}.embed-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.embed-modal-title{font-size:1.15rem;font-weight:800;margin:0;color:hsl(var(--text-primary))}.btn-close-modal{background:transparent;border:1px solid hsl(var(--border-subtle));border-radius:8px;cursor:pointer;padding:.25rem .5rem;font-size:1rem;color:hsl(var(--text-secondary))}.embed-modal-desc{font-size:.85rem;color:hsl(var(--text-secondary));margin-bottom:1rem;line-height:1.4}.embed-snippet-box{width:100%;font-family:var(--font-mono);font-size:.75rem;padding:.75rem;border-radius:8px;border:1px solid hsl(var(--border-subtle));background:hsl(var(--bg-surface-2));color:hsl(var(--text-primary));resize:none;box-sizing:border-box}.btn-copy-snippet{margin-top:.75rem;width:100%}.copy-feedback-msg{display:block;text-align:center;font-size:.8rem;color:hsl(var(--primary));font-weight:700;margin-top:.5rem;min-height:1.2rem}
