/* av-craps.css — Craps (craps.html). Loaded after av-bj.css, which supplies the shared game layout (#main, #game-area, #stage,
   #bottom-zone, #sidebar, the chip row, the main button, the log). Shell tokens and Inter only. */
#cp-table{width:min(100%,640px);flex:1;min-height:0;display:flex;flex-direction:column;gap:10px}
.cp-hist{display:flex;gap:5px;min-height:24px;overflow:hidden}
.cp-pill{font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;color:var(--av-white);background:var(--av-raised)}
.cp-pill.seven{color:var(--av-loss)}
.cp-state{display:flex;align-items:center;justify-content:center;min-height:26px}
.cp-badge{font-weight:700;font-size:13px;padding:3px 12px;border-radius:999px;background:var(--av-raised);color:var(--av-white)}
.cp-badge.point{background:var(--av-accent-bg);color:var(--av-accent-soft)}
#cp-dz{flex:1;min-height:130px;max-height:300px}
.cp-total{font-size:44px;font-weight:800;color:var(--av-white);line-height:1;min-height:46px;letter-spacing:-1px;text-align:center}
.cp-verdict{min-height:46px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:var(--av-muted);text-align:center;line-height:1.2}
.cp-verdict.w{color:var(--av-win)}.cp-verdict.l{color:var(--av-loss)}
.cp-verdict small{font-size:13px;font-weight:600;color:var(--av-accent-soft);min-height:16px}

/* controls */
#cp-controls{display:flex;flex-direction:column;gap:8px}
.cp-spots{display:grid;gap:8px}
.cp-line{grid-template-columns:repeat(3,1fr)}
.cp-place{grid-template-columns:repeat(6,1fr);gap:6px}
.cp-sect{font-size:12px;font-weight:600;color:var(--av-muted);margin:0 0 -2px}
.cp-spot{position:relative;min-height:62px;border-radius:10px;border:1px solid var(--av-line);background:var(--av-panel);color:var(--av-white);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font:600 14px var(--av-font);transition:border-color .15s,background .15s,transform .08s;padding:2px}
.cp-place .cp-spot{min-height:56px;font-size:14px}
.cp-spot:hover:not(:disabled){border-color:var(--av-accent-soft)}.cp-spot:active:not(:disabled){transform:scale(.985)}
.cp-spot small{font-size:11.5px;font-weight:500;color:var(--av-muted)}
.cp-spot .amt{font-size:14px;font-weight:700;color:var(--av-accent-soft);min-height:18px}
.cp-spot.has{border-color:var(--av-accent);background:var(--av-accent-bg)}
.cp-spot.locked{opacity:.7;cursor:default}
.cp-spot.won{border-color:var(--av-win);background:var(--av-win-bg)}.cp-spot.won .amt{color:var(--av-win)}
.cp-spot.lost{border-color:var(--av-loss)}.cp-spot.lost .amt{color:var(--av-loss)}
.cp-spot.back .amt{color:var(--av-muted)}
.cp-spot.pt::after{content:"POINT";position:absolute;top:4px;right:5px;font-size:8px;font-weight:800;letter-spacing:.05em;color:var(--av-accent-soft)}
.cp-spot:disabled{cursor:default;opacity:.5}
.cp-bet-row{display:flex;align-items:center;justify-content:space-between;gap:8px}
.cp-bet-row .amt{font-size:24px;font-weight:700;color:var(--av-white)}.cp-bet-row .amt small{font-size:12px;font-weight:500;color:var(--av-muted);margin-left:4px}
.cp-tools{display:flex;gap:6px}
#cp-go{transition:transform .08s}#cp-go:active:not(:disabled){transform:scale(.985)}

@media(min-width:1280px) and (min-height:860px){#cp-table{width:min(100%,820px)}.cp-total{font-size:52px}#cp-dz{max-height:380px}}
@media(max-width:720px){
  #cp-table{gap:6px}
  .cp-total{display:none}
  .cp-verdict{min-height:36px;font-size:16px}
  .cp-spot{min-height:48px;font-size:13px}.cp-place .cp-spot{min-height:46px;font-size:13px}
  .cp-spot small{font-size:10.5px}
  .cp-state{min-height:22px}#cp-dz{min-height:116px}
  .cp-place .cp-spot.pt::after{top:2px;right:3px;font-size:6.5px}
  #cp-controls{gap:6px}
  #cp-controls .rule{display:none}
  #stage:has(#cp-table){padding-top:6px;padding-bottom:2px}
  #bottom-zone:has(#cp-controls){padding-top:6px;padding-bottom:8px}
}
