/* HAMOU MATH Future Learning OS v51 — coherent visual system, CSS-only, keeps app logic intact */
:root{--hm-ink:#101d32;--hm-navy:#0b1020;--hm-blue:#2563eb;--hm-cyan:#06b6d4;--hm-violet:#7c3aed;--hm-gold:#d9b66f;--hm-paper:#f5f7fb;--hm-line:#dfe6f0;--hm-muted:#66758b;--hm-radius:20px;--hm-shadow:0 14px 40px rgba(18,35,64,.08)}
html{scroll-behavior:smooth;scroll-padding-top:88px}body{font-family:"Tajawal","Cairo","Noto Sans Arabic",system-ui,sans-serif;letter-spacing:0;color:var(--text,#172238);background:var(--bg,#f5f7fb)}
:where(button,a,input,select,textarea){transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
:where(button,a,input,select,textarea):focus-visible{outline:3px solid #06b6d4!important;outline-offset:3px!important}
:where(.topbar,header,.navbar,.site-header,.app-header){backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
:where(.topbar,.site-header,.app-header){border-bottom:1px solid #dbe4f0;box-shadow:0 6px 24px #0b1c3509}
:where(.brand,.logo,.brand-name){font-weight:900;letter-spacing:-.025em}
:where(.primary-btn,.btn-primary,.button-primary,.cta-primary,.subscription-btn){background:linear-gradient(120deg,#2563eb,#4f46e5)!important;color:#fff!important;border:1px solid #ffffff30!important;border-radius:14px!important;box-shadow:0 8px 20px #2563eb24!important;font-weight:800}
:where(.primary-btn,.btn-primary,.button-primary,.cta-primary,.subscription-btn):hover{transform:translateY(-2px);box-shadow:0 12px 28px #2563eb35!important}
:where(.secondary-btn,.btn-secondary,.button-secondary){border:1px solid #cdd8e7!important;border-radius:14px!important;background:#fff!important;color:#1b2c46!important}
:where(.container,.page-container,.main-container){max-width:1240px}
:where(.card,.panel,.feature-card,.tool-card,.pricing-card,.growth-card,.resource-card,.lesson-card,.exercise-card,.dashboard-card,.stat-card,.content-card,.surface-card){border:1px solid var(--hm-line,#dfe6f0);border-radius:var(--hm-radius)!important;box-shadow:var(--hm-shadow);background:var(--surface,#fff);overflow-wrap:anywhere}
:where(.card,.panel,.feature-card,.tool-card,.pricing-card,.growth-card,.resource-card,.lesson-card,.exercise-card,.dashboard-card,.stat-card,.content-card,.surface-card):hover{border-color:#c6d6ed}
:where(input,select,textarea,.form-control){border-radius:12px!important;border-color:#cfd9e7!important;min-height:42px}
:where(input,select,textarea,.form-control):focus{border-color:#2563eb!important;box-shadow:0 0 0 4px #2563eb14!important}
:where(table){border-collapse:separate;border-spacing:0;overflow:hidden;border-radius:14px}th{background:#eef3fa}td,th{border-color:#e2e8f0}
:where(.badge,.chip,.tag,.eyebrow){border-radius:999px}
:where(h1,h2,h3,h4){letter-spacing:-.025em;line-height:1.35;text-wrap:pretty}
:where(.hero,.page-hero,.dashboard-hero){isolation:isolate;position:relative;overflow:hidden}
body.hm49-home .topbar{background:#0b1020f5!important;border-bottom:1px solid #ffffff18!important}
body.hm49-home .brand,body.hm49-home .desktop-nav .nav-link,body.hm49-home .nav-btn{color:#f4f7ff!important}
body.hm49-home .brand>span:last-child{background:linear-gradient(100deg,#fff,#b9d8ff 65%,#77e4ef);-webkit-background-clip:text;background-clip:text;color:transparent}
body.hm49-home .brand-badge{background:linear-gradient(140deg,#dbeafe,#93c5fd)!important;color:#102342!important;border-radius:12px!important;box-shadow:none!important}
body.hm49-home .hero{background:radial-gradient(ellipse at 12% 12%,#233e75 0,transparent 38%),radial-gradient(ellipse at 86% 85%,#123d53 0,transparent 35%),linear-gradient(120deg,#0b1020,#111e38 58%,#0a2637)!important;padding-block:clamp(52px,7vw,88px)!important}
body.hm49-home .hero h1{font-size:clamp(34px,5vw,62px)!important;line-height:1.3!important;color:#f8fbff!important}
body.hm49-home .hero h1 em{background:linear-gradient(100deg,#fff,#a8d7ff 65%,#6ee7f0);-webkit-background-clip:text;background-clip:text;color:transparent!important}
body.hm49-home .hero-copy>p{color:#d1dced!important;line-height:2!important}
body.hm49-home .hero .eyebrow{background:#ffffff0d!important;border:1px solid #ffffff28!important;color:#a9e8f2!important}
body.hm49-home .hero .primary-btn{background:linear-gradient(120deg,#60a5fa,#2563eb)!important}
body.hm49-home .hero .secondary-btn{color:#f5f8ff!important;border-color:#ffffff40!important;background:#ffffff0b!important}
body.hm49-home .hm49-visual,body.hm49-home .hero-card{border:1px solid #a9c7f044!important;border-radius:26px!important;background:linear-gradient(145deg,#172b4a,#0d192d 70%,#102f3e)!important;box-shadow:0 28px 80px #0005,inset 0 1px #ffffff20!important}
body.hm49-home .hm49-equation{border-color:#56d6e45e!important;background:#0b1829e8!important}
body.hm49-home .hm49-equation strong{color:#9be8f1!important}
body.hm49-home .hm49-pathways{background:linear-gradient(180deg,#f5f8fc,#edf3fa)!important}
body.hm49-home .hm49-path{border:1px solid #dbe4ef!important;border-radius:20px!important;background:#fff!important;box-shadow:0 10px 28px #1223440a!important}
body.hm49-home .hm49-path:hover{transform:translateY(-4px)!important;border-color:#a9c6ed!important;box-shadow:0 18px 38px #12234414!important}
body.hm49-home .hm49-path-icon{background:linear-gradient(145deg,#172b4a,#2563eb)!important;color:#eaf7ff!important;border:0!important}
body.hm49-home #subscriptions{background:linear-gradient(180deg,#edf3fa,#f9fbfe)!important}
body.hm49-home footer,body.hm49-home .site-footer{background:#0b1020!important;color:#d9e5f5!important;border-top:1px solid #ffffff16!important}
/* consistent theme across tools, teacher studio, library, AI, BAC, account and help pages */
body:not(.hm49-home) :where(header,.topbar,.navbar,.site-header,.app-header){background:color-mix(in srgb,var(--surface,#fff) 94%,transparent)}
body:not(.hm49-home) :where(.sidebar,.app-sidebar,.side-nav){border-inline-end:1px solid var(--hm-line);background:var(--surface,#fff)}
body:not(.hm49-home) :where(.page-title,.page-heading){font-weight:900;color:var(--text,#172238)}
body:not(.hm49-home) :where(.btn,.button){border-radius:12px}
@media(max-width:820px){:where(.container,.page-container,.main-container){width:min(100% - 28px,1240px)}:where(.card,.panel,.feature-card,.tool-card,.pricing-card,.growth-card,.resource-card,.lesson-card,.exercise-card,.dashboard-card,.stat-card,.content-card,.surface-card){border-radius:16px!important}body.hm49-home .hero{padding-block:42px!important}body.hm49-home .hero-grid{gap:26px!important}}
@media(max-width:520px){body.hm49-home .hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}body.hm49-home .hero-actions>*{width:100%;justify-content:center}body.hm49-home .container{width:calc(100% - 28px)!important}:where(input,select,textarea){max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
