.rl-demo{background:var(--rl-card);color:var(--rl-ink);border:1.5px solid var(--rl-line);border-radius:18px;padding:16px;display:grid;gap:12px;width:min(100%,380px);justify-self:center;box-shadow:0 18px 40px -24px #1f332899;font-family:var(--rl-type)}.rl-top{display:flex;justify-content:space-between;align-items:center;font-size:13px;text-transform:uppercase;letter-spacing:.06em}.rl-pill{background:var(--rl-green);color:var(--rl-card);padding:3px 8px;border-radius:6px;font-size:11px}.rl-target{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px}.rl-target:before{content:"";width:10px;height:10px;background:var(--rl-purple);transform:rotate(45deg)}.rl-target output{margin-left:auto;font-variant-numeric:tabular-nums}.rl-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:3px;background:var(--rl-line);border:1.5px solid var(--rl-line);border-radius:8px;overflow:hidden}.rl-cell{aspect-ratio:1;display:grid;place-items:center;background:var(--rl-card);font-family:var(--rl-type);font-weight:700;font-size:clamp(13px,2.2vw,17px);color:var(--rl-ink);border:0;padding:0;cursor:pointer;transition:background .2s}.rl-cell:hover{background:#ece5d1}.rl-cell.found{background:var(--rl-purple-soft);color:#3d2d6b}.rl-cell.flash{animation:skin-pop .4s}.rl-msg{margin:0;font-size:13px;text-align:center;min-height:1.4em}.rl-msg button{background:none;border:0;padding:0;text-decoration:underline;cursor:pointer;color:inherit;font:inherit}.fr-demo{background:#fff;color:var(--fr-ink);border:2px solid var(--fr-ink);box-shadow:7px 7px 0 var(--fr-ink);padding:18px;display:grid;gap:14px;width:min(100%,420px);justify-self:center;font-family:var(--fr-body)}.fr-top{display:flex;justify-content:space-between;font-weight:700;font-size:13px;text-transform:uppercase}.fr-board{border:2px dashed var(--fr-ink);border-radius:10px;padding:14px;display:grid;gap:14px}.fr-slots,.fr-tiles{display:flex;flex-wrap:wrap;gap:8px;min-height:40px}.fr-slot{min-width:58px;height:38px;border-bottom:2px dashed #999;display:grid;place-items:center;padding-inline:8px;font-family:var(--fr-tile);font-weight:700}.fr-slot.filled{border:2px solid var(--fr-ink);border-radius:5px;background:var(--fr-yellow);animation:skin-pop .3s}.fr-tile{height:38px;padding-inline:12px;border:2px solid var(--fr-ink);border-radius:5px;background:#fff;box-shadow:0 3px 0 var(--fr-ink);font-family:var(--fr-tile);font-weight:700;font-size:15px;cursor:pointer;color:var(--fr-ink)}.fr-tile:hover{transform:translateY(-1px);box-shadow:0 4px 0 var(--fr-ink)}.fr-tile:active{transform:translateY(2px);box-shadow:0 1px 0 var(--fr-ink)}.fr-tile.used{visibility:hidden}.fr-tile.nope{animation:skin-shake .35s;background:#ffd9d4}.fr-msg{margin:0;font-weight:700;min-height:1.4em}.fr-msg button{background:var(--fr-blue);color:#fff;border:2px solid var(--fr-ink);padding:2px 10px;cursor:pointer;margin-left:6px;font:inherit}.fk-demo{background:var(--fk-paper);color:var(--fk-ink);border:2px solid var(--fk-line);border-radius:28px;padding:16px;display:grid;gap:10px;width:min(100%,360px);justify-self:center;font-family:var(--fk-type);box-shadow:0 24px 50px -28px #0b0b2b8c}.fk-hud{display:flex;justify-content:space-between;align-items:center;border:2px solid var(--fk-mint);border-radius:999px;padding:6px 14px;font-weight:600;font-size:14px}.fk-hud b{font-variant-numeric:tabular-nums}.fk-combo{background:var(--fk-green);color:#fff;border-radius:999px;padding:0 8px}[data-lives]{color:#e5484d;letter-spacing:2px}.fk-ring{width:100%;height:auto;display:block}.fk-band{fill:none;stroke:var(--fk-mint);stroke-width:54}.fk-sector{fill:var(--fk-green)}.fk-piece circle{fill:#fff;stroke:var(--fk-ink);stroke-width:2.5;transition:fill .2s}.fk-piece text,.fk-target-text{font-family:var(--fk-type);font-weight:600;text-anchor:middle;fill:var(--fk-ink)}.fk-piece text{font-size:17px}.fk-piece.hit circle{fill:var(--fk-mint)}.fk-piece.miss circle{fill:#ffd2d4}.fk-target{fill:#dffcf1;stroke:var(--fk-mint);stroke-width:6}.fk-target-text{font-size:44px}.fk-stop{height:52px;border-radius:999px;border:3px solid var(--fk-ink);background:#fff;color:var(--fk-ink);font-family:var(--fk-type);font-weight:700;font-size:20px;letter-spacing:.04em;cursor:pointer;box-shadow:0 4px 0 var(--fk-ink);touch-action:manipulation}.fk-stop:active,.fk-stop.pressed{transform:translateY(3px);box-shadow:0 1px 0 var(--fk-ink)}.fk-msg{margin:0;text-align:center;font-size:14px;min-height:2.6em}.fk-msg button{margin-left:6px;border:2px solid var(--fk-ink);border-radius:999px;background:var(--fk-mint);padding:1px 12px;font:inherit;font-weight:600;cursor:pointer}
