
/* components.css — PlayBrief */
.card{background:#fff; border:1px solid #0002; border-radius:8px; padding:1.2em; box-shadow:0 1px 2px #0001}
.badge{display:inline-block; padding:.15em .6em; border-radius:999px; font-size:.78rem; font-weight:600}
.badge-18{background:var(--accent); color:#191919}
.fact-row{display:flex; align-items:baseline; gap:.6em; padding:.4em 0; border-bottom:1px solid #0001}
.fact-row .num{font-variant-numeric:tabular-nums; font-weight:700; color:var(--accent)}
.accordion details{border:1px solid #0002; border-radius:6px; margin-bottom:.6em; padding:.4em .8em}
.accordion summary{cursor:pointer; font-weight:600}
.disclaimer{border-left:4px solid var(--accent); padding:.6em 1em; background:var(--surface); color:var(--text-light); border-radius:0 6px 6px 0; margin:1.2em 0}

/* Age gate */
#age-gate{position:fixed; inset:0; background:#0b0b0bee; display:flex; align-items:center; justify-content:center; z-index:2000}
#age-gate[hidden]{display:none}
#age-gate .box{background:#fff; color:#191919; max-width:420px; width:92%; padding:2em; border-radius:10px; text-align:center}
#age-gate .box h2{margin-top:0}
#age-gate .actions{display:flex; gap:1em; justify-content:center; margin-top:1.2em}
#age-gate button{padding:.7em 1.4em; border-radius:6px; border:0; font-weight:600; cursor:pointer}
#age-gate #age-yes{background:var(--accent); color:#191919}
#age-gate #age-no{background:#eee; color:#191919}
#gate-stub{max-width:640px; margin:4rem auto; text-align:center; padding:2rem}

/* Cookie banner */
#cookie-banner{position:fixed; left:0; right:0; bottom:0; background:var(--bg); color:var(--text-light); padding:1em 1.4em; z-index:1900; display:flex; gap:1em; flex-wrap:wrap; align-items:center; justify-content:space-between}
#cookie-banner[hidden]{display:none}
#cookie-banner button{padding:.5em 1.1em; border-radius:6px; border:0; font-weight:600; cursor:pointer}
#cookie-accept{background:var(--accent); color:#191919}
#cookie-decline{background:transparent; color:inherit; border:1px solid currentColor !important}

@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms !important; transition-duration:.001ms !important}}


/* Light-by-default header override (no dark shell) per TZ #3 */
header.site-header{background:var(--light-bg); color:var(--text-dark); border-bottom:1px solid #0002}
header.site-header a{color:var(--text-dark)}
footer.site-footer{background:#EDE7DD; color:var(--text-dark)}
footer.site-footer a{color:var(--text-dark)}
.age-badge{color:#fff}
tr.row-focused td, tr.row-focused th{background:#DCE5E011}
#law-comparator-table td:nth-child(2){background:#EDE7DD55}
#law-comparator-table td:nth-child(3){background:#DCE5E055}
.term{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline dotted;cursor:pointer;position:relative}
.term-pop{display:none;position:absolute;left:0;top:100%;background:#1B1B18;color:#fff;padding:.6em .8em;border-radius:6px;width:240px;font-size:.85rem;z-index:10;margin-top:.4em}
.term-pop.open{display:block}
dl.accordion dt{font-weight:600;margin-top:.8em}
dl.accordion dd{margin:0 0 .6em}
