.wf-tool{max-width:920px;margin:auto}.wf-card{border:1px solid var(--line);background:var(--surface);border-radius:1.1rem;padding:clamp(1rem,3vw,2rem);scroll-margin-top:calc(8px - 2rem)}.wf-card h2{margin:.3rem 0 1rem;font-size:clamp(1.5rem,3vw,2.1rem)}.wf-card p{line-height:1.65}.wf-eyebrow{letter-spacing:.15em;color:var(--focus);font-size:.8rem;font-weight:800}.wf-rule{border-left:3px solid var(--focus);background:var(--surface-muted);border-radius:.5rem;padding:1rem}.wf-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.wf-tool label{gap:.4rem;font-size:.9rem;font-weight:650;display:grid}.wf-tool input,.wf-tool select{border:1px solid var(--line);min-height:48px;color:var(--ink);background:var(--surface-muted);font:inherit;border-radius:.6rem;width:100%;padding:.65rem}.wf-check{align-items:center;min-height:44px;margin:1rem 0;display:flex!important}.wf-check input{width:20px;height:20px;min-height:20px}.wf-names{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:1rem;display:grid}.wf-start{width:100%;margin-top:1rem}.wf-arena{color:#e5f1f2;background:#15232f;border:1px solid #345568;border-radius:1.1rem;padding:1rem;scroll-margin-top:calc(8px - 2rem);position:relative;box-shadow:0 12px 38px #0a263422}.wf-toolbar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.6rem;display:flex}.wf-toolbar strong{overflow-wrap:anywhere}.wf-toolbar>div{gap:.5rem;display:flex}.wf-toolbar button,.wf-freeze{color:#e5f1f2;cursor:pointer;min-height:44px;font:inherit;background:#213b49;border:1px solid #497082;border-radius:.6rem;padding:.5rem .8rem}.wf-restart{min-width:44px}.wf-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin-bottom:.5rem;display:grid}.wf-stats>div{background:#10212d;border:1px solid #304c60;border-radius:.55rem;gap:.2rem;padding:.4rem .7rem;display:grid}.wf-stats span{color:#b5ccd7;font-size:.7rem}.wf-stats strong{font:750 1.2rem ui-monospace,monospace}.wf-wave-progress{background:#1a3342;border-radius:4px;height:20px;margin-bottom:.6rem;position:relative;overflow:hidden}.wf-wave-progress i{background:#345e61;height:100%;display:block}.wf-wave-progress span{text-align:center;z-index:1;color:#e8f9ef;font-size:.72rem;line-height:20px;position:absolute;inset:0}.wf-board{height:clamp(120px, calc(var(--wf-vh,800px) - 310px), 360px);background-color:#0000;background-image:linear-gradient(#28425644 1px,#0000 1px),linear-gradient(90deg,#28425644 1px,#0000 1px);background-position:0 0;background-repeat:repeat;background-size:32px 32px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border:1px solid #37576d;border-radius:.6rem;position:relative;overflow:hidden}.wf-tile{color:#e8f5fa;white-space:nowrap;background:linear-gradient(#294555,#1d3544);border:1px solid #7bb1bb;border-radius:.45rem;max-width:32%;padding:.35rem .5rem;font:700 clamp(.65rem,2.4vw,1.05rem)/1.3 ui-monospace,monospace;transition:top 50ms linear;position:absolute;transform:translate(-50%);box-shadow:0 3px #07151c66}.wf-selected{z-index:2;background:linear-gradient(#304e44,#1d3d3d);border-color:#b7ed9e;box-shadow:0 0 0 1px #b7ed9e55,0 3px #07151c66}.wf-tile>span{color:#b7ed9e}.wf-danger{border-color:#f6b990}.wf-base{background:#f3ad85;height:4px;position:absolute;bottom:0;left:0;right:0}.wf-overlay{z-index:3;text-align:center;background:#0c1f2def;flex-direction:column;justify-content:center;align-items:center;padding:1rem;display:flex;position:absolute;inset:0}.wf-overlay h3{margin:0 0 .5rem;font-size:1.3rem}.wf-overlay p{max-width:45ch;font-size:.85rem;line-height:1.5}.wf-overlay .button{color:#142d26;background:#b7ed9e;border-color:#b7ed9e}.wf-input-label{margin-top:.6rem}.wf-input-label input{color:#f3faf6;caret-color:#b7ed9e;background:#0d202c;border-color:#6b97a6;min-height:50px;font-family:ui-monospace,monospace;font-size:1.15rem}.wf-actions{justify-content:space-between;align-items:center;gap:.6rem;margin-top:.6rem;font-size:.85rem;display:flex}.wf-freeze{background:#2b465b;border-color:#749db8;font-size:.82rem}.wf-arena button:disabled{opacity:.45;cursor:default}.wf-hint{color:var(--muted);font-size:.8rem;line-height:1.5}.wf-arena .wf-hint{color:#b9d0dc;margin:.6rem 0 0}.wf-message{color:#f5bf9b;margin:.5rem 0 0;font-size:.8rem;line-height:1.5}.wf-message:empty{display:none}.wf-confirm{z-index:5;background:var(--surface);color:var(--ink);border:2px solid var(--focus);border-radius:.8rem;padding:1.5rem;position:absolute;inset:25% 1rem auto;box-shadow:0 10px 60px #0008}.wf-confirm h3{margin:0 0 1rem}.wf-confirm .button{margin-right:.5rem}.wf-results{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;display:grid}.wf-results>div{background:var(--surface-muted);border:1px solid var(--line);border-radius:.6rem;gap:.4rem;padding:.8rem;display:grid}.wf-results span{color:var(--muted);font-size:.78rem}.wf-results strong{color:var(--focus);font-size:1.25rem}.wf-ranking{padding:0;list-style:none}.wf-ranking li{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:.5rem;justify-content:space-between;gap:1rem;margin:.4rem 0;padding:.7rem;display:flex}.wf-result-actions{flex-wrap:wrap;gap:.6rem;display:flex}.wf-card summary{cursor:pointer;min-height:44px;padding:.7rem 0;font-weight:650}.wf-tool :is(button,input,select,summary):focus-visible,.wf-card:focus-visible{outline:3px solid var(--focus);outline-offset:3px}@media (max-width:600px){.wf-options{grid-template-columns:1fr}.wf-arena{padding:.65rem}.wf-toolbar{font-size:.85rem}.wf-stats>div{padding:.35rem .4rem}.wf-stats strong{font-size:1rem}.wf-stats span{font-size:.65rem}.wf-board{height:clamp(80px, calc(var(--wf-vh,800px) - 350px), 340px)}.wf-results{grid-template-columns:repeat(2,minmax(0,1fr))}.wf-result-actions>.button{width:100%}.wf-actions{font-size:.75rem}.wf-input-label{font-size:.78rem}.wf-hint{font-size:.75rem}.wf-tile{max-width:32%;padding:.3rem .35rem;font-size:clamp(.6rem,2.3vw,.9rem)}}@media (prefers-reduced-motion:reduce){.wf-tile{transition:none}}.wf-tool{--wf-tile-height:36px}.wf-tile{height:var(--wf-tile-height);justify-content:center;align-items:center;display:flex}@media (max-width:600px){.wf-tool{--wf-tile-height:30px}}.wf-arena:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.wf-tool[data-compact=true] .wf-overlay{padding:.35rem}.wf-tool[data-compact=true] .wf-overlay p{display:none}.wf-tool[data-compact=true] .wf-overlay h3{margin:0 0 .3rem;font-size:1rem;line-height:1.2}
