.vd-game-beverbende { --game-color:#b9772f; }
.bev-game,.bev-board { --bev-ink:#3d3226; --bev-cream:#fffaf0; --bev-teal:#2f7d7a; --bev-teal-dark:#245f5d; --bev-amber:#e7b25a; color:var(--bev-ink); width:100%; min-width:0; }
.bev-game { max-width:1060px; margin:0 auto; }
.bev-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:1.2rem; margin:1rem 0 1rem; color:var(--vd-ink); }
.bev-heading h1 { font-size:clamp(1.65rem,2.8vw,2.6rem); line-height:1.12; font-weight:750; letter-spacing:-.035em; margin:.35rem 0 .6rem; overflow-wrap:anywhere; }
.bev-heading p { margin:0; max-width:38rem; font-size:.95rem; line-height:1.45; }
.bev-heading .vd-eyebrow { font-size:.67rem; letter-spacing:.13em; font-weight:800; }
.bev-limit { display:flex; flex-direction:column; align-items:center; flex-shrink:0; padding:.7rem 1rem; background:var(--bev-amber); color:#4a3418; border-radius:1rem; transform:rotate(2deg); box-shadow:0 3px 0 #c8923d; }
.bev-limit small { font-size:.55rem; font-weight:900; letter-spacing:.12em; }
.bev-limit strong { font-size:2.4rem; font-weight:800; line-height:1.1; }
.bev-limit span { font-size:.6rem; font-weight:700; }
.bev-action { margin:0 0 1rem; padding:.7rem .9rem; border-radius:.9rem; background:#f3e6c9; font-size:.9rem; font-weight:650; }
.bev-piles { display:flex; justify-content:center; gap:1.4rem; padding:1.1rem; margin-bottom:1rem; border-radius:1.4rem; background:radial-gradient(ellipse at 50% 30%,#3b8d89,#2a6b68); }
.bev-pile { display:flex; flex-direction:column; align-items:center; gap:.45rem; color:#f4efe0; }
.bev-pile small { font-size:.68rem; font-weight:800; letter-spacing:.03em; }
.bev-card { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; width:3.3rem; height:4.5rem; padding:0; border:1px solid #e3d9c2; border-radius:.7rem; background:var(--bev-cream); color:var(--bev-ink); font:inherit; box-shadow:0 2px 0 #d3c8ae, 0 4px 8px #3d322614; }
.bev-card strong { font-size:1.9rem; font-weight:800; line-height:1; }
.bev-card small { font-size:.55rem; font-weight:850; text-transform:uppercase; letter-spacing:.05em; }
.bev-glyph { font-size:1.5rem; line-height:1; }
.bev-card.is-action { background:#fbe3a8; }
.bev-card.is-back { background:repeating-linear-gradient(45deg,var(--bev-teal),var(--bev-teal) 5px,var(--bev-teal-dark) 5px,var(--bev-teal-dark) 10px); border-color:#9bc7c2; color:#d9efe9; }
.bev-card.is-back span { font-size:.95rem; font-weight:850; opacity:.85; }
.bev-pile-card span { font-size:1.4rem; }
.bev-card.is-peeked { outline:3px solid var(--bev-amber); outline-offset:1px; }
.bev-controls { display:grid; gap:.6rem; margin-bottom:1rem; }
.bev-prompt { margin:0; font-size:.92rem; line-height:1.4; }
.bev-choice-row { display:grid; grid-template-columns:repeat(auto-fit,minmax(9rem,1fr)); gap:.55rem; }
.bev-move { margin:0; min-width:0; }
.bev-confirm { position:sticky; bottom:14px; margin-top:.9rem; box-shadow:0 6px 18px #3d322633; z-index:2; }
.bev-confirm[hidden] { display:none; }
.bev-move .vd-button,.bev-confirm,.bev-choice-row .vd-button { width:100%; min-height:48px; justify-content:center; white-space:normal; line-height:1.25; border-radius:999px; }
.bev-pick-form { display:none; }
.bev-wait { margin:.8rem 0; padding:.8rem; border-radius:.9rem; background:var(--lc-fill,#f2f2e7); font-weight:700; font-size:.85rem; }
.bev-players { display:grid; grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr)); gap:.65rem; }
.bev-player { padding:.8rem; border-radius:1.2rem; background:var(--vd-panel,#fffefa); box-shadow:var(--lc-shadow,0 4px 14px #3d322610); min-width:0; }
.bev-player.is-active { box-shadow:inset 0 0 0 2px var(--game-color), var(--lc-shadow,0 4px 14px #3d322610); }
.bev-player.is-me { background:#fbf3de; }
.bev-player header { display:flex; align-items:center; gap:.4rem; }
.bev-player-number { background:var(--bev-ink); color:#fff; font-size:.65rem; font-weight:900; border-radius:50%; width:1.3rem; height:1.3rem; display:grid; place-items:center; flex-shrink:0; }
.bev-player h2 { font-size:.85rem; font-weight:800; overflow-wrap:anywhere; flex:1; min-width:0; margin:0; }
.bev-player header>strong { font-size:1.1rem; line-height:1; white-space:nowrap; }
.bev-player header small { font-size:.55rem; font-weight:700; }
.bev-status { margin:.35rem 0 .55rem; font-size:.7rem; opacity:.75; min-height:1em; }
.bev-grid { display:grid; grid-template-columns:repeat(2,3.3rem); gap:.45rem; justify-content:center; }
button.bev-card { cursor:default; -webkit-tap-highlight-color:transparent; transition:transform .12s ease, box-shadow .12s ease; }
button.bev-card.is-selectable { cursor:pointer; box-shadow:0 0 0 2px #e7b25a, 0 4px 8px #3d322614; animation:bev-nudge 1.6s ease-in-out infinite; }
button.bev-card.is-selected { transform:translateY(-4px); box-shadow:0 0 0 3px var(--game-color), 0 6px 10px #3d322624; animation:none; }
button.bev-card:disabled { opacity:1; }
@keyframes bev-nudge { 50% { transform:translateY(-2px); } }
.bev-hide { display:inline-block; margin-top:1rem; }
.bev-phone .bev-grid { grid-template-columns:repeat(2,3.6rem); }
@media(prefers-reduced-motion:reduce){ button.bev-card.is-selectable { animation:none; } }
@media(min-width:900px){
  .bev-board-tv .bev-grid { grid-template-columns:repeat(4,3.3rem); }
  .bev-board-tv .bev-players { grid-template-columns:repeat(auto-fit,minmax(18rem,1fr)); }
}

/* Action cards: illustrated and colorful. */
.bev-art { width:2.1rem; height:2.1rem; }
.bev-card.is-action { gap:.2rem; border-color:transparent; }
.bev-card.is-peek { background:linear-gradient(160deg,#ece9ff,#b9b0f7); color:#2c2766; box-shadow:0 2px 0 #8f85de, 0 5px 10px #2c276633; }
.bev-card.is-swap { background:linear-gradient(160deg,#ffe3d4,#f7a184); color:#7a2c17; box-shadow:0 2px 0 #d8785a, 0 5px 10px #7a2c1733; }
.bev-card.is-action small { font-size:.58rem; font-weight:900; letter-spacing:.08em; }
.bev-held-card { width:4.6rem; height:6.3rem; border-radius:.9rem; animation:bev-pop .45s cubic-bezier(.3,1.6,.5,1); }
.bev-held-card strong { font-size:2.7rem; }
.bev-held-card .bev-art { width:3.2rem; height:3.2rem; }
.bev-held-card.is-action small { font-size:.7rem; }
@keyframes bev-pop { from { transform:scale(.6) rotate(-10deg); opacity:0; } 60% { transform:scale(1.08) rotate(3deg); } }
button.bev-card.is-tappable { cursor:pointer; animation:bev-nudge 1.6s ease-in-out infinite; box-shadow:0 0 0 3px #f2c877, 0 5px 10px #00000030; }
button.bev-card.is-tappable:active { transform:scale(.94); animation:none; }
.bev-draw { margin:0; }
.bev-piles { align-items:flex-end; gap:1.6rem; }
.bev-piles .bev-pile>.bev-card,.bev-draw .bev-card { width:4.2rem; height:5.8rem; }
.bev-piles .bev-pile strong { font-size:2.4rem; }
.bev-controls:empty { display:none; }
.bev-knock { max-width:14rem; justify-self:center; }
@media(prefers-reduced-motion:reduce){ .bev-held-card,button.bev-card.is-tappable { animation:none; } }
.bev-controls .bev-move { justify-self:center; width:min(14rem,100%); }
