.account-page{
  width:100%;
  min-height:calc(100vh - 190px);
  padding:18px 14px 32px;
  display:grid;
  gap:16px;
}

.account-hero-card,
.account-login-card,
.account-hub-card,
.account-benefits-card{
  border:2px solid transparent;
  border-radius:30px;
  background:
    linear-gradient(rgba(255,255,255,.96),rgba(255,255,255,.92)) padding-box,
    conic-gradient(from 0deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87,#ffd84d,#ff7b00) border-box;
  box-shadow:
    0 18px 34px rgba(38,25,75,.11),
    0 0 0 1px rgba(255,255,255,.78) inset,
    0 0 22px rgba(255,47,146,.13),
    0 0 34px rgba(47,107,255,.11),
    0 0 40px rgba(30,203,135,.09);
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.account-hero-card::before,
.account-login-card::before,
.account-hub-card::before,
.account-benefits-card::before{
  content:"";
  position:absolute;
  inset:-65%;
  background:conic-gradient(from 0deg,transparent 0deg,rgba(255,47,146,.26) 70deg,rgba(47,107,255,.23) 145deg,rgba(30,203,135,.21) 225deg,transparent 305deg);
  animation:accountCardSpin 7.5s linear infinite;
  z-index:-2;
}

.account-hero-card::after,
.account-login-card::after,
.account-hub-card::after,
.account-benefits-card::after{
  content:"";
  position:absolute;
  inset:7px;
  border-radius:24px;
  background:
    radial-gradient(circle at 18% 18%,rgba(255,123,0,.11),transparent 43%),
    radial-gradient(circle at 82% 22%,rgba(47,107,255,.12),transparent 46%),
    radial-gradient(circle at 35% 88%,rgba(30,203,135,.10),transparent 50%),
    linear-gradient(160deg,rgba(255,255,255,.94),rgba(255,255,255,.88));
  z-index:-1;
}

.account-hero-card{
  min-height:190px;
  padding:24px 18px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:8px;
}

.account-hero-icon{
  width:62px;
  height:62px;
  border-radius:22px;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 25% 20%,rgba(255,255,255,.94),transparent 26%),
    linear-gradient(135deg,rgba(255,224,171,.72),rgba(196,239,255,.70),rgba(226,219,255,.70),rgba(255,219,238,.72));
  box-shadow:inset 0 0 16px rgba(255,255,255,.70),0 10px 22px rgba(47,107,255,.12),0 0 18px rgba(255,47,146,.13);
  animation:accountIconFloat 2.8s ease-in-out infinite;
}

.account-hero-icon svg{
  width:38px;
  height:38px;
  fill:none;
  stroke:rgba(68,58,92,.68);
  stroke-width:3.2;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 0 8px rgba(47,107,255,.18));
}

.account-hero-title,
.account-section-heading h2,
.account-benefits-card h2,
.account-mini-card b{
  background:linear-gradient(90deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87,#ff7b00);
  background-size:300% 300%;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  animation:accountTextShift 3.8s ease-in-out infinite;
}

.account-hero-title{
  margin:0;
  font-size:30px;
  font-weight:950;
  line-height:1.12;
}

.account-hero-subtitle,
.account-section-heading p{
  max-width:520px;
  color:#756d78;
  font-size:14.5px;
  font-weight:700;
  line-height:1.45;
}

.account-layout{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  gap:14px;
  align-items:start;
}

.account-side-stack{
  display:grid;
  gap:14px;
}

.account-login-card,
.account-hub-card,
.account-benefits-card{
  padding:18px;
}

.account-section-heading{
  text-align:center;
  display:grid;
  gap:5px;
  justify-items:center;
  margin-bottom:14px;
}

.account-section-heading.compact{
  margin-bottom:12px;
}

.account-section-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:26px;
  padding:5px 11px;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(255,244,217,.92),rgba(234,247,255,.92));
  border:1px solid rgba(201,151,75,.24);
  color:#6f5f64;
  font-size:11.5px;
  font-weight:950;
  letter-spacing:.18px;
}

.account-section-heading h2,
.account-benefits-card h2{
  margin:0;
  font-size:22px;
  font-weight:950;
  line-height:1.15;
}

.account-mode-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding:5px;
  border-radius:999px;
  background:rgba(255,250,247,.78);
  border:1px solid rgba(201,151,75,.18);
  margin-bottom:14px;
}

.account-mode-btn{
  min-height:44px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#756d78;
  font-size:14px;
  font-weight:950;
}

.account-mode-btn.is-active{
  color:#fff;
  background:linear-gradient(135deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87);
  box-shadow:0 10px 22px rgba(47,107,255,.16),0 0 18px rgba(255,47,146,.13);
}

.account-login-form{
  display:grid;
  gap:11px;
}

.account-field{
  display:grid;
  gap:7px;
  color:#5d5361;
  font-size:12.5px;
  font-weight:950;
}

.account-field input{
  width:100%;
  min-height:52px;
  border:1px solid rgba(201,151,75,.22);
  border-radius:18px;
  padding:0 15px;
  background:rgba(255,255,255,.94);
  color:#1f1730;
  font-size:15px;
  font-weight:750;
  outline:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78),0 8px 18px rgba(25,16,13,.04);
}

.account-field input:focus{
  border-color:rgba(47,107,255,.44);
  box-shadow:0 0 0 4px rgba(47,107,255,.10),0 10px 20px rgba(25,16,13,.05);
}

.account-continue-btn,
.account-google-btn{
  width:100%;
  min-height:52px;
  border-radius:18px;
  font-size:15px;
  font-weight:950;
}

.account-continue-btn{
  border:0;
  color:#fff;
  background:linear-gradient(135deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87);
  box-shadow:0 14px 26px rgba(47,107,255,.18),0 0 18px rgba(255,47,146,.14);
}

.account-google-btn{
  border:1px solid rgba(201,151,75,.24);
  background:rgba(255,255,255,.94);
  color:#2f2a35;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  box-shadow:0 9px 18px rgba(25,16,13,.05);
}

.account-google-mark{
  width:25px;
  height:25px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  font-weight:950;
  background:conic-gradient(from 0deg,#4285f4,#34a853,#fbbc05,#ea4335,#4285f4);
}

.account-forgot-link{
  border:0;
  background:transparent;
  color:#5665d9;
  font-size:13px;
  font-weight:900;
  text-decoration:none;
  justify-self:center;
}

.account-secure-note,
.account-feedback{
  margin:0;
  text-align:center;
  color:#756d78;
  font-size:12.5px;
  font-weight:750;
  line-height:1.4;
}

.account-feedback{
  min-height:18px;
  color:#15845a;
}

.account-hub-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.account-mini-card{
  min-height:118px;
  border:2px solid transparent;
  border-radius:22px;
  padding:12px 10px;
  text-decoration:none;
  background:
    linear-gradient(rgba(255,255,255,.97),rgba(255,255,255,.92)) padding-box,
    conic-gradient(from 0deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87,#ffd84d,#ff7b00) border-box;
  box-shadow:0 14px 28px rgba(38,25,75,.09),0 0 16px rgba(47,107,255,.10);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:6px;
  position:relative;
  overflow:hidden;
  color:inherit;
}

.account-mini-card::after{
  content:"";
  position:absolute;
  inset:5px;
  border-radius:17px;
  background:
    radial-gradient(circle at 20% 18%,rgba(255,123,0,.09),transparent 46%),
    radial-gradient(circle at 82% 20%,rgba(47,107,255,.10),transparent 48%),
    linear-gradient(160deg,rgba(255,255,255,.95),rgba(255,255,255,.88));
  z-index:-1;
}

.account-mini-card-wide{
  grid-column:1 / -1;
  min-height:102px;
}

.account-mini-icon{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:15px;
  background:linear-gradient(135deg,rgba(255,244,217,.96),rgba(235,247,255,.96));
  color:#5a5570;
  font-size:19px;
  filter:drop-shadow(0 0 7px rgba(47,107,255,.20));
}

.account-mini-card b{
  font-size:16px;
  font-weight:950;
  line-height:1.18;
}

.account-mini-card small{
  max-width:150px;
  color:#756d78;
  font-size:11.5px;
  font-weight:750;
  line-height:1.32;
}

.account-benefits-card{
  display:grid;
  gap:13px;
}

.account-benefits-card > div{
  text-align:center;
  display:grid;
  justify-items:center;
  gap:7px;
}

.account-benefits-list{
  list-style:none;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}

.account-benefits-list li{
  min-height:48px;
  border-radius:17px;
  padding:10px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(201,151,75,.20);
  color:#554e5c;
  font-size:13px;
  font-weight:900;
  display:flex;
  align-items:center;
  gap:8px;
}

.account-benefits-list span{
  flex:0 0 auto;
  filter:drop-shadow(0 0 6px rgba(47,107,255,.16));
}

.account-continue-btn:active,
.account-google-btn:active,
.account-mode-btn:active,
.account-mini-card:active{
  transform:translateY(1px) scale(.99);
}

@keyframes accountTextShift{
  0%,100%{ background-position:0% 50%; }
  50%{ background-position:100% 50%; }
}

@keyframes accountCardSpin{
  to{ transform:rotate(360deg); }
}

@keyframes accountIconFloat{
  0%,100%{ transform:translateY(0) scale(1); }
  50%{ transform:translateY(-3px) scale(1.035); }
}

@media (max-width:820px){
  .account-layout{
    grid-template-columns:1fr;
  }
}

@media (max-width:560px){
  .account-page{
    padding:14px 10px 28px;
    gap:13px;
  }

  .account-hero-card{
    min-height:178px;
    border-radius:26px;
    padding:22px 14px;
  }

  .account-login-card,
  .account-hub-card,
  .account-benefits-card{
    border-radius:26px;
    padding:15px 12px;
  }

  .account-hero-title{
    font-size:27px;
  }

  .account-section-heading h2,
  .account-benefits-card h2{
    font-size:20px;
  }

  .account-hero-subtitle,
  .account-section-heading p{
    font-size:13.5px;
  }

  .account-hub-grid,
  .account-benefits-list{
    gap:8px;
  }

  .account-mini-card{
    min-height:112px;
    border-radius:20px;
    padding:11px 8px;
  }

  .account-mini-card b{
    font-size:14.5px;
  }

  .account-mini-card small{
    font-size:11px;
  }
}

@media (max-width:360px){
  .account-hub-grid,
  .account-benefits-list{
    grid-template-columns:1fr;
  }
}

.account-login-form[hidden],
.account-summary-card[hidden],
.account-name-field[hidden]{
  display:none !important;
}

.account-summary-card{
  display:grid;
  justify-items:center;
  gap:10px;
  padding:16px 12px 6px;
  text-align:center;
}

.account-summary-icon{
  width:62px;
  height:62px;
  border-radius:22px;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 25% 20%,rgba(255,255,255,.94),transparent 26%),
    linear-gradient(135deg,rgba(255,224,171,.72),rgba(196,239,255,.70),rgba(226,219,255,.70),rgba(255,219,238,.72));
  box-shadow:inset 0 0 16px rgba(255,255,255,.70),0 10px 22px rgba(47,107,255,.12),0 0 18px rgba(255,47,146,.13);
  animation:accountIconFloat 2.8s ease-in-out infinite;
}

.account-summary-icon svg{
  width:38px;
  height:38px;
  fill:none;
  stroke:rgba(68,58,92,.68);
  stroke-width:3.2;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 0 8px rgba(47,107,255,.18));
}

.account-summary-card h2{
  margin:0;
  font-size:22px;
  font-weight:950;
  line-height:1.15;
  background:linear-gradient(90deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87,#ff7b00);
  background-size:300% 300%;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  animation:accountTextShift 3.8s ease-in-out infinite;
}

.account-summary-status{
  margin:0;
  color:#756d78;
  font-size:14px;
  font-weight:800;
  line-height:1.45;
}

.account-summary-details{
  width:100%;
  display:grid;
  gap:5px;
  padding:13px 12px;
  border-radius:20px;
  border:1px solid rgba(201,151,75,.20);
  background:rgba(255,255,255,.82);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 10px 18px rgba(25,16,13,.04);
}

.account-summary-details span{
  color:#554e5c;
  font-size:15px;
  font-weight:950;
}

.account-summary-details strong{
  color:#756d78;
  font-size:13px;
  font-weight:850;
  overflow-wrap:anywhere;
}

.account-logout-btn{
  width:100%;
  min-height:52px;
  border:0;
  border-radius:18px;
  color:#fff;
  font-size:15px;
  font-weight:950;
  background:linear-gradient(135deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87);
  box-shadow:0 14px 26px rgba(47,107,255,.18),0 0 18px rgba(255,47,146,.14);
}

.account-summary-feedback{
  min-height:18px;
}

.account-feedback.is-error,
.account-summary-feedback.is-error{
  color:#b4234a;
}

.account-continue-btn:disabled,
.account-google-btn:disabled,
.account-forgot-link:disabled,
.account-logout-btn:disabled{
  cursor:not-allowed;
  opacity:.68;
}

.account-logout-btn:active{
  transform:translateY(1px) scale(.99);
}

.account-verification-actions{
  width:100%;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}

.account-verification-actions[hidden]{
  display:none !important;
}

.account-secondary-btn{
  min-height:48px;
  border-radius:17px;
  border:1px solid rgba(201,151,75,.24);
  background:rgba(255,255,255,.92);
  color:#3f3650;
  font-size:13px;
  font-weight:950;
  box-shadow:0 9px 18px rgba(25,16,13,.05),0 0 14px rgba(47,107,255,.08);
}

.account-secondary-btn:disabled{
  cursor:not-allowed;
  opacity:.68;
}

.account-secondary-btn:active{
  transform:translateY(1px) scale(.99);
}

@media (max-width:420px){
  .account-verification-actions{
    grid-template-columns:1fr;
  }
}

.account-auth-view[hidden]{
  display:none !important;
}

#loggedOutView,
.account-pending-view{
  grid-template-columns:minmax(0,640px);
  justify-content:center;
}

.account-dashboard-view{
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
}

@media (max-width:820px){
  #loggedOutView,
  .account-pending-view,
  .account-dashboard-view{
    grid-template-columns:1fr;
  }
}

.account-dashboard-home{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  gap:14px;
  align-items:start;
  width:100%;
}

.account-dashboard-home[hidden],
.account-my-orders-view[hidden],
.account-my-orders-state[hidden],
.account-my-orders-list[hidden]{
  display:none !important;
}

.account-my-orders-view{
  width:100%;
  border:2px solid transparent;
  border-radius:30px;
  padding:18px;
  background:
    linear-gradient(rgba(255,255,255,.97),rgba(255,255,255,.92)) padding-box,
    conic-gradient(from 0deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87,#ffd84d,#ff7b00) border-box;
  box-shadow:
    0 18px 34px rgba(38,25,75,.11),
    0 0 0 1px rgba(255,255,255,.78) inset,
    0 0 22px rgba(255,47,146,.13),
    0 0 34px rgba(47,107,255,.11),
    0 0 40px rgba(30,203,135,.09);
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.account-my-orders-view::before{
  content:"";
  position:absolute;
  inset:-65%;
  background:conic-gradient(from 0deg,transparent 0deg,rgba(255,47,146,.24) 70deg,rgba(47,107,255,.22) 145deg,rgba(30,203,135,.20) 225deg,transparent 305deg);
  animation:accountCardSpin 7.5s linear infinite;
  z-index:-2;
}

.account-my-orders-view::after{
  content:"";
  position:absolute;
  inset:7px;
  border-radius:24px;
  background:
    radial-gradient(circle at 18% 18%,rgba(255,123,0,.10),transparent 43%),
    radial-gradient(circle at 82% 22%,rgba(47,107,255,.11),transparent 46%),
    radial-gradient(circle at 35% 88%,rgba(30,203,135,.10),transparent 50%),
    linear-gradient(160deg,rgba(255,255,255,.95),rgba(255,255,255,.89));
  z-index:-1;
}

.account-my-orders-head{
  display:grid;
  justify-items:center;
  gap:8px;
  text-align:center;
  margin-bottom:16px;
}

.account-my-orders-head h2{
  margin:0;
  font-size:24px;
  font-weight:950;
  line-height:1.15;
  background:linear-gradient(90deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87,#ff7b00);
  background-size:300% 300%;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  animation:accountTextShift 3.8s ease-in-out infinite;
}

.account-my-orders-head p{
  max-width:560px;
  margin:0;
  color:#756d78;
  font-size:14px;
  font-weight:800;
  line-height:1.45;
}

.account-back-dashboard{
  justify-self:start;
  min-height:42px;
  border:1px solid rgba(201,151,75,.24);
  border-radius:999px;
  padding:0 14px;
  background:rgba(255,255,255,.92);
  color:#3f3650;
  font-size:13px;
  font-weight:950;
  box-shadow:0 9px 18px rgba(25,16,13,.05),0 0 14px rgba(47,107,255,.08);
}

.account-my-orders-state{
  min-height:136px;
  border:1px solid rgba(201,151,75,.20);
  border-radius:22px;
  padding:18px;
  background:rgba(255,255,255,.84);
  color:#554e5c;
  display:grid;
  place-items:center;
  text-align:center;
  gap:8px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 10px 18px rgba(25,16,13,.04);
}

.account-my-orders-state b{
  font-size:16px;
  font-weight:950;
}

.account-my-orders-state span{
  color:#756d78;
  font-size:13px;
  font-weight:800;
  line-height:1.4;
}

.account-my-orders-state.is-error{
  border-color:rgba(180,35,74,.22);
  color:#b4234a;
}

.account-orders-spinner{
  width:34px;
  height:34px;
  border-radius:50%;
  border:4px solid rgba(47,107,255,.14);
  border-top-color:#ff2f92;
  animation:accountCardSpin .85s linear infinite;
}

.account-my-orders-list{
  display:grid;
  gap:12px;
}

.account-order-card{
  border:2px solid transparent;
  border-radius:24px;
  padding:14px;
  background:
    linear-gradient(rgba(255,255,255,.96),rgba(255,255,255,.91)) padding-box,
    conic-gradient(from 0deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87,#ffd84d,#ff7b00) border-box;
  box-shadow:0 14px 28px rgba(38,25,75,.09),0 0 16px rgba(47,107,255,.10);
  overflow:hidden;
}

.account-order-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}

.account-order-top span,
.account-order-info span{
  color:#756d78;
  font-size:11.5px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.22px;
}

.account-order-top h3{
  margin:3px 0 0;
  color:#2f2a35;
  font-size:18px;
  font-weight:950;
  overflow-wrap:anywhere;
}

.account-order-status{
  flex:0 0 auto;
  max-width:46%;
  border-radius:999px;
  padding:7px 10px;
  background:linear-gradient(135deg,rgba(255,244,217,.96),rgba(235,247,255,.96));
  border:1px solid rgba(201,151,75,.22);
  color:#3f3650;
  font-size:12px;
  font-weight:950;
  overflow-wrap:anywhere;
  text-align:center;
}

.account-order-info-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}

.account-order-info{
  min-width:0;
  border:1px solid rgba(201,151,75,.20);
  border-radius:18px;
  padding:10px;
  background:rgba(255,255,255,.84);
  display:grid;
  gap:5px;
}

.account-order-info b{
  color:#554e5c;
  font-size:13px;
  font-weight:900;
  line-height:1.35;
  overflow-wrap:anywhere;
}

.account-order-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-top:12px;
}

.account-order-actions button{
  min-height:40px;
  border:0;
  border-radius:999px;
  padding:0 14px;
  color:#fff;
  font-size:12.5px;
  font-weight:950;
  background:linear-gradient(135deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87);
  box-shadow:0 10px 18px rgba(47,107,255,.15),0 0 14px rgba(255,47,146,.11);
}

.account-order-actions button:disabled{
  cursor:not-allowed;
  opacity:.72;
}

.account-order-actions small{
  color:#756d78;
  font-size:12px;
  font-weight:800;
}

@media (max-width:820px){
  .account-dashboard-home{
    grid-template-columns:1fr;
  }
}

@media (max-width:560px){
  .account-my-orders-view{
    border-radius:26px;
    padding:15px 12px;
  }

  .account-my-orders-head h2{
    font-size:21px;
  }

  .account-order-top{
    display:grid;
  }

  .account-order-status{
    max-width:100%;
    justify-self:start;
  }

  .account-order-info-grid{
    grid-template-columns:1fr;
  }

  .account-order-actions{
    display:grid;
  }

  .account-order-actions button{
    width:100%;
  }
}

.account-wishlist-view[hidden],
.account-wishlist-list[hidden]{
  display:none !important;
}

.account-wishlist-view{
  width:100%;
  border:2px solid transparent;
  border-radius:30px;
  padding:18px;
  background:
    linear-gradient(rgba(255,255,255,.97),rgba(255,255,255,.92)) padding-box,
    conic-gradient(from 0deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87,#ffd84d,#ff7b00) border-box;
  box-shadow:
    0 18px 34px rgba(38,25,75,.11),
    0 0 0 1px rgba(255,255,255,.78) inset,
    0 0 22px rgba(255,47,146,.13),
    0 0 34px rgba(47,107,255,.11),
    0 0 40px rgba(30,203,135,.09);
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.account-wishlist-view::before{
  content:"";
  position:absolute;
  inset:-65%;
  background:conic-gradient(from 0deg,transparent 0deg,rgba(255,47,146,.24) 70deg,rgba(47,107,255,.22) 145deg,rgba(30,203,135,.20) 225deg,transparent 305deg);
  animation:accountCardSpin 7.5s linear infinite;
  z-index:-2;
}

.account-wishlist-view::after{
  content:"";
  position:absolute;
  inset:7px;
  border-radius:24px;
  background:
    radial-gradient(circle at 18% 18%,rgba(255,123,0,.10),transparent 43%),
    radial-gradient(circle at 82% 22%,rgba(47,107,255,.11),transparent 46%),
    radial-gradient(circle at 35% 88%,rgba(30,203,135,.10),transparent 50%),
    linear-gradient(160deg,rgba(255,255,255,.95),rgba(255,255,255,.89));
  z-index:-1;
}

.account-wishlist-list{
  display:grid;
  gap:12px;
}

.account-wishlist-item{
  display:grid;
  grid-template-columns:84px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  border:2px solid transparent;
  border-radius:24px;
  padding:12px;
  background:
    linear-gradient(rgba(255,255,255,.96),rgba(255,255,255,.91)) padding-box,
    conic-gradient(from 0deg,#ffbf62,#ff7bb8,#89a8ff,#77e1b9,#ffbf62) border-box;
  box-shadow:0 14px 28px rgba(38,25,75,.09),0 0 16px rgba(47,107,255,.10);
  min-width:0;
}

.account-wishlist-media{
  width:84px;
  height:84px;
  border-radius:18px;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:linear-gradient(135deg,#fff4e8,#fff1f8,#eff7ff);
  color:#ff2f92;
  font-size:30px;
  font-weight:950;
}

.account-wishlist-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.account-wishlist-content{
  min-width:0;
  display:grid;
  gap:5px;
}

.account-wishlist-content b{
  color:#2f2a35;
  font-size:15px;
  font-weight:950;
  line-height:1.3;
  overflow-wrap:anywhere;
}

.account-wishlist-content small{
  color:#756d78;
  font-size:12px;
  font-weight:850;
  line-height:1.35;
  overflow-wrap:anywhere;
}

.account-wishlist-price{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-top:2px;
}

.account-wishlist-price strong{
  color:#d81b60;
  font-size:15px;
  font-weight:950;
}

.account-wishlist-price del{
  color:#98a0ad;
  font-size:12px;
  font-weight:800;
}

.account-wishlist-remove{
  min-height:40px;
  border:0;
  border-radius:999px;
  padding:0 14px;
  color:#fff;
  font-size:12.5px;
  font-weight:950;
  background:linear-gradient(135deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87);
  box-shadow:0 10px 18px rgba(47,107,255,.15),0 0 14px rgba(255,47,146,.11);
}

.account-wishlist-remove:disabled{
  cursor:not-allowed;
  opacity:.68;
}

@media (max-width:560px){
  .account-wishlist-view{
    border-radius:26px;
    padding:15px 12px;
  }

  .account-wishlist-item{
    grid-template-columns:72px minmax(0,1fr);
    align-items:start;
  }

  .account-wishlist-media{
    width:72px;
    height:72px;
    border-radius:16px;
  }

  .account-wishlist-remove{
    grid-column:1 / -1;
    width:100%;
  }
}

.account-address-view[hidden],
.account-address-list[hidden],
.account-address-form-card[hidden],
.account-address-manual-field[hidden]{
  display:none !important;
}

.account-address-view{
  width:100%;
  border:2px solid transparent;
  border-radius:30px;
  padding:18px;
  background:
    linear-gradient(rgba(255,255,255,.97),rgba(255,255,255,.92)) padding-box,
    conic-gradient(from 0deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87,#ffd84d,#ff7b00) border-box;
  box-shadow:
    0 18px 34px rgba(38,25,75,.11),
    0 0 0 1px rgba(255,255,255,.78) inset,
    0 0 22px rgba(255,47,146,.13),
    0 0 34px rgba(47,107,255,.11),
    0 0 40px rgba(30,203,135,.09);
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.account-address-view::before{
  content:"";
  position:absolute;
  inset:-65%;
  background:conic-gradient(from 0deg,transparent 0deg,rgba(255,47,146,.24) 70deg,rgba(47,107,255,.22) 145deg,rgba(30,203,135,.20) 225deg,transparent 305deg);
  animation:accountCardSpin 7.5s linear infinite;
  z-index:-2;
}

.account-address-view::after{
  content:"";
  position:absolute;
  inset:7px;
  border-radius:24px;
  background:
    radial-gradient(circle at 18% 18%,rgba(255,123,0,.10),transparent 43%),
    radial-gradient(circle at 82% 22%,rgba(47,107,255,.11),transparent 46%),
    radial-gradient(circle at 35% 88%,rgba(30,203,135,.10),transparent 50%),
    linear-gradient(160deg,rgba(255,255,255,.95),rgba(255,255,255,.89));
  z-index:-1;
}

.account-field select{
  width:100%;
  min-height:52px;
  border:1px solid rgba(201,151,75,.22);
  border-radius:18px;
  padding:0 42px 0 15px;
  background:rgba(255,255,255,.94);
  color:#1f1730;
  font-size:15px;
  font-weight:750;
  outline:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78),0 8px 18px rgba(25,16,13,.04);
  appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,#756d78 50%),linear-gradient(135deg,#756d78 50%,transparent 50%);
  background-position:calc(100% - 21px) 23px,calc(100% - 15px) 23px;
  background-size:6px 6px,6px 6px;
  background-repeat:no-repeat;
}

.account-field select:focus{
  border-color:rgba(47,107,255,.44);
  box-shadow:0 0 0 4px rgba(47,107,255,.10),0 10px 20px rgba(25,16,13,.05);
}

.account-field select:disabled{
  opacity:.66;
  cursor:not-allowed;
}

.account-address-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.account-address-toolbar span,
.account-address-form-note{
  color:#756d78;
  font-size:12.5px;
  font-weight:850;
  line-height:1.4;
}

.account-address-primary,
.account-address-ghost,
.account-address-danger{
  min-height:42px;
  border-radius:999px;
  padding:0 14px;
  font-size:12.5px;
  font-weight:950;
}

.account-address-primary{
  border:0;
  color:#fff;
  background:linear-gradient(135deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87);
  box-shadow:0 10px 18px rgba(47,107,255,.15),0 0 14px rgba(255,47,146,.11);
}

.account-address-ghost{
  border:1px solid rgba(201,151,75,.24);
  background:rgba(255,255,255,.92);
  color:#3f3650;
  box-shadow:0 9px 18px rgba(25,16,13,.05),0 0 14px rgba(47,107,255,.08);
}

.account-address-danger{
  border:1px solid rgba(180,35,74,.20);
  background:rgba(255,255,255,.92);
  color:#b4234a;
}

.account-address-primary:disabled,
.account-address-ghost:disabled,
.account-address-danger:disabled{
  cursor:not-allowed;
  opacity:.68;
}

.account-address-form-card,
.account-address-card{
  border:2px solid transparent;
  border-radius:24px;
  background:
    linear-gradient(rgba(255,255,255,.96),rgba(255,255,255,.91)) padding-box,
    conic-gradient(from 0deg,#ffbf62,#ff7bb8,#89a8ff,#77e1b9,#ffbf62) border-box;
  box-shadow:0 14px 28px rgba(38,25,75,.09),0 0 16px rgba(47,107,255,.10);
  min-width:0;
}

.account-address-form-card{
  padding:14px;
  margin-bottom:14px;
}

.account-address-form-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}

.account-address-form-head h3{
  margin:7px 0 0;
  color:#2f2a35;
  font-size:18px;
  font-weight:950;
}

.account-address-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.account-address-field-wide{
  grid-column:1 / -1;
}

.account-address-manual-field input{
  border-color:rgba(47,107,255,.28);
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(244,249,255,.94));
}

.account-address-default-toggle{
  min-height:52px;
  border:1px solid rgba(201,151,75,.20);
  border-radius:18px;
  padding:0 14px;
  background:rgba(255,255,255,.84);
  color:#554e5c;
  display:flex;
  align-items:center;
  gap:10px;
  font-size:13px;
  font-weight:950;
}

.account-address-default-toggle input{
  width:18px;
  height:18px;
  accent-color:#ff2f92;
}

.account-address-form-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}

.account-address-list{
  display:grid;
  gap:12px;
}

.account-address-card{
  padding:14px;
}

.account-address-card-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}

.account-address-card h3{
  margin:0;
  color:#2f2a35;
  font-size:17px;
  font-weight:950;
  overflow-wrap:anywhere;
}

.account-address-pill-row{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:7px;
}

.account-address-pill{
  border-radius:999px;
  padding:6px 9px;
  background:linear-gradient(135deg,rgba(255,244,217,.96),rgba(235,247,255,.96));
  border:1px solid rgba(201,151,75,.22);
  color:#3f3650;
  font-size:11.5px;
  font-weight:950;
}

.account-address-default-badge{
  flex:0 0 auto;
  border-radius:999px;
  padding:7px 10px;
  background:linear-gradient(135deg,rgba(255,123,0,.14),rgba(255,47,146,.13),rgba(47,107,255,.13));
  color:#d81b60;
  font-size:12px;
  font-weight:950;
}

.account-address-lines{
  display:grid;
  gap:6px;
  color:#554e5c;
  font-size:13px;
  font-weight:850;
  line-height:1.45;
}

.account-address-lines span{
  overflow-wrap:anywhere;
}

.account-address-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

@media (max-width:560px){
  .account-address-view{
    border-radius:26px;
    padding:15px 12px;
  }

  .account-address-toolbar,
  .account-address-form-head,
  .account-address-card-top{
    display:grid;
  }

  .account-address-form{
    grid-template-columns:1fr;
  }

  .account-address-primary,
  .account-address-ghost,
  .account-address-danger,
  .account-address-actions button,
  .account-address-form-actions button{
    width:100%;
  }
}

.account-address-map-tools{
  border:1px solid rgba(201,151,75,.22);
  border-radius:20px;
  padding:12px;
  background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(244,249,255,.91));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 10px 20px rgba(25,16,13,.04);
  display:grid;
  gap:10px;
  min-width:0;
}

.account-address-map-tools strong{
  display:block;
  color:#2f2a35;
  font-size:13px;
  font-weight:950;
  margin-bottom:4px;
}

.account-address-map-tools span,
.account-address-map-footer span{
  color:#756d78;
  font-size:12.5px;
  font-weight:850;
  line-height:1.45;
  overflow-wrap:anywhere;
}

.account-address-map-tools.is-selected span{
  color:#167c5a;
}

.account-address-map-actions,
.account-address-map-footer{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:9px;
}

.account-address-map-modal[hidden]{
  display:none !important;
}

.account-address-map-modal{
  position:fixed;
  inset:0;
  z-index:99999;
  width:100vw;
  height:100dvh;
  padding:clamp(10px,2vw,20px) clamp(10px,2vw,20px) max(12px,env(safe-area-inset-bottom));
  background:
    radial-gradient(circle at 18% 12%,rgba(255,216,77,.28),transparent 30%),
    radial-gradient(circle at 86% 20%,rgba(47,107,255,.26),transparent 32%),
    linear-gradient(135deg,rgba(27,20,38,.62),rgba(47,42,53,.44));
  backdrop-filter:blur(16px);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  overscroll-behavior:contain;
  box-sizing:border-box;
}

.account-map-modal-open{
  overflow:hidden !important;
  height:100dvh;
  width:100%;
  position:fixed;
}

.account-address-map-sheet{
  width:min(960px,100%);
  height:min(100%,calc(100dvh - 24px));
  border:2px solid transparent;
  border-radius:30px;
  padding:clamp(12px,2vw,18px);
  background:
    linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,255,255,.88)) padding-box,
    linear-gradient(135deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87,#ffd84d) border-box;
  box-shadow:0 28px 70px rgba(25,16,13,.28),0 0 34px rgba(47,107,255,.18);
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  gap:12px;
  min-width:0;
  overflow:hidden;
  overscroll-behavior:contain;
  box-sizing:border-box;
}

.account-address-map-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  min-width:0;
}

.account-address-map-head h3{
  margin:6px 0 4px;
  background:linear-gradient(135deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  font-size:clamp(20px,4vw,28px);
  font-weight:1000;
  letter-spacing:-.03em;
}

.account-address-map-head p{
  margin:0;
  color:#5f5665;
  font-size:13px;
  font-weight:850;
  line-height:1.45;
}

.account-address-map-canvas{
  width:100%;
  height:100%;
  min-height:min(390px,calc(100dvh - 210px));
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(201,151,75,.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 16px 32px rgba(25,16,13,.12);
  background:linear-gradient(135deg,#eef8ef,#eaf0ff);
  position:relative;
  min-width:0;
}

.account-address-map-canvas.is-loading::after{
  content:attr(data-loading);
  position:absolute;
  left:50%;
  top:14px;
  transform:translateX(-50%);
  z-index:500;
  max-width:calc(100% - 28px);
  border:1px solid rgba(201,151,75,.28);
  border-radius:999px;
  padding:9px 13px;
  background:rgba(255,255,255,.96);
  color:#3f3650;
  font-size:12px;
  font-weight:950;
  box-shadow:0 10px 20px rgba(25,16,13,.10);
  pointer-events:none;
  text-align:center;
}

.account-address-map-pin{
  display:flex !important;
  align-items:center;
  justify-content:center;
  width:44px !important;
  height:56px !important;
  margin-left:-22px !important;
  margin-top:-54px !important;
  filter:drop-shadow(0 10px 12px rgba(25,16,13,.32));
}

.account-address-map-pin span{
  display:block;
  width:34px;
  height:34px;
  border:4px solid rgba(255,255,255,.98);
  border-radius:50% 50% 50% 8px;
  background:linear-gradient(135deg,#ff7b00 0%,#ff2f92 33%,#2f6bff 66%,#1ecb87 100%);
  transform:rotate(-45deg);
  box-shadow:0 0 0 3px rgba(255,47,146,.18),0 10px 22px rgba(25,16,13,.24);
  position:relative;
}

.account-address-map-pin span::after{
  content:"";
  position:absolute;
  width:11px;
  height:11px;
  border-radius:50%;
  background:#fff;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
}

.account-address-map-footer{
  justify-content:space-between;
  position:sticky;
  bottom:0;
  z-index:2;
  border-radius:20px;
  padding:10px 0 0;
  background:linear-gradient(180deg,rgba(255,255,255,.70),rgba(255,255,255,.98));
}

.account-address-map-footer-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
}

.account-address-map-link{
  color:#2f6bff;
  font-weight:950;
  text-decoration:none;
}

.account-address-map-link:hover{
  text-decoration:underline;
}

@media (max-width:560px){
  .account-address-map-actions,
  .account-address-map-footer,
  .account-address-map-head{
    display:grid;
  }

  .account-address-map-modal{
    align-items:stretch;
    padding:8px 8px max(8px,env(safe-area-inset-bottom));
  }

  .account-address-map-sheet{
    width:100%;
    height:100%;
    border-radius:24px;
    grid-template-rows:auto minmax(0,1fr) auto;
    gap:10px;
  }

  .account-address-map-canvas{
    height:clamp(390px,64dvh,70dvh);
    min-height:min(390px,calc(100dvh - 220px));
    max-height:none;
  }

  .account-address-map-actions button,
  .account-address-map-footer-actions,
  .account-address-map-footer button{
    width:100%;
  }

  .account-address-map-footer-actions{
    display:grid;
  }
}


/* === V152 MANUAL MAP POLISH START === */
body.mg-map-polish-open{
  overflow:hidden !important;
  width:100% !important;
  height:100dvh !important;
  touch-action:none !important;
}

body.mg-map-polish-open .topbar,
body.mg-map-polish-open .bottom-nav-wrap{
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

.mg-map-polish-modal[hidden]{display:none !important;}

.mg-map-polish-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:2147483647 !important;
  width:100vw !important;
  height:100dvh !important;
  padding:10px 10px max(10px,env(safe-area-inset-bottom)) !important;
  box-sizing:border-box !important;
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) auto !important;
  gap:10px !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 18% 12%,rgba(255,216,77,.24),transparent 30%),
    radial-gradient(circle at 88% 18%,rgba(47,107,255,.24),transparent 34%),
    linear-gradient(135deg,rgba(28,22,38,.72),rgba(45,37,58,.62)) !important;
  backdrop-filter:blur(16px) !important;
}

.mg-map-polish-top,
.mg-map-polish-bottom{
  border:2px solid transparent;
  border-radius:22px;
  background:
    linear-gradient(rgba(255,255,255,.96),rgba(255,255,255,.90)) padding-box,
    linear-gradient(135deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87,#ffd84d) border-box;
  box-shadow:0 14px 32px rgba(25,16,13,.20);
  padding:11px;
  box-sizing:border-box;
}

.mg-map-polish-top{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
}

.mg-map-polish-title{
  margin:0;
  font-size:20px;
  font-weight:1000;
  line-height:1.1;
  background:linear-gradient(135deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.mg-map-polish-subtitle,
.mg-map-polish-coords{
  margin:4px 0 0;
  color:#5f5665;
  font-size:12px;
  font-weight:850;
  line-height:1.35;
}

.mg-map-polish-canvas{
  position:relative !important;
  width:100% !important;
  height:100% !important;
  min-height:420px !important;
  border:2px solid rgba(255,255,255,.78) !important;
  border-radius:24px !important;
  overflow:hidden !important;
  background:#e9f2ef !important;
  box-shadow:0 18px 38px rgba(25,16,13,.22),0 0 0 1px rgba(201,151,75,.20) inset !important;
  box-sizing:border-box !important;
  isolation:isolate !important;
}

.mg-map-polish-canvas.is-loading::after{
  content:attr(data-loading);
  position:absolute;
  left:50%;
  top:14px;
  transform:translateX(-50%);
  z-index:1200;
  max-width:calc(100% - 28px);
  border:1px solid rgba(201,151,75,.30);
  border-radius:999px;
  padding:8px 12px;
  background:rgba(255,255,255,.96);
  color:#3f3650;
  font-size:12px;
  font-weight:950;
  box-shadow:0 10px 22px rgba(25,16,13,.12);
  pointer-events:none;
  text-align:center;
}

.mg-map-polish-bottom{
  display:grid;
  gap:9px;
}

.mg-map-polish-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}

.mg-map-polish-btn{
  min-height:45px;
  border-radius:999px;
  padding:0 14px;
  font-size:13px;
  font-weight:950;
  border:1px solid rgba(201,151,75,.24);
  background:rgba(255,255,255,.94);
  color:#3f3650;
  box-shadow:0 9px 18px rgba(25,16,13,.07);
}

.mg-map-polish-btn.primary{
  border:0;
  color:#fff;
  background:linear-gradient(135deg,#ff7b00,#ff2f92,#2f6bff,#1ecb87);
  box-shadow:0 12px 24px rgba(47,107,255,.18),0 0 16px rgba(255,47,146,.12);
}

.mg-map-polish-canvas .leaflet-container,
.mg-map-polish-canvas.leaflet-container{
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  background:#e9f2ef !important;
  overflow:hidden !important;
  font:12px/1.5 Arial,Helvetica,sans-serif !important;
}

.mg-map-polish-canvas .leaflet-pane,
.mg-map-polish-canvas .leaflet-map-pane,
.mg-map-polish-canvas .leaflet-tile-pane,
.mg-map-polish-canvas .leaflet-overlay-pane,
.mg-map-polish-canvas .leaflet-shadow-pane,
.mg-map-polish-canvas .leaflet-marker-pane,
.mg-map-polish-canvas .leaflet-tooltip-pane,
.mg-map-polish-canvas .leaflet-popup-pane{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
}

.mg-map-polish-canvas .leaflet-map-pane{z-index:400 !important;}
.mg-map-polish-canvas .leaflet-tile-pane{z-index:200 !important;}
.mg-map-polish-canvas .leaflet-overlay-pane{z-index:400 !important;}
.mg-map-polish-canvas .leaflet-marker-pane{z-index:650 !important;}

.mg-map-polish-canvas .leaflet-control-container{
  position:absolute !important;
  inset:0 !important;
  z-index:1000 !important;
  pointer-events:none !important;
}

.mg-map-polish-canvas .leaflet-top,
.mg-map-polish-canvas .leaflet-bottom{
  position:absolute !important;
  z-index:1000 !important;
  pointer-events:none !important;
}

.mg-map-polish-canvas .leaflet-top{top:0 !important;}
.mg-map-polish-canvas .leaflet-bottom{bottom:0 !important;}
.mg-map-polish-canvas .leaflet-left{left:0 !important;}
.mg-map-polish-canvas .leaflet-right{right:0 !important;}

.mg-map-polish-canvas .leaflet-control{
  position:relative !important;
  z-index:1000 !important;
  pointer-events:auto !important;
  float:left !important;
  clear:both !important;
  margin:10px !important;
}

.mg-map-polish-canvas .leaflet-control-zoom{
  border:1px solid rgba(0,0,0,.12) !important;
  border-radius:12px !important;
  overflow:hidden !important;
  box-shadow:0 8px 18px rgba(25,16,13,.14) !important;
  background:#fff !important;
}

.mg-map-polish-canvas .leaflet-control-zoom a{
  width:34px !important;
  height:34px !important;
  line-height:34px !important;
  display:block !important;
  text-align:center !important;
  text-decoration:none !important;
  color:#2f2a35 !important;
  background:#fff !important;
  font-size:20px !important;
  font-weight:900 !important;
}

.mg-map-polish-canvas .leaflet-control-attribution{
  margin:0 8px 8px 0 !important;
  padding:3px 7px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.86) !important;
  color:#3f3650 !important;
  font-size:10px !important;
  font-weight:700 !important;
}

.mg-map-polish-canvas .leaflet-tile{
  position:absolute !important;
  width:256px !important;
  height:256px !important;
  max-width:none !important;
  max-height:none !important;
  min-width:0 !important;
  min-height:0 !important;
  object-fit:fill !important;
  object-position:center center !important;
  border-radius:0 !important;
  box-shadow:none !important;
  filter:none !important;
  margin:0 !important;
  padding:0 !important;
  display:block !important;
}

.mg-map-polish-canvas .leaflet-marker-icon,
.mg-map-polish-canvas .leaflet-marker-shadow{
  position:absolute !important;
  margin:0 !important;
  padding:0 !important;
  max-width:none !important;
  max-height:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

.mg-map-polish-pin{
  width:26px !important;
  height:34px !important;
  margin-left:-13px !important;
  margin-top:-34px !important;
  display:block !important;
  background:transparent !important;
  border:0 !important;
  filter:drop-shadow(0 5px 7px rgba(25,16,13,.28)) !important;
  z-index:10000 !important;
}

.mg-map-polish-pin span{
  position:absolute;
  left:4px;
  top:2px;
  width:18px;
  height:18px;
  border-radius:50% 50% 50% 4px;
  background:#ff3b5f;
  transform:rotate(-45deg);
  border:2px solid #fff;
  box-shadow:0 2px 8px rgba(25,16,13,.22);
}

.mg-map-polish-pin span::after{
  content:"";
  position:absolute;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#fff;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
}

@media (max-width:560px){
  .mg-map-polish-modal{
    padding:8px 8px max(8px,env(safe-area-inset-bottom)) !important;
    gap:8px !important;
  }

  .mg-map-polish-top,
  .mg-map-polish-bottom{
    border-radius:18px;
    padding:9px;
  }

  .mg-map-polish-title{font-size:18px;}

  .mg-map-polish-canvas{
    min-height:calc(100dvh - 198px) !important;
    border-radius:20px !important;
  }

  .mg-map-polish-actions{grid-template-columns:1fr;}
}
/* === V152 MANUAL MAP POLISH END === */


/* === V152 MANUAL MAP POLISH PATCH 2 START === */
.mg-map-polish-coords{
  text-align:center !important;
  border-radius:16px !important;
  padding:8px 10px !important;
  background:rgba(255,255,255,.72) !important;
  border:1px solid rgba(201,151,75,.20) !important;
  color:#3f3650 !important;
  font-size:12px !important;
  font-weight:950 !important;
}
/* === V152 MANUAL MAP POLISH PATCH 2 END === */


/* === V152 MANUAL MAP POLISH PATCH 4 START === */
/* Safe mild clarity only: no tile positioning override, no transform override */
.mg-map-polish-canvas img.leaflet-tile{
  filter:brightness(1.025) contrast(1.055) saturate(1.08) !important;
  image-rendering:auto !important;
  opacity:1 !important;
}
/* === V152 MANUAL MAP POLISH PATCH 4 END === */


/* === V152 MANUAL MAP POLISH PATCH 5 START === */
/* Keep required OSM credit, but make it clean, tiny, and non-distracting */
.mg-map-polish-canvas .leaflet-control-attribution{
  margin:0 7px 7px 0 !important;
  padding:2px 6px !important;
  max-width:96px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.52) !important;
  color:rgba(52,47,58,.68) !important;
  font-size:8px !important;
  line-height:1.15 !important;
  font-weight:700 !important;
  opacity:.48 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  box-shadow:none !important;
  border:1px solid rgba(255,255,255,.35) !important;
}

.mg-map-polish-canvas .leaflet-control-attribution a{
  color:rgba(52,47,58,.72) !important;
  text-decoration:none !important;
  font-weight:800 !important;
}

.mg-map-polish-canvas .leaflet-control-attribution:hover,
.mg-map-polish-canvas .leaflet-control-attribution:focus-within{
  opacity:.82 !important;
  max-width:150px !important;
  background:rgba(255,255,255,.82) !important;
}
/* === V152 MANUAL MAP POLISH PATCH 5 END === */


.settings-toggle-row{
  gap:12px;
}

.settings-toggle-row strong{
  margin-left:auto;
}

.settings-toggle-row.is-busy{
  cursor:wait;
  opacity:.72;
}

.settings-toggle-switch{
  width:58px;
  height:32px;
  border-radius:999px;
  background:#d9dde6;
  border:1px solid rgba(132,142,164,.24);
  display:inline-flex;
  align-items:center;
  padding:3px;
  box-shadow:inset 0 2px 6px rgba(31,23,48,.08);
  transition:background .22s ease, box-shadow .22s ease, border-color .22s ease;
  flex:0 0 auto;
}

.settings-toggle-switch span{
  width:26px;
  height:26px;
  border-radius:999px;
  background:#fff;
  box-shadow:0 4px 10px rgba(31,23,48,.16);
  transition:transform .22s ease;
}

.settings-toggle-row.is-on .settings-toggle-switch{
  background:linear-gradient(135deg,#2f6bff,#3f7cff);
  border-color:rgba(47,107,255,.42);
  box-shadow:0 8px 18px rgba(47,107,255,.20), inset 0 1px 3px rgba(255,255,255,.20);
}

.settings-toggle-row.is-on .settings-toggle-switch span{
  transform:translateX(26px);
}

.settings-toggle-row.is-disabled{
  cursor:not-allowed;
  opacity:.68;
}
