/* SSM Learning Portal — warm identity refresh matching original school website */
:root{
  --ink:#1A0F0A;
  --ink-2:#2A1B12;
  --ink-3:#6E5B4A;
  --paper:#FBF6EC;
  --paper-2:#F5EDE0;
  --cream:#FFFCF6;
  --moss:#6B1E2C;
  --moss-2:#4A1320;
  --leaf:#8B2635;
  --amber:#E87722;
  --amber-2:#F2A65A;
  --terra:#C45F12;
  --rust:#8C3A1E;
  --sky:#B8862B;
  --line:#E5D9C4;
  --shadow:0 14px 38px rgba(74,19,32,.10),0 3px 8px rgba(74,19,32,.06);
  --shadow-lg:0 24px 70px rgba(74,19,32,.18),0 12px 26px rgba(74,19,32,.08);
}
body{
  background:
    radial-gradient(circle at top left,rgba(232,119,34,.12),transparent 31rem),
    radial-gradient(circle at top right,rgba(107,30,44,.09),transparent 31rem),
    linear-gradient(180deg,#FFFCF6,#FBF6EC 52%,#F5EDE0) !important;
}
body::before{
  content:'';
  position:fixed;
  inset:0;
  background-image:
    linear-gradient(rgba(107,30,44,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(107,30,44,.02) 1px,transparent 1px);
  background-size:34px 34px;
  pointer-events:none;
  z-index:-1;
}
::selection{background:var(--amber);color:var(--cream)!important;}
.progress-bar{background:linear-gradient(90deg,var(--amber),var(--moss)) !important;}
nav.topbar{
  background:rgba(255,252,246,.92) !important;
  backdrop-filter:blur(20px) saturate(160%) !important;
  -webkit-backdrop-filter:blur(20px) saturate(160%) !important;
  border-bottom:1px solid rgba(229,217,196,.9) !important;
  box-shadow:0 12px 36px rgba(74,19,32,.08);
}
.brand-mark{background:linear-gradient(135deg,var(--moss),var(--moss-2)) !important;color:var(--amber-2)!important;box-shadow:0 12px 24px rgba(107,30,44,.23) !important;}
.brand-text span{color:var(--moss)!important;}
.brand-text small{color:var(--terra) !important;}
.nav-links a,.nav-links button{color:var(--ink-3)!important;font-weight:700!important;}
.nav-links a:hover,.nav-links button:hover{color:var(--moss)!important;}
.nav-links a::after,.nav-links button::after{background:var(--amber)!important;}
.nav-cta{background:linear-gradient(135deg,var(--amber),var(--terra)) !important;color:var(--cream) !important;border-radius:999px !important;box-shadow:0 12px 24px rgba(232,119,34,.24)!important;}
.menu-btn span{background:var(--moss)!important;}

.home-hero{
  background:
    linear-gradient(90deg,rgba(74,19,32,.95),rgba(107,30,44,.84) 48%,rgba(196,95,18,.42)),
    url('../assets/school_photo.jpg') center/cover no-repeat !important;
  min-height:88vh !important;
}
.home-hero::before{
  background:
    radial-gradient(circle at 18% 20%,rgba(232,119,34,.34),transparent 20rem),
    radial-gradient(circle at 85% 25%,rgba(234,192,120,.18),transparent 20rem),
    linear-gradient(180deg,transparent 70%,var(--paper)) !important;
}
.home-meta .chip{background:rgba(255,252,246,.13) !important;color:var(--cream) !important;border-color:rgba(255,252,246,.23) !important;backdrop-filter:blur(12px);}
.home-hero h1{color:#fff !important;background:none !important;text-shadow:0 15px 45px rgba(0,0,0,.30);}
.home-hero h1 .accent{color:var(--amber-2) !important;background:none !important;}
.home-hero p.lead{color:rgba(255,252,246,.88) !important;text-shadow:0 8px 24px rgba(0,0,0,.25);}
.class-pill{border-radius:999px !important;background:rgba(255,252,246,.14) !important;color:var(--cream) !important;border-color:rgba(255,252,246,.28) !important;backdrop-filter:blur(12px);}
.class-pill.active{background:var(--cream) !important;color:var(--moss) !important;border-color:var(--cream) !important;box-shadow:0 18px 40px rgba(0,0,0,.18) !important;}
.class-pill:not(.disabled):hover{background:var(--amber) !important;color:var(--cream)!important;border-color:var(--amber)!important;}
.class-pill.disabled{opacity:.48 !important;}
.subjects-section,.features{background:transparent !important;}
.section-head{align-items:end;}
.section-num{color:rgba(107,30,44,.10) !important;}
.eyebrow{color:var(--terra)!important;font-weight:700!important;}
h1,h2,h3,h4,h5{color:var(--moss)!important;}
.subj-card,.feat,.test-config-card,.note-card,.mcq,.definition,.case,.accordion,.visual-notes,.quiz-header,.test-card,.result-hero,.chapter-section,.answer-card,.exercise-card{
  background:rgba(255,252,246,.94) !important;
  border:1px solid var(--line) !important;
  border-radius:24px !important;
  box-shadow:0 16px 42px rgba(74,19,32,.08) !important;
}
.subj-card:hover,.feat:hover,.note-card:hover{box-shadow:0 24px 70px rgba(74,19,32,.14) !important;border-color:rgba(232,119,34,.40)!important;}
.subj-card.geo .subj-banner,.subj-card.hist .subj-banner,.subj-card.civ .subj-banner,.subj-card.sci .subj-banner,.subj-card.math .subj-banner{background:linear-gradient(135deg,var(--moss),var(--amber)) !important;}
.chapter-row.ready .chapter-num,.chapter-num,.feat .feat-ico{background:linear-gradient(135deg,var(--amber),var(--terra)) !important;color:var(--cream) !important;}
.chapter-row.ready:hover{border-color:var(--amber)!important;background:rgba(232,119,34,.08)!important;}
.chapter-row.ready .chapter-title,.chapter-card h3{color:var(--moss)!important;}
.start-test-btn,.primary-btn,.quiz-btn,.test-config-pill.selected,.option.selected,.option.correct{background:linear-gradient(135deg,var(--amber),var(--terra)) !important;color:var(--cream)!important;border-color:var(--amber)!important;}
.test-config-pill,.option{border-color:var(--line)!important;background:var(--cream)!important;color:var(--ink-2)!important;}
.option.wrong{background:#FBE9E7!important;color:#8A1C12!important;border-color:#EAA39D!important;}
footer{background:linear-gradient(135deg,var(--moss-2),#2B0C14 65%,#17070B) !important;color:rgba(251,246,236,.76) !important;}
footer h4,.foot-brand b{color:var(--cream)!important;}
footer a,footer p{color:rgba(251,246,236,.72)!important;}
.foot-bottom{border-top-color:rgba(251,246,236,.12) !important;}
@media(max-width:780px){
  .home-hero{min-height:750px !important;padding-top:125px !important;}
  .nav-links{background:var(--cream) !important;border:1px solid var(--line) !important;box-shadow:var(--shadow-lg) !important;border-radius:0 0 24px 24px !important;}
  .nav-links a,.nav-links button{color:var(--ink-3) !important;}
}
