*{box-sizing:border-box}body{margin:0;font-family:Arial,"Noto Nastaliq Urdu",sans-serif;background:linear-gradient(135deg,#eee6ff,#eff9ff 55%,#dffcff);min-height:100vh;color:#172033}.shell{max-width:1000px;margin:auto;padding:28px 18px}.lang{text-align:center;margin-bottom:12px;display:flex;justify-content:center;gap:8px}.lang-btn{border:0;background:#fff;color:#5b35e8;border-radius:20px;padding:8px 20px;font:inherit;font-weight:700;cursor:pointer;box-shadow:0 2px 8px #4b3a8b14}.lang-btn.active{background:#5b35e8;color:#fff}
.hidden{display:none !important}
/* Mobile-first: single column by default, more columns as space allows */
.package-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:8px}
@media(min-width:420px){.package-grid{grid-template-columns:1fr 1fr}}
@media(min-width:900px){.package-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}
.package-card{position:relative;border:2px solid #e7e9f3;border-radius:16px;padding:14px;cursor:pointer;background:#fff;transition:border-color .15s,box-shadow .15s;display:flex;flex-direction:column;gap:8px}
.package-card:hover{border-color:#c6b8fb}
.package-card.selected{border-color:#5b35e8;box-shadow:0 6px 18px #5b35e824}
.package-card .pkg-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.package-card .pkg-pages{display:inline-flex;align-items:center;gap:5px;background:#eaf6ff;color:#0d6a95;font-size:12px;font-weight:700;border-radius:10px;padding:4px 9px}
.package-card .pkg-radio{width:18px;height:18px;border-radius:50%;border:2px solid #d6d9e6;flex-shrink:0}
.package-card.selected .pkg-radio{border-color:#5b35e8;box-shadow:inset 0 0 0 4px #5b35e8}
.package-card .pkg-name{font-weight:800;font-size:16px;color:#241c47;display:flex;align-items:center;gap:6px}
.package-card .pkg-check{width:18px;height:18px;border-radius:5px;background:#22c968;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;flex-shrink:0}
.package-card .pkg-fee{display:inline-block;background:#f3f1fb;color:#4b3aa0;font-size:12px;font-weight:700;border-radius:9px;padding:5px 10px;align-self:flex-start}
.package-card .pkg-salary{display:inline-block;background:#e6fbef;color:#159447;font-size:12px;font-weight:700;border-radius:9px;padding:5px 10px;align-self:flex-start}.card,.work-card{display:grid;grid-template-columns:1fr 1fr;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 20px 60px #4b3a8b1f}.form-side{padding:30px}.visual-side,.work-right{background:linear-gradient(145deg,#5b35ef,#13b8d0);color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;padding:35px}.badge{font-size:12px;background:#efeaff;color:#5b35ef;padding:6px 12px;border-radius:12px}.form-side h1{font-size:28px;margin:14px 0 4px}.sub{color:#68738a}.form-side label{display:block;font-weight:700;margin-top:14px;font-size:14px}.form-side input,.form-side select,.form-side textarea{width:100%;margin-top:7px;border:1px solid #dfe4ee;border-radius:10px;padding:12px;font:inherit;outline:none;background:#fff}.form-side textarea{resize:vertical}.info-box{margin-top:18px;background:#fff4d8;border-radius:12px;padding:13px;color:#725516;font-size:13px}.info-box p{margin:7px 0 0;line-height:1.6}.primary{width:100%;border:0;border-radius:10px;padding:13px;margin-top:16px;color:#fff;font-weight:700;background:linear-gradient(90deg,#6335e9,#08b9d2);cursor:pointer}.primary:disabled{opacity:.6}.assignment-art{position:relative;width:220px;height:150px;margin:auto;background:#fff;border-radius:15px;color:#24314d;box-shadow:0 12px 30px #001b4429;padding:20px}.assignment-art .paper{font-size:20px;font-weight:700;line-height:1.3}.book{position:absolute;bottom:12px;left:15px;font-size:36px}.cap{position:absolute;bottom:12px;right:15px;font-size:30px}.visual-inner h2{margin:18px 0 5px}.visual-inner p{opacity:.9}.visual-image{width:100%;max-width:320px;border-radius:18px;box-shadow:0 12px 30px #001b4429;display:block;margin:0 auto}/* Work / package-selection page: mobile-first single column, two columns from tablet up */
.work-card{display:flex;flex-direction:column;grid-template-columns:none}
@media(min-width:760px){.work-card{display:grid;grid-template-columns:.8fr 1.2fr;min-height:610px}}

.work-hero{background:linear-gradient(160deg,#6335e9,#08b9d2);color:#fff;padding:26px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
.hero-logo{width:150px;max-width:60%;border-radius:16px;box-shadow:0 10px 26px #001b4433}
.hero-title{font-size:20px;margin:4px 0 0;font-weight:800}
.hero-tag{font-size:12px;opacity:.9;margin:0}
.hero-badges{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:6px}
.hero-badge{background:#ffffff26;border:1px solid #ffffff3d;border-radius:12px;padding:8px 12px;font-size:12px;font-weight:700}

.work-main{padding:22px}
.congrats{display:flex;align-items:center;gap:10px;background:#e8fff0;color:#159447;padding:12px 14px;border-radius:14px;font-weight:700;font-size:14px}
.congrats-icon{width:24px;height:24px;border-radius:50%;background:#22c968;color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}
.congrats-text strong{color:#0e6b34}
.tip-bar{background:#fff4d8;color:#725516;border-radius:12px;padding:10px 14px;font-size:13px;margin-top:12px}
.pkg-step-label{display:block;font-weight:700;margin:16px 0 8px;font-size:14px}

.audio-box{margin-top:18px;background:linear-gradient(135deg,#f0e9ff,#eefcff);padding:18px;border-radius:15px}
.audio-box h3{margin:0 0 4px}
.audio-box p{margin:0 0 12px;font-size:13px;color:#5c6478}
.audio-box audio{display:none}
.player{display:flex;align-items:center;gap:12px}
.play-btn{width:44px;height:44px;border-radius:50%;border:0;flex-shrink:0;background:linear-gradient(135deg,#6335e9,#08b9d2);color:#fff;font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 16px #5b35e836}
.track{position:relative;flex:1;height:8px;background:#ffffffb0;border-radius:6px;cursor:pointer}
.track-fill{position:absolute;inset:0 auto 0 0;width:0;background:linear-gradient(90deg,#6335e9,#08b9d2);border-radius:6px}
.track-thumb{position:absolute;top:50%;left:0;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid #6335e9;transform:translate(-50%,-50%);box-shadow:0 2px 6px #0002}
.time-label{font-size:12px;color:#5c6478;flex-shrink:0;min-width:88px;text-align:left;direction:ltr}
.progress-row{display:flex;justify-content:space-between;font-size:12px;color:#68738a;margin-top:10px}

/* ---- Step tracker ---- */
.steps-bar{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:14px;padding:2px 0}
.step-item{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:56px}
.step-circle{width:30px;height:30px;border-radius:50%;background:#eceefa;color:#8992a4;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;border:2px solid #e3e6f3;transition:background .2s,color .2s,border-color .2s}
.step-label{font-size:11px;color:#8992a4;font-weight:700}
.step-line{flex:1;max-width:46px;height:3px;background:#e3e6f3;border-radius:3px;margin:0 2px 18px}
.step-item.active .step-circle{background:#5b35e8;border-color:#5b35e8;color:#fff;box-shadow:0 0 0 4px #5b35e824}
.step-item.active .step-label{color:#5b35e8}
.step-item.done .step-circle{background:#22c968;border-color:#22c968;color:#fff}
.step-item.done .step-label{color:#159447}

/* ---- WhatsApp CTA ---- */
.wa-cta-bar{margin-top:14px;padding:16px 22px 20px;background:#fff;border-radius:18px;box-shadow:0 12px 30px #4b3a8b14}
.wa-hint{margin:0 0 10px;font-size:13px;font-weight:700;color:#5c6478;text-align:center}
.whatsapp{width:100%;border:0;border-radius:14px;background:#22c968;color:#fff;padding:16px;font-size:16px;font-weight:800;cursor:pointer;box-shadow:0 10px 24px #22c96840;transition:transform .15s,box-shadow .15s}
.whatsapp:active{transform:scale(.98)}
.whatsapp.disabled{background:#aab3bd;cursor:not-allowed;box-shadow:none}
.whatsapp.pulse{animation:wa-pulse 1.4s ease-in-out infinite}
@keyframes wa-pulse{
  0%{box-shadow:0 10px 24px #22c96840,0 0 0 0 #22c96855}
  70%{box-shadow:0 10px 24px #22c96840,0 0 0 12px #22c96800}
  100%{box-shadow:0 10px 24px #22c96840,0 0 0 0 #22c96800}
}
.wa-manual-link{display:block;text-align:center;margin-top:12px;font-size:13px;font-weight:700;color:#5b35e8;text-decoration:underline}
.error{color:#d22f2f;font-size:13px;margin-top:8px;text-align:center}
footer{text-align:center;color:#8992a4;font-size:11px;margin-top:12px}

@media(max-width:760px){
  /* Keep the registration card side-by-side (blue panel + form) even on
     phones instead of stacking — just scale everything down so it still
     fits comfortably and stays usable. */
  .card{grid-template-columns:.85fr 1.15fr;align-items:stretch}
  .shell{padding:10px}
  .form-side{padding:14px}
  .visual-side{padding:12px;min-height:auto}
  .form-side h1{font-size:17px;margin:10px 0 3px}
  .sub{font-size:11px}
  .badge{font-size:10px;padding:4px 8px}
  .form-side label{font-size:12px;margin-top:9px}
  .form-side input,.form-side select,.form-side textarea{padding:8px;font-size:12px;margin-top:5px}
  .info-box{padding:9px;font-size:11px;margin-top:12px}
  .info-box p{margin:5px 0 0}
  .primary{padding:10px;font-size:13px;margin-top:12px}
  .visual-image{max-width:110px}
  .visual-inner p{font-size:10px;margin-top:8px}

  /* ---- Work / package-selection page on phones ---- */
  .work-hero{padding:18px 16px;gap:8px}
  .hero-logo{width:110px}
  .hero-title{font-size:17px}
  .hero-badges{flex-direction:row;flex-wrap:wrap;justify-content:center}
  .hero-badge{font-size:10px;padding:6px 9px;flex:1 1 auto;text-align:center}

  .work-main{padding:16px 16px 8px}
  .congrats{font-size:13px;padding:10px 12px}
  .tip-bar{font-size:12px;padding:9px 12px}

  .steps-bar{margin-top:10px}
  .step-item{min-width:48px}
  .step-circle{width:26px;height:26px;font-size:12px}
  .step-label{font-size:10px}

  .package-grid{gap:10px}
  .package-card{padding:12px;border-radius:14px}
  .package-card .pkg-name{font-size:15px}

  .audio-box{padding:14px;border-radius:14px}
  .play-btn{width:48px;height:48px;font-size:18px}

  /* Sticky bottom CTA bar — always one thumb-tap away, mirrors the app
     pattern customers already know (checkout bars, order buttons, etc). */
  .wa-cta-bar{
    position:sticky;
    bottom:8px;
    left:0;right:0;
    margin-top:12px;
    padding:12px 14px 14px;
    z-index:5;
  }
  .whatsapp{padding:15px;font-size:15px}
}

