/* ==========================================================================
   BrightBee — PREMIUM THEME LAYER
   Additive. Load AFTER css/styles.css and css/brightbee-crossplatform.css:
     <link rel="stylesheet" href="css/brightbee-premium.css?v=20260818-1">
   Restyles the EXISTING markup — no JS, no DOM changes (safe per ARCHITECTURE.md).
   Scoped to body[data-theme="brightbee"]. Delete the <link> to fully revert.
   Goal: restrained amber, layered depth, calmer surfaces — a funded-product feel.
   ========================================================================== */

/* ---- Tokens (scoped) ---- */
body[data-theme="brightbee"]{
  --bb-navy:#12173D;
  --bb-navy2:#1B2150;
  --bb-cream:#FFFBF0;
  --bb-honey:#F5B800;
  --bb-honey-lt:#FFD84D;
  --bb-cream:#FBF7EC;
  --bb-line:#EFE7D6;
  --bb-ink-soft:#8A7F63;
  --bb-shadow:0 10px 30px rgba(18,23,61,0.06);
  --bb-shadow-lg:0 24px 60px rgba(18,23,61,0.12);
}

/* ---- App canvas: warm radial instead of flat ---- */
body[data-theme="brightbee"] .main{
  background:radial-gradient(140% 100% at 100% 0%, #FFFDF8, #F6EFDF);
}

/* ---- SIDEBAR: gradient navy + tagline feel ---- */
body[data-theme="brightbee"] .sidebar{
  background:linear-gradient(185deg,#1B2150 0%, #12173D 60%) !important;
  border-right:none !important;
}
body[data-theme="brightbee"] .sidebar .s-label{
  font-size:10px; font-weight:900; letter-spacing:0.12em;
  color:rgba(255,255,255,0.35);
}
/* Nav items → rounded pills */
body[data-theme="brightbee"] .nav-btn{
  border-radius:13px !important;
  color:rgba(255,255,255,0.64) !important;
  font-weight:800 !important;
  background:transparent !important;
  transition:background .15s, color .15s;
}
body[data-theme="brightbee"] .nav-btn:hover{
  background:rgba(255,255,255,0.06) !important;
  color:#fff !important;
}
body[data-theme="brightbee"] .nav-btn.active{
  background:linear-gradient(135deg,var(--bb-honey-lt),var(--bb-honey)) !important;
  color:var(--bb-navy) !important;
  font-weight:900 !important;
  box-shadow:0 8px 20px rgba(245,184,0,0.35) !important;
}
body[data-theme="brightbee"] .nav-btn.active .nav-ico{ filter:none; }

/* Year / subject / topic chips inside the sidebar */
body[data-theme="brightbee"] .year-btn,
body[data-theme="brightbee"] .subj-tab,
body[data-theme="brightbee"] .topic-item{
  border-radius:11px !important;
}

/* ---- HEADER: cleaner, lighter chrome ---- */
body[data-theme="brightbee"] header{
  background:#12173D !important;
}
body[data-theme="brightbee"] .metric-pill,
body[data-theme="brightbee"] .token-pill{
  background:rgba(255,255,255,0.10) !important;
  border:1px solid rgba(255,255,255,0.16) !important;
  border-radius:999px !important;
  font-weight:900 !important;
}
body[data-theme="brightbee"] .user-pill{
  background:rgba(255,255,255,0.10) !important;
  border:1px solid rgba(255,255,255,0.16) !important;
  border-radius:999px !important;
}

/* ---- CARD SYSTEM: one consistent surface ---- */
body[data-theme="brightbee"] .panel-card,
body[data-theme="brightbee"] .lb-section,
body[data-theme="brightbee"] .intro-card,
body[data-theme="brightbee"] .worked-example-card,
body[data-theme="brightbee"] .visual-card,
body[data-theme="brightbee"] .practice-card,
body[data-theme="brightbee"] .score-card,
body[data-theme="brightbee"] .learn-header{
  background:#fff !important;
  border:1px solid var(--bb-line) !important;
  border-radius:20px !important;
  box-shadow:var(--bb-shadow) !important;
}

/* ---- PRIMARY BUTTONS: honey gradient, one accent ---- */
body[data-theme="brightbee"] .btn,
body[data-theme="brightbee"] .ob-btn,
body[data-theme="brightbee"] .modal-button:not(.modal-button--secondary){
  background:linear-gradient(135deg,var(--bb-honey-lt),var(--bb-honey)) !important;
  color:var(--bb-navy) !important;
  border:none !important;
  border-radius:14px !important;
  font-weight:900 !important;
  box-shadow:0 10px 24px rgba(245,184,0,0.38) !important;
}
body[data-theme="brightbee"] .btn:hover,
body[data-theme="brightbee"] .ob-btn:hover{
  filter:brightness(1.03);
}
/* Secondary / ghost buttons stay quiet (navy outline) */
body[data-theme="brightbee"] .btn.btn-ghost,
body[data-theme="brightbee"] .modal-button--secondary{
  background:#fff !important;
  color:var(--bb-navy) !important;
  border:1.5px solid var(--bb-line) !important;
  box-shadow:none !important;
}

/* ---- RESTRAINED AMBER: tame the loud full-width Learn "Continue" bar ---- */
body[data-theme="brightbee"] .learn-continue-bar,
body[data-theme="brightbee"] .lesson-continue,
body[data-theme="brightbee"] .continue-bar{
  box-shadow:none !important;
}

/* ---- SEGMENTED (Learn / Quiz) ---- */
body[data-theme="brightbee"] .mode-tab.active,
body[data-theme="brightbee"] .learn-mode-tab.active{
  background:var(--bb-navy) !important;
  color:#fff !important;
}

/* ---- Progress bars → honey gradient + rounded ---- */
body[data-theme="brightbee"] .progress-fill,
body[data-theme="brightbee"] .bar-fill,
body[data-theme="brightbee"] .lp-progress-fill{
  background:linear-gradient(90deg,var(--bb-honey-lt),var(--bb-honey)) !important;
  border-radius:5px !important;
}

/* ---- Modals: match the card system ---- */
body[data-theme="brightbee"] .modal-card{
  border-radius:22px !important;
  box-shadow:var(--bb-shadow-lg) !important;
}

/* ==========================================================================
   HOME / DASHBOARD — bb-* redesign (renderDashboard now emits bb-greet,
   bb-hero [the ONE navy card], bb-prog [unified level+hive], bb-bw teaser;
   rail = .yp-card, .dash-naplan-mini [light], #dailyGoalsArea). No sticky.
   ========================================================================== */
/* Greeting */
body[data-theme="brightbee"] .bb-greet{
  display:flex !important; align-items:center !important; gap:16px !important;
  padding:4px 2px 2px !important; margin-bottom:24px !important;
}
body[data-theme="brightbee"] .bb-greet-av{
  width:56px !important; height:56px !important; border-radius:17px !important;
  background:#FFF3CC !important; display:flex !important; align-items:center !important;
  justify-content:center !important; font-size:30px !important; flex-shrink:0 !important;
}
body[data-theme="brightbee"] .bb-greet-title{
  font-family:'Fredoka One',cursive !important; font-size:26px !important;
  color:var(--bb-navy) !important; margin:0 !important;
}
body[data-theme="brightbee"] .bb-greet-sub{
  font-size:14px !important; color:var(--bb-ink-soft) !important; font-weight:700 !important; margin-top:2px !important;
}
/* Grid: main flow + quiet rail */
body[data-theme="brightbee"] #dashboardArea{
  display:block !important; max-width:1240px !important; margin:0 auto !important;
}
body[data-theme="brightbee"] .bb-grid{
  display:grid !important; grid-template-columns:minmax(0,1fr) 356px !important;
  gap:26px !important; align-items:start !important;
}
body[data-theme="brightbee"] .bb-col{
  display:flex !important; flex-direction:column !important; gap:22px !important; min-width:0 !important;
}
body[data-theme="brightbee"] .bb-col--rail > *{ width:100% !important; }
/* THE one navy card */
body[data-theme="brightbee"] .bb-hero{
  background:linear-gradient(155deg,var(--bb-navy2,#1B2150),var(--bb-navy)) !important;
  border-radius:26px !important; padding:34px 36px !important; color:#fff !important;
  position:relative !important; overflow:hidden !important;
  box-shadow:0 20px 50px rgba(18,23,61,0.28) !important;
}
body[data-theme="brightbee"] .bb-hero::after{
  content:"" !important; position:absolute !important; width:280px !important; height:280px !important;
  border-radius:50% !important; background:var(--bb-honey) !important; opacity:0.13 !important;
  filter:blur(70px) !important; top:-90px !important; right:-60px !important; pointer-events:none !important;
}
body[data-theme="brightbee"] .bb-hero-kicker{
  display:inline-flex !important; align-items:center !important; gap:7px !important;
  background:rgba(245,184,0,0.16) !important; border:1px solid var(--bb-honey) !important;
  color:var(--bb-honey-lt) !important; font-size:11px !important; font-weight:900 !important;
  letter-spacing:0.07em !important; padding:6px 13px !important; border-radius:999px !important; position:relative !important;
}
body[data-theme="brightbee"] .bb-hero-topic{
  font-family:'Fredoka One',cursive !important; font-size:32px !important; margin:18px 0 6px !important;
  color:#fff !important; position:relative !important; max-width:22ch !important; line-height:1.12 !important;
}
body[data-theme="brightbee"] .bb-hero-meta{
  font-size:14px !important; font-weight:800 !important; color:rgba(255,255,255,0.62) !important; position:relative !important;
}
body[data-theme="brightbee"] .bb-hero-rewards{ display:flex !important; gap:10px !important; margin:22px 0 26px !important; position:relative !important; }
body[data-theme="brightbee"] .bb-reward{
  display:flex !important; align-items:center !important; gap:7px !important;
  background:rgba(255,255,255,0.08) !important; border:1px solid rgba(255,255,255,0.14) !important;
  color:#fff !important; font-weight:800 !important; font-size:13px !important; padding:9px 14px !important; border-radius:12px !important;
}
body[data-theme="brightbee"] .bb-reward b{ color:var(--bb-honey-lt) !important; }
body[data-theme="brightbee"] .bb-hero-cta{
  display:inline-flex !important; align-items:center !important; gap:10px !important;
  background:linear-gradient(135deg,var(--bb-honey-lt),var(--bb-honey)) !important; color:var(--bb-navy) !important;
  font-family:'Fredoka One',cursive !important; font-size:19px !important; padding:16px 34px !important;
  border-radius:15px !important; border:none !important; cursor:pointer !important;
  box-shadow:0 12px 30px rgba(245,184,0,0.42) !important; position:relative !important;
}
/* Unified progression card (light) */
body[data-theme="brightbee"] .bb-prog{
  background:#fff !important; border:1px solid var(--bb-line) !important;
  border-radius:22px !important; box-shadow:var(--bb-shadow) !important; padding:26px 28px !important;
}
body[data-theme="brightbee"] .bb-prog-top{ display:flex !important; align-items:center !important; justify-content:space-between !important; margin-bottom:16px !important; }
body[data-theme="brightbee"] .bb-prog-level{ display:flex !important; align-items:center !important; gap:11px !important; }
body[data-theme="brightbee"] .bb-prog-badge{
  width:44px !important; height:44px !important; border-radius:13px !important; background:var(--bb-navy) !important;
  color:var(--bb-honey) !important; font-family:'Fredoka One',cursive !important; font-size:18px !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
}
body[data-theme="brightbee"] .bb-prog-name{ font-size:16px !important; font-weight:900 !important; color:var(--bb-navy) !important; }
body[data-theme="brightbee"] .bb-prog-sub{ font-size:12.5px !important; color:var(--bb-ink-soft) !important; font-weight:700 !important; }
body[data-theme="brightbee"] .bb-prog-next{ text-align:right !important; font-size:12.5px !important; color:var(--bb-ink-soft) !important; font-weight:800 !important; }
body[data-theme="brightbee"] .bb-prog-next b{ color:var(--bb-navy) !important; font-size:14px !important; }
body[data-theme="brightbee"] .bb-track{ height:14px !important; background:#F0EADB !important; border-radius:8px !important; overflow:hidden !important; }
body[data-theme="brightbee"] .bb-track-fill{ height:100% !important; background:linear-gradient(90deg,var(--bb-honey-lt),var(--bb-honey)) !important; border-radius:8px !important; }
body[data-theme="brightbee"] .bb-prog-foot{ display:flex !important; align-items:center !important; justify-content:space-between !important; margin-top:12px !important; gap:12px !important; }
body[data-theme="brightbee"] .bb-prog-hint{ font-size:12.5px !important; color:var(--bb-ink-soft) !important; font-weight:700 !important; }
body[data-theme="brightbee"] .bb-prog-coins{ display:flex !important; align-items:center !important; gap:7px !important; background:#FFF3CC !important; color:#8A5A00 !important; font-weight:900 !important; font-size:13px !important; padding:7px 13px !important; border-radius:999px !important; white-space:nowrap !important; }
/* Bee World teaser */
body[data-theme="brightbee"] .bb-bw{
  display:flex !important; align-items:center !important; gap:18px !important; padding:22px 26px !important;
  text-decoration:none !important; background:linear-gradient(120deg,#FFF7DE,#FFFBF0) !important;
  border:1px solid #F1E4BC !important; border-radius:22px !important; box-shadow:var(--bb-shadow) !important; cursor:pointer !important;
}
body[data-theme="brightbee"] .bb-bw-art{ position:relative !important; width:58px !important; height:58px !important; flex-shrink:0 !important; display:flex !important; align-items:center !important; justify-content:center !important; }
body[data-theme="brightbee"] .bb-bw-hex{ font-size:40px !important; line-height:1 !important; }
body[data-theme="brightbee"] .bb-bw-bee{ position:absolute !important; top:-6px !important; right:-8px !important; font-size:22px !important; }
body[data-theme="brightbee"] .bb-bw-copy{ flex:1 !important; min-width:0 !important; }
body[data-theme="brightbee"] .bb-bw-kicker{ font-size:10.5px !important; font-weight:900 !important; letter-spacing:0.08em !important; color:#B08A2E !important; }
body[data-theme="brightbee"] .bb-bw-title{ font-family:'Fredoka One',cursive !important; font-size:17px !important; color:var(--bb-navy) !important; margin:2px 0 3px !important; }
body[data-theme="brightbee"] .bb-bw-sub{ font-size:12.5px !important; color:var(--bb-ink-soft) !important; font-weight:700 !important; line-height:1.45 !important; }
body[data-theme="brightbee"] .bb-bw-cta{ flex-shrink:0 !important; background:var(--bb-navy) !important; color:#fff !important; font-weight:900 !important; font-size:13px !important; padding:11px 18px !important; border-radius:11px !important; }
/* Rail cards */
body[data-theme="brightbee"] .yp-card{
  background:#fff !important; border:1px solid var(--bb-line) !important;
  border-radius:22px !important; box-shadow:var(--bb-shadow) !important; padding:24px 26px !important;
}
body[data-theme="brightbee"] .yp-bar-fill{ background:linear-gradient(90deg,var(--bb-honey-lt),var(--bb-honey)) !important; border-radius:6px !important; }
body[data-theme="brightbee"] .yp-pct-badge{ background:#E7F6EC !important; color:#1E7A45 !important; border-radius:999px !important; }
/* NAPLAN → LIGHT card with honey left-accent (importance via accent, not dark bg) */
body[data-theme="brightbee"] .dash-naplan-mini{
  background:#fff !important; border:1px solid var(--bb-line) !important;
  border-left:5px solid var(--bb-honey) !important; border-radius:22px !important;
  box-shadow:var(--bb-shadow) !important; padding:22px 24px !important;
}
body[data-theme="brightbee"] .dash-naplan-mini .dnm-title{ color:var(--bb-navy) !important; font-weight:900 !important; }
body[data-theme="brightbee"] .dash-naplan-mini .dnm-sub,
body[data-theme="brightbee"] .dash-naplan-mini .dnm-topics,
body[data-theme="brightbee"] .dash-naplan-mini .dnm-band{ color:var(--bb-ink-soft) !important; }
body[data-theme="brightbee"] .dash-naplan-mini .dnm-ico{ background:#FFF3CC !important; border-radius:13px !important; }
body[data-theme="brightbee"] .dash-naplan-mini .dnm-arrow{ color:var(--bb-honey) !important; }
/* Daily Goals card */
body[data-theme="brightbee"] .dg-card,
body[data-theme="brightbee"] .dg-complete-card{
  background:#fff !important; border:1px solid var(--bb-line) !important;
  border-radius:22px !important; box-shadow:var(--bb-shadow) !important; padding:24px 26px !important;
}
body[data-theme="brightbee"] .hive-goal-bar-fill{ background:linear-gradient(90deg,var(--bb-honey-lt),var(--bb-honey)) !important; }
/* Streak Freeze card (rail) */
body[data-theme="brightbee"] .sf-card{
  background:linear-gradient(135deg,#EAF4FF,#F4FAFF) !important;
  border:1px solid #D4E6F5 !important; border-radius:22px !important;
  box-shadow:var(--bb-shadow) !important; padding:20px 22px !important;
}
body[data-theme="brightbee"] .sf-top{ display:flex !important; align-items:center !important; gap:12px !important; margin-bottom:14px !important; }
body[data-theme="brightbee"] .sf-ico{ font-size:26px !important; flex-shrink:0 !important; }
body[data-theme="brightbee"] .sf-copy{ flex:1 !important; min-width:0 !important; }
body[data-theme="brightbee"] .sf-title{ font-weight:900 !important; font-size:15px !important; color:var(--bb-navy) !important; }
body[data-theme="brightbee"] .sf-sub{ font-size:12px !important; color:var(--bb-ink-soft) !important; font-weight:700 !important; }
body[data-theme="brightbee"] .sf-count{ background:#12173D !important; color:#7FD4FF !important; font-weight:900 !important; font-size:13px !important; padding:5px 11px !important; border-radius:999px !important; flex-shrink:0 !important; }
body[data-theme="brightbee"] .sf-buy{
  width:100% !important; border:none !important; cursor:pointer !important;
  background:linear-gradient(135deg,var(--bb-honey-lt),var(--bb-honey)) !important;
  color:var(--bb-navy) !important; font-family:'Nunito',sans-serif !important;
  font-weight:900 !important; font-size:14px !important; padding:12px !important; border-radius:12px !important;
}
body[data-theme="brightbee"] .sf-buy--off,
body[data-theme="brightbee"] .sf-buy:disabled{ opacity:0.5 !important; cursor:default !important; background:#E6E0D0 !important; color:#8A7F63 !important; }

/* ==========================================================================
   PARENT — NAPLAN readiness card elevated as the hero/moat (nrs-* from
   renderNaplanSummaryCard). CSS only; strand data already built in parent.js.
   ========================================================================== */
body[data-theme="brightbee"] .nrs-card{
  background:#fff !important; border:1px solid var(--bb-line) !important;
  border-top:5px solid var(--bb-honey) !important; border-radius:22px !important;
  box-shadow:0 16px 40px rgba(18,23,61,0.12) !important; padding:26px 28px !important;
}
body[data-theme="brightbee"] .nrs-title{
  font-family:'Fredoka One',cursive !important; color:var(--bb-navy) !important; font-size:18px !important;
}
body[data-theme="brightbee"] .nrs-year-badge{
  background:var(--bb-navy) !important; color:var(--bb-honey) !important;
  font-weight:900 !important; border-radius:999px !important; padding:5px 12px !important;
}
body[data-theme="brightbee"] .nrs-score-pct{ font-family:'Fredoka One',cursive !important; }
body[data-theme="brightbee"] .nrs-band-pill,
body[data-theme="brightbee"] .nrs-conf-pill{ border-radius:999px !important; font-weight:900 !important; }
body[data-theme="brightbee"] .nrs-insight{
  background:var(--bb-cream) !important; border:1px solid var(--bb-line) !important;
  border-radius:14px !important; padding:14px 16px !important; color:var(--bb-navy) !important;
  font-weight:700 !important; line-height:1.5 !important;
}
body[data-theme="brightbee"] .nrs-strand-name{ font-weight:800 !important; color:var(--bb-navy) !important; }
body[data-theme="brightbee"] .nrs-strand-bar{ background:#F0EADB !important; border-radius:4px !important; }
body[data-theme="brightbee"] .nrs-strand-score{ font-weight:900 !important; }
body[data-theme="brightbee"] .nrs-cta{
  background:linear-gradient(135deg,var(--bb-honey-lt),var(--bb-honey)) !important;
  color:var(--bb-navy) !important; border:none !important; border-radius:14px !important;
  font-weight:900 !important; box-shadow:0 10px 24px rgba(245,184,0,0.38) !important;
}
/* Parent hero + confidence banner → app card system */
body[data-theme="brightbee"] .parent-hero{
  background:linear-gradient(155deg,var(--bb-navy2,#1B2150),var(--bb-navy)) !important;
  border-radius:22px !important; color:#fff !important; padding:26px 28px !important;
}
body[data-theme="brightbee"] .parent-hero-name{ font-family:'Fredoka One',cursive !important; color:#fff !important; }
body[data-theme="brightbee"] .parent-hero-cta{
  background:linear-gradient(135deg,var(--bb-honey-lt),var(--bb-honey)) !important;
  color:var(--bb-navy) !important; border:none !important; border-radius:12px !important; font-weight:900 !important;
}
body[data-theme="brightbee"] .parent-hero-stat-val{ font-family:'Fredoka One',cursive !important; color:var(--bb-honey) !important; }
/* Daily Challenge → DEMOTED: quiet cream dashed card, outline button */
body[data-theme="brightbee"] .dc-card{
  background:var(--bb-cream) !important; border:1.5px dashed #E4D9B8 !important;
  border-radius:18px !important; box-shadow:none !important; padding:18px 22px !important;
}
body[data-theme="brightbee"] .dc-card-topic{ font-family:'Fredoka One',cursive !important; color:var(--bb-navy) !important; font-size:15px !important; }
body[data-theme="brightbee"] .dc-card-kicker{ color:#B08A2E !important; font-weight:900 !important; letter-spacing:0.05em !important; }
body[data-theme="brightbee"] .dc-card-reward{ color:var(--bb-ink-soft) !important; }
body[data-theme="brightbee"] .dc-card-btn{ background:#fff !important; border:1.5px solid var(--bb-line) !important; color:var(--bb-navy) !important; border-radius:11px !important; font-weight:900 !important; }
body[data-theme="brightbee"] .dc-card-ico{ font-size:24px !important; }
/* Banners full width */
body[data-theme="brightbee"] .dash-welcome-banner,
body[data-theme="brightbee"] .dash-mission-complete-banner{ border-radius:16px !important; margin-bottom:18px !important; }
/* Collapse to single column on tablet/phone */
@media (max-width:1020px){
  body[data-theme="brightbee"] .bb-grid{ grid-template-columns:1fr !important; }
}

/* ==========================================================================
   LEARN — premium styling of existing learn.js markup. No JS.
   ========================================================================== */
/* Header + cards */
body[data-theme="brightbee"] .learn-header,
body[data-theme="brightbee"] .concept-card,
body[data-theme="brightbee"] .worked-example,
body[data-theme="brightbee"] .worked-example-card,
body[data-theme="brightbee"] .hero-learning-card,
body[data-theme="brightbee"] .practice-card,
body[data-theme="brightbee"] .visual-card{
  background:#fff !important;
  border:1px solid var(--bb-line) !important;
  border-radius:20px !important;
  box-shadow:var(--bb-shadow) !important;
}
/* Titles → navy (fix amber-on-white) */
body[data-theme="brightbee"] .topic-title,
body[data-theme="brightbee"] .hero-title,
body[data-theme="brightbee"] .we-title,
body[data-theme="brightbee"] .visual-title,
body[data-theme="brightbee"] .concept-big-idea{
  color:var(--bb-navy) !important;
  font-family:'Fredoka One',cursive !important;
}
/* Example box → navy panel like the premium mock */
body[data-theme="brightbee"] .concept-example-box{
  background:linear-gradient(135deg,var(--bb-navy),#1E2657) !important;
  color:#fff !important;
  border:none !important;
  border-radius:14px !important;
}
body[data-theme="brightbee"] .concept-example-box .concept-example-label{
  color:var(--bb-honey) !important;
}
/* Mode tabs (Learn / Quiz) */
body[data-theme="brightbee"] .mode-tabs{
  background:#F3ECDC !important; border-radius:13px !important;
}
body[data-theme="brightbee"] .mtab.active{
  background:var(--bb-navy) !important; color:#fff !important;
  border-radius:10px !important;
}
/* Lesson phase tracker → honey active dot */
body[data-theme="brightbee"] .lphase-dot.active .lphase-ico{
  background:linear-gradient(135deg,var(--bb-honey-lt),var(--bb-honey)) !important;
  color:var(--bb-navy) !important;
  box-shadow:0 6px 14px rgba(245,184,0,0.4) !important;
}
body[data-theme="brightbee"] .lphase-dot.done .lphase-ico{
  background:#E7F6EC !important; color:#1E7A45 !important;
}
body[data-theme="brightbee"] .lphase-line.done{ background:var(--bb-honey) !important; }
/* Forward buttons — one gradient system, calmer than the old full-width bar */
body[data-theme="brightbee"] .start-quiz-btn,
body[data-theme="brightbee"] .next-step-btn,
body[data-theme="brightbee"] .we-next-btn,
body[data-theme="brightbee"] .hero-cta-primary{
  background:linear-gradient(135deg,var(--bb-honey-lt),var(--bb-honey)) !important;
  color:var(--bb-navy) !important; border:none !important;
  border-radius:14px !important; font-weight:900 !important;
  box-shadow:0 10px 24px rgba(245,184,0,0.38) !important;
}
/* Progress track/fill */
body[data-theme="brightbee"] .topic-progress-fill{
  border-radius:5px !important;
}
/* Quick-start + up-next cards */
body[data-theme="brightbee"] .quick-start-card,
body[data-theme="brightbee"] .up-next-card{
  border-radius:16px !important;
  border:1px solid var(--bb-line) !important;
}
body[data-theme="brightbee"] .quick-start-btn{
  background:linear-gradient(135deg,var(--bb-honey-lt),var(--bb-honey)) !important;
  color:var(--bb-navy) !important; border:none !important;
  border-radius:12px !important; font-weight:900 !important;
}
/* Video help + secure pill */
body[data-theme="brightbee"] .topic-mastery-pill{
  border-radius:999px !important;
}

/* ==========================================================================
   MY SCORES — premium styling of renderLB markup. No JS.
   ========================================================================== */
body[data-theme="brightbee"] .lb-summary-card,
body[data-theme="brightbee"] .lb-row{
  background:#fff !important;
  border:1px solid var(--bb-line) !important;
  border-radius:18px !important;
  box-shadow:var(--bb-shadow) !important;
}
body[data-theme="brightbee"] .lb-summary-value{
  font-family:'Fredoka One',cursive !important; color:var(--bb-navy) !important;
}
body[data-theme="brightbee"] .lb-summary-value--average{ color:var(--bb-navy) !important; }
body[data-theme="brightbee"] .lb-row.me{
  border-color:#F3E4B0 !important;
  box-shadow:0 8px 22px rgba(245,184,0,0.14) !important;
}
body[data-theme="brightbee"] .lb-score{
  font-family:'Fredoka One',cursive !important; color:var(--bb-navy) !important;
}

/* ==========================================================================
   QUIZ — kill the big vertical void; top-align the question stage. No JS.
   ========================================================================== */
body[data-theme="brightbee"] .quiz-stage{
  justify-content:flex-start !important;
  min-height:auto !important;
  padding-top:10px !important;
}
/* Quiz-setup heading was amber-on-white (inline var(--accent)) → navy */
body[data-theme="brightbee"] #modeArea div[style*="Fredoka One"][style*="var(--accent)"]{
  color:var(--bb-navy) !important;
}
/* Quiz difficulty picker cards → unified surface */
body[data-theme="brightbee"] #modeArea button[onclick*="startQuizWithLimit"]{
  border-radius:16px !important;
  border:1px solid var(--bb-line) !important;
  box-shadow:var(--bb-shadow) !important;
}

/* ==========================================================================
   PARENT DASHBOARD — premium styling of parent.js markup. No JS.
   ========================================================================== */
/* Insight hero → navy panel */
body[data-theme="brightbee"] .parent-hero{
  background:linear-gradient(150deg,var(--bb-navy),#1E2657) !important;
  border:none !important; border-radius:20px !important;
  box-shadow:var(--bb-shadow-lg) !important; color:#fff !important;
  position:relative; overflow:hidden;
}
body[data-theme="brightbee"] .parent-hero::after{
  content:""; position:absolute; width:180px; height:180px; border-radius:50%;
  background:var(--bb-honey); opacity:0.12; filter:blur(50px);
  top:-50px; right:-30px; pointer-events:none;
}
body[data-theme="brightbee"] .parent-hero-name{
  font-family:'Fredoka One',cursive !important; color:#fff !important;
}
body[data-theme="brightbee"] .parent-hero-year,
body[data-theme="brightbee"] .parent-hero-insight{ color:rgba(255,255,255,0.8) !important; }
body[data-theme="brightbee"] .parent-hero-avatar{
  background:linear-gradient(135deg,var(--bb-honey-lt),var(--bb-honey)) !important;
  border-radius:16px !important;
}
body[data-theme="brightbee"] .parent-hero-cta{
  background:var(--bb-honey) !important; color:var(--bb-navy) !important;
  border:none !important; border-radius:12px !important; font-weight:900 !important;
}
body[data-theme="brightbee"] .parent-hero-stat{
  background:rgba(255,255,255,0.08) !important; border:1px solid rgba(255,255,255,0.12) !important;
  border-radius:14px !important;
}
body[data-theme="brightbee"] .parent-hero-stat-val{ color:#fff !important; font-family:'Fredoka One',cursive !important; }
body[data-theme="brightbee"] .parent-hero-stat-lbl{ color:rgba(255,255,255,0.65) !important; }

/* Recommended-next + subscription cards → unified surfaces */
body[data-theme="brightbee"] .parent-next-panel,
body[data-theme="brightbee"] .parent-next-item,
body[data-theme="brightbee"] .subscription-card,
body[data-theme="brightbee"] .child-switch-card{
  border-radius:18px !important;
  border:1px solid var(--bb-line) !important;
  box-shadow:var(--bb-shadow) !important;
}
body[data-theme="brightbee"] .parent-next-item{ box-shadow:none !important; background:var(--bb-cream) !important; }
/* Family Plan upsell → navy moat card */
body[data-theme="brightbee"] .subscription-card--upgrade{
  background:linear-gradient(150deg,var(--bb-navy),#1E2657) !important;
  border:none !important; color:#fff !important;
}
body[data-theme="brightbee"] .subscription-card--upgrade .subscription-title{ color:#fff !important; }
body[data-theme="brightbee"] .subscription-plan-card{
  background:rgba(255,255,255,0.06) !important; border:1px solid rgba(255,255,255,0.16) !important;
  border-radius:14px !important;
}
body[data-theme="brightbee"] .subscription-plan-card--active{
  background:rgba(245,184,0,0.12) !important; border:1.5px solid var(--bb-honey) !important;
}
body[data-theme="brightbee"] .subscription-plan-price{ color:#fff !important; font-family:'Fredoka One',cursive !important; }

/* ==========================================================================
   NAPLAN READY — premium styling of naplan.js markup (has its own injected
   <style>; these !important + [data-theme] rules win on specificity). No JS.
   ========================================================================== */
/* Headings amber-on-white → navy (h2s); hero h1 is white on navy */
body[data-theme="brightbee"] #naplanArea h2:not(.naplan-score-title){
  color:var(--bb-navy) !important;
}
body[data-theme="brightbee"] #naplanArea .naplan-hero h1{
  color:#fff !important;
}
/* Hero → navy readiness card (matches the premium mock, CSS-only) */
body[data-theme="brightbee"] .naplan-hero{
  background:linear-gradient(150deg,var(--bb-navy),#1E2657) !important;
  border-radius:20px !important;
  padding:24px 26px !important;
  position:relative; overflow:hidden;
}
body[data-theme="brightbee"] .naplan-hero::after{
  content:""; position:absolute; width:180px; height:180px; border-radius:50%;
  background:var(--bb-honey); opacity:0.14; filter:blur(50px);
  top:-50px; right:10%; pointer-events:none;
}
body[data-theme="brightbee"] .naplan-hero h1{ color:#fff !important; position:relative; }
body[data-theme="brightbee"] .naplan-hero p{ color:rgba(255,255,255,0.78) !important; position:relative; }
body[data-theme="brightbee"] .naplan-hero .naplan-hero-badge{
  background:rgba(245,184,0,0.15) !important; border:1px solid #F5B800 !important;
  color:#FFD84D !important; position:relative;
}
/* Readiness hero row layout + % ring (pairs with naplan.js edit) */
body[data-theme="brightbee"] .naplan-readiness-hero{
  display:flex !important; align-items:center; gap:24px;
}
body[data-theme="brightbee"] .naplan-readiness-hero .nrh-copy{ flex:1; }
body[data-theme="brightbee"] .nrh-ring{
  width:88px; height:88px; border-radius:50%; flex-shrink:0; position:relative;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  background:conic-gradient(#F5B800 var(--pct,0%), rgba(255,255,255,0.14) 0);
}
body[data-theme="brightbee"] .nrh-ring::before{
  content:""; position:absolute; width:66px; height:66px; border-radius:50%; background:#141a45;
}
body[data-theme="brightbee"] .nrh-ring span{
  position:relative; font-family:'Fredoka One',cursive; font-size:20px; color:#F5B800;
}
body[data-theme="brightbee"] .nrh-ring small{
  position:relative; font-size:8px; font-weight:800; color:rgba(255,255,255,0.6); letter-spacing:0.05em;
}
/* Per-card progress bar + state */
body[data-theme="brightbee"] .ntc-track{
  height:6px; background:#EEE6D4; border-radius:4px; overflow:hidden; margin-top:12px;
}
body[data-theme="brightbee"] .ntc-fill{ height:100%; border-radius:4px; }
body[data-theme="brightbee"] .ntc-state{ font-size:11px; font-weight:800; margin-top:6px; }
/* Resume button in hero → compact, not full-width */
body[data-theme="brightbee"] .nrh-resume{
  width:auto !important; display:inline-flex !important; align-items:center;
  padding:14px 24px !important; flex-shrink:0; position:relative;
}
/* Year / strand / count active → navy fill (was amber-on-cream, low contrast) */
body[data-theme="brightbee"] .naplan-year-btn.active,
body[data-theme="brightbee"] .naplan-strand-btn.active,
body[data-theme="brightbee"] .naplan-count-btn.active{
  background:var(--bb-navy) !important;
  color:#fff !important;
  border-color:var(--bb-navy) !important;
}
/* Topic cards → unified surface */
body[data-theme="brightbee"] .naplan-topic-card{
  border:1px solid var(--bb-line) !important;
  border-radius:18px !important;
  box-shadow:var(--bb-shadow) !important;
}
body[data-theme="brightbee"] .naplan-topic-name{ color:var(--bb-navy) !important; }
/* Info box → cream */
body[data-theme="brightbee"] .naplan-info-box{
  background:#FFF9E8 !important; border:1px solid #F3E4B0 !important;
  border-radius:14px !important;
}
body[data-theme="brightbee"] .naplan-info-box-title{ color:#8A5A00 !important; }
/* Primary + secondary buttons */
body[data-theme="brightbee"] .naplan-btn-primary{
  background:linear-gradient(135deg,var(--bb-honey-lt),var(--bb-honey)) !important;
  color:var(--bb-navy) !important; border:none !important;
  border-radius:14px !important; font-weight:900 !important;
  box-shadow:0 10px 24px rgba(245,184,0,0.38) !important;
}
body[data-theme="brightbee"] .naplan-btn-secondary,
body[data-theme="brightbee"] .naplan-btn-ghost{
  border-radius:12px !important;
}
/* Question flow */
body[data-theme="brightbee"] .naplan-question-text{ color:var(--bb-navy) !important; }
body[data-theme="brightbee"] .naplan-progress-fill{
  background:linear-gradient(90deg,var(--bb-honey-lt),var(--bb-honey)) !important;
}
body[data-theme="brightbee"] .naplan-option-btn{ border-radius:13px !important; }
/* ── Quiz (question-types.js qt-*) — align submit buttons to app CTAs ──
   qt-submit-btn takes an inline accentColor (burnt-orange default) with white
   text; override to the honey gradient + navy text (AA-safe, consistent). */
body[data-theme="brightbee"] .qt-submit-btn{
  background:linear-gradient(135deg,var(--bb-honey-lt),var(--bb-honey)) !important;
  color:var(--bb-navy) !important;
  box-shadow:0 8px 20px rgba(245,184,0,0.36) !important;
}
body[data-theme="brightbee"] .qt-mc-btn:hover:not(:disabled){
  box-shadow:0 6px 16px rgba(18,23,61,0.08) !important;
}
/* Results + review cards → unified */
body[data-theme="brightbee"] .naplan-stat-card,
body[data-theme="brightbee"] .naplan-review-card{
  border:1px solid var(--bb-line) !important;
  border-radius:16px !important;
  box-shadow:var(--bb-shadow) !important;
}
body[data-theme="brightbee"] .naplan-score-title,
body[data-theme="brightbee"] .naplan-stat-num{ font-family:'Fredoka One',cursive !important; }
/* Soften the loud honey frame around the whole NAPLAN panel → calm surface */
body[data-theme="brightbee"] .naplan-home{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:8px 4px 40px !important;
  max-width:1120px !important;
}
/* Match mock: roomy 3-up card grid + generous card padding */
body[data-theme="brightbee"] #naplan-topic-grid{
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:16px !important;
}
body[data-theme="brightbee"] .naplan-topic-card{
  padding:20px 22px !important;
  border-radius:20px !important;
  border:1px solid #F1EAD9 !important;
  box-shadow:0 14px 34px rgba(18,23,61,0.07) !important;
  transition:transform .15s, box-shadow .15s !important;
}
body[data-theme="brightbee"] .naplan-topic-card:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 20px 44px rgba(18,23,61,0.12) !important;
}
body[data-theme="brightbee"] .ntc-track{ background:#EFE7D6 !important; }
/* Tile title → bold Nunito navy (mock uses sans, not Fredoka) */
body[data-theme="brightbee"] .naplan-topic-name{
  font-family:'Nunito',sans-serif !important;
  font-weight:800 !important;
  color:var(--bb-navy) !important;
  font-size:16px !important;
  line-height:1.3 !important;
}
body[data-theme="brightbee"] .naplan-topic-meta{
  font-family:'Nunito',sans-serif !important;
}
/* Kill any gold frame on the view wrappers */
body[data-theme="brightbee"] #viewNaplan,
body[data-theme="brightbee"] #naplanArea{
  border:none !important; background:transparent !important; box-shadow:none !important;
}