.parchment.board{--per-row:13;--tile-gap:clamp(8px,.85vw,16px);--chip:clamp(34px,3.3vw,64px);max-width:100%;margin:0 auto;padding:34px 22px 44px}.board-head{text-align:center;position:relative}.board-head .title{margin-inline:auto}.board-head .sub{max-width:64ch;margin-inline:auto}.count{font:400 14px var(--font-eyebrow);letter-spacing:.06em;color:var(--ink-eyebrow);white-space:nowrap;background:#ffffff8c;border-radius:999px;padding:6px 12px;position:absolute;top:0;right:0;box-shadow:0 0 0 1px #785f2838}.rows{gap:var(--tile-gap);flex-direction:column;align-items:stretch;margin:26px 0 6px;display:flex}.row{gap:var(--tile-gap);flex-wrap:wrap;justify-content:center;display:flex}.tile{width:calc((100% - (var(--per-row) - 1) * var(--tile-gap)) / var(--per-row));background:linear-gradient(180deg,var(--parchment-hi),#efe6c8);max-width:132px;box-shadow:0 0 0 1px #785f2840,0 0 18px -4px var(--glow);border-radius:8px;flex-direction:column;align-items:center;gap:6px;padding:7px 5px 5px;transition:box-shadow .3s,transform .3s;display:flex}.tile img{aspect-ratio:1;object-fit:contain;pointer-events:none;width:72%;height:auto}.tile.armed-target{cursor:pointer}.slot{width:calc(var(--chip) + 8px);height:calc(var(--chip) + 6px);border:1.5px dashed #785f2873;border-radius:6px;justify-content:center;align-items:center;transition:background .2s,border-color .2s;display:flex}.slot.over{border-color:var(--gold-hot);background:color-mix(in srgb,var(--glow) 50%,transparent)}.slot.armed-target{border-color:var(--gold)}.tile.on{box-shadow:0 0 0 1.5px var(--gold),0 0 22px -2px color-mix(in srgb,var(--gold-hot) 95%,transparent)}.tile.on .slot{background:var(--glow);border:none}.tile.flare{animation:.6s ease-out both flare}@keyframes flare{0%{box-shadow:0 0 0 1.5px var(--gold),0 0 22px -2px var(--gold-hot)}40%{box-shadow:0 0 0 3px var(--gold-hot),0 0 46px 6px var(--glow);transform:scale(1.08)}to{box-shadow:0 0 0 1.5px var(--gold),0 0 22px -2px var(--gold-hot);transform:none}}.tile.ripple{animation:.5s ease-in-out both ripple}@keyframes ripple{50%{transform:translateY(-4px)}}.chip{width:var(--chip);height:var(--chip);color:#2b1b0c;text-shadow:0 1px #ffffff47;font:400 calc(var(--chip) * .54) var(--font-display);touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;background:#b98247 url(/art/wood-256.webp) 50%/104% no-repeat;border:none;border-radius:6px;justify-content:center;align-items:center;display:flex;box-shadow:0 2px 5px -1px #281905a6,0 0 0 1px #50320f59}.chip.lift{box-shadow:0 12px 20px -6px #0000008c,0 0 0 1.5px var(--gold),0 0 20px -2px var(--glow);cursor:grabbing;z-index:5;position:relative;transform:scale(1.12)rotate(-5deg)}.chip:disabled{cursor:default}.chip[data-letter=Q]{padding-right:.69em}.chip-socket{width:var(--chip);height:var(--chip);background:#785f280f;border-radius:6px;box-shadow:inset 0 0 0 1px #785f2821}.chip.armed{box-shadow:0 0 0 2px var(--gold-hot),0 0 16px var(--glow)}.tray{grid-template-columns:repeat(var(--per-row),1fr);justify-items:center;gap:var(--tile-gap);min-height:calc(var(--chip) * 2 + var(--tile-gap));z-index:2;border-top:1px solid #785f2840;justify-content:center;margin-top:20px;padding:18px 10px 8px;display:grid;position:relative}.tray.over{background:color-mix(in srgb,var(--parchment),var(--glow) 30%);border-radius:8px}.tray.armed-target{cursor:pointer}.foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.foot-actions{flex-wrap:wrap;gap:8px;display:flex}.left{font:400 14px var(--font-eyebrow);color:var(--ink-eyebrow);letter-spacing:.06em}.parchment.card{z-index:10;text-align:center;width:max-content;max-width:min(420px,100vw - 32px);padding:18px 24px;animation:.35s ease-out rise;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}@keyframes rise{0%{opacity:0;transform:translate(-50%,24px)}to{opacity:1;transform:translate(-50%)}}.card .big{font:400 28px var(--font-display);margin:0 0 4px}.card .body{margin:0 0 12px}.card .actions{justify-content:center;gap:8px;display:flex}@media (max-width:600px){.parchment.board{--per-row:5;--tile-gap:7px;--chip:38px;padding:26px 14px 80px}.tray{flex-wrap:wrap;display:flex}.rows{gap:9px}.tile{gap:5px;padding:6px 4px 4px}.count{margin-top:12px;display:inline-block;position:static}.tray{background:var(--parchment) url(/art/parchment-800.webp) center/cover;position:sticky;bottom:0}}
