:root{--primary:#6c4cff;--primary2:#9a7bff;--ink:#111827;--muted:#667085;--soft:#f7f8fc;--card:#fff;--line:#e7eaf2;--green:#16a36a;--dark:#0d1020;--shadow:0 18px 50px rgba(18,24,40,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}a{text-decoration:none;color:inherit}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;border-bottom:1px solid rgba(231,234,242,.9);background:rgba(255,255,255,.92);backdrop-filter:blur(18px);position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;gap:10px;font-weight:900;font-size:20px;letter-spacing:-.5px}.brand img{width:42px;height:42px;object-fit:contain}.nav nav{display:flex;align-items:center;gap:5px}.nav nav>a{padding:10px 14px;color:#475467;font-weight:700}.nav-btn,.btn{display:inline-block;background:linear-gradient(135deg,var(--primary),#835cff);color:#fff!important;border-radius:12px;padding:12px 19px!important;font-weight:800!important;box-shadow:0 12px 28px rgba(108,76,255,.24);border:0;cursor:pointer}.ghost{background:#f1edff;color:var(--primary)!important;box-shadow:none}.hero{min-height:650px;padding:85px 8%;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center;background:radial-gradient(circle at 80% 20%,rgba(154,123,255,.25),transparent 32%),radial-gradient(circle at 10% 90%,rgba(35,211,238,.13),transparent 28%),linear-gradient(135deg,#fbfbff,#f4f0ff)}.eyebrow{font-size:11px;letter-spacing:1.8px;color:var(--primary);font-weight:900}.hero h1{font-size:64px;line-height:1.03;letter-spacing:-2.5px;margin:16px 0}.hero h1 span{background:linear-gradient(90deg,var(--primary),#b14cff);-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{font-size:19px;color:var(--muted);max-width:650px}.hero-actions{display:flex;gap:14px;margin:30px 0}.secondary{background:#fff!important;color:var(--primary)!important;box-shadow:0 10px 25px rgba(18,24,40,.08)}.trust{display:flex;gap:18px;flex-wrap:wrap;color:#526071;font-size:13px;font-weight:700}.hero-card{min-height:420px;border-radius:32px;background:linear-gradient(145deg,#17142f,#5b42b9);padding:45px;position:relative;box-shadow:0 30px 80px rgba(57,39,131,.3);overflow:hidden}.hero-card:before,.hero-card:after{content:"";position:absolute;border-radius:50%;filter:blur(3px)}.hero-card:before{width:250px;height:250px;background:rgba(178,132,255,.3);right:-70px;top:-70px}.hero-card:after{width:180px;height:180px;background:rgba(55,225,255,.15);left:-70px;bottom:-70px}.code-window{position:relative;z-index:2;background:#0b0d16;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:22px;color:#d9ddff;box-shadow:0 25px 50px rgba(0,0,0,.28);margin-top:45px}.dots{color:#9a7bff;letter-spacing:4px}.code-window pre{font:13px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap}.progress{height:7px;background:#26283a;border-radius:99px;overflow:hidden}.progress span{display:block;width:78%;height:100%;background:linear-gradient(90deg,#6c4cff,#25d8ff);border-radius:99px}.code-window small{display:block;margin-top:10px;color:#8e94a8}.floating{position:absolute;z-index:3;background:rgba(255,255,255,.94);padding:11px 15px;border-radius:12px;box-shadow:0 15px 35px rgba(0,0,0,.18);font-weight:800;font-size:13px}.floating.top{top:25px;right:0}.floating.bottom{bottom:20px;left:0}.section{padding:92px 7%}.soft{background:var(--soft)}.section-head{text-align:center;max-width:780px;margin:0 auto 45px}.section-head h1,.section-head h2{font-size:43px;line-height:1.1;letter-spacing:-1.5px;margin:10px 0}.section-head p{color:var(--muted)}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;max-width:1200px;margin:auto}.feature-grid article{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:var(--shadow);transition:.25s}.feature-grid article:hover,.course-card:hover{transform:translateY(-7px);box-shadow:0 25px 60px rgba(18,24,40,.13)}.icon{font-size:30px}.feature-grid h3{margin-bottom:8px}.feature-grid p,.course-body p{color:var(--muted);font-size:14px}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1200px;margin:auto}.course-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow);transition:.25s}.course-card>img{width:100%;height:205px;object-fit:cover;background:#eee;display:block}.course-body{padding:22px}.pill{display:inline-block;padding:6px 10px;border-radius:999px;background:#eeeaff;color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.7px}.success{background:#e8f8f0;color:var(--green)}.course-body h3{font-size:20px;margin:10px 0 4px;letter-spacing:-.3px}.course-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:18px;gap:10px}.course-bottom a{color:var(--primary);font-weight:900}.price-box{display:flex;align-items:center;gap:8px}.price-box del{color:#98a2b3;font-size:14px;font-weight:600}.price-box strong{font-size:21px;color:#101828}.cta{margin:30px 7% 80px;padding:55px 6%;border-radius:28px;background:linear-gradient(120deg,#17142f,#6c4cff);color:#fff;display:flex;align-items:center;justify-content:space-between;box-shadow:0 25px 60px rgba(67,44,170,.22)}.cta h2{font-size:38px;margin:8px 0}.cta p{color:#ddd9ff}.cta .btn{background:#fff;color:var(--primary)!important;box-shadow:none}footer{padding:45px 7%;background:#0c0f1d;color:#aeb5c8;text-align:center}.footer-brand{color:#fff;font-size:22px;font-weight:900}.page,.dashboard{padding:70px 7%;max-width:1300px;margin:auto}.detail{padding:80px 8%;display:grid;grid-template-columns:1fr 1fr;gap:70px;max-width:1200px;margin:auto;align-items:center}.detail-image img,.detail-image>img{width:100%;height:430px;object-fit:cover;border-radius:28px;box-shadow:var(--shadow)}.detail-copy h1{font-size:48px;line-height:1.05;margin:12px 0;letter-spacing:-1.5px}.detail-copy>p{color:var(--muted)}.big-price{justify-content:flex-start;gap:12px;margin:20px 0;flex-wrap:wrap}.big-price strong{font-size:38px;color:var(--primary)}.big-price small{display:block;width:100%;color:var(--green);font-weight:800;font-size:12px}.detail-copy li{margin:10px 0}.small{font-size:12px!important;color:#98a2b3!important}.dash-hero{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(120deg,#f1edff,#fbfdff);padding:35px;border-radius:25px;border:1px solid #e4ddff}.dash-hero h1{margin:8px 0;font-size:34px}.dash-hero p{color:var(--muted)}.avatar{width:65px;height:65px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),#a94cff);color:#fff;font-size:25px;font-weight:900}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0}.stats-row>div{padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 8px 25px rgba(18,24,40,.04)}.stats-row strong{display:block;font-size:28px}.stats-row span{color:var(--muted);font-size:13px}.dash-section{margin-top:45px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.section-title h2{margin:0}.section-title a{color:var(--primary);font-weight:800}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:15px}table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:15px;border-bottom:1px solid var(--line)}th{background:#fafafa;font-size:13px;color:#64748b}.status{background:#e7f8f0;color:var(--green);padding:5px 9px;border-radius:99px;font-size:11px;font-weight:900}.empty{text-align:center;padding:45px;border:1px dashed #cbd5e1;border-radius:18px}.pay-page,.result-page,.verify-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 15% 10%,#eee8ff,transparent 28%),linear-gradient(135deg,#f7f5ff,#fff)}.pay-card,.result-card,.verify-card{width:min(560px,92%);background:#fff;padding:45px;border-radius:28px;text-align:center;box-shadow:0 25px 70px rgba(15,23,42,.12);border:1px solid var(--line)}.center{justify-content:center;margin-bottom:30px}.full{width:100%;border:0;cursor:pointer;font-size:16px}.back{display:block;margin-top:18px;color:var(--muted);font-size:13px}.small-btn{padding:9px 12px!important;font-size:12px!important;display:inline-block}.outline-btn{display:inline-block;padding:10px 14px;border-radius:11px;border:1px solid #d8d0ff;color:var(--primary);font-weight:800;margin-left:8px}.success-panel{padding:18px;border-radius:18px;background:#ecfbf4;border:1px solid #bdeed6;margin:22px 0}.certificate-list{display:grid;gap:14px}.certificate-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 30px rgba(18,24,40,.05)}.certificate-row h3{margin:8px 0 2px}.certificate-row p{margin:0;color:var(--muted);font-size:13px}.offer-banner{max-width:1200px;margin:-15px auto 22px;padding:16px 20px;border-radius:16px;background:linear-gradient(90deg,#fff2cf,#fff9eb);border:1px solid #f3d58a;display:flex;gap:12px;justify-content:center;align-items:center;flex-wrap:wrap;color:#6b4a00}.offer-pill{margin-left:6px;background:#fff0d9;color:#c25b00}.certificate-promo{max-width:1200px;margin:0 auto 28px;padding:22px 25px;border:1px solid #d9cffd;border-radius:20px;background:linear-gradient(110deg,#f7f4ff,#fff);display:flex;justify-content:space-between;align-items:center;gap:20px;box-shadow:0 12px 30px rgba(108,76,255,.06)}.certificate-promo p{margin:5px 0 0;color:#64748b;font-size:14px}.promo-badge{white-space:nowrap;border-radius:999px;padding:10px 14px;background:#eeeaff;color:var(--primary);font-size:11px;font-weight:900}.duration-note{max-width:1200px;margin:0 auto 28px;padding:18px 22px;border:1px solid var(--line);border-radius:16px;display:grid;grid-template-columns:auto 1fr auto 1fr;gap:10px 18px;align-items:center;background:#fff;box-shadow:0 10px 30px rgba(18,24,40,.04)}.detail-card{display:grid;grid-template-columns:minmax(280px,45%) 1fr;gap:35px;background:#fff;border-radius:28px;padding:28px;box-shadow:var(--shadow);border:1px solid var(--line)}.detail-image{width:100%;height:380px;object-fit:cover;border-radius:22px}.duration-note strong{font-size:1.05rem}.duration-note span{color:#667085}
/* Assessment */.quiz-page{max-width:900px;margin:auto;padding:60px 20px 90px}.quiz-hero{text-align:center;margin-bottom:30px}.quiz-hero h1{font-size:42px;letter-spacing:-1px;margin:8px 0}.quiz-hero p{color:var(--muted)}.quiz-form{display:grid;gap:18px}.question-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:25px;box-shadow:0 10px 30px rgba(18,24,40,.05)}.q-number{color:var(--primary);font-size:12px;font-weight:900;letter-spacing:1px;text-transform:uppercase}.question-card h3{font-size:18px;margin:9px 0 18px}.question-card label{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid #edf0f5;border-radius:12px;margin:8px 0;cursor:pointer;transition:.2s}.question-card label:hover{border-color:#cfc3ff;background:#faf9ff}.question-card input{accent-color:var(--primary)}.quiz-submit{width:100%;font-size:16px}.result-card h1{font-size:38px;margin:8px 0}.result-icon,.verify-mark{font-size:50px}.score-big{font-size:64px;font-weight:900;color:var(--primary);margin:10px}.certificate-success{width:min(700px,92%);background:#fff;padding:55px;border-radius:30px;text-align:center;box-shadow:0 30px 80px rgba(18,24,40,.13);border:1px solid #e8e1ff}.certificate-success h1{font-size:40px;line-height:1.1}.certificate-success h1 span{color:var(--primary)}.confetti{font-size:30px}.cert-mini{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:25px 0}.cert-mini strong,.cert-mini span{padding:10px 14px;border-radius:999px;background:#f3f0ff;color:var(--primary);font-size:12px}.success-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.success-actions .outline-btn{margin-left:0}.verify-card h1{font-size:38px;margin:8px 0}.verify-mark{width:78px;height:78px;margin:auto;border-radius:50%;display:grid;place-items:center;background:#e8f8f0;color:var(--green)}.verify-mark.bad{background:#fff0f0;color:#d92d20}.verify-grid{display:grid;grid-template-columns:1fr 1.5fr;text-align:left;gap:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;margin:25px 0}.verify-grid>*{padding:13px;border-bottom:1px solid var(--line)}.verify-grid span{background:#fafafa;color:#667085}.verify-grid b{font-size:14px}
/* Admin */.admin-wrap{max-width:1250px;margin:auto;padding:32px 20px}.admin-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.admin-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}.admin-btn,.quick-actions a{display:inline-block;padding:11px 16px;border-radius:10px;background:#6c4cff;color:#fff;text-decoration:none;font-weight:800;border:0;cursor:pointer}.admin-btn.secondary{background:#222}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat-card,.admin-card{background:#fff;border:1px solid #e8eaf0;border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,.06)}.stat-card{padding:20px}.stat-card span,.stat-card small{display:block;color:#6b7280}.stat-card strong{display:block;font-size:32px;margin:5px 0}.admin-card{padding:22px;margin-bottom:24px}.admin-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px}.source-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #eee}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quick-actions a{background:#f6f6f6;color:#222}.table-scroll{overflow-x:auto}.admin-wrap table{width:100%;border-collapse:collapse;min-width:700px}.admin-wrap th,.admin-wrap td{padding:13px 11px;border-bottom:1px solid #eee;text-align:left;vertical-align:middle}.admin-wrap th{font-size:13px;background:#fafafa}.admin-thumb{width:64px;height:48px;object-fit:cover;border-radius:8px}.actions{white-space:nowrap}.actions a{margin-right:10px}.badge{display:inline-block;padding:4px 9px;border-radius:999px;background:#eef7ee;font-size:12px;font-weight:700}.alert{padding:12px 14px;border-radius:10px;margin-bottom:18px}.alert.success{background:#eaf8ee;color:#176b31}.alert.error{background:#fff0f0;color:#a51d1d}.form-card form label{display:block;font-weight:700;margin-bottom:16px}.form-card input,.form-card textarea,.form-card select{width:100%;box-sizing:border-box;margin-top:7px;padding:12px;border:1px solid #ddd;border-radius:9px;font:inherit}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hint{font-size:13px;color:#6b7280;margin-top:-5px;margin-bottom:20px}
@media(max-width:900px){.hero{grid-template-columns:1fr;padding-top:55px}.hero h1{font-size:48px}.feature-grid{grid-template-columns:repeat(2,1fr)}.course-grid{grid-template-columns:repeat(2,1fr)}.detail{grid-template-columns:1fr}.cta{flex-direction:column;align-items:flex-start;gap:25px}.stat-grid{grid-template-columns:1fr 1fr}.admin-grid-2{grid-template-columns:1fr}.admin-top{align-items:flex-start;flex-direction:column}.form-grid{grid-template-columns:1fr}}
@media(max-width:650px){.nav{padding:0 4%}.nav nav>a:not(.nav-btn){display:none}.hero{padding:55px 6%}.hero h1{font-size:42px}.hero-card{min-height:320px;padding:25px}.section,.page,.dashboard{padding:55px 5%}.feature-grid,.course-grid,.stats-row{grid-template-columns:1fr}.section-head h1,.section-head h2{font-size:32px}.detail-copy h1{font-size:38px}.cta{margin:20px 5% 55px;padding:35px}.cta h2{font-size:30px}.dash-hero{padding:25px}.dash-hero h1{font-size:27px}.certificate-promo{align-items:flex-start;flex-direction:column}.duration-note{grid-template-columns:1fr}.detail-card{grid-template-columns:1fr}.detail-image{height:250px}.certificate-row{flex-direction:column;align-items:flex-start}.verify-grid{grid-template-columns:1fr}.verify-grid b{border-bottom:0}.stat-grid{grid-template-columns:1fr}.quick-actions{grid-template-columns:1fr}.admin-wrap{padding:22px 12px}}

/* Password recovery / auth polish */
.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 16px;background:radial-gradient(circle at top right,rgba(99,102,241,.18),transparent 35%),linear-gradient(135deg,#f8fafc,#eef2ff)}
.auth-card{width:min(460px,100%);background:rgba(255,255,255,.96);border:1px solid rgba(148,163,184,.2);border-radius:24px;padding:34px;box-shadow:0 24px 70px rgba(15,23,42,.12)}
.auth-card .brand{display:inline-block;font-weight:900;font-size:22px;text-decoration:none;margin-bottom:18px}.auth-card .brand span{color:#4f46e5}.auth-card h1{margin:0 0 10px;font-size:30px}.auth-sub{color:#64748b;line-height:1.6;margin-bottom:24px}.auth-card label{display:block;font-weight:700;margin:14px 0 7px}.auth-card input{width:100%;box-sizing:border-box;padding:13px 14px;border:1px solid #cbd5e1;border-radius:12px;font-size:15px;outline:none}.auth-card input:focus{border-color:#6366f1;box-shadow:0 0 0 4px rgba(99,102,241,.1)}.auth-card .btn-primary{width:100%;margin-top:20px;border:0;border-radius:12px;padding:14px;font-weight:800;cursor:pointer}.auth-foot{text-align:center;margin-top:20px}.auth-foot a,.forgot-link a{color:#4f46e5;font-weight:700;text-decoration:none}.forgot-link{text-align:right;margin-top:10px}.alert{padding:12px 14px;border-radius:12px;margin:15px 0;line-height:1.45}.alert.success{background:#ecfdf5;color:#047857}.alert.error{background:#fef2f2;color:#b91c1c}
