/* WorthyEdge additions on top of Graphics' tokens.css and site.css (those two are Graphics' files, unchanged except one comment that named the old game title,
   so the next Graphics drop can replace them). Only things the comps don't cover live here. */

/* Header: theme toggle and menu sit at the right on mobile */
.theme-toggle { margin-left: auto; cursor: pointer; }
.menu-btn { margin-left: 0; cursor: pointer; }
@media (min-width: 900px) { .theme-toggle { margin-left: 0; } }
.no-js .theme-toggle, .no-js .menu-btn { display: none; }
.no-js .site-header .bar { flex-wrap: wrap; }

.mobile-nav { display: none; border-top: 1px solid var(--wp-border); padding: var(--wp-space-sm) 0 var(--wp-space-lg); }
.mobile-nav.open, .no-js .mobile-nav { display: block; }
.mobile-nav ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.mobile-nav a { display: flex; align-items: center; min-height: var(--wp-target-min); padding: 0 14px; border-radius: var(--wp-radius-md); color: var(--wp-text); text-decoration: none; font-weight: 700; }
.mobile-nav a:hover, .mobile-nav a[aria-current="page"] { background: var(--wp-surface-2); color: var(--wp-primary-text); }
@media (min-width: 900px) { .mobile-nav, .no-js .mobile-nav { display: none; } }

/* "Working title" tag (required on every game card and detail page) */
.tag-working { display: inline-flex; align-items: center; min-height: 28px; padding: 2px 10px; border-radius: var(--wp-radius-pill); border: 1.5px dashed var(--wp-muted); color: var(--wp-muted); font-size: var(--wp-fs-caption); font-weight: 700; white-space: nowrap; }
.game-card .meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 6px; }
.game-card .meta .by { margin: 0; }
.game-card .kind, .detail-hero .kind { margin: 0; font-size: var(--wp-fs-label); font-weight: 700; color: var(--wp-secondary-text); }
.detail-hero .chips { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin-bottom: 8px; }
.detail-hero .endorse { height: 30px; width: auto; margin-top: 6px; }
.detail-hero .lede { font-size: 1.25rem; max-width: 52ch; margin: 16px 0 20px; color: var(--wp-muted); }
.store-note { margin: 0; }
.game-about { padding-block: var(--wp-section-y) 0; max-width: 760px; }
.game-about p { margin: var(--wp-space-lg) 0 0; }
.more-grid { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important; }

/* Hero stage icons: placeholder SVG fills the tile */
.stage .tile img { object-fit: cover; }

/* Parents band (family promise) */
.band-intro { margin: var(--wp-space-lg) 0 0; }
.band-note { margin: var(--wp-space-xl) 0 0; font-size: var(--wp-fs-label); }
.checks .muted { display: block; }
.checks p { margin: 0; }

/* Inner pages */
.page-head { padding-block: var(--wp-space-3xl) var(--wp-space-xl); }
.page-head .lede { margin: var(--wp-space-md) 0 0; color: var(--wp-muted); max-width: 60ch; }
.prose { max-width: 720px; display: grid; gap: var(--wp-space-lg); padding-bottom: var(--wp-section-y); }
.prose p { margin: 0; }
.prose .chip { justify-self: start; }
.info-card { margin: 0; padding: var(--wp-space-xl); border-radius: var(--wp-radius-lg); border: 1px solid var(--wp-border); background: var(--wp-surface); }
.info-card dt { font-size: var(--wp-fs-label); font-weight: 700; color: var(--wp-muted); }
.info-card dd { margin: var(--wp-space-xs) 0 0; font-size: var(--wp-fs-subtitle); font-weight: 700; }
.about-body p { margin: var(--wp-space-md) 0 0; color: var(--wp-muted); }

/* Footer bottom row */
.footer-short { color: var(--wp-footer-muted); max-width: 36ch; margin: 16px 0 0; }
.footer-brand img { height: 48px; width: auto; }
.legal p { margin: 0; }
.legal .sep { margin: 0 8px; }
/* Keep the footer at the bottom on short pages */
body { min-height: 100vh; display: flex; flex-direction: column; }
body > main { flex: 1 0 auto; }
/* Privacy policy */
.policy-section { display: grid; gap: var(--wp-space-md); margin-top: var(--wp-space-xl); }
.policy-section h2 { margin: 0; }
.policy ul { margin: 0; padding-left: 1.25em; display: grid; gap: var(--wp-space-sm); }
.policy-toc ul { list-style: none; padding: 0; }