:root{--brand:#0d6efd;--brand-dark:#083f9e;--soft:#eef6ff;--ink:#0f172a;--muted:#64748b}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:#fff}
.hero{background:linear-gradient(135deg,#f7fbff,#e8f2ff);padding:90px 0;border-bottom:1px solid #dbeafe}
.hero h1{font-size:clamp(2.6rem,6vw,5.2rem);font-weight:800;letter-spacing:-.04em}
.search-box{max-width:760px;background:#fff;border-radius:22px;padding:12px;box-shadow:0 22px 70px rgba(13,110,253,.14)}
.stat-card,.course-card,.pricing-card,.dashboard-card{border:1px solid #dbeafe;border-radius:22px;background:#fff;box-shadow:0 14px 40px rgba(15,23,42,.06)}
.course-card{transition:.2s;overflow:hidden;height:100%}.course-card:hover{transform:translateY(-6px);box-shadow:0 24px 55px rgba(13,110,253,.14)}
.course-img{height:170px;background:linear-gradient(135deg,#0d6efd,#73a7ff);display:grid;place-items:center;color:white;font-size:48px}
.badge-soft{background:#e8f2ff;color:#0d6efd;border-radius:999px;padding:7px 12px;font-weight:700}
.filter-panel{background:#fff;border:1px solid #dbeafe;border-radius:18px;padding:18px;box-shadow:0 12px 30px rgba(15,23,42,.05)}
.feature-bar{background:#f8fbff}.feature-pill{padding:16px;background:#fff;border-radius:16px;border:1px solid #dbeafe;font-weight:700}
.footer-link{display:block;color:#fff;text-decoration:none;opacity:.8;margin-bottom:8px}.footer-link:hover{opacity:1}
.whatsapp-float{position:fixed;right:20px;bottom:20px;min-width:58px;height:58px;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 18px;background:#25d366;color:#fff;font-size:26px;text-decoration:none;font-weight:800;box-shadow:0 18px 40px rgba(0,0,0,.2);z-index:20;transition:.2s}.whatsapp-float:hover{color:#fff;background:#1fbd5b;transform:translateY(-3px);box-shadow:0 24px 48px rgba(37,211,102,.35)}.whatsapp-float span{font-size:15px;letter-spacing:.01em}
.course-hero{background:linear-gradient(135deg,#0d6efd,#062e78);color:#fff;padding:60px 0}
.sticky-price{position:sticky;top:96px}.accordion-button:not(.collapsed){background:#e8f2ff;color:#0d6efd}
.admin-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh;background:#f6f9ff}.admin-sidebar{background:#071c47;color:white;padding:22px}.admin-sidebar a{display:block;color:#dbeafe;text-decoration:none;padding:11px 12px;border-radius:10px;margin-bottom:6px}.admin-sidebar a:hover,.admin-sidebar a.active{background:rgba(255,255,255,.12);color:#fff}.admin-main{padding:24px}.status-badge{border-radius:999px;padding:6px 10px;font-weight:700;font-size:.8rem}.status-pending{background:#fff7db;color:#8a5b00}.status-success,.status-paid{background:#dcfce7;color:#166534}.status-failed{background:#fee2e2;color:#991b1b}
.cms-form h4{margin-top:28px;margin-bottom:14px}.cms-row,.cms-module{background:#fbfdff}.bottom-0{bottom:0}
.student-login-modal{border:0;border-radius:24px;overflow:hidden}.student-login-body{position:relative;background:#f8fbff;min-height:420px}.student-login-iframe{display:block;width:100%;height:min(64vh,620px);border:0;background:#f8fbff}.student-login-loader{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;gap:14px;background:rgba(248,251,255,.94);text-align:left}.student-login-fallback{position:absolute;inset:0;z-index:3;display:grid;place-items:center;background:linear-gradient(135deg,rgba(248,251,255,.98),rgba(232,242,255,.98));padding:24px}.student-login-fallback-card{max-width:560px;width:100%;border:1px solid #dbeafe;border-radius:22px;background:#fff;padding:28px;text-align:center;box-shadow:0 24px 60px rgba(15,23,42,.12)}
@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:static}.sticky-price{position:static}.hero{padding:54px 0}}
@media(max-width:767px){.student-login-modal{border-radius:0}.student-login-body{min-height:calc(100vh - 124px)}.student-login-iframe{height:calc(100vh - 124px)}.student-login-loader{padding:20px;text-align:center;flex-direction:column}.whatsapp-float{right:14px;bottom:14px;width:56px;min-width:56px;height:56px;padding:0;border-radius:50%}.whatsapp-float span{display:none}}
@media(max-width:991px){.navbar{padding:10px 0}.navbar-brand{font-size:1.45rem;line-height:1.1}.navbar-toggler{width:48px;height:44px;border:1px solid #cbd5e1;border-radius:14px;padding:6px;box-shadow:0 8px 18px rgba(15,23,42,.10)}.navbar-toggler:focus{box-shadow:0 0 0 .18rem rgba(13,110,253,.18)}.navbar-collapse{margin-top:12px;padding:14px;border:1px solid #dbeafe;border-radius:22px;background:#fff;box-shadow:0 18px 44px rgba(15,23,42,.10)}.navbar-nav{gap:2px}.navbar-nav .nav-link{font-size:1rem;padding:10px 12px;border-radius:12px;color:#334155}.navbar-nav .nav-link:hover{background:#eef6ff;color:#0d6efd}.nav-actions{width:100%;display:grid!important;grid-template-columns:1fr 1fr;gap:10px!important;margin-top:12px;padding-top:12px;border-top:1px solid #e2e8f0}.nav-phone{grid-column:1/-1;display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:.95rem!important}.nav-actions .btn{width:100%;min-height:44px;display:flex;align-items:center;justify-content:center}.nav-actions .student-login-trigger{grid-column:1/-1}}
@media(max-width:767px){.hero{padding:44px 0 52px}.hero h1{font-size:clamp(2.35rem,12vw,3.8rem);line-height:.98;letter-spacing:-.055em}.hero .lead{font-size:1.15rem;line-height:1.45}.badge-soft{font-size:.9rem;padding:8px 12px}.search-box{border-radius:18px;flex-direction:column}.search-box .btn{width:100%}.whatsapp-float{right:16px;bottom:18px;width:52px;min-width:52px;height:52px;font-size:25px}}
@media(max-width:420px){.navbar-brand{font-size:1.3rem}.hero h1{font-size:3rem}.nav-actions{grid-template-columns:1fr}}
