@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');:root{--navy:#173b68;--blue:#2864a4;--pale:#edf3f9;--ink:#192b40;--muted:#758397;--line:#e5eaf0}*{box-sizing:border-box}body{margin:0;background:#f7f9fc;color:var(--ink);font:15px 'DM Sans',sans-serif}header{height:72px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(calc((100% - 1160px)/2),25px);position:sticky;top:0;z-index:5}.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);font-weight:800}.logo>span:first-child{display:none}.logo:before{content:'W';border:1.5px solid var(--navy);border-radius:9px;padding:8px 12px;font:800 20px Manrope}.logo small{display:block;font-size:8px;letter-spacing:1.2px;color:#8b98a8}nav{display:flex;gap:6px}button{border:1px solid var(--line);background:white;color:var(--navy);padding:10px 14px;border-radius:7px;cursor:pointer;font:600 12px 'DM Sans'}button:hover{border-color:#9eb4cd;background:#f7faff}.primary{background:var(--navy);border-color:var(--navy);color:white}.primary:hover{background:#245184;color:white}main{max-width:1160px;margin:42px auto;padding:0 24px;min-height:70vh}.page{display:none}.page.active{display:block}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:38px;letter-spacing:-1.5px;margin:10px 0}h2{font-size:22px}p{line-height:1.7}.muted{color:var(--muted);font-size:12px}.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:center;padding:35px 0 60px}.hero h1{font-size:58px;line-height:1.1}.hero em{color:var(--blue);font-style:normal}.hero p{color:var(--muted);max-width:550px}.hero aside,.panel,article{background:white;border:1px solid var(--line);border-radius:12px;padding:25px;box-shadow:0 10px 30px #173b680b}.hero aside h2{font-size:48px;color:var(--navy);margin:20px 0 0}.stats{display:flex;gap:40px;border-top:1px solid var(--line);padding-top:15px;margin-top:15px}.stats b{display:block;font-size:22px;color:var(--navy)}.stats small{font-size:11px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0 32px}.cards article{cursor:pointer}.cards article>b{font-size:26px;color:var(--blue);background:var(--pale);padding:8px 12px;border-radius:8px}.cards p{color:var(--muted);font-size:12px}.panel{margin:18px 0}.panel label{display:block;font-size:12px;font-weight:600;margin:12px 0}.panel input,.panel textarea,.panel select{display:block;width:100%;padding:10px;border:1px solid var(--line);border-radius:7px;margin-top:6px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.answers{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.answers button{text-align:left;padding:14px}.answers button.selected{border:2px solid var(--blue);background:var(--pale)}.notice{padding:14px;background:#eef3f8;border-radius:8px;color:var(--muted);font-size:12px}.testhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.testhead strong{font-size:20px;color:var(--navy)}.testgrid{display:grid;grid-template-columns:1fr 250px;gap:16px}.bar{height:6px;background:#edf1f5;border-radius:8px;margin:15px 0 25px}.bar i{display:block;background:var(--blue);height:100%;width:0}.controls{display:flex;justify-content:space-between;gap:8px;margin-top:25px}.navigator{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:15px 0}.navigator button{padding:9px 0}.navigator .answered{background:#e8f1fb;border-color:#c9dcef}.navigator .marked{background:#fff1df;border-color:#f0d2a8}.navigator .current{outline:2px solid var(--navy)}.finish{width:100%;background:#f0f3f7}.result{text-align:center;max-width:680px;margin:20px auto;padding:35px}.score{font:800 46px Manrope;color:var(--navy);margin:25px}.result #reviewList{text-align:left;margin-top:25px}.review-item{padding:12px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.6}footer{border-top:1px solid var(--line);padding:22px;text-align:center;color:#99a4b2;font-size:11px}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--navy);color:white;padding:12px 18px;border-radius:8px;display:none}.bar{overflow:hidden}@media(max-width:800px){header{height:auto;min-height:70px;align-items:flex-start;flex-direction:column;padding:12px 18px}nav{flex-wrap:wrap}nav button{padding:8px}.hero{grid-template-columns:1fr}.hero h1{font-size:44px}.cards{grid-template-columns:1fr}.testgrid{grid-template-columns:1fr}.testgrid aside{order:-1}.stats{gap:20px}.answers{grid-template-columns:1fr}main{margin:25px auto;padding:0 15px}.controls{flex-wrap:wrap}.controls button{flex:1}}
.gate{position:fixed;inset:0;background:rgba(12,29,49,.48);display:grid;place-items:center;padding:20px;z-index:30}.gate.hidden{display:none}.gate-card{width:min(100%,420px);background:white;border-radius:14px;padding:30px;box-shadow:0 24px 80px #10243f33;position:relative}.gate-card h2{margin:9px 0}.gate-card form{margin-top:20px}.gate-card label{display:block;font-size:12px;font-weight:700}.gate-card input{display:block;width:100%;padding:12px;border:1px solid var(--line);border-radius:7px;margin:8px 0 13px}.gate-card form button{width:100%}.gate-close{position:absolute;right:16px;top:15px;border:0;font-size:23px;padding:2px 9px}.error{color:#b64e48;font-size:12px;min-height:15px}.admin-top{display:flex;justify-content:space-between;align-items:center}

.exam-group{margin-top:22px}.exam-group-head{margin:28px 0 8px}.exam-group-head h2{margin:7px 0}.real-group{margin-top:42px;padding-top:28px;border-top:2px solid var(--line)}.real-group .exam-group-head>small{font-size:10px;font-weight:800;letter-spacing:1.5px;color:var(--blue)}.real-exam-card{border-top:3px solid var(--blue)}.real-exam-card>b{display:inline-block;background:var(--pale);color:var(--blue);font-size:13px;letter-spacing:.4px;padding:9px 12px;border-radius:7px}

/* WEST PREP 6.3 — restrained, student-made gamification */
:root{--navy:#203b35;--blue:#3f7565;--pale:#edf3ee;--ink:#24332f;--muted:#78837c;--line:#e4e8e1;--accent:#d78a42;--paper:#f8f8f3}
body{background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
h1,h2,h3{font-family:Arial,Helvetica,sans-serif;letter-spacing:-.6px}
header{background:#fbfcf8;border-bottom:1px solid #e5e9e2}
.logo{color:var(--navy)}.logo:before{border-color:var(--blue);border-radius:6px;color:var(--blue)}
nav button{border-color:transparent;background:transparent;color:#52645c;border-radius:5px}nav button:hover,nav button:focus{background:#edf2eb;border-color:#dce5dc}
main{margin-top:34px}.hero{gap:55px;padding:34px 0 48px}.hero h1{font-size:56px;line-height:1.08;font-weight:800}.hero em{color:var(--blue)}.hero p{font-size:16px;max-width:500px;color:#68766e}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:800;color:#748278}.hero .primary,.primary{background:var(--navy);border-color:var(--navy);border-radius:5px}.hero button:not(.primary){border-radius:5px}.hero-note{margin-top:28px;color:#78837c;font-size:12px}.note-mark{color:var(--accent);font-size:17px;margin-right:8px}
.level-card{background:#fff;border:1px solid #e4e8e1;border-radius:9px;padding:23px 25px;box-shadow:0 5px 16px #203b3509}.level-top{display:flex;align-items:center;gap:12px}.level-icon{width:42px;height:42px;border-radius:6px;background:#edf3ee;color:var(--blue);display:grid;place-items:center;font-weight:800;font-size:19px}.level-top small,.achievement-row small{display:block;color:var(--muted);font-size:10px;letter-spacing:.5px}.level-top h2{font-size:20px;margin:3px 0}.level-number{margin-left:auto;color:#b6c0b7;font-size:28px;font-weight:800}.xp-line{display:flex;justify-content:space-between;margin:24px 0 8px;font-size:11px}.xp-line b{color:var(--blue)}.xp-line span{color:var(--muted)}.xp-track{height:7px;background:#edf0eb;border-radius:10px;overflow:hidden}.xp-track i{display:block;width:0;height:100%;background:var(--accent);border-radius:10px;transition:width .25s}.level-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px;padding-top:17px;border-top:1px solid var(--line)}.level-stats b{display:block;font-size:21px;color:var(--navy)}.level-stats small{font-size:10px;color:var(--muted)}.achievement-row{display:flex;gap:11px;align-items:center;border-top:1px solid var(--line);margin-top:17px;padding-top:15px}.achievement-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fbf1e5;color:#b97835}.achievement-row b{font-size:11px;display:block;margin-bottom:3px}.achievement-row small{letter-spacing:0;font-size:10px}
.section-row{display:flex;justify-content:space-between;align-items:end;margin:4px 0}.section-row h2{margin:5px 0 0}.section-aside{font-size:11px;color:#89948c}.home-cards{margin-top:16px}.home-cards article{border-radius:7px;box-shadow:none;border:1px solid #e3e8e1;padding:22px;transition:transform .15s,border-color .15s}.home-cards article:hover{transform:translateY(-2px);border-color:#b9cbbd}.home-cards article>b{background:transparent;color:#c18a51;padding:0;font-size:12px;letter-spacing:1px}.home-cards h3{font-size:18px;margin:16px 0 5px}.home-cards p{min-height:42px;font-size:12px;color:#78837c}.card-link{display:inline-block;margin-top:9px;color:var(--blue);font-size:11px;font-weight:700}
.cards article,.panel,.hero aside{box-shadow:0 4px 16px #203b3508;border-radius:8px}.cards article>b{background:#edf3ee;color:var(--blue)}.real-group{border-color:#dfe6df}.real-group .exam-group-head>small{color:#a56e34}.real-exam-card{border-top:3px solid var(--accent)}.real-exam-card>b{background:#fbf1e5;color:#9b672f}.notice{background:#f0f2ec;color:#78837c}.answers button.selected{border-color:var(--blue);background:#edf3ee}.bar i{background:var(--accent)}.navigator .current{outline-color:var(--accent)}.navigator .answered{background:#edf3ee;border-color:#cfddd1}.testhead strong{color:var(--blue)}.score{color:var(--blue)}footer{background:#f4f5ef;color:#89948c;border-color:#e6e9e2}
@media(max-width:800px){.hero{gap:25px}.hero h1{font-size:44px}.section-row{align-items:flex-start;gap:10px;flex-direction:column}.level-card{padding:19px}}


/* WEST PREP 6.4 — Premium, restrained homepage */
.hero-premium{grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);align-items:center;gap:42px;padding:30px 0 38px}
.hero-premium .hero-copy{max-width:650px}
.hero-premium .hero-copy>p{max-width:590px;line-height:1.8;font-size:16px;color:#68766e}
.hero-premium h1{font-size:clamp(42px,5vw,61px);line-height:1.06;letter-spacing:-1.8px}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.hero-actions button{padding:13px 18px;border-radius:5px;font-weight:700}
.hero-actions .hero-secondary{background:#fff;border:1px solid #dce4dc;color:var(--navy)}
.hero-visual{position:relative;min-height:355px;border-radius:10px;overflow:hidden;background:#dfe7df;box-shadow:0 12px 30px #203b3514}
.campus-photo{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(20,38,34,.04),rgba(20,38,34,.02)),url('campus-photo.jpg');background-size:cover;background-position:77% center;transform:scale(1.01)}
.photo-caption{position:absolute;left:16px;right:16px;bottom:15px;padding:13px 15px;background:rgba(251,252,248,.94);border:1px solid rgba(255,255,255,.75);border-radius:6px;backdrop-filter:blur(5px)}
.photo-caption span{display:block;font-size:9px;letter-spacing:1.5px;color:#748278;font-weight:800;margin-bottom:4px}.photo-caption b{font-size:14px;color:#203b35}
.about-intro{padding:38px 0 34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:34px}
.about-heading{max-width:720px}.about-heading h2{font-size:30px;margin:7px 0 10px}.about-heading>p{color:#68766e;line-height:1.75;font-size:14px}
.about-points{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:24px}
.about-points article{padding:18px 19px;background:#fff;border:1px solid #e3e8e1;border-radius:7px}
.about-points article>span{font-size:11px;letter-spacing:1px;color:#b47c42;font-weight:800}
.about-points h3{font-size:16px;margin:12px 0 6px}.about-points p{font-size:12px;line-height:1.7;color:#78837c;margin:0}
.independent-note{margin:18px 0 0;font-size:10px;line-height:1.6;color:#89948c}
@media(max-width:800px){.hero-premium{grid-template-columns:1fr;gap:25px}.hero-visual{min-height:260px;order:-1}.hero-premium h1{font-size:43px}.about-points{grid-template-columns:1fr}.about-intro{padding:28px 0}.hero-actions button{flex:1}}


/* WEST PREP 6.5 — restrained navy & white portfolio theme */
:root{--navy:#102f59;--blue:#245b9a;--pale:#edf3fa;--ink:#172b43;--muted:#718198;--line:#dfe7f0;--accent:#c18b45;--paper:#f5f8fc}
body{background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
h1,h2,h3{font-family:Arial,Helvetica,sans-serif;letter-spacing:-.55px}
header{background:#fff;border-bottom:1px solid #dce5ef;box-shadow:0 2px 12px rgba(16,47,89,.04)}
.logo{color:var(--navy)}.logo:before{border-color:var(--navy);color:var(--navy);border-radius:7px}
nav button{background:#fff;color:#23466f;border:1px solid #e1e8f0;border-radius:7px}nav button:hover,nav button:focus{background:#edf3fa;border-color:#b9cce1}
main{margin-top:34px}
.hero-premium{grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:42px;padding:30px 0 42px}
.hero-premium h1{color:#142d4a;font-weight:800}.hero-premium h1 em{color:#2865a4}
.hero-premium .hero-copy>p{color:#64758b}
.eyebrow{color:#54749a}
.hero-actions .primary,.primary{background:#153d6b;border-color:#153d6b;color:#fff}.hero-actions .primary:hover,.primary:hover{background:#245b91}
.hero-actions .hero-secondary{background:#fff;border:1px solid #cdd9e7;color:#173e6c}
.hero-note{color:#64758b}
.hero-visual{background:#dce7f3;border:1px solid #d6e1ed;box-shadow:0 16px 36px rgba(16,47,89,.12);border-radius:10px}
.campus-photo{background-image:linear-gradient(180deg,rgba(10,32,59,.03) 45%,rgba(8,27,51,.42)),url('campus-photo.jpg');background-size:cover;background-position:center 52%;transform:none}
.photo-caption{background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.9);border-radius:7px;backdrop-filter:blur(5px)}
.photo-caption span{color:#55769b}.photo-caption b{color:#153b68}
.about-intro{border-color:#dfe7f0}
.about-heading>p{color:#63758b}
.about-points article{background:#fff;border:1px solid #dfe7f0;border-radius:8px;box-shadow:0 5px 18px rgba(16,47,89,.045)}
.about-points article>span{color:#b27b37}.about-points p{color:#718198}
.independent-note{color:#7b899a}
.panel,article,.hero aside{background:#fff;border-color:#dfe7f0;box-shadow:0 8px 24px rgba(16,47,89,.045)}
button{color:#173e6c;border-color:#dfe7f0}button:hover{background:#f0f5fb;border-color:#b8cce2}
.stats b,.testhead strong,.score{color:#173e6c}
.bar{background:#e7edf4}.bar i{background:#2865a4}
.answers button.selected{border-color:#2865a4;background:#edf3fa}
.navigator .answered{background:#eaf2fb;border-color:#c6d9ed}.navigator .marked{background:#fff4e5;border-color:#ead2ae}
.real-group{border-color:#dce5ef}.real-group .exam-group-head>small{color:#2865a4}.real-exam-card{border-top-color:#2865a4}.real-exam-card>b{background:#edf3fa;color:#245b9a}
.notice{background:#edf3fa;color:#61758d}
footer{border-color:#dfe7f0;color:#8290a1}
.gate-card{background:#fff}.gate-card h2{color:#173e6c}
#toast{background:#153d6b}
@media(max-width:800px){.hero-premium{grid-template-columns:1fr}.hero-visual{min-height:280px;order:-1}}

/* Leaderboard: make the current learner easy to identify */
#leaders .leader-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:13px 14px;margin:7px 0;border:1px solid transparent;border-radius:9px}
#leaders .leader-rank{color:#718198;font-variant-numeric:tabular-nums}
#leaders .leader-you{background:#eaf2ff;border:1px solid #8fb5e8;box-shadow:inset 4px 0 0 #2865a4;color:#153d6b}
#leaders .leader-you b,#leaders .leader-you strong{color:#174f91}
#leaders .you-tag{margin-left:auto;padding:4px 9px;border-radius:999px;background:#174f91;color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em}

/* WEST PREP brand identity 6.8 */
.logo{gap:9px;min-width:205px}.logo:before{content:none!important}.logo img{width:43px;height:43px;object-fit:contain;border-radius:9px}.logo>span:first-child{display:block;font:800 16px Manrope,sans-serif;letter-spacing:.1px}.logo>span small{font:600 7px 'DM Sans',sans-serif;letter-spacing:1.1px;margin-top:2px}.home-brand-mark{display:flex;justify-content:center;margin:0 auto 14px;max-width:180px}.home-brand-mark img{display:block;width:100%;height:auto;max-height:150px;object-fit:contain}.site-footer{display:flex;align-items:center;justify-content:center;gap:18px;text-align:left;padding:24px 18px}.site-footer img{width:76px;height:76px;object-fit:contain}.site-footer strong{color:var(--navy);font:800 15px Manrope,sans-serif}.site-footer p{margin:4px 0;color:var(--muted);font-size:11px}.site-footer small{display:block;color:var(--muted);font-size:10px}.site-footer .copyright{margin-top:5px}.gate-logo{display:block;width:105px;height:105px;object-fit:contain;margin:0 auto 10px}.gate-card{text-align:left}
@media(max-width:800px){.logo{min-width:0}.home-brand-mark{max-width:130px}.site-footer{flex-direction:column;text-align:center;gap:8px}.site-footer img{width:66px;height:66px}}

.practice-subject-group{margin:30px 0 42px}.practice-subject-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px}.practice-subject-heading h2{margin:0;color:#18365d}.practice-subject-heading span{color:#71839b;font-size:13px}.practice-test-card{border-top:3px solid #2d69a7}.practice-test-card>b{display:inline-block;background:#edf4fb;color:#28629d;padding:8px 11px;border-radius:8px;font-size:12px;letter-spacing:.04em}.practice-test-card h3{margin:14px 0 8px}.practice-test-card p{min-height:42px}.practice-test-card .primary{margin-top:8px}


/* WEST PREP 7.1 — clean, responsive practice catalogue */
#subjects.cards{display:block;margin:30px 0 38px;}
.practice-subject-group{margin:0 0 42px;padding:0 0 34px;border-bottom:1px solid #dce5ef;}
.practice-subject-group:last-child{border-bottom:0;margin-bottom:0;}
.practice-subject-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 18px;padding-bottom:14px;border-bottom:1px solid #e7edf4;}
.practice-subject-heading>div{display:flex;flex-direction:column;gap:5px;}
.practice-subject-heading .practice-kicker{font-size:10px;font-weight:800;letter-spacing:.14em;color:#6683a5;}
.practice-subject-heading h2{font-size:25px;line-height:1.2;color:#173e6c;margin:0;}
.practice-count{display:inline-flex;align-items:center;gap:7px;color:#71839b;background:#edf3fa;border:1px solid #dce7f2;border-radius:999px;padding:7px 12px;font-size:12px;white-space:nowrap;}
.practice-count i,.practice-test-card p i{font-style:normal;color:#a2b1c2;}
.practice-test-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0;align-items:stretch;}
.practice-test-grid .practice-test-card{box-sizing:border-box;min-width:0;min-height:248px;padding:22px;display:flex;flex-direction:column;border:1px solid #dce5ef;border-top:3px solid #2865a4;border-radius:12px;background:#fff;box-shadow:0 5px 18px rgba(16,47,89,.045);transition:transform .16s ease,box-shadow .16s ease;}
.practice-test-grid .practice-test-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(16,47,89,.09);}
.practice-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.practice-card-top b{display:inline-flex;align-items:center;background:#edf3fa;color:#245b9a;padding:6px 10px;border-radius:6px;font-size:10px;letter-spacing:.1em;}
.practice-card-top>span{font-size:10px;font-weight:700;letter-spacing:.08em;color:#91a0b3;}
.practice-test-grid .practice-test-card h3{font-size:19px;line-height:1.3;color:#1b3049;margin:17px 0 7px;}
.practice-test-grid .practice-test-card p{font-size:12px;color:#6e8098;margin:0 0 8px;min-height:0;}
.practice-topics{font-size:12px;line-height:1.65;color:#8492a5;min-height:40px;margin-bottom:18px;}
.practice-test-grid .practice-test-card .primary{margin-top:auto;align-self:flex-start;min-width:155px;padding:11px 15px;display:flex;justify-content:space-between;align-items:center;gap:15px;}
.practice-test-grid .practice-test-card .primary span{font-size:16px;}
@media(max-width:900px){.practice-test-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){#subjects.cards{margin-top:22px}.practice-subject-heading{align-items:flex-start;flex-direction:column;gap:10px}.practice-subject-heading h2{font-size:22px}.practice-test-grid{grid-template-columns:1fr;gap:12px}.practice-test-grid .practice-test-card{min-height:0;padding:19px}.practice-topics{min-height:0}}
