.sw-root{--ssv-sw-hit:#b8323a;--ssv-sw-near:#2b6390;--ssv-sw-miss:#666a80;--ssv-sw-blank:#f4f8ff;--sw-ink:#2a1f2d;--sw-cream:#fff7ee;min-width:0;max-width:100%}.sw-root :is(button,a,input){min-width:44px;min-height:44px}.sw-root.adv-panel .sw-key{width:auto;min-width:0}.sw-root :is(.ssv-btn,a){white-space:normal;text-align:center;max-width:100%}.sw-root .adv-pip,.sw-root .adv-bubble,.sw-root .adv-cottage{min-width:0;max-width:100%}.sw-root .adv-bubble{overflow-wrap:anywhere}.sw-play{flex-direction:column;gap:.75rem;width:min(100%,26rem);margin-inline:auto;display:flex}.sw-grid{flex-direction:column;gap:6px;display:flex}.sw-row{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;display:grid}.sw-cell{aspect-ratio:1;border:3px solid var(--sw-ink);background:var(--ssv-sw-blank);color:var(--sw-ink);-webkit-user-select:none;user-select:none;place-items:center;display:grid;position:relative;overflow:hidden}.sw-cell--blank{border-radius:50%}.sw-cell--hit{background:var(--ssv-sw-hit);color:var(--sw-cream);border-radius:50%}.sw-cell--hit:before{content:"";z-index:2;border:3px solid var(--sw-ink);background:0 0;border-radius:40%;width:20%;height:14%;position:absolute;top:6%;left:50%;transform:translate(-50%)}.sw-cell--hit:after{content:"";z-index:2;background:var(--sw-cream);clip-path:polygon(50% 0%,62% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,38% 35%);width:20%;height:20%;position:absolute;top:12%;right:10%}.sw-cell--near{background:var(--ssv-sw-near);color:var(--sw-cream);border-radius:46% 54% 48% 52%/42% 48% 58% 52%}.sw-cell--near:before{content:"";border:2px solid var(--sw-cream);border-radius:inherit;pointer-events:none;position:absolute;inset:16%}.sw-cell--miss{background-color:var(--ssv-sw-miss);color:var(--sw-cream);clip-path:polygon(25% 0%,75% 0%,100% 50%,75% 100%,25% 100%,0% 50%);background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><polygon points='25,3 75,3 97,50 75,97 25,97 3,50' fill='%23666A80' stroke='%232A1F2D' stroke-width='6' stroke-dasharray='8 5' stroke-linejoin='round'/></svg>");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border:0;transform:translateY(2px)}.sw-letter{z-index:3;font-family:var(--font-display), ui-rounded, "Nunito", system-ui, sans-serif;font-size:clamp(1.15rem,6vw,2rem);font-weight:700;line-height:1;position:relative}.sw-cell--hit .sw-letter{transform:translateY(6%)}.sw-frost{z-index:5;pointer-events:none;background:radial-gradient(circle at 32% 28%,#fff7ee 0%,#f4f8ff 46%,#c9d6ee 100%);position:absolute;inset:0}.sw-reveal .sw-frost{animation:.6s linear both sw-wipe;animation-delay:calc(var(--i) * .25s)}.sw-keys{flex-direction:column;gap:4px;width:calc(100% + 1rem);min-width:0;margin-inline:-.5rem;display:flex}.sw-key-row{gap:4px;width:100%;min-width:0;display:flex}.sw-key-half{flex:1 1 0;min-width:0}.sw-key{border:3px solid var(--sw-ink);background:var(--ssv-sw-blank);min-width:0;height:44px;min-height:44px;color:var(--sw-ink);font-family:var(--font-display), ui-rounded, "Nunito", system-ui, sans-serif;font-size:var(--adv-size-key,18px);touch-action:manipulation;border-radius:10px;flex:2 1 0;place-items:center;padding:8px 0 0;font-weight:700;line-height:1;display:grid;position:relative}.sw-key-wide{font-size:var(--adv-size-key-wide,16px);flex:3 1 0;padding:0 1px}.sw-key--hit{background:var(--ssv-sw-hit);color:var(--sw-cream)}.sw-key--near{background:var(--ssv-sw-near);color:var(--sw-cream)}.sw-key--miss{background:var(--ssv-sw-miss);color:var(--sw-cream)}.sw-key:disabled{cursor:default}.sw-key:focus-visible{outline-offset:2px;outline:3px solid #2f6db5}.sw-glyph{font-size:var(--adv-size-glyph,12px);line-height:1;position:absolute;top:2px;right:2px}.sw-root .adv-share{white-space:pre-line;overflow-wrap:anywhere;max-width:100%}.sw-share-preview{flex-direction:column;gap:2px;display:flex}.sw-share-row{gap:1px;margin:0;line-height:1.2;display:flex}.sw-share-miss{background:var(--ssv-sw-miss);border-radius:2px;width:.72em;height:.72em;margin:.12em .08em;display:inline-block}.sw-root .adv-guess{width:100%;max-width:100%;scroll-margin-block:1.25rem;font-size:16px}@keyframes sw-wipe{0%,20%{transform:translate(0)}to{transform:translate(105%)}}@keyframes sw-fade{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.sw-reveal .sw-frost{animation-name:sw-fade;animation-duration:.3s;animation-delay:0s}}
