@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600;700&family=Playfair+Display:wght@600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700;800;900&display=swap');

:root{
  --bg-1:#f7ecf8;--bg-2:#efe7fb;--bg-3:#fdf8ff;--ink:#1d1830;--muted:#615a76;
  --card:rgba(255,255,255,.78);--card-strong:rgba(255,255,255,.92);--border:rgba(96,74,130,.12);
  --shadow:0 18px 45px rgba(76,48,115,.10);--shadow-strong:0 18px 55px rgba(76,48,115,.16);
  --primary-grad:linear-gradient(90deg,#ff3ea5,#7c4dff);--green-soft:rgba(25,200,120,.14);--green-border:rgba(25,200,120,.30)
}
*{box-sizing:border-box}
html,body{min-height:100%;overflow-x:hidden}
body{background:radial-gradient(circle at top left,rgba(255,133,196,.20),transparent 28%),radial-gradient(circle at top right,rgba(140,102,255,.16),transparent 30%),linear-gradient(180deg,var(--bg-3) 0%,var(--bg-1) 48%,var(--bg-2) 100%);color:var(--ink);min-height:100vh;padding-bottom:96px}
body.auth-page{padding-bottom:24px;display:block;align-items:flex-start}
.auth-shell{width:100%;max-width:1120px;margin:0 auto;padding:24px 12px}
.fw-black{font-weight:900}.glass{background:var(--card);border:1px solid var(--border);border-radius:22px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow)}
.auth-card{overflow:hidden}.auth-panel{min-height:100%;padding:2rem}.auth-left{background:linear-gradient(180deg,rgba(255,255,255,.36),rgba(255,255,255,.16))}
.section-card,.profile-card,.plan-card{background:var(--card-strong);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow)}.section-card{padding:20px}
.brand{font-weight:900;letter-spacing:.4px;color:#241b3d}.text-muted-2{color:var(--muted)}
.chip{font-size:12px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.55);color:#2b2344;display:inline-flex;align-items:center;gap:6px;box-shadow:0 8px 20px rgba(34,24,58,.08);white-space:nowrap}.verified{background:rgba(0,160,255,.14);border-color:rgba(0,160,255,.24);color:#0f4c74}.online{background:rgba(25,200,120,.14);border-color:rgba(25,200,120,.24);color:#176643}.new{background:rgba(255,210,80,.18);border-color:rgba(255,210,80,.28);color:#7a5712}
.btn-main{border:0;border-radius:16px;background:var(--primary-grad);color:#fff;font-weight:900;box-shadow:0 16px 40px rgba(124,77,255,.20);min-height:52px}.btn-main:hover{color:#fff;opacity:.96}.btn-soft{border-radius:16px;background:rgba(255,255,255,.92);border:1px solid rgba(96,74,130,.14);color:#2d2550;font-weight:800;min-height:50px}.btn-soft:hover{color:#241b3d;background:#fff}
.form-label{color:#2d2550}.form-control,.form-select{min-height:52px;border-radius:16px;background:rgba(255,255,255,.92);border:1px solid rgba(96,74,130,.14);color:#241b3d;box-shadow:none}.form-control:focus,.form-select:focus{background:#fff;border-color:rgba(124,77,255,.35);box-shadow:0 0 0 .2rem rgba(124,77,255,.08)}.form-control::placeholder{color:#8a829f}.input-group-text{background:rgba(255,255,255,.92);border:1px solid rgba(96,74,130,.14);color:#5d5576;border-radius:16px 0 0 16px}.input-group .form-control{border-left:0;border-radius:0 16px 16px 0}
.alert{border:0;border-radius:16px;font-weight:700}
.bottom-nav{position:fixed;left:50%;transform:translateX(-50%);bottom:16px;width:min(680px,calc(100% - 28px));z-index:9998;padding:10px 12px;border-radius:18px;background:rgba(255,255,255,.84);border:1px solid rgba(96,74,130,.12);backdrop-filter:blur(16px);box-shadow:0 18px 40px rgba(76,48,115,.14)}.bottom-nav a{color:#6e6784;text-decoration:none;font-weight:800;font-size:12px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 10px;border-radius:14px;width:100%}.bottom-nav a.active{color:#241b3d;background:rgba(124,77,255,.08);border:1px solid rgba(124,77,255,.12)}.bottom-nav i{font-size:18px}
.photo-dropzone{position:relative;border:2px dashed rgba(124,77,255,.25);border-radius:26px;padding:28px 20px;text-align:center;background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(255,255,255,.68));box-shadow:inset 0 0 0 1px rgba(255,255,255,.55),var(--shadow);cursor:pointer;transition:.18s ease;overflow:hidden}.photo-dropzone:hover,.photo-dropzone.dragover{transform:translateY(-2px);border-color:rgba(255,62,165,.42);background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,240,250,.82))}.photo-dropzone input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.drop-icon{width:82px;height:82px;margin:0 auto 14px;border-radius:24px;background:var(--primary-grad);color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;box-shadow:0 18px 40px rgba(124,77,255,.22)}.drop-title{font-weight:900;font-size:1.08rem;color:#241b3d}.drop-sub{color:var(--muted);font-weight:600}.drop-file-name{display:none;margin-top:12px;font-size:.9rem;font-weight:800;color:#6b2d84;background:rgba(124,77,255,.08);border:1px solid rgba(124,77,255,.12);border-radius:999px;padding:8px 12px}.photo-preview-wrap{display:none;margin-top:18px}.photo-preview{width:150px;height:150px;object-fit:cover;border-radius:28px;border:4px solid #fff;box-shadow:var(--shadow-strong)}
@media(max-width:991.98px){body.auth-page{display:block}.auth-shell{padding:16px 12px}.auth-panel{padding:1.5rem}.auth-left{border-bottom:1px solid var(--border)}}
@media(max-width:575.98px){body{padding-bottom:88px}body.auth-page{padding-bottom:14px}.auth-shell{padding:10px}.glass{border-radius:18px}.auth-panel{padding:1.1rem}.display-6{font-size:1.65rem}.section-card{padding:16px}.photo-dropzone{padding:24px 14px}.drop-icon{width:70px;height:70px;font-size:1.8rem}.btn-main,.btn-soft{width:100%;margin-bottom:6px}.auth-actions{flex-direction:column}.auth-actions .ms-auto{margin-left:0!important;width:100%;display:grid;gap:8px}}
.availability-note{font-size:.82rem;font-weight:800;margin-top:7px;min-height:18px}.availability-note.ok{color:#176643}.availability-note.err{color:#a2365d}.availability-note.checking{color:#6b5d86}
.terms-box{background:rgba(255,255,255,.78);border:1px solid var(--border);border-radius:18px;padding:14px 16px;color:#4f4670;font-weight:650}.terms-box a{font-weight:900;color:#7c4dff;text-decoration:none}.terms-box a:hover{text-decoration:underline}

.form-check-input{width:1.15em;height:1.15em;border:2px solid rgba(124,77,255,.35);background-color:#fff;flex-shrink:0}.form-check-input:checked{background-color:#7c4dff;border-color:#7c4dff}.terms-box .form-check-label{line-height:1.55}.terms-box{display:block!important}


/* v5 signup layout fix: keep the intro pinned near the top while the right step content changes height. */
.auth-left .auth-panel{
  justify-content:flex-start!important;
  position:sticky;
  top:24px;
}
@media(max-width:991.98px){
  .auth-left .auth-panel{position:static;top:auto;}
}


/* v8 profile spacing fix */
.section-card.compact,.section-card.empty-card{height:auto!important;min-height:0!important;}
.profile-main-col .section-card{height:auto!important;min-height:0!important;}
.empty-state{min-height:0!important;}

/* v28 Premium payment wizard */
.premium-wizard-modal{border:0;border-radius:28px;background:rgba(255,255,255,.96);box-shadow:var(--shadow-strong);overflow:hidden}.premium-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.premium-step{padding:10px;border-radius:16px;background:rgba(124,77,255,.06);border:1px solid rgba(124,77,255,.10);color:#746b8e;font-size:.82rem;font-weight:900;display:flex;gap:8px;align-items:center;justify-content:center}.premium-step span{width:24px;height:24px;border-radius:999px;background:#fff;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(124,77,255,.14)}.premium-step.active{background:linear-gradient(90deg,rgba(255,62,165,.14),rgba(124,77,255,.14));color:#241b3d}.premium-step.done{background:rgba(25,200,120,.10);color:#176643}.wizard-pane{display:none}.wizard-pane.active{display:block}.premium-package-card{height:100%;display:flex;flex-direction:column;gap:8px;padding:18px;border-radius:22px;background:rgba(255,255,255,.86);border:2px solid rgba(96,74,130,.12);cursor:pointer;transition:.15s ease;position:relative}.premium-package-card:hover,.premium-package-card.selected{transform:translateY(-2px);border-color:rgba(124,77,255,.35);box-shadow:var(--shadow)}.premium-package-card input{position:absolute;opacity:0}.premium-package-card strong{font-size:1.05rem;color:#241b3d}.pkg-price{font-size:1.7rem;font-weight:900;color:#241b3d}.premium-package-card small{color:var(--muted);font-weight:700}.pkg-badge{align-self:flex-start;border-radius:999px;padding:5px 9px;background:rgba(124,77,255,.08);border:1px solid rgba(124,77,255,.12);font-size:.75rem;font-weight:900;color:#5e40aa}.pkg-badge.best{background:rgba(255,62,165,.12);color:#8f1f63}.premium-benefits{display:flex;gap:10px;flex-wrap:wrap}.premium-benefits div{background:rgba(255,255,255,.80);border:1px solid var(--border);border-radius:999px;padding:8px 12px;font-weight:800;color:#4f4670}.premium-benefits i{color:#7c4dff;margin-right:5px}.premium-summary-card{border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.78));border:1px solid var(--border);padding:18px;display:grid;gap:12px}.premium-summary-card span{color:var(--muted);font-weight:800}.premium-success i{font-size:4rem;color:#17b26a}@media(max-width:575.98px){.premium-steps{grid-template-columns:repeat(2,1fr)}.premium-step{justify-content:flex-start}.premium-wizard-modal{border-radius:20px}.premium-benefits div{width:100%;border-radius:16px}}


/* v40 UI stabilization: consistent centered CTAs and mobile-safe button sizing */
.btn-main,.btn-soft{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;line-height:1.15;}
.section-card .btn-main:not(.w-100), .glass .btn-main:not(.w-100){width:auto;max-width:100%;}
.empty-state-premium, .empty-hero{box-sizing:border-box;}
@media(max-width:575.98px){
  .section-card .btn-main:not(.w-100), .glass .btn-main:not(.w-100){width:auto!important;}
}

/* v42 login page polish */
.login-polish-page{
  padding:22px 12px;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:100vh;
}
.login-shell{
  max-width:1180px;
  padding:0;
}
.login-card-v42{
  width:100%;
  min-height:640px;
  border-radius:34px;
  overflow:hidden;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(96,74,130,.12);
  box-shadow:0 30px 90px rgba(76,48,115,.16);
}
.login-story-col{
  background:
    radial-gradient(circle at 12% 14%, rgba(255,62,165,.16), transparent 34%),
    radial-gradient(circle at 88% 82%, rgba(124,77,255,.14), transparent 38%),
    linear-gradient(180deg,rgba(255,255,255,.56),rgba(255,255,255,.22));
}
.login-story-panel,
.login-form-panel{
  min-height:640px;
  padding:54px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.login-brand-mark{
  display:inline-flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  color:#241b3d;
  font-weight:950;
  font-size:1.15rem;
  margin-bottom:34px;
  align-self:flex-start;
}
.brand-heart{
  width:42px;
  height:42px;
  border-radius:16px;
  background:var(--primary-grad);
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 16px 34px rgba(124,77,255,.22);
}
.login-kicker,
.login-form-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  align-self:flex-start;
  border-radius:999px;
  padding:9px 14px;
  background:rgba(25,200,120,.12);
  border:1px solid rgba(25,200,120,.22);
  color:#176643;
  font-weight:900;
  font-size:.88rem;
  margin-bottom:20px;
}
.login-story-panel h1{
  font-size:clamp(2.7rem,4vw,4.15rem);
  line-height:1;
  font-weight:950;
  letter-spacing:-.05em;
  color:#241b3d;
  margin:0 0 20px;
}
.login-lead{
  color:#615a76;
  font-weight:650;
  font-size:1.22rem;
  line-height:1.65;
  max-width:520px;
  margin:0;
}
.login-benefit-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:34px;
}
.login-benefit-card{
  padding:18px;
  border-radius:22px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(96,74,130,.10);
  box-shadow:0 18px 45px rgba(76,48,115,.08);
  display:flex;
  gap:12px;
  align-items:flex-start;
}
.login-benefit-card i{
  width:38px;
  height:38px;
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(124,77,255,.10);
  color:#7c4dff;
  flex:0 0 auto;
  font-size:1.1rem;
}
.login-benefit-card strong{
  display:block;
  color:#241b3d;
  font-weight:950;
  margin-bottom:4px;
}
.login-benefit-card span{
  display:block;
  color:#6b6381;
  font-weight:650;
  line-height:1.45;
  font-size:.94rem;
}
.login-mini-note{
  margin-top:18px;
  padding:16px 18px;
  border-radius:22px;
  background:linear-gradient(90deg,rgba(255,62,165,.10),rgba(124,77,255,.10));
  border:1px solid rgba(124,77,255,.12);
  color:#4f4670;
  font-weight:800;
  display:flex;
  gap:10px;
  align-items:flex-start;
}
.login-mini-note i{color:#7c4dff;font-size:1.1rem;}
.login-form-col{background:rgba(255,255,255,.48);}
.login-form-panel{max-width:560px;margin:0 auto;width:100%;}
.login-form-head h2{
  color:#241b3d;
  font-weight:950;
  font-size:clamp(2.15rem,3vw,3.2rem);
  letter-spacing:-.04em;
  margin:0 0 6px;
}
.login-form-head p{
  color:#615a76;
  font-size:1.05rem;
  font-weight:650;
  margin-bottom:26px;
}
.auth-input-group .input-group-text,
.auth-input-group .form-control{
  min-height:58px;
  font-size:1rem;
}
.auth-input-group .input-group-text:first-child{
  width:58px;
  justify-content:center;
  color:#665d82;
}
.auth-input-group .form-control{
  font-weight:700;
}
.password-toggle-btn{
  border-left:0!important;
  border-radius:0 16px 16px 0!important;
  width:58px;
  justify-content:center;
  cursor:pointer;
}
.auth-input-group input[name="password"]{
  border-radius:0!important;
}
.login-policy-box{
  background:rgba(255,255,255,.82);
  border:1px solid rgba(96,74,130,.12);
  border-radius:20px;
  padding:14px 16px;
}
.policy-check{
  display:flex;
  align-items:flex-start;
  gap:12px;
  cursor:pointer;
  color:#4f4670;
  font-weight:750;
  line-height:1.55;
  margin:0;
}
.policy-check input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.policy-check-ui{
  width:24px;
  height:24px;
  border-radius:8px;
  border:2px solid rgba(124,77,255,.30);
  background:#fff;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  margin-top:1px;
}
.policy-check input:checked + .policy-check-ui{
  background:#7c4dff;
  border-color:#7c4dff;
}
.policy-check a{
  color:#7c4dff;
  font-weight:950;
  text-decoration:none;
}
.policy-check a:hover{text-decoration:underline;}
.login-submit-btn{
  min-height:60px;
  border-radius:18px;
  font-size:1.05rem;
  letter-spacing:-.01em;
}
.login-submit-btn i{font-size:1.45rem;line-height:1;}
.login-create-box{
  margin-top:20px;
  border-radius:22px;
  background:rgba(255,255,255,.76);
  border:1px solid rgba(96,74,130,.10);
  padding:16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:#6b6381;
  font-weight:800;
}
.login-create-box a{
  min-height:48px;
  padding:12px 20px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(96,74,130,.14);
  color:#241b3d;
  font-weight:950;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
}
.login-create-box a:hover{background:rgba(124,77,255,.06);}
@media(max-width:991.98px){
  .login-polish-page{align-items:flex-start!important;padding:14px 10px;}
  .login-card-v42{border-radius:26px;min-height:0;}
  .login-story-panel,.login-form-panel{min-height:0;padding:30px;}
  .login-story-panel{justify-content:flex-start;}
  .login-brand-mark{margin-bottom:22px;}
  .login-benefit-grid{grid-template-columns:1fr;margin-top:24px;}
  .login-form-panel{max-width:100%;}
}
@media(max-width:575.98px){
  .login-polish-page{padding:10px;background:linear-gradient(180deg,var(--bg-3),var(--bg-1));}
  .login-card-v42{border-radius:22px;box-shadow:0 20px 60px rgba(76,48,115,.12);}
  .login-story-panel{padding:24px 18px 18px;}
  .login-form-panel{padding:22px 18px 24px;}
  .login-story-panel h1{font-size:2.25rem;}
  .login-lead{font-size:1rem;line-height:1.55;}
  .login-benefit-grid{display:none;}
  .login-mini-note{display:none;}
  .login-kicker{margin-bottom:16px;}
  .login-form-head h2{font-size:2rem;}
  .login-form-head p{font-size:.98rem;margin-bottom:20px;}
  .auth-input-group .input-group-text,.auth-input-group .form-control{min-height:54px;}
  .login-policy-box{padding:12px 13px;border-radius:18px;}
  .policy-check{font-size:.92rem;gap:10px;}
  .login-submit-btn{min-height:56px;width:100%;}
  .login-create-box{flex-direction:column;text-align:center;align-items:stretch;}
  .login-create-box a{width:100%;}
}

/* v43 inclusive onboarding and login polish */
.login-card-v43 .login-kicker{
  background:rgba(25,200,120,.10);
  border-color:rgba(25,200,120,.24);
  color:#176643;
}
.login-card-v43 .login-form-badge,
.login-card-v43 .login-policy-box{display:none!important;}
.login-card-v43 .login-lead{max-width:560px;}
.login-create-box-v43{margin-top:28px;}
.register-benefits{display:grid;gap:12px;}
.register-benefit{
  display:flex;gap:12px;align-items:flex-start;
  padding:15px 16px;border-radius:20px;
  background:rgba(255,255,255,.82);border:1px solid rgba(96,74,130,.12);
  box-shadow:0 10px 24px rgba(76,48,115,.06);
}
.register-benefit i{
  width:38px;height:38px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;
  background:rgba(124,77,255,.08);color:#7c4dff;flex:0 0 auto;font-size:1.08rem;
}
.register-benefit strong{display:block;color:#241b3d;font-weight:950;margin-bottom:3px;}
.register-benefit span{display:block;color:#615a76;font-weight:650;line-height:1.45;font-size:.95rem;}
.register-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:4px;}
.already-link{
  display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border-radius:999px;
  background:rgba(255,255,255,.84);border:1px solid rgba(96,74,130,.12);color:#7c4dff;font-weight:900;text-decoration:none;
}
.already-link:hover{color:#5d35cf;background:#fff;}
.gender-card h5{margin-bottom:0!important;}
.gender-card{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:210px;}
.gender-card.active .gender-icon{background:linear-gradient(90deg,rgba(255,62,165,.14),rgba(124,77,255,.14));border-color:rgba(124,77,255,.20);}
.step-mini{font-size:.82rem;}
@media(max-width:991.98px){
  .register-title-row{display:block;}
  .already-link{margin-top:10px;}
  .gender-card{min-height:180px;}
}
@media(max-width:575.98px){
  .register-benefit{padding:13px 14px;border-radius:18px;}
  .register-title-row h2{font-size:2rem;}
  .already-link{width:100%;}
}

/* v44: Signup inherits the same premium split-card theme as Login */
.register-polish-page{
  padding:22px 12px;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:100vh;
}
.register-card-v44{
  width:100%;
  min-height:640px;
  border-radius:34px;
  overflow:hidden;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(96,74,130,.12);
  box-shadow:0 30px 90px rgba(76,48,115,.16);
}
.register-card-v44 .row{min-height:640px;}
.register-card-v44 .login-story-col{
  background:
    radial-gradient(circle at 12% 14%, rgba(255,62,165,.16), transparent 34%),
    radial-gradient(circle at 88% 82%, rgba(124,77,255,.14), transparent 38%),
    linear-gradient(180deg,rgba(255,255,255,.56),rgba(255,255,255,.22));
}
.register-story-panel,
.register-form-panel-v44{
  min-height:640px;
  padding:54px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.register-story-panel h1{
  font-size:clamp(2.7rem,4vw,4.15rem);
  line-height:1;
  font-weight:950;
  letter-spacing:-.05em;
  color:#241b3d;
  margin:0 0 20px;
}
.register-benefit-grid-v44{grid-template-columns:1fr 1fr;}
.register-form-panel-v44{max-width:620px;margin:0 auto;width:100%;}
.register-form-head-v44{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}
.register-form-head-v44 h2{
  color:#241b3d;
  font-weight:950;
  font-size:clamp(2.15rem,3vw,3.2rem);
  letter-spacing:-.04em;
  margin:0 0 6px;
}
.register-form-head-v44 p{
  color:#615a76;
  font-size:1.05rem;
  font-weight:650;
  margin:0;
}
.register-login-pill-v44{
  min-height:44px;
  padding:10px 16px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(96,74,130,.12);
  color:#7c4dff;
  font-weight:950;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:0 10px 24px rgba(76,48,115,.06);
}
.register-login-pill-v44:hover{background:rgba(124,77,255,.06);color:#5d35cf;}
.register-progress-v44{
  height:10px;
  border-radius:999px;
  background:rgba(124,77,255,.08);
  overflow:hidden;
}
.register-progress-v44 .progress-bar{background:var(--primary-grad);transition:width .2s ease;}
.register-step-labels-v44 .step-mini{
  font-size:.82rem;
  font-weight:950;
  color:#8a829f;
}
.register-step-labels-v44 .step-mini.active{color:#7c4dff;}
.register-card-v44 .gender-card{
  min-height:210px;
  border-radius:26px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(96,74,130,.12);
  box-shadow:0 10px 24px rgba(76,48,115,.04);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.register-card-v44 .gender-card:hover{transform:translateY(-2px);box-shadow:0 18px 45px rgba(76,48,115,.10);}
.register-card-v44 .gender-card.active{
  background:linear-gradient(90deg,rgba(255,62,165,.12),rgba(124,77,255,.12));
  border-color:rgba(124,77,255,.24);
  box-shadow:0 18px 45px rgba(76,48,115,.12);
}
.register-card-v44 .gender-icon{
  width:86px;height:86px;margin:0 auto 16px;border-radius:24px;
  background:#fff;border:1px solid rgba(96,74,130,.12);
  font-size:2.55rem;color:#241b3d;
}
.register-card-v44 .gender-card.active .gender-icon{
  background:linear-gradient(90deg,rgba(255,62,165,.14),rgba(124,77,255,.14));
  border-color:rgba(124,77,255,.20);
}
.register-card-v44 .form-control,
.register-card-v44 .form-select{
  min-height:56px;
  border-radius:18px;
  font-weight:700;
}
.register-card-v44 .terms-box{
  background:rgba(255,255,255,.82);
  border:1px solid rgba(96,74,130,.12);
  border-radius:20px;
  padding:15px 16px;
}
.register-card-v44 .auth-actions{
  align-items:center;
}
.register-card-v44 .auth-actions .btn{
  min-height:54px;
  border-radius:18px;
}
@media(max-width:991.98px){
  .register-polish-page{align-items:flex-start!important;padding:14px 10px;}
  .register-card-v44,.register-card-v44 .row{min-height:0;}
  .register-card-v44{border-radius:26px;}
  .register-story-panel,.register-form-panel-v44{min-height:0;padding:30px;}
  .register-story-panel{justify-content:flex-start;}
  .register-benefit-grid-v44{grid-template-columns:1fr;}
  .register-form-panel-v44{max-width:100%;}
  .register-form-head-v44{display:block;}
  .register-login-pill-v44{display:inline-flex;margin-top:12px;}
}
@media(max-width:575.98px){
  .register-polish-page{padding:10px;background:linear-gradient(180deg,var(--bg-3),var(--bg-1));}
  .register-card-v44{border-radius:22px;box-shadow:0 20px 60px rgba(76,48,115,.12);}
  .register-story-panel{padding:24px 18px 18px;}
  .register-form-panel-v44{padding:22px 18px 24px;}
  .register-story-panel h1{font-size:2.25rem;}
  .register-story-panel .login-lead{font-size:1rem;line-height:1.55;}
  .register-benefit-grid-v44{display:none;}
  .register-mini-note-v44{display:none;}
  .register-form-head-v44 h2{font-size:2rem;}
  .register-form-head-v44 p{font-size:.98rem;line-height:1.45;}
  .register-login-pill-v44{width:100%;justify-content:center;}
  .register-card-v44 .gender-card{min-height:150px;border-radius:22px;padding:20px;}
  .register-card-v44 .gender-icon{width:70px;height:70px;font-size:2.1rem;border-radius:20px;}
  .register-step-labels-v44 .step-mini{font-size:.76rem;}
  .register-card-v44 .auth-actions{flex-direction:column;align-items:stretch;}
  .register-card-v44 .auth-actions .ms-auto{width:100%;margin-left:0!important;}
  .register-card-v44 .auth-actions .btn{width:100%;}
}

/* v45: Signup wizard layout correction
   Fixes accidental global min-height that stretched inner Bootstrap rows/gender cards. */
.register-card-v44 .row{min-height:0!important;}
.register-card-v44 > .row,
.register-card-v44 > .row.g-0,
.login-card-v42 > .row,
.login-card-v42 > .row.g-0{min-height:640px!important;}
.register-form-panel-v44{justify-content:center;}
.register-card-v44 .step-pane{min-height:0!important;}
.register-card-v44 .step-pane .row,
.register-card-v44 form .row{min-height:0!important;}
.register-card-v44 .gender-card{
  min-height:220px!important;
  height:auto!important;
  padding:28px 22px!important;
}
.register-card-v44 .gender-icon{
  width:82px!important;
  height:82px!important;
  margin-bottom:14px!important;
}
.register-card-v44 .auth-actions{
  margin-top:24px!important;
}
.register-card-v44 #nextBtn,
.register-card-v44 #submitBtn{
  min-width:150px;
}
@media(max-width:991.98px){
  .register-card-v44 > .row,
  .register-card-v44 > .row.g-0,
  .login-card-v42 > .row,
  .login-card-v42 > .row.g-0{min-height:0!important;}
  .register-card-v44 .gender-card{min-height:180px!important;}
}
@media(max-width:575.98px){
  .register-card-v44 .gender-card{min-height:138px!important;padding:18px 14px!important;}
  .register-card-v44 .gender-icon{width:64px!important;height:64px!important;font-size:2rem!important;}
  .register-card-v44 #nextBtn,
  .register-card-v44 #submitBtn{min-width:0;width:100%;}
}


/* v46 signup cleanup: removed extra left-panel kicker and benefit cards */
.register-polish-page .register-mini-note-v44{
  margin-top:34px;
  max-width:520px;
}
.register-polish-page .login-brand-mark{
  margin-bottom:42px;
}


/* v51: refined dating-platform typography - Playfair Display titles + Plus Jakarta Sans UI/body */
:root{
  --font-heading:'Playfair Display', Georgia, serif;
  --font-body:'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body,
button,
input,
select,
textarea,
.form-control,
.form-select,
.btn,
.chip,
.pill,
.bottom-nav a{
  font-family:var(--font-body)!important;
}
/* Use Gloock only for big marketing/page titles so the app stays readable */
h1,
.hero-title,
.auth-title,
.login-story-panel h1,
.register-story-panel h1,
.login-form-head h2,
.register-form-head-v44 h2,
.display-1,
.display-2,
.display-3,
.display-4,
.display-5,
.display-6,
.page-hero-title,
.landing-title{
  font-family:var(--font-heading)!important;
  font-weight:800!important;
  letter-spacing:-.045em;
}
/* Keep operational headings bold and clean */
h2:not(.landing-title):not(.page-hero-title),
h3,
h4,
h5,
h6,
.section-title,
.brand,
.card-title,
.fw-black{
  font-family:var(--font-body)!important;
  font-weight:900!important;
  letter-spacing:-.025em;
}
.login-story-panel h1,
.register-story-panel h1{
  line-height:.98!important;
}
.login-form-head h2,
.register-form-head-v44 h2{
  line-height:1.08!important;
}


/* v51 official Mahaba logo sizing */
.mahaba-logo-img{
  width:54px;
  height:54px;
  border-radius:18px;
  object-fit:cover;
  display:inline-block;
  box-shadow:0 16px 34px rgba(124,77,255,.18);
}
.login-brand-mark .mahaba-logo-img{
  flex:0 0 54px;
}
.site-logo-sm{
  width:46px;
  height:46px;
  border-radius:16px;
  object-fit:cover;
  vertical-align:middle;
  margin-right:8px;
}
.admin-logo-sm{
  width:40px;
  height:40px;
  border-radius:14px;
  object-fit:cover;
  margin-right:8px;
}


/* v51 logo alignment and mobile tuning */
.login-brand-mark{
  gap:14px!important;
  font-size:1.28rem!important;
}
.brand{
  display:inline-flex;
  align-items:center;
  gap:0;
}
@media(max-width:575.98px){
  .mahaba-logo-img{width:46px;height:46px;border-radius:16px;}
  .login-brand-mark .mahaba-logo-img{flex-basis:46px;}
  .site-logo-sm{width:38px;height:38px;border-radius:14px;}
  .admin-logo-sm{width:34px;height:34px;border-radius:12px;}
}


/* v54 unified client page header */
.app-page-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;padding:16px 18px;border-radius:24px;background:rgba(255,255,255,.82);border:1px solid var(--border);box-shadow:var(--shadow);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.app-page-header-left{display:flex;align-items:center;gap:12px;min-width:0}
.app-page-header-logo{width:58px;height:58px;border-radius:18px;object-fit:contain;background:rgba(255,255,255,.75);border:1px solid rgba(96,74,130,.10);padding:6px;box-shadow:0 10px 24px rgba(76,48,115,.08);flex:0 0 auto}
.app-page-header-title-wrap{min-width:0}
.app-page-header-title-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.app-page-header-title{font-family:'Playfair Display',serif;font-size:1.7rem;line-height:1.05;font-weight:800;color:#241b3d;margin:0;white-space:nowrap}
.app-page-header-subtitle{margin-top:4px;color:var(--muted);font-weight:700;font-size:.95rem;line-height:1.35;max-width:680px}
.app-header-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;background:linear-gradient(90deg,#ff3ea5,#7c4dff);color:#fff;font-size:.72rem;font-weight:950;letter-spacing:.02em;white-space:nowrap}
.app-page-header-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.app-header-icon-btn{width:44px;height:44px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.92);border:1px solid rgba(96,74,130,.12);color:#2d2550;text-decoration:none;font-size:1.12rem;box-shadow:0 10px 24px rgba(76,48,115,.06)}
.app-header-icon-btn:hover{background:#fff;color:#241b3d}
.app-header-menu{border:0;border-radius:18px;box-shadow:var(--shadow-strong);padding:8px;min-width:220px}.app-header-menu .dropdown-item{border-radius:12px;font-weight:800;color:#4d4468;padding:10px 12px;display:flex;align-items:center;gap:8px}.app-header-menu .dropdown-item:hover{background:rgba(124,77,255,.08);color:#241b3d}
.site-logo-sm{width:44px;height:44px;object-fit:contain}.site-logo-lg{width:68px;height:68px;object-fit:contain}
@media(max-width:767.98px){.app-page-header{padding:13px 14px;border-radius:22px;margin-bottom:12px}.app-page-header-logo{width:50px;height:50px;border-radius:16px}.app-page-header-title{font-size:1.42rem}.app-page-header-subtitle{font-size:.86rem;max-width:220px}.app-page-header-actions{gap:6px}.app-header-icon-btn{width:40px;height:40px;border-radius:14px}.app-header-badge{font-size:.66rem;padding:5px 8px}.site-logo-sm{width:40px;height:40px}}
@media(max-width:380px){.app-page-header-logo{width:46px;height:46px}.app-page-header-title{font-size:1.28rem}.app-page-header-subtitle{max-width:190px}.app-header-icon-btn{width:38px;height:38px}}

/* v55 header dropdown stacking and mobile alignment fix */
.app-page-header{
  position:relative;
  z-index:1200;
  overflow:visible !important;
}
.app-page-header .dropdown{
  position:relative;
  z-index:1300;
}
.app-page-header .dropdown-menu.app-header-menu{
  position:absolute !important;
  inset:auto 0 auto auto !important;
  transform:none !important;
  top:calc(100% + 10px) !important;
  right:0 !important;
  left:auto !important;
  z-index:5000 !important;
  min-width:230px;
  max-width:calc(100vw - 32px);
  border-radius:20px;
  background:rgba(255,255,255,.98);
  border:1px solid rgba(96,74,130,.12);
  box-shadow:0 22px 55px rgba(76,48,115,.18);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  padding:10px;
}
.app-page-header .dropdown-menu.app-header-menu .dropdown-item{
  min-height:44px;
  padding:10px 12px;
  font-size:.95rem;
  line-height:1.1;
  border-radius:14px;
}
.app-page-header .dropdown-menu.app-header-menu .dropdown-item + .dropdown-item{
  margin-top:4px;
}
.app-page-header .dropdown-menu.app-header-menu .dropdown-item.active{
  background:rgba(124,77,255,.10);
  color:#241b3d;
}
@media(max-width:767.98px){
  .app-page-header{
    z-index:1200;
  }
  .app-page-header .dropdown-menu.app-header-menu{
    right:0 !important;
    top:calc(100% + 8px) !important;
    min-width:218px;
    max-width:260px;
    padding:9px;
  }
  .app-page-header .dropdown-menu.app-header-menu .dropdown-item{
    min-height:42px;
    font-size:.92rem;
  }
}

/* v56: Premium wizard mobile accessibility fix */
body.modal-open .bottom-nav,
body.modal-open .mobile-bottom-nav,
body.modal-open .app-bottom-nav{
  display:none !important;
}

#premiumWizardModal{
  z-index: 20000;
}
#premiumWizardModal + .modal-backdrop,
.modal-backdrop.show{
  z-index: 19990;
}

#premiumWizardModal .modal-dialog{
  max-height: calc(100dvh - 24px);
}
#premiumWizardModal .premium-wizard-modal{
  max-height: calc(100dvh - 24px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
#premiumWizardModal .modal-body{
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  padding-bottom:14px;
}
#premiumWizardModal .modal-footer{
  flex-shrink:0;
  background:rgba(255,255,255,.97);
  border-top:1px solid rgba(96,74,130,.10) !important;
  box-shadow:0 -12px 28px rgba(76,48,115,.08);
  padding:12px 16px 16px;
}

@media(max-width:575.98px){
  #premiumWizardModal .modal-dialog{
    margin:8px;
    max-height:calc(100dvh - 16px);
    align-items:flex-start;
  }
  #premiumWizardModal .premium-wizard-modal{
    max-height:calc(100dvh - 16px);
    border-radius:22px;
  }
  #premiumWizardModal .modal-header{
    padding:16px 16px 8px;
  }
  #premiumWizardModal .modal-body{
    padding:12px 16px;
  }
  #premiumWizardModal .premium-steps{
    grid-template-columns:repeat(3,1fr);
    gap:6px;
  }
  #premiumWizardModal .premium-step{
    padding:8px 6px;
    font-size:.72rem;
    justify-content:center;
    gap:4px;
  }
  #premiumWizardModal .premium-step span{
    width:20px;
    height:20px;
    font-size:.70rem;
  }
  #premiumWizardModal .premium-package-card{
    min-height:auto;
    padding:14px;
    border-radius:18px;
  }
  #premiumWizardModal .pkg-price{
    font-size:1.35rem;
  }
  #premiumWizardModal .premium-benefits{
    gap:8px;
  }
  #premiumWizardModal .premium-benefits div{
    width:100%;
    border-radius:14px;
    padding:9px 12px;
  }
  #premiumWizardModal .modal-footer{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
  }
  #premiumWizardModal .modal-footer .btn{
    width:100%;
    min-height:48px;
  }
}

/* v57: Premium payment wizard visual upgrade */
#premiumWizardModal .modal-dialog{
  max-width:760px;
}
#premiumWizardModal .premium-wizard-modal{
  border:0;
  border-radius:30px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.94));
  box-shadow:0 34px 90px rgba(34,24,58,.22);
  overflow:hidden;
}
#premiumWizardModal .modal-header{
  padding:26px 28px 14px;
  background:
    radial-gradient(circle at 15% 0%, rgba(255,62,165,.13), transparent 32%),
    radial-gradient(circle at 95% 10%, rgba(124,77,255,.13), transparent 34%);
}
#premiumWizardModal .modal-title{
  font-family:var(--title-font, 'Playfair Display', serif);
  color:#241b3d;
  font-size:clamp(1.65rem,3vw,2.25rem);
  letter-spacing:-.03em;
  line-height:1.05;
}
#premiumWizardModal .premium-modal-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:8px;
  padding:8px 12px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(255,62,165,.12),rgba(124,77,255,.12));
  color:#6f35dd;
  font-size:.82rem;
  font-weight:900;
  border:1px solid rgba(124,77,255,.14);
}
#premiumWizardModal .btn-close{
  width:42px;
  height:42px;
  border-radius:999px;
  background-color:rgba(255,255,255,.84);
  border:1px solid rgba(96,74,130,.12);
  box-shadow:0 10px 28px rgba(76,48,115,.08);
  opacity:1;
}
#premiumWizardModal .modal-body{
  padding:16px 28px 18px;
}
#premiumWizardModal .premium-steps{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin-bottom:18px!important;
}
#premiumWizardModal .premium-step{
  padding:9px 10px;
  border-radius:999px;
  background:#f7f2ff;
  border:1px solid rgba(124,77,255,.12);
  color:#756b8e;
  font-size:.82rem;
  font-weight:900;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
}
#premiumWizardModal .premium-step span{
  width:25px;
  height:25px;
  border-radius:999px;
  background:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(124,77,255,.16);
  color:#5c4d7b;
  font-weight:950;
}
#premiumWizardModal .premium-step.active{
  background:linear-gradient(90deg,rgba(255,62,165,.16),rgba(124,77,255,.16));
  border-color:rgba(124,77,255,.22);
  color:#241b3d;
}
#premiumWizardModal .premium-step.done{
  background:rgba(25,200,120,.10);
  border-color:rgba(25,200,120,.18);
  color:#176643;
}
#premiumWizardModal .premium-package-card{
  padding:16px;
  min-height:160px;
  border-radius:22px;
  background:linear-gradient(180deg,#fff,rgba(255,255,255,.82));
  border:1.5px solid rgba(96,74,130,.13);
  box-shadow:0 14px 34px rgba(76,48,115,.06);
  gap:7px;
}
#premiumWizardModal .premium-package-card.selected{
  border-color:rgba(124,77,255,.45);
  box-shadow:0 18px 44px rgba(124,77,255,.16);
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(250,246,255,.94));
}
#premiumWizardModal .premium-package-card strong{
  font-size:1rem;
  letter-spacing:-.01em;
}
#premiumWizardModal .pkg-price{
  font-size:1.55rem;
  line-height:1.1;
}
#premiumWizardModal .pkg-badge{
  font-size:.72rem;
  padding:5px 9px;
}
#premiumWizardModal .premium-benefits{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
#premiumWizardModal .premium-benefits div{
  background:#fff;
  border:1px solid rgba(96,74,130,.11);
  border-radius:16px;
  padding:11px 12px;
  font-weight:850;
  color:#4f4670;
  box-shadow:0 10px 26px rgba(76,48,115,.05);
}
#premiumWizardModal .wizard-pane[data-wizard-step="2"] .form-label{
  font-size:1.05rem;
  color:#241b3d;
}
#premiumWizardModal .wizard-pane[data-wizard-step="2"] .input-group-text,
#premiumWizardModal .wizard-pane[data-wizard-step="2"] .form-control{
  min-height:60px;
  border-color:rgba(96,74,130,.14);
  background:#fff;
  font-size:1rem;
}
#premiumWizardModal .payment-help{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin-top:12px;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(25,200,120,.08);
  border:1px solid rgba(25,200,120,.14);
  color:#4f4670;
  font-weight:750;
}
#premiumWizardModal .payment-help i{
  color:#176643;
  margin-top:2px;
}
#premiumWizardModal .modal-footer{
  padding:14px 28px 24px;
  background:linear-gradient(180deg,rgba(255,255,255,.92),#fff);
  border-top:1px solid rgba(96,74,130,.08)!important;
  gap:12px;
}
#premiumWizardModal .modal-footer .btn{
  min-height:54px;
  border-radius:18px;
  font-weight:950;
  padding-left:22px;
  padding-right:22px;
}
#premiumWizardModal #premiumPayBtn,
#premiumWizardModal #premiumNextBtn{
  min-width:210px;
}
@media(max-width:575.98px){
  #premiumWizardModal .modal-dialog{
    margin:10px;
    max-height:calc(100dvh - 20px);
  }
  #premiumWizardModal .premium-wizard-modal{
    border-radius:24px;
    max-height:calc(100dvh - 20px);
  }
  #premiumWizardModal .modal-header{
    padding:20px 18px 10px;
  }
  #premiumWizardModal .modal-title{
    font-size:1.72rem;
  }
  #premiumWizardModal .modal-header .text-muted-2{
    font-size:.92rem!important;
    line-height:1.45;
  }
  #premiumWizardModal .modal-body{
    padding:12px 18px 14px;
  }
  #premiumWizardModal .premium-steps{
    grid-template-columns:repeat(3,1fr);
    gap:6px;
    position:sticky;
    top:0;
    z-index:2;
    background:rgba(255,255,255,.92);
    padding:4px 0 8px;
    backdrop-filter:blur(10px);
  }
  #premiumWizardModal .premium-step{
    min-height:36px;
    padding:7px 5px;
    font-size:.70rem;
    gap:4px;
  }
  #premiumWizardModal .premium-step span{
    width:21px;
    height:21px;
    font-size:.68rem;
  }
  #premiumWizardModal #premiumPackagesWrap{
    --bs-gutter-y:.65rem;
  }
  #premiumWizardModal #premiumPackagesWrap .col-md-4{
    width:100%;
  }
  #premiumWizardModal .premium-package-card{
    min-height:auto;
    padding:14px 15px;
    border-radius:19px;
    display:grid;
    grid-template-columns:1fr auto;
    align-items:center;
    column-gap:12px;
  }
  #premiumWizardModal .premium-package-card .pkg-badge,
  #premiumWizardModal .premium-package-card small{
    grid-column:1 / -1;
  }
  #premiumWizardModal .premium-package-card .pkg-price{
    grid-column:2;
    grid-row:2;
    font-size:1.45rem;
    white-space:nowrap;
  }
  #premiumWizardModal .premium-package-card strong{
    grid-column:1;
    grid-row:2;
  }
  #premiumWizardModal .premium-benefits{
    grid-template-columns:1fr;
    gap:8px;
  }
  #premiumWizardModal .premium-benefits div{
    border-radius:14px;
    padding:10px 12px;
  }
  #premiumWizardModal .wizard-pane[data-wizard-step="2"] .input-group-text,
  #premiumWizardModal .wizard-pane[data-wizard-step="2"] .form-control{
    min-height:56px;
  }
  #premiumWizardModal .modal-footer{
    padding:12px 18px 18px;
    display:grid;
    grid-template-columns:1fr;
  }
  #premiumWizardModal .modal-footer .btn,
  #premiumWizardModal #premiumPayBtn,
  #premiumWizardModal #premiumNextBtn{
    width:100%;
    min-width:0;
    min-height:52px;
  }
}

/* v58/v63 notifications */
.app-notification-btn{position:relative;}
.app-notification-count{position:absolute;top:-6px;right:-6px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#ff3ea5;color:#fff;font-size:10px;font-weight:950;display:flex;align-items:center;justify-content:center;border:2px solid #fff;box-shadow:0 8px 18px rgba(255,62,165,.26);line-height:1;}
.notification-list{display:grid;gap:12px;}
.notification-item{display:grid;grid-template-columns:48px minmax(0,1fr) 32px;gap:14px;align-items:center;padding:16px 18px;border-radius:22px;background:rgba(255,255,255,.90);border:1px solid rgba(96,74,130,.12);box-shadow:var(--shadow);text-decoration:none;color:inherit;transition:transform .15s ease, box-shadow .15s ease, background .15s ease;}
.notification-item:hover{color:inherit;background:#fff;transform:translateY(-1px);box-shadow:var(--shadow-strong);}
.notification-item.unread{border-color:rgba(255,62,165,.20);background:linear-gradient(90deg,rgba(255,62,165,.075),rgba(124,77,255,.05)),rgba(255,255,255,.93);}
.notification-icon{width:48px;height:48px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,rgba(124,77,255,.12),rgba(255,62,165,.08));color:#7c4dff;flex:0 0 auto;font-size:1.25rem;}
.notification-body{min-width:0;}
.notification-title{font-weight:950;color:#241b3d;margin-bottom:3px;line-height:1.2;white-space:normal;}
.notification-text{color:#615a76;font-weight:650;line-height:1.38;font-size:.94rem;overflow-wrap:anywhere;}
.notification-time{color:#8a829f;font-weight:800;font-size:.8rem;margin-top:6px;}
.notification-arrow{width:32px;height:32px;border-radius:999px;display:flex;align-items:center;justify-content:center;color:#7c4dff;background:rgba(124,77,255,.07);font-size:1rem;justify-self:end;}
@media(max-width:575.98px){.notification-list{gap:10px}.notification-item{grid-template-columns:42px minmax(0,1fr) 24px;gap:11px;padding:14px;border-radius:20px;align-items:center}.notification-icon{width:42px;height:42px;border-radius:15px;font-size:1.12rem}.notification-title{font-size:.98rem}.notification-text{font-size:.9rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-time{font-size:.76rem;margin-top:5px}.notification-arrow{width:24px;height:24px;background:transparent;font-size:1.05rem}.notification-group-title{margin-left:2px;margin-right:2px}}
.notification-actions{width:100%;margin-top:10px}.notification-actions .btn{width:100%}.notification-icon{width:38px;height:38px;border-radius:14px}.notification-title{font-size:.98rem}.notification-text{font-size:.9rem}}

/* v67: keep all modal dialogs above their backdrop, fixing report profile overlay on mobile/desktop */
.modal.show{
  z-index:20000 !important;
}
.modal-backdrop.show{
  z-index:19990 !important;
  opacity:.42 !important;
}
#reportProfileModal .modal-content{
  background:#fff !important;
  color:#241b3d !important;
  border-radius:24px;
  border:1px solid rgba(96,74,130,.12);
  box-shadow:0 24px 70px rgba(76,48,115,.20);
}
#reportProfileModal .form-control,
#reportProfileModal .form-select{
  background:#fff;
  color:#241b3d;
}


/* v69: final mobile/navigation/modal polish */
.app-page-header-title,
.section-title,
.page-title,
.hero-title,
.profile-page-title{
  font-family:'Cormorant Garamond','Playfair Display',serif !important;
  font-weight:700 !important;
  letter-spacing:-.018em;
}
.app-page-header-title{font-size:1.9rem;}
@media(max-width:575.98px){.app-page-header-title{font-size:1.55rem;}}

.bottom-nav .row{align-items:stretch;}
.bottom-nav a{min-height:58px;justify-content:center;}
.bottom-nav a span{line-height:1;}

/* Keep modal content above overlays and keep report/block modals usable */
.modal{z-index:30000!important;}
.modal-dialog{position:relative;z-index:30010!important;}
.modal-backdrop{z-index:29990!important;}
.modal-backdrop.show{opacity:.30!important;background:#1d1830!important;}
#reportProfileModal .modal-content,
#blockProfileModal .modal-content,
.mahaba-clean-modal .modal-content{
  background:rgba(255,255,255,.98)!important;
  color:#241b3d!important;
  border-radius:26px!important;
  border:1px solid rgba(96,74,130,.12)!important;
  box-shadow:0 28px 80px rgba(76,48,115,.22)!important;
}
#reportProfileModal .modal-body,
#blockProfileModal .modal-body{color:#241b3d!important;}
#reportProfileModal .form-control,
#reportProfileModal .form-select,
#blockProfileModal .form-control,
#blockProfileModal .form-select{
  background:#fff!important;
  color:#241b3d!important;
  border:1px solid rgba(96,74,130,.16)!important;
}
#reportProfileModal .modal-header,
#blockProfileModal .modal-header{align-items:flex-start;}


/* v72: bottom navigation attaches to the bottom edge instead of floating as a pill; remove duplicate floating WhatsApp bar on profile pages */
body{
  padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px)) !important;
}
.bottom-nav{
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  transform: none !important;
  width: 100% !important;
  max-width: none !important;
  z-index: 9998 !important;
  padding: 8px 12px calc(8px + env(safe-area-inset-bottom, 0px)) !important;
  border-radius: 22px 22px 0 0 !important;
  background: rgba(255,255,255,.96) !important;
  border: 1px solid rgba(96,74,130,.12) !important;
  border-bottom: 0 !important;
  box-shadow: 0 -10px 34px rgba(76,48,115,.12) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}
.bottom-nav .row{max-width:720px;margin:0 auto!important;align-items:stretch;}
.bottom-nav a{
  min-height: 56px !important;
  justify-content: center !important;
  border-radius: 16px !important;
  padding: 7px 6px !important;
  gap: 4px !important;
}
.bottom-nav a span{font-size:11px;line-height:1.1;}
.bottom-nav i{font-size:18px!important;}
.mobile-connect-bar{display:none!important;}
.app-page-header-logo-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;flex:0 0 auto;}
.app-page-header-logo-link:hover .app-page-header-logo{transform:translateY(-1px);box-shadow:0 14px 30px rgba(76,48,115,.12);}
.app-page-header-logo{transition:.16s ease;}
@media(max-width:575.98px){
  body{padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)) !important;}
  .bottom-nav{padding-left:8px!important;padding-right:8px!important;}
  .bottom-nav a{min-height:54px!important;}
  .bottom-nav a span{font-size:10.5px;}
}

/* v75: profile hero spacing + smaller logged-in page headers */
.app-page-header-title{
  font-size:1.4rem !important;
  line-height:1.08 !important;
}
@media(max-width:575.98px){
  .app-page-header-title{font-size:1.28rem !important;}
}
.profile-hero-wrap .hero-name,
.hero-photo .hero-name{
  margin-bottom:14px !important;
}
.profile-hero-wrap .hero-sub,
.hero-photo .hero-sub{
  margin-top:0 !important;
  row-gap:9px !important;
}
@media(max-width:575.98px){
  .profile-hero-wrap .hero-name,
  .hero-photo .hero-name{margin-bottom:12px !important;}
  .profile-hero-wrap .hero-sub,
  .hero-photo .hero-sub{row-gap:8px !important;}
}

/* v79: registration polish, progress labels, welcome modal, final page-header size */
.app-page-header-title{font-size:1.4rem!important;line-height:1.08!important;}
@media(max-width:575.98px){.app-page-header-title{font-size:1.28rem!important;}}
.register-progress-enhanced{height:22px!important;border-radius:999px!important;background:rgba(124,77,255,.10)!important;overflow:hidden;}
.register-progress-enhanced .progress-bar{border-radius:999px!important;background:linear-gradient(90deg,#ff3ea5,#7c4dff)!important;transition:width .28s ease!important;}
.register-progress-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.74rem;font-weight:900;color:#fff;text-shadow:0 1px 8px rgba(35,23,58,.28);letter-spacing:.01em;z-index:2;pointer-events:none;}
.mahaba-welcome-modal{border:0;border-radius:30px!important;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#fff7fd 100%);box-shadow:0 35px 100px rgba(76,48,115,.25);}
.welcome-modal-logo{width:96px;height:auto;filter:drop-shadow(0 12px 24px rgba(124,77,255,.14));}
.welcome-kicker{display:inline-flex;align-items:center;justify-content:center;padding:7px 14px;border-radius:999px;background:rgba(124,77,255,.08);color:#7c4dff;font-weight:900;font-size:.84rem;}
.welcome-title{font-family:'Playfair Display',serif;font-weight:800;color:#241b3d;letter-spacing:-.02em;}
.welcome-text{color:#615a76;line-height:1.65;max-width:420px;margin-left:auto;margin-right:auto;}
.mahaba-policy-page .policy-card{max-width:980px;margin:0 auto;background:rgba(255,255,255,.88);border:1px solid rgba(96,74,130,.12);border-radius:30px;box-shadow:0 22px 60px rgba(76,48,115,.10);padding:34px;}
.mahaba-policy-page h1{font-family:'Playfair Display',serif;font-weight:800;color:#241b3d;letter-spacing:-.02em;}
.mahaba-policy-page h2{font-size:1.15rem;font-weight:900;margin-top:26px;color:#241b3d;}
.mahaba-policy-page p,.mahaba-policy-page li{color:#615a76;line-height:1.75;}
.mahaba-policy-page .policy-logo{width:120px;height:auto;margin-bottom:16px;}
@media(max-width:575.98px){.mahaba-policy-page .policy-card{padding:22px;border-radius:24px}.welcome-modal-logo{width:82px}}

/* v80: personalization polish */
.app-header-avatar-btn{
    width:44px;
    height:44px;
    border-radius:16px;
    padding:2px;
    border:1px solid rgba(96,74,130,.14);
    background:rgba(255,255,255,.94);
    box-shadow:0 10px 24px rgba(76,48,115,.08);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    position:relative;
    overflow:visible;
}
.app-header-avatar-btn img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:14px;
    display:block;
}
.app-header-avatar-dot{
    position:absolute;
    right:1px;
    bottom:1px;
    width:12px;
    height:12px;
    border-radius:999px;
    background:#22c55e;
    border:2px solid #fff;
    box-shadow:0 0 0 4px rgba(34,197,94,.12);
}
@media(max-width:767.98px){
    .app-header-avatar-btn{width:40px;height:40px;border-radius:14px;}
    .app-header-avatar-btn img{border-radius:12px;}
}

.mahaba-welcome-modal{
    border:0!important;
    border-radius:34px!important;
    overflow:hidden;
    background:linear-gradient(180deg,#ffffff 0%,#fff6fd 100%)!important;
    box-shadow:0 35px 110px rgba(76,48,115,.28)!important;
}
.welcome-celebration-icon{
    width:62px;
    height:62px;
    border-radius:22px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg,#ff3ea5,#7c4dff);
    color:#fff;
    font-size:1.7rem;
    box-shadow:0 18px 40px rgba(124,77,255,.20);
    margin-bottom:14px;
}
.welcome-action-grid{display:grid;gap:12px;margin-top:20px;}
.welcome-action-card{
    min-height:66px;
    display:flex!important;
    align-items:center;
    gap:13px;
    text-align:left;
    border-radius:20px!important;
    padding:13px 15px!important;
    text-decoration:none!important;
    border:1px solid rgba(96,74,130,.12)!important;
    background:rgba(255,255,255,.82)!important;
    color:#241b3d!important;
    box-shadow:0 12px 30px rgba(76,48,115,.08);
    transition:transform .16s ease, box-shadow .16s ease, background .16s ease;
}
.welcome-action-card:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(76,48,115,.12);background:#fff!important;}
.welcome-action-card.primary{
    background:linear-gradient(90deg,#ff3ea5,#7c4dff)!important;
    color:#fff!important;
    border:0!important;
}
.welcome-action-icon{
    width:42px;
    height:42px;
    border-radius:15px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(124,77,255,.10);
    color:#7c4dff;
    font-size:1.18rem;
    flex:0 0 42px;
}
.welcome-action-card.primary .welcome-action-icon{background:rgba(255,255,255,.18);color:#fff;}
.welcome-action-title{display:block;font-weight:950;line-height:1.15;margin-bottom:3px;}
.welcome-action-sub{display:block;font-size:.82rem;line-height:1.35;color:#716986;font-weight:700;}
.welcome-action-card.primary .welcome-action-sub{color:rgba(255,255,255,.82);}


/* v81: return-url onboarding polish, compact admin logo */
.admin-logo-sm{
  width:24px!important;
  height:24px!important;
  border-radius:8px!important;
  object-fit:cover!important;
  margin-right:7px!important;
  vertical-align:middle!important;
  box-shadow:none!important;
}
.mahaba-welcome-modal .modal-body{padding:30px 24px 26px!important;}
.welcome-modal-logo{width:74px!important;margin-bottom:10px!important;}
.welcome-celebration-icon{width:54px!important;height:54px!important;border-radius:20px!important;font-size:1.42rem!important;margin-bottom:12px!important;}
.welcome-title{font-size:1.72rem!important;margin-bottom:8px!important;}
.welcome-text{font-size:.96rem!important;max-width:440px!important;}
.welcome-action-grid{margin-top:20px!important;gap:11px!important;}
.welcome-action-card{min-height:70px!important;padding:14px 15px!important;}
.welcome-action-card.premium-action .welcome-action-icon{background:rgba(255,62,165,.10);color:#ff3ea5;}
@media(max-width:575.98px){
  .mahaba-welcome-modal .modal-body{padding:24px 18px 22px!important;}
  .welcome-modal-logo{width:64px!important;}
  .welcome-title{font-size:1.45rem!important;}
  .welcome-action-card{min-height:66px!important;}
  .welcome-action-sub{font-size:.78rem!important;}
}


/* v82: admin logo correction, default logged-in title font, SEO/activity polish */
.admin-logo-sm{
  width:22px!important;
  height:22px!important;
  max-width:22px!important;
  max-height:22px!important;
  border-radius:7px!important;
  object-fit:cover!important;
  margin-right:8px!important;
  vertical-align:middle!important;
  display:inline-block!important;
}
.admin-login-logo,
.admin-login-logo img{
  width:22px!important;
  height:22px!important;
  max-width:22px!important;
  max-height:22px!important;
}
.app-page-header-title,
.section-title,
.page-title,
.profile-page-title{
  font-family:'Plus Jakarta Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
  font-weight:900!important;
  letter-spacing:-.025em!important;
}
.app-page-header-title{font-size:1.4rem!important;line-height:1.08!important;}
@media(max-width:575.98px){.app-page-header-title{font-size:1.24rem!important;}}


/* v83: Premium countdown + Vibe picker */
.premium-offer-timer{
  display:inline-flex;align-items:center;gap:8px;margin-top:12px;
  border-radius:999px;padding:9px 13px;
  background:linear-gradient(90deg,rgba(255,62,165,.12),rgba(124,77,255,.12));
  border:1px solid rgba(124,77,255,.18);color:#4f235f;font-weight:900;font-size:.88rem;
}
.premium-offer-timer i{color:#ff3ea5}.premium-offer-timer b{color:#7c4dff}
.vibe-picker{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.vibe-chip{position:relative;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(124,77,255,.16);background:rgba(255,255,255,.82);border-radius:999px;padding:10px 14px;font-weight:850;color:#4f4670;cursor:pointer;transition:.15s ease;user-select:none}.vibe-chip:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(76,48,115,.10)}.vibe-chip input{position:absolute;opacity:0;pointer-events:none}.vibe-chip i{color:#7c4dff}.vibe-chip:has(input:checked),.vibe-chip.active{background:linear-gradient(90deg,rgba(255,62,165,.15),rgba(124,77,255,.15));border-color:rgba(124,77,255,.34);color:#241b3d;box-shadow:0 14px 32px rgba(124,77,255,.12)}.vibe-help{color:#766e8d;font-weight:700;font-size:.88rem;margin-top:8px}.profile-vibes{display:flex;flex-wrap:wrap;gap:8px}.profile-vibe-chip{border-radius:999px;padding:7px 11px;background:rgba(124,77,255,.08);border:1px solid rgba(124,77,255,.14);color:#4f4670;font-weight:800;font-size:.86rem;display:inline-flex;gap:6px;align-items:center}.discover-vibes{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.discover-vibes .profile-vibe-chip{font-size:.76rem;padding:5px 9px}
@media(max-width:575.98px){.vibe-chip{padding:9px 11px;font-size:.88rem}.premium-offer-timer{width:100%;justify-content:center}.discover-vibes .profile-vibe-chip:nth-child(n+3){display:none}}

/* v87: Mahaba dark theme refresh */
:root{
  --bg:#09020f!important;
  --card:#160d22!important;
  --card-2:#1e122e!important;
  --surface:rgba(22,13,34,.92)!important;
  --ink:#fff7ff!important;
  --muted:#c7b9d6!important;
  --muted-2:#b4a6c4!important;
  --border:rgba(255,255,255,.13)!important;
  --shadow:0 20px 55px rgba(0,0,0,.32)!important;
  --shadow-strong:0 34px 90px rgba(0,0,0,.45)!important;
  --primary-grad:linear-gradient(135deg,#ff3ea5 0%,#8a49ff 100%)!important;
  --green-soft:rgba(34,197,94,.13)!important;
  --green-border:rgba(34,197,94,.30)!important;
}
html,body{
  background:
    radial-gradient(circle at 12% 2%,rgba(255,62,165,.20),transparent 28%),
    radial-gradient(circle at 90% 12%,rgba(138,73,255,.20),transparent 34%),
    linear-gradient(180deg,#09020f 0%,#13071e 48%,#08020d 100%)!important;
  color:#fff7ff!important;
}
body::before{opacity:.42!important;}
.section-card,
.glass,
.profile-card,
.plan-card,
.stat-card,
.detail-box,
.empty-card,
.app-page-header,
.mahaba-policy-page .policy-card,
.notification-card,
.payment-card,
.package-card,
.quick-filter-pill,
.discover-filter-card,
.discover-promo,
.self-preview-card,
.modal-content,
.dropdown-menu.app-header-menu,
.bottom-nav,
.mobile-connect-bar{
  background:rgba(22,13,34,.88)!important;
  border-color:rgba(255,255,255,.13)!important;
  color:#fff7ff!important;
  box-shadow:0 22px 60px rgba(0,0,0,.28)!important;
}
.section-card:hover,
.profile-card:hover,
.welcome-action-card:hover{
  box-shadow:0 28px 78px rgba(0,0,0,.38)!important;
}
.app-page-header-logo,
.site-logo-sm,
.app-header-avatar-btn,
.app-header-icon-btn,
.icon-btn,
.btn-soft,
.btn-lp-soft,
.topbar-link{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#fff7ff!important;
}
.app-page-header-title,
.brand,
h1,h2,h3,h4,h5,h6,
.fw-black,
.fw-bold,
.detail-value,
.stat-number,
.preview-name,
.profile-card .fw-bold{
  color:#fff7ff!important;
}
.text-muted,
.text-muted-2,
.app-page-header-subtitle,
.detail-label,
.stat-label,
.preview-meta,
.mahaba-policy-page p,
.mahaba-policy-page li,
.welcome-text,
.welcome-action-sub,
.empty-state,
.footer,
.notification-message,
.notification-time{
  color:#c7b9d6!important;
}
.form-control,
.form-select,
textarea.form-control,
input.form-control{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.15)!important;
  color:#fff7ff!important;
  box-shadow:none!important;
}
.form-control::placeholder,
textarea.form-control::placeholder{color:rgba(255,255,255,.48)!important;}
.form-select option{background:#180d25;color:#fff;}
.input-group-text{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.15)!important;
  color:#c7b9d6!important;
}
hr{border-color:rgba(255,255,255,.16)!important;opacity:1!important;}
.btn-main,
.btn-lp-primary,
.btn-unlock-compact,
.btn-whatsapp-main.locked{
  background:linear-gradient(135deg,#ff3ea5,#8a49ff)!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 16px 42px rgba(138,73,255,.28)!important;
}
.btn-like,
.btn-like-small,
.btn-connect.locked{
  background:rgba(255,255,255,.07)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#fff7ff!important;
}
.btn-like.liked,.btn-like-small.liked{
  background:rgba(255,62,165,.17)!important;
  border-color:rgba(255,62,165,.32)!important;
  color:#ffaad7!important;
}
.chip,
.plan-chip,
.profile-vibe-chip,
.interest-chip,
.vibe-chip,
.stat-pill,
.pill,
.quick-filter-pill{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.15)!important;
  color:#fff7ff!important;
}
.chip.online,
.quick-filter-pill.active,
.chip.verified{
  background:linear-gradient(135deg,rgba(255,62,165,.20),rgba(138,73,255,.18))!important;
  border-color:rgba(255,255,255,.20)!important;
  color:#fff!important;
}
.progress,
.strength-line{background:rgba(255,255,255,.10)!important;}
.progress-bar,
.strength-line span{background:linear-gradient(135deg,#ff3ea5,#8a49ff)!important;}
.bottom-nav{
  background:rgba(13,6,21,.92)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
.bottom-nav a{color:#bfb1cf!important;}
.bottom-nav a.active{
  background:linear-gradient(135deg,rgba(255,62,165,.22),rgba(138,73,255,.18))!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.18)!important;
}
.app-header-menu .dropdown-item{color:#fff7ff!important;}
.app-header-menu .dropdown-item:hover,
.app-header-menu .dropdown-item.active{background:rgba(255,255,255,.08)!important;color:#fff!important;}
.modal-backdrop.show{opacity:.72!important;background:#050208!important;}
.mahaba-welcome-modal,
.premium-wizard-modal,
.premium-wizard-modal .modal-content{
  background:linear-gradient(180deg,#171025 0%,#100719 100%)!important;
  color:#fff!important;
}
.welcome-title{color:#fff!important;}
.welcome-action-card{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#fff!important;
}
@media(max-width:767.98px){
  .mobile-filter-bar .filter-title{color:#fff7ff!important;}
  .mobile-filter-bar .filter-toggle{background:rgba(255,255,255,.08)!important;color:#fff!important;border-color:rgba(255,255,255,.14)!important;}
}

/* v88: Dark auth pages (login/register) */
body.auth-page,
body.auth-page.login-polish-page,
body.auth-page.register-polish-page{
  background:
    radial-gradient(circle at 12% 8%, rgba(255,62,165,.26), transparent 30%),
    radial-gradient(circle at 88% 14%, rgba(138,73,255,.28), transparent 34%),
    radial-gradient(circle at 48% 100%, rgba(255,62,165,.10), transparent 34%),
    linear-gradient(180deg,#09020f 0%,#150820 50%,#060109 100%)!important;
  color:#fff7ff!important;
}
body.auth-page .auth-shell,
body.auth-page .login-shell{position:relative;z-index:1;}
body.auth-page .login-card-v42,
body.auth-page .login-card-v43,
body.auth-page .register-card-v44{
  background:rgba(13,6,21,.90)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:0 36px 100px rgba(0,0,0,.55)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
body.auth-page .login-story-col,
body.auth-page .register-card-v44 .login-story-col{
  background:
    radial-gradient(circle at 18% 18%, rgba(255,62,165,.24), transparent 34%),
    radial-gradient(circle at 92% 88%, rgba(138,73,255,.20), transparent 36%),
    linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.025))!important;
  border-right:1px solid rgba(255,255,255,.10)!important;
}
body.auth-page .login-form-col{
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015))!important;
}
body.auth-page .login-brand-mark,
body.auth-page .login-brand-mark span,
body.auth-page .login-story-panel h1,
body.auth-page .register-story-panel h1,
body.auth-page .login-form-head h2,
body.auth-page .register-form-head-v44 h2{
  color:#fff7ff!important;
  text-shadow:0 18px 45px rgba(0,0,0,.25);
}
body.auth-page .login-lead,
body.auth-page .login-form-head p,
body.auth-page .register-form-head-v44 p,
body.auth-page .drop-sub,
body.auth-page .vibe-help,
body.auth-page .terms-box,
body.auth-page .policy-check,
body.auth-page .login-create-box,
body.auth-page .login-benefit-card span,
body.auth-page .register-benefit span{
  color:#d4c7e2!important;
}
body.auth-page .login-mini-note,
body.auth-page .register-mini-note-v44{
  background:linear-gradient(135deg,rgba(255,62,165,.15),rgba(138,73,255,.14))!important;
  border:1px solid rgba(255,255,255,.13)!important;
  color:#f8efff!important;
}
body.auth-page .login-mini-note i{color:#ff78c6!important;}
body.auth-page .login-benefit-card,
body.auth-page .register-benefit,
body.auth-page .login-create-box,
body.auth-page .register-login-pill-v44,
body.auth-page .already-link,
body.auth-page .terms-box,
body.auth-page .photo-dropzone,
body.auth-page .gender-card,
body.auth-page .vibe-chip{
  background:rgba(255,255,255,.075)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:0 18px 46px rgba(0,0,0,.22)!important;
  color:#fff7ff!important;
}
body.auth-page .login-benefit-card strong,
body.auth-page .register-benefit strong,
body.auth-page .drop-title,
body.auth-page .gender-card h5,
body.auth-page .form-label,
body.auth-page .terms-box label,
body.auth-page .login-create-box a,
body.auth-page .register-login-pill-v44,
body.auth-page .already-link{
  color:#fff7ff!important;
}
body.auth-page .login-create-box a,
body.auth-page .register-login-pill-v44,
body.auth-page .already-link{
  background:rgba(255,255,255,.09)!important;
  border-color:rgba(255,255,255,.15)!important;
}
body.auth-page .login-create-box a:hover,
body.auth-page .register-login-pill-v44:hover,
body.auth-page .already-link:hover{
  background:rgba(255,62,165,.13)!important;
  color:#fff!important;
}
body.auth-page .auth-input-group .input-group-text,
body.auth-page .auth-input-group .form-control,
body.auth-page .register-card-v44 .form-control,
body.auth-page .register-card-v44 .form-select,
body.auth-page .form-control,
body.auth-page .form-select{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#fff7ff!important;
}
body.auth-page .auth-input-group .form-control,
body.auth-page .form-control,
body.auth-page .form-select{font-weight:750;}
body.auth-page .auth-input-group .input-group-text,
body.auth-page .password-toggle-btn{color:#d4c7e2!important;}
body.auth-page .form-control:focus,
body.auth-page .form-select:focus{
  background:rgba(255,255,255,.11)!important;
  border-color:rgba(255,62,165,.42)!important;
  box-shadow:0 0 0 .22rem rgba(255,62,165,.10)!important;
}
body.auth-page .form-control::placeholder{color:rgba(255,255,255,.44)!important;}
body.auth-page .form-select option{background:#150820!important;color:#fff!important;}
body.auth-page .gender-icon,
body.auth-page .drop-icon,
body.auth-page .login-benefit-card i,
body.auth-page .register-benefit i{
  background:linear-gradient(135deg,rgba(255,62,165,.20),rgba(138,73,255,.18))!important;
  border-color:rgba(255,255,255,.12)!important;
  color:#fff!important;
}
body.auth-page .gender-card.active,
body.auth-page .vibe-chip:has(input:checked),
body.auth-page .vibe-chip.active{
  background:linear-gradient(135deg,rgba(255,62,165,.22),rgba(138,73,255,.19))!important;
  border-color:rgba(255,255,255,.24)!important;
  box-shadow:0 24px 64px rgba(138,73,255,.18)!important;
}
body.auth-page .register-progress-v44{
  background:rgba(255,255,255,.10)!important;
}
body.auth-page .register-step-labels-v44 .step-mini{color:#b9a9ca!important;}
body.auth-page .register-step-labels-v44 .step-mini.active{color:#ff80cc!important;}
body.auth-page .register-progress-text{color:#fff7ff!important;}
body.auth-page .availability-note.checking{color:#d4c7e2!important;}
body.auth-page .availability-note.ok{color:#72e6a7!important;}
body.auth-page .availability-note.err{color:#ff85b8!important;}
body.auth-page .photo-dropzone:hover,
body.auth-page .photo-dropzone.dragover{
  background:linear-gradient(135deg,rgba(255,62,165,.14),rgba(138,73,255,.12))!important;
  border-color:rgba(255,62,165,.36)!important;
}
body.auth-page .drop-file-name{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#fff7ff!important;
}
body.auth-page .form-check-input{background-color:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.25)!important;}
body.auth-page .form-check-input:checked{background-color:#ff3ea5!important;border-color:#ff3ea5!important;}
body.auth-page .terms-box a,
body.auth-page .policy-check a{color:#ff80cc!important;}
@media(max-width:991.98px){
  body.auth-page .login-story-col,
  body.auth-page .register-card-v44 .login-story-col{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.10)!important;}
}
@media(max-width:575.98px){
  body.auth-page.login-polish-page,
  body.auth-page.register-polish-page{background:linear-gradient(180deg,#09020f,#150820,#060109)!important;}
  body.auth-page .login-card-v42,
  body.auth-page .register-card-v44{border-radius:24px!important;}
}

/* v90: Premium payment popup readability + load more profiles */
#premiumWizardModal .premium-wizard-modal{
  background:linear-gradient(180deg,#171025 0%,#100719 100%)!important;
  color:#fff7ff!important;
  border:1px solid rgba(255,255,255,.12)!important;
}
#premiumWizardModal .modal-header,
#premiumWizardModal .modal-footer{
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02))!important;
  border-color:rgba(255,255,255,.10)!important;
}
#premiumWizardModal .modal-title,
#premiumWizardModal .form-label,
#premiumWizardModal h4,
#premiumWizardModal h5,
#premiumWizardModal strong,
#premiumWizardModal .premium-step.active,
#premiumWizardModal .premium-package-card strong,
#premiumWizardModal .pkg-price{
  color:#fff!important;
}
#premiumWizardModal .text-muted-2,
#premiumWizardModal .premium-package-card small,
#premiumWizardModal .premium-success p{
  color:rgba(255,255,255,.76)!important;
}
#premiumWizardModal .premium-modal-kicker,
#premiumWizardModal .premium-offer-timer{
  background:linear-gradient(90deg,rgba(255,62,165,.18),rgba(124,77,255,.18))!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#ffeafe!important;
}
#premiumWizardModal .premium-step{
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(255,255,255,.13)!important;
  color:rgba(255,255,255,.72)!important;
}
#premiumWizardModal .premium-step span{
  background:rgba(255,255,255,.12)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#fff!important;
}
#premiumWizardModal .premium-step.active{
  background:linear-gradient(90deg,rgba(255,62,165,.22),rgba(124,77,255,.24))!important;
  border-color:rgba(255,255,255,.18)!important;
}
#premiumWizardModal .premium-step.done{
  background:rgba(25,200,120,.14)!important;
  color:#a9ffd6!important;
}
#premiumWizardModal .premium-package-card,
#premiumWizardModal .premium-benefits div,
#premiumWizardModal .payment-help{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.13)!important;
  color:#fff7ff!important;
  box-shadow:0 18px 45px rgba(0,0,0,.18)!important;
}
#premiumWizardModal .premium-package-card.selected{
  background:linear-gradient(180deg,rgba(255,62,165,.16),rgba(124,77,255,.14))!important;
  border-color:rgba(255,255,255,.24)!important;
}
#premiumWizardModal .pkg-badge{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#f7d7ff!important;
}
#premiumWizardModal .pkg-badge.best{
  background:rgba(255,62,165,.18)!important;
  color:#ffd6ed!important;
}
#premiumWizardModal .wizard-pane[data-wizard-step="2"] .input-group-text,
#premiumWizardModal .wizard-pane[data-wizard-step="2"] .form-control{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.16)!important;
  color:#fff!important;
}
#premiumWizardModal .wizard-pane[data-wizard-step="2"] .form-control::placeholder{
  color:rgba(255,255,255,.48)!important;
}
#premiumWizardModal .payment-help i,
#premiumWizardModal .premium-benefits i{
  color:#ff79c6!important;
}
#premiumWizardModal .btn-close{
  filter:invert(1) grayscale(1);
  background-color:rgba(255,255,255,.12)!important;
}
.load-more-wrap{padding-bottom:24px;}
.btn-load-more-profiles{
  min-width:230px;
  border-radius:999px!important;
  box-shadow:0 18px 45px rgba(124,77,255,.18);
}
@media(max-width:575.98px){
  .btn-load-more-profiles{width:100%;min-width:0;}
  .load-more-wrap{padding-left:4px;padding-right:4px;}
}

/* v93: discover loaders, infinite profiles, near-me polish */
.profile-card .photo,
.profile-photo,
.profile-preview-img,
.card-photo,
.member-photo{
  object-position:center top!important;
  background-position:center top!important;
}
.photo{position:relative;overflow:hidden;}
.photo.mh-photo-loading::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:8;
  background:linear-gradient(110deg,rgba(255,255,255,.06) 8%,rgba(255,255,255,.15) 18%,rgba(255,255,255,.06) 33%);
  background-size:220% 100%;
  animation:mhShimmer 1.15s linear infinite;
}
.photo.mh-photo-loading::after{
  content:"";
  position:absolute;
  left:50%;top:50%;
  width:34px;height:34px;
  margin-left:-17px;margin-top:-17px;
  border-radius:999px;
  border:3px solid rgba(255,255,255,.22);
  border-top-color:#ff3ea5;
  z-index:9;
  animation:mhSpin .8s linear infinite;
}
.photo.mh-photo-loading .overlay-grad,
.photo.mh-photo-loading .badge-top,
.photo.mh-photo-loading .quick-actions{opacity:0;transition:.18s ease;}
.photo.mh-photo-loaded .overlay-grad,
.photo.mh-photo-loaded .badge-top,
.photo.mh-photo-loaded .quick-actions{opacity:1;}
@keyframes mhShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
@keyframes mhSpin{to{transform:rotate(360deg)}}
.profile-card-skeleton{pointer-events:none;overflow:hidden;}
.skeleton-photo{height:230px;border-radius:22px 22px 0 0;background:linear-gradient(110deg,rgba(255,255,255,.06) 8%,rgba(255,255,255,.14) 18%,rgba(255,255,255,.06) 33%);background-size:220% 100%;animation:mhShimmer 1.15s linear infinite;}
.skeleton-line{height:14px;border-radius:999px;background:linear-gradient(110deg,rgba(255,255,255,.06) 8%,rgba(255,255,255,.14) 18%,rgba(255,255,255,.06) 33%);background-size:220% 100%;animation:mhShimmer 1.15s linear infinite;}
.skeleton-pill{height:28px;flex:1;border-radius:999px;background:linear-gradient(110deg,rgba(255,255,255,.06) 8%,rgba(255,255,255,.14) 18%,rgba(255,255,255,.06) 33%);background-size:220% 100%;animation:mhShimmer 1.15s linear infinite;}
.skeleton-pill.short{max-width:86px;}
.skeleton-button{height:46px;border-radius:15px;background:linear-gradient(110deg,rgba(255,62,165,.10) 8%,rgba(138,73,255,.18) 18%,rgba(255,62,165,.10) 33%);background-size:220% 100%;animation:mhShimmer 1.15s linear infinite;}
.profile-auto-loader{min-height:70px;color:#c7b9d6;}
.profile-auto-loader .spinner-border{color:#ff5ebd!important;}
.near-me-help{font-size:.82rem;color:#c7b9d6;font-weight:800;}


/* v95: password reset pages + reliable selected vibe states */
.auth-forgot-link{display:inline-flex;align-items:center;gap:6px;color:#ff8bd0!important;font-weight:900;text-decoration:none;}
.auth-forgot-link:hover{color:#fff!important;text-decoration:underline;}
.reset-password-page .reset-card{max-width:1120px;margin:0 auto;}
.vibe-chip.active,.vibe-chip.is-selected{background:linear-gradient(135deg,rgba(255,62,165,.22),rgba(138,73,255,.20))!important;border-color:rgba(255,255,255,.24)!important;color:#fff!important;}

/* v101: Navbar Unlock WhatsApp CTA */
.app-header-unlock-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  padding:0 16px;
  border-radius:15px;
  text-decoration:none!important;
  font-weight:900;
  font-size:.9rem;
  line-height:1;
  color:#fff!important;
  background:linear-gradient(135deg,#ff3ea5,#8a49ff)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 14px 34px rgba(138,73,255,.24)!important;
  white-space:nowrap;
}
.app-header-unlock-btn:hover{
  color:#fff!important;
  transform:translateY(-1px);
  opacity:.96;
}
.app-header-unlock-btn i{font-size:1rem;}
@media(max-width:575.98px){
  .app-header-unlock-btn{width:40px;height:40px;min-height:40px;padding:0;border-radius:14px;}
  .app-header-unlock-btn span{display:none;}
}


/* v102: Dark report/block modals + keep WhatsApp promo removed */
.discover-promo{display:none!important;}
#reportProfileModal .modal-content,
#blockProfileModal .modal-content,
#blockProfileModal.mahaba-clean-modal .modal-content{
  background:linear-gradient(180deg,rgba(31,17,45,.98),rgba(15,8,25,.98))!important;
  color:#fff7ff!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:26px!important;
  box-shadow:0 30px 90px rgba(0,0,0,.55)!important;
}
#reportProfileModal .modal-header,
#blockProfileModal .modal-header{
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}
#reportProfileModal .modal-title,
#blockProfileModal .modal-title,
#reportProfileModal .form-label,
#blockProfileModal .form-label{
  color:#fff7ff!important;
}
#reportProfileModal .modal-body,
#blockProfileModal .modal-body,
#reportProfileModal p,
#blockProfileModal p,
#reportProfileModal .text-muted-2,
#blockProfileModal .text-muted-2{
  color:rgba(255,255,255,.76)!important;
}
#reportProfileModal .form-control,
#reportProfileModal .form-select,
#blockProfileModal .form-control,
#blockProfileModal .form-select{
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:none!important;
}
#reportProfileModal .form-control::placeholder,
#blockProfileModal .form-control::placeholder{
  color:rgba(255,255,255,.45)!important;
}
#reportProfileModal .form-control:focus,
#reportProfileModal .form-select:focus,
#blockProfileModal .form-control:focus,
#blockProfileModal .form-select:focus{
  background:rgba(255,255,255,.11)!important;
  border-color:rgba(255,62,165,.42)!important;
  color:#fff!important;
  box-shadow:0 0 0 .22rem rgba(255,62,165,.12)!important;
}
#reportProfileModal .form-select option,
#blockProfileModal .form-select option{
  background:#180d25!important;
  color:#fff!important;
}
#reportProfileModal .btn-close,
#blockProfileModal .btn-close{
  filter:invert(1) grayscale(1)!important;
  opacity:.82!important;
}
#reportProfileModal .btn-soft,
#blockProfileModal .btn-soft{
  background:rgba(255,255,255,.07)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.14)!important;
}

/* v113: mobile discover polish + simplified premium popup */
@media (max-width: 767.98px){
  .mobile-filter-bar{
    min-height:64px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    margin-bottom:0!important;
    padding:10px 4px!important;
  }
  .mobile-filter-bar .filter-title{
    display:inline-flex!important;
    align-items:center!important;
    min-height:48px!important;
    line-height:1!important;
    font-size:1.15rem!important;
    color:#fff7ff!important;
    letter-spacing:-.02em!important;
  }
  .mobile-filter-bar .filter-title i{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    line-height:1!important;
    margin-top:0!important;
  }
  .mobile-filter-bar .filter-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:48px!important;
    padding:0 18px!important;
    line-height:1!important;
    color:#fff7ff!important;
    background:rgba(255,255,255,.08)!important;
    border:1px solid rgba(255,255,255,.18)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  }
  .discover-filter-card{
    padding:12px 18px!important;
  }
  .profile-card .photo,
  .photo{
    height:360px!important;
    background-position:center top!important;
  }
  .skeleton-photo{
    height:360px!important;
  }
}
@media (max-width: 390px){
  .profile-card .photo,
  .photo,
  .skeleton-photo{height:340px!important;}
}

/* Simplified premium payment modal - optimized for mobile */
#premiumWizardModal .premium-wizard-modal{
  background:linear-gradient(180deg,rgba(27,12,42,.98),rgba(12,6,22,.99))!important;
  color:#fff7ff!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 30px 90px rgba(0,0,0,.62)!important;
}
#premiumWizardModal .modal-header,
#premiumWizardModal .modal-footer{
  background:transparent!important;
  border-color:rgba(255,255,255,.08)!important;
}
#premiumWizardModal .modal-title,
#premiumWizardModal .form-label,
#premiumWizardModal .premium-package-card strong,
#premiumWizardModal .premium-success h4{
  color:#fff7ff!important;
}
#premiumWizardModal .modal-header .text-muted-2,
#premiumWizardModal .premium-package-card small,
#premiumWizardModal .premium-success p{
  color:rgba(255,255,255,.70)!important;
}
#premiumWizardModal .premium-modal-kicker,
#premiumWizardModal .premium-offer-timer{
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  color:#ffd8f0!important;
}
#premiumWizardModal .premium-step{
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(255,255,255,.12)!important;
  color:rgba(255,255,255,.68)!important;
}
#premiumWizardModal .premium-step span{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.13)!important;
  color:#fff!important;
}
#premiumWizardModal .premium-step.active{
  background:linear-gradient(90deg,rgba(255,62,165,.24),rgba(138,73,255,.22))!important;
  border-color:rgba(255,255,255,.20)!important;
  color:#fff!important;
}
#premiumWizardModal .premium-step.done{
  background:rgba(25,200,120,.14)!important;
  border-color:rgba(25,200,120,.20)!important;
  color:#c7ffe0!important;
}
#premiumWizardModal .premium-package-card{
  background:rgba(255,255,255,.075)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  color:#fff7ff!important;
  box-shadow:none!important;
}
#premiumWizardModal .premium-package-card.selected{
  background:linear-gradient(135deg,rgba(255,62,165,.22),rgba(138,73,255,.18))!important;
  border-color:rgba(255,255,255,.28)!important;
  box-shadow:0 16px 45px rgba(138,73,255,.18)!important;
}
#premiumWizardModal .pkg-price{color:#fff!important;}
#premiumWizardModal .pkg-badge{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#ffd6ed!important;
}
#premiumWizardModal .premium-benefits div,
#premiumWizardModal .payment-help{
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(255,255,255,.12)!important;
  color:rgba(255,255,255,.80)!important;
  box-shadow:none!important;
}
#premiumWizardModal .wizard-pane[data-wizard-step="2"] .input-group-text,
#premiumWizardModal .wizard-pane[data-wizard-step="2"] .form-control{
  background:rgba(255,255,255,.09)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.15)!important;
}
#premiumWizardModal .wizard-pane[data-wizard-step="2"] .form-control::placeholder{color:rgba(255,255,255,.48)!important;}
#premiumWizardModal .btn-close{
  filter:invert(1) grayscale(1)!important;
  opacity:.86!important;
  background-color:rgba(255,255,255,.12)!important;
}
#premiumWizardModal .alert{
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:16px!important;
  font-weight:850!important;
}
@media (max-width: 575.98px){
  #premiumWizardModal .modal-dialog{
    margin:0!important;
    min-height:100dvh!important;
    display:flex!important;
    align-items:flex-end!important;
  }
  #premiumWizardModal .premium-wizard-modal{
    width:100%!important;
    max-height:92dvh!important;
    overflow-y:auto!important;
    border-radius:28px 28px 0 0!important;
    border-left:0!important;
    border-right:0!important;
    border-bottom:0!important;
  }
  #premiumWizardModal .modal-header{
    position:sticky!important;
    top:0!important;
    z-index:5!important;
    padding:18px 18px 10px!important;
    backdrop-filter:blur(18px)!important;
    background:linear-gradient(180deg,rgba(27,12,42,.98),rgba(27,12,42,.88))!important;
  }
  #premiumWizardModal .modal-title{
    font-family:inherit!important;
    font-size:1.32rem!important;
    line-height:1.15!important;
  }
  #premiumWizardModal .premium-modal-kicker{
    padding:6px 10px!important;
    font-size:.72rem!important;
    margin-bottom:8px!important;
  }
  #premiumWizardModal .premium-offer-timer,
  #premiumWizardModal .modal-header .text-muted-2{
    display:none!important;
  }
  #premiumWizardModal .modal-body{
    padding:10px 16px 14px!important;
  }
  #premiumWizardModal .premium-steps{
    position:static!important;
    grid-template-columns:repeat(3,1fr)!important;
    gap:7px!important;
    background:transparent!important;
    padding:0!important;
    margin-bottom:12px!important;
  }
  #premiumWizardModal .premium-step{
    min-height:34px!important;
    padding:6px 4px!important;
    font-size:.68rem!important;
  }
  #premiumWizardModal .premium-step span{
    width:20px!important;
    height:20px!important;
    font-size:.64rem!important;
  }
  #premiumWizardModal #premiumPackagesWrap{
    --bs-gutter-y:.55rem!important;
  }
  #premiumWizardModal .premium-package-card{
    min-height:0!important;
    padding:13px 14px!important;
    border-radius:18px!important;
    grid-template-columns:1fr auto!important;
    row-gap:5px!important;
  }
  #premiumWizardModal .premium-package-card strong{font-size:.96rem!important;}
  #premiumWizardModal .premium-package-card small{font-size:.78rem!important;line-height:1.3!important;}
  #premiumWizardModal .premium-package-card .pkg-price{font-size:1.28rem!important;}
  #premiumWizardModal .pkg-badge{font-size:.66rem!important;padding:4px 8px!important;}
  #premiumWizardModal .premium-benefits{
    grid-template-columns:1fr!important;
    gap:7px!important;
    margin-top:10px!important;
  }
  #premiumWizardModal .premium-benefits div{
    padding:9px 11px!important;
    border-radius:14px!important;
    font-size:.84rem!important;
  }
  #premiumWizardModal .wizard-pane[data-wizard-step="2"] .form-label{
    font-size:.95rem!important;
  }
  #premiumWizardModal .wizard-pane[data-wizard-step="2"] .input-group-text,
  #premiumWizardModal .wizard-pane[data-wizard-step="2"] .form-control{
    min-height:54px!important;
    font-size:.95rem!important;
  }
  #premiumWizardModal .payment-help{
    padding:10px 12px!important;
    border-radius:15px!important;
    font-size:.84rem!important;
  }
  #premiumWizardModal .modal-footer{
    position:sticky!important;
    bottom:0!important;
    z-index:5!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding:12px 16px 16px!important;
    backdrop-filter:blur(18px)!important;
    background:linear-gradient(180deg,rgba(12,6,22,.72),rgba(12,6,22,.98))!important;
  }
  #premiumWizardModal .modal-footer .btn,
  #premiumWizardModal #premiumPayBtn,
  #premiumWizardModal #premiumNextBtn{
    width:100%!important;
    min-width:0!important;
    min-height:50px!important;
    border-radius:17px!important;
    font-size:.95rem!important;
  }
}

/* v114: remove app-header subtitle copy on mobile to keep top bar clean */
@media (max-width: 767.98px){
  .app-page-header-subtitle{
    display:none!important;
  }
}
