/*
Theme Name: Quiz Master Theme (Neve-like)
Theme URI: https://quizranch.com
Author: QuizRanch
Description: Lightweight, Neve-like customizable theme built for QuizRanch + Quiz Master plugin.
Version: 6.2
Text Domain: quiz-master-theme
*/

:root{
  --qm-primary:#2c5aa0;
  --qm-accent:#ff7f2a;
  --qm-bg:#f4f7fb;
  --qm-text:#1e2a3a;
  --qm-card:#ffffff;
  --qm-radius:14px;
  --qm-max:1200px;
  --qm-header-pad:12px;
}

*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--qm-bg);color:var(--qm-text);}
a{color:inherit}
img{max-width:100%;height:auto}

.qm-container{width:min(92vw,var(--qm-max));margin:0 auto;}
.qm-card{background:var(--qm-card);border-radius:var(--qm-radius);box-shadow:0 10px 30px rgba(0,0,0,.06);}
.qm-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:12px 18px;border-radius:999px;
  text-decoration:none;font-weight:700;border:1px solid transparent;transition:transform .12s ease, box-shadow .12s ease, opacity .12s ease;}
.qm-btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(0,0,0,.10)}
.qm-btn:active{transform:translateY(0);box-shadow:none}
.qm-btn-primary{background:var(--qm-accent);color:#fff;}
.qm-btn-ghost{background:transparent;border-color:rgba(255,255,255,.55);color:#fff;}
.qm-btn-outline{background:transparent;border-color:rgba(30,42,58,.18);color:var(--qm-text);}

.qm-header{position:sticky;top:0;z-index:50;background:linear-gradient(135deg,var(--qm-primary),#3e73c9);}
.qm-header-inner{display:flex;align-items:center;justify-content:space-between;padding:var(--qm-header-pad) 0;gap:12px;}
.qm-brand{display:flex;align-items:center;gap:10px;min-width:160px}
.qm-brand a{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:900;color:#fff}
.qm-brand img{width:34px;height:34px;border-radius:10px;background:#fff}

.qm-nav{display:flex;align-items:center;gap:18px}
.qm-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:16px;align-items:center}
.qm-nav a{color:#fff;text-decoration:none;font-weight:700;opacity:.92}
.qm-nav a:hover{opacity:1;text-decoration:underline}

.qm-actions{display:flex;align-items:center;gap:10px}
.qm-mobile-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;
  border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:#fff;cursor:pointer}

/* Mobile panel should be hidden by default (desktop/tablet). It only opens on small screens */
.qm-mobile-panel{display:none}

@media (max-width: 920px){
  .qm-nav{display:none}
  .qm-mobile-toggle{display:inline-flex}
  .qm-actions .qm-btn{display:none}
  .qm-mobile-panel{display:none}
  .qm-mobile-panel.open{display:block}
  .qm-mobile-panel .qm-card{margin:12px 0;padding:14px}
  .qm-mobile-panel ul{display:flex;flex-direction:column;gap:10px}
  .qm-mobile-panel a{color:var(--qm-text);text-decoration:none;font-weight:800}
  .qm-mobile-panel a:hover{text-decoration:underline}
  .qm-mobile-panel .qm-btn{width:100%}
}

.qm-hero{padding:56px 0 28px;background:linear-gradient(135deg,var(--qm-primary),#3e73c9);color:#fff}
.qm-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;align-items:center}
.qm-hero h1{font-size:clamp(28px,4vw,44px);line-height:1.1;margin:0 0 10px}
.qm-hero p{margin:0 0 18px;opacity:.95;font-size:16px;max-width:62ch}
.qm-hero .qm-card{padding:18px;border-radius:18px}
.qm-hero .qm-mini{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.qm-stat{padding:14px;border-radius:16px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18)}
.qm-stat b{display:block;font-size:18px}
.qm-stat span{opacity:.9;font-size:13px}

@media (max-width: 920px){
  .qm-hero-grid{grid-template-columns:1fr}
}

main{padding:24px 0 40px}
.qm-content{padding:22px}
.qm-footer{padding:26px 0;background:#131c2a;color:#fff}
.qm-footer small{opacity:.85}
