/* Pachisi — India's Royal Race. Themed to ancientgames.org palette. */
.pac-wrap{
    --p-primary:#8B4513;--p-secondary:#C19A6B;--p-accent:#B8860B;
    --p-bg:#FDF8F0;--p-ink:#2C1810;--p-panel:#F5EDE0;--p-line:#D4C4A8;
    --p-red:#C0392B;--p-green:#1E7D52;--p-blue:#2C6E9B;--p-gold:#B8860B;
    max-width:600px;margin:2rem auto;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;color:var(--p-ink);
}
.pac-wrap *{box-sizing:border-box}
.pac-topbar{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem}
.pac-mode{display:inline-flex;border:2px solid var(--p-secondary);border-radius:999px;overflow:hidden}
.pac-mode-btn{background:var(--p-panel);color:var(--p-primary);border:none;padding:.45rem 1rem;font-weight:600;cursor:pointer;font-size:.82rem;line-height:1}
.pac-mode-btn.is-active{background:var(--p-primary);color:#fff}
.pac-sound-btn{background:var(--p-panel);border:2px solid var(--p-secondary);border-radius:50%;width:2.4rem;height:2.4rem;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center}
.pac-sound-btn .pac-snd-on{display:none}
.pac-sound-btn[aria-pressed="true"] .pac-snd-on{display:inline}
.pac-sound-btn[aria-pressed="true"] .pac-snd-off{display:none}
.pac-status{text-align:center;font-size:1.02rem;font-weight:600;color:var(--p-primary);min-height:1.5em;margin:.25rem 0 .75rem}
.pac-board-shell{position:relative;width:100%}
.pac-canvas{display:block;width:100%;max-width:560px;margin:0 auto;aspect-ratio:1/1;
    background:radial-gradient(circle at 50% 50%,#F7EFE1,#E9D8B5);border:3px solid var(--p-primary);border-radius:10px;
    box-shadow:0 6px 20px rgba(44,24,16,.18);cursor:pointer;touch-action:manipulation}
.pac-winmodal{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(44,24,16,.55);border-radius:10px}
.pac-winmodal[hidden]{display:none}
.pac-winmodal-card{background:var(--p-bg);border:3px solid var(--p-accent);border-radius:12px;padding:1.5rem 1.75rem;text-align:center;max-width:80%;box-shadow:0 10px 30px rgba(0,0,0,.3)}
.pac-win-title{margin:.2rem 0 .4rem;color:var(--p-primary);font-size:1.4rem}
.pac-win-sub{margin:0 0 1rem;font-size:.95rem}
.pac-hud{display:flex;justify-content:space-between;gap:.4rem;margin:1rem 0 .5rem;flex-wrap:wrap;font-size:.82rem}
.pac-player{display:flex;align-items:center;gap:.3rem;flex:1;min-width:110px}
.pac-dot{width:.8rem;height:.8rem;border-radius:50%;border:2px solid rgba(0,0,0,.2)}
.pac-p0 .pac-dot{background:var(--p-red)}.pac-p1 .pac-dot{background:var(--p-green)}
.pac-p2 .pac-dot{background:var(--p-blue)}.pac-p3 .pac-dot{background:var(--p-gold)}
.pac-player.is-turn{font-weight:800}
.pac-player.is-turn::after{content:"●";color:var(--p-accent);margin-left:.15rem}
.pac-cowries{display:flex;gap:.3rem;justify-content:center;margin:.4rem 0}
.pac-shell{width:1.4rem;height:1rem;border-radius:50%/60% 60% 40% 40%;background:linear-gradient(#efe2c6,#cdb88c);border:1px solid #9c8456;position:relative;transition:transform .15s}
.pac-shell.is-up{background:linear-gradient(#fff,#e4d4ad)}
.pac-shell.is-up::after{content:"";position:absolute;top:50%;left:50%;width:.5rem;height:.18rem;background:#8B4513;border-radius:2px;transform:translate(-50%,-50%)}
.pac-shell.is-rolling{animation:pac-shake .3s ease}
@keyframes pac-shake{0%,100%{transform:translateY(0) rotate(0)}25%{transform:translateY(-5px) rotate(-10deg)}75%{transform:translateY(-3px) rotate(8deg)}}
.pac-controls{display:flex;gap:.6rem;justify-content:center;margin:.6rem 0}
.pac-roll-btn,.pac-new-btn,.pac-again-btn{border:none;border-radius:6px;font-weight:700;cursor:pointer;font-size:1rem;padding:.7rem 1.5rem;color:#fff}
.pac-roll-btn,.pac-again-btn{background:var(--p-accent)}.pac-roll-btn:hover,.pac-again-btn:hover{background:#a6790a}
.pac-roll-btn:disabled{background:var(--p-secondary);opacity:.7;cursor:default}
.pac-new-btn{background:var(--p-primary)}.pac-new-btn:hover{background:#73380f}
.pac-rules{margin-top:1rem;background:var(--p-panel);border:1px solid var(--p-line);border-radius:8px;padding:.4rem 1rem}
.pac-rules summary{cursor:pointer;font-weight:700;color:var(--p-primary);padding:.4rem 0}
.pac-rules-body{font-size:.9rem;line-height:1.6;padding-bottom:.6rem}
.pac-rules-body ul{margin:.4rem 0 .6rem;padding-left:1.2rem}
.pac-disclaimer{background:#fff;border-left:3px solid var(--p-accent);padding:.5rem .75rem;border-radius:4px;font-size:.85rem}
@media (max-width:480px){.pac-wrap{margin:1.25rem auto}.pac-status{font-size:.92rem}.pac-player{min-width:46%}}
@media (prefers-reduced-motion:reduce){.pac-shell.is-rolling{animation:none}.pac-shell{transition:none}}
/* Collapsible FAQ (shared style, matches casino pages) */
details.ag-faq{background:#fff;border:1px solid #d8cfc0;border-radius:6px;margin:0 0 10px;overflow:hidden}
details.ag-faq summary{cursor:pointer;list-style:none;padding:14px 44px 14px 18px;position:relative;font-weight:700;color:#2C1810;font-size:16px;line-height:1.4;user-select:none}
details.ag-faq summary h3,details.ag-faq summary .ag-faq-q{display:inline;margin:0;padding:0;border:0;font-family:inherit;font-size:inherit;font-weight:inherit;color:inherit;line-height:inherit}
details.ag-faq summary::-webkit-details-marker{display:none}
details.ag-faq summary::after{content:'+';position:absolute;right:16px;top:50%;transform:translateY(-50%);width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-size:20px;font-weight:400;color:#B8860B;border:1px solid #C19A6B;border-radius:50%;transition:transform .2s ease}
details.ag-faq[open] summary::after{content:'\2212';transform:translateY(-50%)}
details.ag-faq summary:hover{background:#f5efe3}
details.ag-faq .ag-faq-body{padding:0 18px 14px;color:#2C1810;font-size:15px;line-height:1.6;border-top:1px solid #d8cfc0}
details.ag-faq .ag-faq-body p{margin:12px 0 0}
