.wsg{padding:clamp(.9rem,2.5vw,1.5rem)}.wsg-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(15rem,1fr);gap:clamp(1rem,3vw,2rem);align-items:start}@media(max-width:52rem){.wsg-layout{grid-template-columns:1fr}}.wsg-grid{display:grid;grid-template-columns:repeat(var(--size, 10),1fr);gap:.22rem;touch-action:none;user-select:none;-webkit-user-select:none}.wsg-grid .cell{position:relative;aspect-ratio:1;inline-size:100%;display:grid;place-items:center;background:var(--tile-face);border:1px solid var(--line);border-radius:.35rem;box-shadow:0 2px 0 var(--tile-edge);font-family:var(--font-display);font-weight:700;font-size:clamp(.72rem,2vw,1.05rem);color:var(--ink);cursor:pointer;padding:0;transition:transform 90ms ease,background-color .11s ease}.wsg-grid .cell:hover{transform:translateY(-1px)}.wsg-grid .cell.is-sel{background:var(--bg-sunken);border-color:var(--ink-soft);transform:translateY(1px);box-shadow:0 1px 0 var(--tile-edge)}.wsg-grid .cell.is-nope{animation:wsg-shake .3s ease}.wsg-grid .cell.is-found{color:#fffdf7;animation:tile-pop .32s ease}.wsg-grid .cell.f0{background:var(--teal);border-color:var(--teal);box-shadow:0 2px #00000040}.wsg-grid .cell.f1{background:var(--coral);border-color:var(--coral);box-shadow:0 2px #00000040}.wsg-grid .cell.f2{background:var(--gold);border-color:var(--gold);box-shadow:0 2px #00000040}.wsg-grid .cell.f3{background:var(--violet);border-color:var(--violet);box-shadow:0 2px #00000040}.wsg-grid .cell.f4{background:var(--sky);border-color:var(--sky);box-shadow:0 2px #00000040}.wsg-grid .cell.is-solved{outline:2px dashed var(--ink-soft);outline-offset:-2px;background:var(--bg-sunken)}.wsg .panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:.8rem}.wsg .panel-title{font-size:1.25rem;margin:0}.wsg .count{font-family:var(--font-display);font-weight:800;background:var(--violet-soft);color:var(--violet);border-radius:999px;padding:.1rem .7rem;font-size:.95rem}.wsg .bar{block-size:.45rem;background:var(--bg-sunken);border-radius:999px;margin-block:.7rem 1rem;overflow:hidden}.wsg .bar span{display:block;block-size:100%;inline-size:0%;background:linear-gradient(90deg,var(--teal),var(--violet));border-radius:999px;transition:inline-size .3s ease}.wsg .chips{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:.35rem .8rem}.wsg .chips .chip{display:flex;align-items:center;gap:.5rem;font-size:.98rem;padding-block:.15rem}.wsg .chips .ring{inline-size:.6rem;block-size:.6rem;border:2px solid var(--line);border-radius:50%;flex-shrink:0}.wsg .chips .chip.is-done{color:var(--ink-soft);text-decoration:line-through}.wsg .chips .chip.is-done .ring,.wsg .chips .chip.is-solved .ring{border-color:transparent}.wsg .chips .chip.f0 .ring{background:var(--teal)}.wsg .chips .chip.f1 .ring{background:var(--coral)}.wsg .chips .chip.f2 .ring{background:var(--gold)}.wsg .chips .chip.f3 .ring{background:var(--violet)}.wsg .chips .chip.f4 .ring{background:var(--sky)}.wsg .chips .chip.is-solved{color:var(--ink-soft)}.wsg .chips .chip.is-solved .ring{background:var(--ink-soft)}.wsg .meta{display:flex;justify-content:space-between;gap:1rem;margin:1rem 0 0;font-family:var(--font-display);font-weight:700;color:var(--ink-soft);font-size:.95rem}.wsg .status{margin:.6rem 0 0;color:var(--ink-soft);font-size:.92rem;min-block-size:2.8em}.wsg .win{margin-top:1rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-sunken)}.wsg .win p{font-family:var(--font-display);font-weight:700;margin:0 0 .8rem}.wsg .win-actions{display:flex;flex-wrap:wrap;gap:.5rem}.wsg .win-actions .btn{font-size:.9rem;padding:.5rem 1rem}@keyframes wsg-shake{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}.wsg .print-head{display:none}@media print{.wsg{border:0;box-shadow:none;padding:0}.wsg .print-head{display:block;font-family:var(--font-display);font-weight:800;font-size:1.2rem;margin:0 0 1rem}.wsg-layout{grid-template-columns:1fr;gap:1.5rem}.wsg-grid{max-inline-size:16cm}.wsg-grid .cell{background:#fff!important;color:#000!important;border:1px solid #999!important;box-shadow:none!important;border-radius:0}.wsg .chips{grid-template-columns:repeat(3,1fr)}.wsg .chips .chip{color:#000;text-decoration:none}.wsg .chips .ring{background:none!important;border-color:#999!important}}.print-panel{margin-top:2rem;padding:0;max-width:46rem}.print-panel summary{cursor:pointer;padding:.9rem 1.3rem;font-family:var(--font-display);font-weight:700;font-size:1.05rem;list-style-position:inside}.print-panel summary:hover{background:var(--bg-sunken);border-radius:var(--radius)}.print-form{padding:.25rem 1.3rem 1.2rem;display:grid;gap:.7rem}.print-field{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.print-field>span{font-family:var(--font-display);font-weight:600;min-width:7.5rem}.print-field select,.print-field input[type=text]{font:inherit;padding:.3rem .6rem;border:1px solid var(--line);border-radius:8px;background:var(--bg-raised);color:var(--ink)}.print-field input[type=text]{flex:1 1 200px}.print-check{display:flex;align-items:center;gap:.6rem;cursor:pointer}.print-check input{width:1.1rem;height:1.1rem;accent-color:var(--teal)}.print-go{display:flex;align-items:center;gap:1rem;margin-top:.4rem;flex-wrap:wrap}.print-note{color:var(--ink-soft);font-style:italic}
