/* Word Search Solver — embeddable widget styles (self-contained, light-first). */
:root{
  --accent:#4f46e5; --border:#cdd1f0;
  --border-control: #7a7fb5; /* 3:1+ on all surfaces - WCAG 1.4.11 for controls */ --text:#14152e; --surface:#fff;
  --muted:#5a5f7a; --bg:#f7f8ff;
}
*{box-sizing:border-box}
html,body.lk-embed{margin:0;padding:0}
body.lk-embed{
  font-family:'Outfit',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  background:var(--bg); color:var(--text);
  padding:14px; max-width:560px; margin:0 auto;
}
.wss-embed-inputs{display:grid;grid-template-columns:1.4fr 1fr;gap:12px}
@media(max-width:460px){.wss-embed-inputs{grid-template-columns:1fr}}
.wss-field{display:flex;flex-direction:column;gap:5px}
.wss-field label{font-weight:600;font-size:.85rem}
.wss-field .hint{font-size:.72rem;color:var(--muted);font-weight:400}
textarea{width:100%;resize:vertical;padding:9px;border:1px solid var(--border-control, #7a7fb5);border-radius:9px;background:var(--surface);color:var(--text);font-size:.95rem;font-family:inherit}
#wss-grid{font-family:'JetBrains Mono',ui-monospace,monospace;letter-spacing:.24em;line-height:1.5;text-transform:uppercase}
.wss-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.wss-actions button{cursor:pointer;font:inherit;font-size:.85rem;font-weight:600;border-radius:8px;padding:8px 13px;border:1px solid var(--border);background:var(--surface);color:var(--text)}
.wss-actions .btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}
.wss-actions .btn-toggle[aria-pressed="true"]{background:color-mix(in srgb,var(--accent) 16%,#fff);border-color:var(--accent)}
.wss-message{font-size:.85rem;min-height:1.1em;margin:8px 0}
.wss-message.err{color:#b3261e;font-weight:600}
.wss-message.warn{color:#8a5a00}
#wss-output{margin-top:12px}
#wss-summary{font-weight:600;margin:0 0 10px;text-align:center;font-size:.9rem}
.wss-stage{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;justify-content:center}
#wss-board{max-width:min(360px,88vw)}
.ws-grid{display:grid;gap:0;border:2px solid var(--accent);border-radius:8px;overflow:hidden}
.ws-cell{display:flex;align-items:center;justify-content:center;aspect-ratio:1;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:600;font-size:clamp(.7rem,2.4vw,1rem);border:.5px solid var(--border);color:var(--text);background:var(--surface)}
.ws-cell.hi{background:color-mix(in srgb,var(--hi) 26%,transparent);outline:2px solid var(--hi);outline-offset:-2px;font-weight:700}
.wss-results{list-style:none;padding:0;margin:0;display:grid;gap:5px;min-width:190px}
.wss-result{display:flex;align-items:center;gap:9px;padding:5px 9px;border-radius:8px;border:1px solid var(--border);background:var(--surface);cursor:pointer;font-size:.85rem}
.wss-result.is-missing{opacity:.6;cursor:default}
.wss-swatch{width:13px;height:13px;border-radius:4px;background:var(--hi,#ccc);flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.75rem;font-weight:700}
.wss-swatch.is-x{background:#b9bccc}
.wss-word{font-weight:600}
.wss-meta{margin-left:auto;font-size:.72rem;color:var(--muted);font-family:'JetBrains Mono',ui-monospace,monospace}
.embed-attrib{display:inline-block;margin-top:14px;font-size:.78rem;color:var(--accent);text-decoration:none;font-weight:600;opacity:.85}
.embed-attrib:hover{opacity:1;text-decoration:underline}
