*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'IBM Plex Sans',sans-serif;background:#0d0d14;color:#fff;min-height:100vh;display:flex;flex-direction:column}
.hdr{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid rgba(255,255,255,0.06)}
.brand{font-family:'Syne',sans-serif;font-size:1.1rem;font-weight:700;display:flex;align-items:center;gap:10px}
.brand-pill{background:#7c3aed;border-radius:6px;padding:3px 10px;font-size:0.72rem;letter-spacing:.08em;text-transform:uppercase}
.hero{flex:1;display:flex;flex-direction:column;align-items:center;padding:48px 20px;text-align:center}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(124,58,237,0.15);border:1px solid rgba(124,58,237,0.3);border-radius:100px;padding:6px 16px;font-size:0.78rem;font-weight:600;color:#a78bfa;letter-spacing:.04em;text-transform:uppercase;margin-bottom:28px}
.hero h1{font-family:'Syne',sans-serif;font-size:clamp(2rem,4vw,3.2rem);font-weight:800;line-height:1.1;margin-bottom:12px}
.hero h1 span{background:linear-gradient(135deg,#a78bfa,#34d399);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero p{color:rgba(255,255,255,0.5);font-size:0.95rem;max-width:500px;line-height:1.7;margin-bottom:48px}
.tabs{display:flex;gap:12px;margin-bottom:24px;width:100%;max-width:880px;justify-content:center}
.tab-btn{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);color:rgba(255,255,255,0.6);padding:10px 24px;border-radius:100px;font-family:'Syne',sans-serif;font-weight:600;font-size:0.9rem;cursor:pointer;transition:all 0.2s}
.tab-btn:hover{background:rgba(255,255,255,0.1);color:#fff}
.tab-btn.active{background:linear-gradient(135deg,#7c3aed,#5b21b6);color:#fff;border-color:transparent}
.tab-content{display:none;width:100%;max-width:880px}
.tab-content.active{display:block}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;max-width:880px;width:100%;margin-bottom:32px}
.exam-card{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:22px;text-align:left;position:relative;overflow:hidden;transition:border-color .2s,transform .2s}
.exam-card:hover{border-color:rgba(124,58,237,0.5);transform:translateY(-2px)}
.exam-card.math:hover{border-color:rgba(5,150,105,0.5)}
.exam-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#7c3aed,#a78bfa)}
.exam-card.math::before{background:linear-gradient(90deg,#059669,#34d399)}
.card-icon{font-size:1.6rem;margin-bottom:10px}
.card-num{font-size:0.7rem;color:rgba(255,255,255,0.3);font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}
.card-title{font-family:'Syne',sans-serif;font-size:1rem;font-weight:700;margin-bottom:6px;line-height:1.3}
.card-sub{font-size:0.78rem;color:rgba(255,255,255,0.4);margin-bottom:16px;line-height:1.4}
.card-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:9px;border-radius:8px;background:linear-gradient(135deg,#7c3aed,#5b21b6);color:#fff;font-size:0.85rem;font-weight:600;cursor:pointer;border:none;text-decoration:none;transition:all .15s}
.card-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(124,58,237,0.4)}
.exam-card.math .card-btn{background:linear-gradient(135deg,#059669,#047857)}
.exam-card.math .card-btn:hover{box-shadow:0 6px 20px rgba(5,150,105,0.4)}
.coming-soon{display:none}
.coming-soon .card-btn{background:rgba(255,255,255,0.1)}
.tag{display:inline-block;font-size:0.68rem;padding:2px 8px;border-radius:100px;background:rgba(124,58,237,0.15);color:#a78bfa;border:1px solid rgba(124,58,237,0.2);margin-bottom:12px}
.exam-card.math .tag{background:rgba(5,150,105,0.15);color:#6ee7b7;border-color:rgba(5,150,105,0.2)}
footer{text-align:center;padding:20px;font-size:0.76rem;color:rgba(255,255,255,0.2);border-top:1px solid rgba(255,255,255,0.05)}

@media (max-width: 600px) {
  .hdr {
    padding: 0 16px;
  }
  .brand {
    font-size: 0.95rem;
    gap: 6px;
  }
  .brand-pill {
    padding: 2px 8px;
    font-size: 0.65rem;
  }
  #auth-section {
    font-size: 0.8rem !important;
  }
  #auth-section button, #auth-section a {
    padding: 6px 12px !important;
    font-size: 0.8rem !important;
  }
}

@media (max-width: 400px) {
  .hdr {
    padding: 0 12px;
  }
  .brand-pill {
    display: none;
  }
}
