@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;900&family=JetBrains+Mono:wght@400;600;700&family=Syne:wght@400;600;700;800&family=DM+Sans:wght@300;400;500;600&family=Montserrat:wght@600;700;900&family=Nunito:wght@700;800;900&family=Poppins:wght@700;800;900&display=swap";:root{--navy:#0a1628;--navy2:#0f2044;--navy3:#1a3a6e;--blue:#2563eb;--blue2:#3b82f6;--blue3:#60a5fa;--red:#dc2626;--red2:#ef4444;--accent:#06b6d4;--bg:#f0f4f8;--surface:#fff;--surface2:#f8fafc;--glass:#ffffffb8;--border:#00000014;--border2:#2563eb33;--t1:#0f172a;--t2:#334155;--t3:#64748b;--t4:#94a3b8;--green:#16a34a;--green-bg:#f0fdf4;--green-b:#bbf7d0;--amber:#d97706;--amber-bg:#fffbeb;--amber-b:#fde68a;--danger:#dc2626;--danger-bg:#fef2f2;--danger-b:#fecaca;--info-bg:#eff6ff;--info:#1d4ed8;--r:12px;--r2:8px;--r3:20px;--sh1:0 1px 3px #0000000f, 0 1px 2px #0000000a;--sh2:0 4px 16px #00000014, 0 2px 4px #0000000a;--sh3:0 8px 32px #0000001f, 0 4px 8px #0000000f}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--t1);background-image:radial-gradient(circle at 20% 0,#2563eb0f 0%,#0000 50%),radial-gradient(circle at 80% 100%,#06b6d40d 0%,#0000 50%);min-height:100vh;font-family:Inter,system-ui,sans-serif}.hdr{background:linear-gradient(135deg, var(--navy) 0%, var(--navy2) 100%);z-index:100;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:12px;height:60px;padding:0 1.25rem;display:flex;position:sticky;top:0;box-shadow:0 4px 24px #0000004d}.hr-r{flex-shrink:0;align-items:center;gap:6px;display:flex}.hbtn{color:#ffffffd9;cursor:pointer;white-space:nowrap;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;align-items:center;gap:6px;padding:7px 14px;font-family:Inter,sans-serif;font-size:12px;font-weight:700;text-decoration:none;transition:all .18s;display:flex}.hbtn:hover{color:#fff;background:#ffffff29;border-color:#ffffff47}.hbtn-back{color:#fff9;background:#ffffff0f;border-color:#ffffff1f}.hbtn-back:hover{color:#fff;background:#ffffff24}.hbtn-home{color:#67e8f9;background:#06b6d41f;border-color:#06b6d44d}.hbtn-home:hover{color:#fff;background:#06b6d438;border-color:#06b6d480}.hbtn-signout{color:#fca5a5;background:#ef44441a;border-color:#ef444440}.hbtn-signout:hover{color:#fff;background:#ef444433;border-color:#ef444466}.hdr-menu-btn{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:38px;font-size:18px;display:none}@media (width<=720px){.hdr{--logo-size:21px;padding:0 .75rem}.hdr-menu-btn{display:flex}.hr-r{background:var(--navy2);border:1px solid #ffffff1f;border-radius:12px;flex-direction:column;align-items:stretch;gap:6px;width:min(240px,100vw - 1.5rem);padding:8px;display:none;position:absolute;top:64px;right:.75rem;box-shadow:0 16px 40px #00000073}.hr-r.open{display:flex}.hr-r .hbtn,.hr-r form,.hr-r form .hbtn{width:100%}.hr-r .hbtn{justify-content:flex-start;padding:11px 14px;font-size:14px}}.gate-wrap{justify-content:center;align-items:center;min-height:calc(100vh - 60px);padding:2rem 1rem;display:flex}.gate-card{background:var(--surface);border-radius:var(--r);border:1px solid var(--border);width:100%;max-width:440px;overflow:hidden;box-shadow:0 20px 60px #0000002e}.gate-hero{background:linear-gradient(160deg, var(--navy) 0%, var(--navy3) 100%);text-align:center;color:#fff;padding:2rem 1.5rem 1.5rem;position:relative;overflow:hidden}.gate-hero-icon{margin-bottom:8px;font-size:42px}.gate-hero h2{letter-spacing:-.3px;background:linear-gradient(90deg, #fff, var(--blue3));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:4px;font-size:20px;font-weight:800}.gate-hero p{color:#fff9;font-size:12px;line-height:1.5}.gate-body{padding:1.25rem 1.5rem 1.5rem}.gate-section-title{color:var(--navy);text-align:center;margin-bottom:12px;font-size:13px;font-weight:700}.gate-row{margin-bottom:8px}.gate-row-inline{gap:6px;margin-bottom:8px;display:flex}.gate-row-inline .gate-row{flex:1;margin-bottom:0}.gate-input,.gate-select{border:1.5px solid var(--border);border-radius:var(--r2);background:var(--bg);width:100%;color:var(--t1);padding:10px 12px;font-family:Inter,sans-serif;font-size:13px;transition:all .15s}.gate-select{appearance:auto;cursor:pointer}.gate-input:focus,.gate-select:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px #2563eb1a}.gate-input::placeholder{color:var(--t4)}.gate-btn{border-radius:var(--r2);cursor:pointer;background:linear-gradient(135deg, var(--navy), var(--navy3));color:#fff;border:none;width:100%;margin-top:4px;padding:11px;font-family:Inter,sans-serif;font-size:14px;font-weight:700;transition:all .15s;box-shadow:0 2px 10px #0a162833}.gate-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0a162859}.gate-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.gate-err{color:var(--danger);text-align:center;min-height:16px;margin-top:8px;font-size:12px;font-weight:500}.gate-toggle{color:var(--t3);text-align:center;margin-top:12px;font-size:12px}.gate-toggle a{color:var(--blue);cursor:pointer;font-weight:600;text-decoration:none}.gate-toggle a:hover{text-decoration:underline}.reg-wrap{justify-content:center;align-items:center;min-height:calc(100vh - 60px);padding:2rem 1rem;display:flex}.reg-card{background:var(--surface);border-radius:var(--r);border:1px solid var(--border);width:100%;max-width:520px;overflow:hidden;box-shadow:0 20px 60px #0000002e}.reg-card .gate-hero{padding:1.5rem 1.5rem 1.2rem}.reg-card .gate-body{padding:1rem 1.5rem 1.5rem}.reg-section-label{color:var(--t3);text-transform:uppercase;letter-spacing:.08em;border-top:1px solid var(--border);margin:12px 0 6px;padding-top:8px;font-size:10px;font-weight:700}.reg-section-label:first-of-type{border-top:none;margin-top:4px}.login-wrap{grid-template-columns:1fr 1fr;gap:20px;width:100%;display:grid}@media (width<=580px){.login-wrap{grid-template-columns:1fr;gap:16px}}.login-panel{border:1.5px solid #0000;border-radius:20px;flex-direction:column;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden;box-shadow:0 8px 40px #00000024}.login-panel:hover{transform:translateY(-4px);box-shadow:0 18px 60px #00000038}.lp-student{background:linear-gradient(170deg,#0a1628 0%,#0f2347 40%,#1a3a6e 100%);border-color:#2563eb4d}.lp-instructor{background:linear-gradient(170deg,#fff 0%,#f8fafc 100%);border-color:#e2e8f0}.lp-hero{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:2rem 1.75rem 1.5rem;display:flex}.lp-student .lp-hero{background:linear-gradient(135deg,#2563eb2e,#06b6d41a);border-bottom:1px solid #ffffff14}.lp-instructor .lp-hero{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-bottom:1px solid #bae6fd}.lp-icon{border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:4px;font-size:32px;line-height:1;display:flex}.lp-student .lp-icon{background:#ffffff1a;border:1.5px solid #ffffff2e}.lp-instructor .lp-icon{background:#fff;border:1.5px solid #bae6fd;box-shadow:0 4px 12px #0e74901f}.lp-role-badge{letter-spacing:.12em;text-transform:uppercase;border-radius:99px;padding:3px 10px;font-size:10px;font-weight:700}.lp-student .lp-role-badge{color:#ffffffb3;background:#ffffff1f}.lp-instructor .lp-role-badge{color:#0369a1;background:#e0f2fe}.lp-title{letter-spacing:-.3px;margin:0;font-size:22px;font-weight:900}.lp-student .lp-title{color:#fff}.lp-instructor .lp-title{color:#0a1628}.lp-tagline{max-width:220px;margin:0;font-size:12px;line-height:1.5}.lp-student .lp-tagline{color:#ffffff9e}.lp-instructor .lp-tagline{color:#64748b}.lp-body{flex-direction:column;flex:1;gap:12px;padding:1.25rem 1.75rem 1.75rem;display:flex}.lp-features{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.lp-features li{border-radius:7px;align-items:center;gap:8px;padding:5px 8px;font-size:11.5px;display:flex}.lp-student .lp-features li{color:#ffffffd1;background:#ffffff0d}.lp-instructor .lp-features li{color:#374151;background:#f8fafc}.lp-features li:before{content:"✓";flex-shrink:0;font-size:11px;font-weight:800}.lp-student .lp-features li:before{color:#4ade80}.lp-instructor .lp-features li:before{color:#2563eb}.lp-divider{height:1px;margin:4px 0}.lp-student .lp-divider{background:#ffffff14}.lp-instructor .lp-divider{background:#e2e8f0}.lp-welcome{text-align:center;font-size:12px;font-style:italic}.lp-student .lp-welcome{color:#ffffff80}.lp-instructor .lp-welcome{color:#64748b}.lp-btn-student{cursor:pointer;color:#fff;letter-spacing:.01em;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:10px;width:100%;padding:12px 16px;font-family:Inter,sans-serif;font-size:14px;font-weight:700;transition:all .15s;box-shadow:0 4px 16px #2563eb59}.lp-btn-student:hover{transform:translateY(-1px);box-shadow:0 6px 24px #2563eb80}.lp-btn-instructor{cursor:pointer;color:#fff;letter-spacing:.01em;background:linear-gradient(135deg,#0a1628,#1a3a6e);border:none;border-radius:10px;width:100%;padding:12px 16px;font-family:Inter,sans-serif;font-size:14px;font-weight:700;transition:all .15s;box-shadow:0 4px 16px #0a162840}.lp-btn-instructor:hover{transform:translateY(-1px);box-shadow:0 6px 24px #0a162866}.lp-btn-student:disabled,.lp-btn-instructor:disabled{opacity:.5;cursor:not-allowed;transform:none}.pricing-hero{text-align:center;margin-bottom:2rem}.pricing-hero h2{color:var(--navy);letter-spacing:-.3px;margin-bottom:6px;font-size:24px;font-weight:800}.pricing-hero p{color:var(--t3);max-width:500px;margin:0 auto;font-size:13px;line-height:1.6}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;max-width:960px;margin:0 auto;display:grid}.pricing-card{background:var(--surface);border:2px solid var(--border);border-radius:var(--r);flex-direction:column;padding:0;transition:all .2s;display:flex;position:relative;overflow:visible}.pricing-card:hover{border-color:var(--blue2);box-shadow:var(--sh3);transform:translateY(-3px)}.pricing-card.featured{border-color:var(--blue);box-shadow:0 8px 32px #2563eb26}.pricing-card.featured:before{content:"MOST POPULAR";background:var(--blue);color:#fff;letter-spacing:.08em;padding:4px 32px;font-size:9px;font-weight:700;position:absolute;top:14px;right:-28px;transform:rotate(45deg)}.pricing-card-hd{text-align:center;padding:1.25rem 1.25rem .75rem}.pricing-card-icon{margin-bottom:6px;font-size:28px}.pricing-card-name{color:var(--navy);margin-bottom:4px;font-size:15px;font-weight:700;line-height:1.3}.pricing-card-desc{color:var(--t3);font-size:11px;line-height:1.5}.pricing-card-price{text-align:center;padding:0 1.25rem .75rem}.pricing-card-amount{color:var(--navy);letter-spacing:-1px;font-size:32px;font-weight:900;line-height:1}.pricing-card-amount span{color:var(--t3);font-size:13px;font-weight:500}.pricing-card-period{color:var(--t4);margin-top:3px;font-size:10px;line-height:1.4}.pricing-card-features{flex:1;padding:0 1.25rem 1.25rem}.pricing-card-features ul{flex-direction:column;gap:6px;list-style:none;display:flex}.pricing-card-features li{color:var(--t2);align-items:flex-start;gap:7px;font-size:11.5px;line-height:1.5;display:flex}.pricing-card-features li:before{content:"✓";color:var(--green);flex-shrink:0;margin-top:2px;font-size:10px;font-weight:700}.pricing-card-features li.excluded:before{content:"✗";color:var(--t4)}.pricing-card-features li.excluded{color:var(--t4)}.pricing-card-action{margin-top:auto;padding:0 1.25rem 1.25rem}.pricing-card-btn{border-radius:var(--r2);cursor:pointer;text-align:center;box-sizing:border-box;border:none;width:100%;padding:11px;font-family:Inter,sans-serif;font-size:13px;font-weight:700;text-decoration:none;transition:all .15s;display:block}.pricing-card-btn.primary{background:linear-gradient(135deg, var(--navy), var(--navy3));color:#fff;box-shadow:0 2px 8px #0a162833}.pricing-card-btn.primary:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0a16284d}.pricing-card-btn.outline{color:var(--navy);border:2px solid var(--border);background:0 0}.pricing-card-btn.outline:hover{border-color:var(--blue);color:var(--blue)}.pricing-grid,[style*="grid-template-columns:repeat(4"]{align-items:stretch}.pricing-grid .pricing-card,[style*=repeat\(4] .pricing-card{height:100%}@media (width<=760px){.plans-grid{grid-template-columns:1fr 1fr!important}.plans-grid>*{min-width:0;grid-column:auto!important}}@media (width<=480px){.plans-grid{grid-template-columns:1fr!important}}
