/*
Theme Name: Rollcall
Theme URI: https://example.com/rollcall
Author: Your Name
Author URI: https://example.com
Description: A bold, dark roller-derby and sports theme with a signature fixtures-and-results board, a punchy poster headline face (Anton), a big bout hero and energetic segmented sections. Per-category neon accents, dark and light modes, self-hosted fonts and one-click demo content with original artwork.
Version: 1.0.0
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: rollcall
Tags: blog, news, sports, two-columns, right-sidebar, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, full-width-template
*/

:root {
  --bg: #121016;
  --surface: #1b1822;
  --surface-2: #241f2e;
  --text: #f4f1f7;
  --text-2: #c4bcd0;
  --muted: #8a8299;
  --line: #2e2838;
  --accent: #ff2e63;
  --accent-ink: #ffffff;
  --accent-hover: #f4f1f7;
  --accent-hover-ink: #121016;

  --font-display: "Anton", "Arial Narrow", system-ui, sans-serif;
  --font-body: "Barlow", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-ui: "Barlow", system-ui, -apple-system, "Segoe UI", sans-serif;
  --w-display: 400;
  --lh-display: 1.0;
  --track-display: 0.01em;

  --radius: 8px;
  --radius-ui: 5px;
  --footer-bg: #0c0a10;
  --footer-text: #f4f1f7;
  --footer-muted: #938aa6;
  --footer-line: rgba(255,255,255,.12);
  --overlay: linear-gradient(180deg, rgba(8,6,12,0) 28%, rgba(8,6,12,.92) 100%);
}
:root[data-theme="light"] {
  --bg: #f6f4f8;
  --surface: #ffffff;
  --surface-2: #efebf2;
  --text: #1a1620;
  --text-2: #4a4458;
  --muted: #857d94;
  --line: #e4dfec;
  --accent: #e01450;
  --accent-ink: #ffffff;
  --accent-hover: #1a1620;
  --accent-hover-ink: #ffffff;
  --footer-bg: #121016;
  --footer-text: #f4f1f7;
  --footer-muted: #938aa6;
  --overlay: linear-gradient(180deg, rgba(20,16,24,0) 30%, rgba(20,16,24,.9) 100%);
}

body { font-size: 17px; }
.meta, .cat, .primary-menu a, .mobile-menu a, .section-link, .widget-title, .btn, .header-cta { font-family: var(--font-ui); }
.brand__name { font-family: var(--font-display); font-weight: 400; font-size: 1.7rem; letter-spacing: .02em; text-transform: uppercase; }
h1, h2, h3, h4, .card__title, .mini__title, .entry-title, .section-title { font-family: var(--font-display); font-weight: 400; letter-spacing: .01em; }
.entry-content { font-family: var(--font-body); }

.site-header { border-bottom: 2px solid var(--accent); }
.primary-menu > li > a { font-weight: 600; font-size: .86rem; text-transform: uppercase; letter-spacing: .07em; }
.header-cta { background: var(--accent); color: #fff; border-radius: var(--radius-ui); text-transform: uppercase; letter-spacing: .05em; font-weight: 700; }
.cat { color: hsl(var(--cat-hue,345) 85% 66%); font-family: var(--font-ui); font-weight: 700; text-transform: uppercase; letter-spacing: .09em; font-size: .72rem; }
:root[data-theme="light"] .cat { color: hsl(var(--cat-hue,345) 70% 46%); }
.card-overlay .cat { color: #fff; }
.section-title { font-size: clamp(1.6rem, 3vw, 2.4rem); text-transform: uppercase; }
.section-head { border-bottom: 3px solid var(--accent); padding-bottom: .5rem; align-items: center; }
.card__title { line-height: 1.08; }

/* ---------- Hero ---------- */
.rc-hero__grid { display: grid; gap: 14px; }
@media (min-width: 800px) { .rc-hero__grid { grid-template-columns: 1.6fr 1fr; align-items: stretch; } }
.rc-hero__big .card-overlay { height: 100%; min-height: 440px; border-radius: var(--radius); overflow: hidden; }
.rc-hero__big .card__title { font-size: clamp(1.8rem, 3.4vw, 3rem); }
.rc-hero__side { display: grid; gap: 14px; grid-template-rows: 1fr 1fr; }
.rc-hero__side .card-overlay { min-height: 213px; border-radius: var(--radius); overflow: hidden; }
.rc-hero__side .card__title { font-size: 1.3rem; }

/* ---------- Fixtures board ---------- */
.rc-board { background: var(--surface); border-block: 2px solid var(--accent); padding-block: clamp(28px, 4vw, 48px); }
.rc-board__grid { display: grid; gap: clamp(24px, 4vw, 52px); }
@media (min-width: 800px) { .rc-board__grid { grid-template-columns: 1fr 1fr; } }
.rc-board__head { font-family: var(--font-display); text-transform: uppercase; font-size: 1.4rem; letter-spacing: .02em; color: var(--accent); margin-bottom: .8rem; }
.rc-fixtures, .rc-results { list-style: none; margin: 0; padding: 0; }
.rc-fixture { display: grid; grid-template-columns: auto 1fr auto; gap: 1rem; align-items: center; padding: .9rem 0; border-top: 1px solid var(--line); font-family: var(--font-ui); }
.rc-fixture__date { font-family: var(--font-display); text-transform: uppercase; color: var(--text); font-size: .95rem; min-width: 92px; }
.rc-fixture__teams { font-weight: 700; color: var(--text); }
.rc-fixture__v { color: var(--muted); font-weight: 400; margin: 0 .25rem; text-transform: lowercase; }
.rc-fixture__venue { color: var(--muted); font-size: .8rem; text-align: right; }
.rc-result { display: grid; grid-template-columns: 1fr auto 1fr; gap: 1rem; align-items: center; padding: .9rem 0; border-top: 1px solid var(--line); font-family: var(--font-ui); }
.rc-result__team { font-weight: 700; color: var(--text-2); }
.rc-result__team:last-child { text-align: right; }
.rc-result__team.is-win { color: var(--accent); }
.rc-result__score { font-family: var(--font-display); font-size: 1.25rem; background: var(--surface-2); padding: .2rem .7rem; border-radius: 4px; color: var(--text); letter-spacing: .02em; }
@media (max-width: 420px) { .rc-fixture { grid-template-columns: 1fr; gap: .2rem; } .rc-fixture__venue { text-align: left; } }

/* ---------- Sections ---------- */
.rc-band { background: var(--surface); border-block: 1px solid var(--line); padding-block: clamp(32px, 4vw, 52px); }

/* ---------- Signup ---------- */
.rc-signup .signup--band { background: var(--accent); color: #fff; border-radius: var(--radius); padding: clamp(28px, 4vw, 48px); display: grid; grid-template-columns: 1fr auto; gap: 1.5rem; align-items: center; }
.rc-signup .signup--band .signup__title { color: #fff; font-family: var(--font-display); text-transform: uppercase; font-size: clamp(1.7rem, 3vw, 2.5rem); }
.rc-signup .signup--band .signup__desc { color: rgba(255,255,255,.9); }
.rc-signup .signup--band .signup__form { min-width: 320px; }
.rc-signup .signup--band .signup__button { background: #121016; color: #fff; }
.rc-signup .signup--band .signup__note { color: rgba(255,255,255,.82); }
@media (max-width: 760px) { .rc-signup .signup--band { grid-template-columns: 1fr; } .rc-signup .signup--band .signup__form { min-width: 0; } }

.entry-content { font-size: 1.1rem; line-height: 1.7; }
.entry-content blockquote { border-left: 3px solid var(--accent); font-style: italic; font-size: 1.2rem; }
