*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}:root{--bg:#0a0a0a;--border:#1a1a1a;--text:#888;--dim:#444;--red:#c41;--red-hot:#f52;--white:#e8e8e8}html{background:var(--bg)}body{background:var(--bg);color:var(--text);font-family:ibm plex mono,courier new,monospace;min-height:100vh;-webkit-font-smoothing:antialiased}header{text-align:center;padding:3rem 1rem 1.5rem}h1{font-family:bebas neue,arial narrow,sans-serif;font-size:clamp(5rem,15vw,10rem);color:var(--white);line-height:.85;letter-spacing:.02em}.subtitle{font-size:clamp(.65rem,1.5vw,.85rem);color:var(--red);text-transform:uppercase;letter-spacing:.5em;margin-top:.75rem;font-weight:600}.bar{height:3px;background:var(--red)}.search-wrap{padding:1.5rem 1rem;max-width:480px;margin:0 auto}#search{width:100%;background:0 0;border:2px solid var(--border);color:var(--white);font-family:inherit;font-size:1rem;padding:.7rem 1rem;outline:none;letter-spacing:.05em}#search:focus{border-color:var(--red)}#search::placeholder{color:var(--dim);letter-spacing:.1em}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1px;background:var(--border)}.card{background:var(--bg);padding:1.2rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.4rem;user-select:none}.card:hover{background:#0d0d0d}.card.active{box-shadow:inset 3px 0 0 var(--red)}.card-name{font-size:.6rem;text-transform:uppercase;letter-spacing:.18em;color:var(--dim);text-align:center;font-weight:600;line-height:1.4}.card-count{font-family:bebas neue,arial narrow,sans-serif;font-size:3.5rem;color:var(--white);line-height:1}.card-count.pulse{animation:pulse .15s ease-out}@keyframes pulse{0%{transform:scale(1)}40%{transform:scale(1.35)}100%{transform:scale(1)}}.actions{display:flex;gap:.4rem;margin-top:.2rem}.btn{font-family:inherit;font-size:1.1rem;font-weight:700;border:none;cursor:pointer;width:44px;height:44px;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.btn:active{transform:scale(.92)}.btn-add{background:var(--red);color:var(--white)}.btn-add:hover{background:var(--red-hot)}.btn-sub{background:#151515;color:var(--dim);border:1px solid var(--border)}.btn-sub:hover{color:var(--text);border-color:#333}.hidden{display:none!important}