/*
Theme Name: Encore
Theme URI: https://example.com/encore
Author: Your Name
Author URI: https://example.com
Description: A bold, dark music and live-culture theme with signature star ratings on reviews, a big feature hero and energetic segmented sections. A characterful display face (Unbounded) with a clean Inter body, 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: encore
Tags: blog, news, music, entertainment, two-columns, right-sidebar, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, full-width-template
*/

:root {
  --bg: #12101a;
  --surface: #1b1826;
  --surface-2: #241f33;
  --text: #f3f0fa;
  --text-2: #c6bfdb;
  --muted: #8d85a8;
  --line: #2d2840;
  --accent: #c04bff;
  --accent-ink: #ffffff;
  --accent-hover: #f3f0fa;
  --accent-hover-ink: #12101a;

  --font-display: "Unbounded", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-ui: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --w-display: 800;
  --lh-display: 1.04;
  --track-display: -0.01em;

  --radius: 12px;
  --radius-ui: 8px;
  --footer-bg: #0c0a14;
  --footer-text: #f3f0fa;
  --footer-muted: #948cae;
  --footer-line: rgba(255,255,255,.12);
  --overlay: linear-gradient(180deg, rgba(8,6,16,0) 28%, rgba(8,6,16,.92) 100%);
}
:root[data-theme="light"] {
  --bg: #f7f5fb;
  --surface: #ffffff;
  --surface-2: #efeaf7;
  --text: #1a1626;
  --text-2: #4a4460;
  --muted: #857d9a;
  --line: #e5dff0;
  --accent: #9b2fe0;
  --accent-ink: #ffffff;
  --accent-hover: #1a1626;
  --accent-hover-ink: #ffffff;
  --footer-bg: #12101a;
  --footer-text: #f3f0fa;
  --footer-muted: #948cae;
  --overlay: linear-gradient(180deg, rgba(20,16,30,0) 30%, rgba(20,16,30,.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: 800; font-size: 1.4rem; letter-spacing: -.02em; }
h1, h2, h3, h4, .card__title, .mini__title, .entry-title, .section-title { font-family: var(--font-display); font-weight: 700; letter-spacing: -.01em; }
.entry-content { font-family: var(--font-body); }

.site-header { border-bottom: 1px solid var(--line); }
.primary-menu > li > a { font-weight: 600; font-size: .88rem; }
.header-cta { background: var(--accent); color: #fff; border-radius: 100px; font-weight: 700; }
.cat { color: hsl(var(--cat-hue,280) 85% 72%); font-family: var(--font-ui); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; font-size: .72rem; }
:root[data-theme="light"] .cat { color: hsl(var(--cat-hue,280) 65% 48%); }
.card-overlay .cat { color: #fff; }
.section-title { font-size: clamp(1.5rem, 2.8vw, 2.1rem); }
.section-head { border-bottom: 2px solid var(--accent); padding-bottom: .5rem; }
.card__title { line-height: 1.12; }

/* ---------- Star ratings ---------- */
.en-rating { display: inline-flex; align-items: center; gap: .45rem; margin-top: .6rem; }
.en-stars { position: relative; display: inline-block; font-size: 1rem; line-height: 1; letter-spacing: 2px; white-space: nowrap; }
.en-stars__base { color: var(--muted); opacity: .4; }
.en-stars__fill { color: var(--accent); position: absolute; top: 0; left: 0; width: var(--pct,0%); overflow: hidden; }
.en-rating__num { font-family: var(--font-display); font-weight: 800; color: var(--accent); font-size: .92rem; }

/* single post rating */
.en-single-rating { display: flex; align-items: center; gap: .9rem; margin-bottom: 1.5rem; padding: .9rem 1.3rem; background: var(--surface-2); border-radius: var(--radius); width: fit-content; }
.en-single-rating__label { font-family: var(--font-ui); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; font-size: .72rem; color: var(--muted); }
.en-single-rating .en-stars { font-size: 1.5rem; }
.en-single-rating .en-rating__num { font-size: 1.4rem; }

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

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

/* ---------- Signup ---------- */
.en-signup .signup--band { background: linear-gradient(120deg, var(--accent), #6a2fe0); color: #fff; border-radius: var(--radius); padding: clamp(28px, 4vw, 48px); display: grid; grid-template-columns: 1fr auto; gap: 1.5rem; align-items: center; }
.en-signup .signup--band .signup__title { color: #fff; font-family: var(--font-display); font-weight: 800; font-size: clamp(1.5rem, 2.6vw, 2.1rem); }
.en-signup .signup--band .signup__desc { color: rgba(255,255,255,.9); }
.en-signup .signup--band .signup__form { min-width: 320px; }
.en-signup .signup--band .signup__button { background: #12101a; color: #fff; }
.en-signup .signup--band .signup__note { color: rgba(255,255,255,.82); }
@media (max-width: 760px) { .en-signup .signup--band { grid-template-columns: 1fr; } .en-signup .signup--band .signup__form { min-width: 0; } }

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