/* ALICE BEAUTY — final tone + mobile login pass */
:root{
  --color-primary:#8f2f59!important;
  --color-primary-dark:#5f1f3b!important;
  --color-primary-soft:#f2d2dd!important;
  --color-accent:#b96a7f!important;
  --color-bg:#f8eef2!important;
  --color-surface:#fffafb!important;
  --color-surface-soft:#f3dde5!important;
  --color-text:#321f28!important;
  --color-muted:#765361!important;
  --color-border:#dfbcc9!important;
  --beauty-berry:#9e315d!important;
  --beauty-coral:#e06a7b!important;
}
body{background:linear-gradient(180deg,#fbf1f4 0%,#f7e8ee 100%)!important;color:var(--color-text)!important}
.page-hero,.page-section,.section,.ae-section{color:var(--color-text)}
.content-card,.product-card,.summary-card,.newsletter-card,.ae-step,.ae-for-item,.ae-journey,.account-panel,.checkout-card,.cart-card{background:rgba(255,250,252,.96)!important;border-color:rgba(143,47,89,.18)!important}
.button-primary,.auth-submit,.checkout-button,.newsletter-form button{background:linear-gradient(135deg,#8f2f59,#cf5e78)!important;color:#fff!important}
input,textarea,select{border-color:#d9adbd!important;background:#fffafb!important;color:#321f28!important}
input:focus,textarea:focus,select:focus{border-color:#9e315d!important;box-shadow:0 0 0 4px rgba(158,49,93,.10)!important}
.eyebrow,.ae-kicker,.text-link{color:#9e315d!important}

/* Login — phone first */
.customer-auth-body{background:linear-gradient(160deg,#f6e5eb,#fff8fa)!important}
.customer-auth-page{min-height:100dvh!important}
.customer-auth-content{padding:34px 18px 44px!important;align-items:start!important}
.customer-auth-card{width:min(100%,480px)!important;padding:22px 18px 24px!important;background:rgba(255,250,252,.96)!important;border:1px solid rgba(143,47,89,.18)!important;border-radius:24px!important;box-shadow:0 18px 50px rgba(95,31,59,.12)!important}
.customer-auth-heading{margin-bottom:20px!important}
.customer-auth-heading h2{font-size:clamp(28px,8vw,38px)!important;color:#5f1f3b!important}
.auth-tabs{margin-bottom:20px!important;background:#edd4dd!important}
.auth-tab{min-height:44px!important}
.auth-tab.active{color:#8f2f59!important}
.customer-auth-form{gap:14px!important}
.customer-auth-form .field{gap:6px!important}
.customer-auth-form input{min-height:48px!important;padding:11px 13px!important;border-radius:13px!important}
.password-field input{padding-left:70px!important}
.password-toggle{left:8px!important;min-width:54px!important}
.customer-auth-security{margin-top:18px!important}
@media(max-width:940px){
  .customer-auth-page{display:block!important}
  .customer-auth-visual{min-height:210px!important;padding:22px 20px!important;background-position:center 34%!important}
  .customer-auth-visual-copy{padding:22px 0 8px!important;text-align:center!important;margin:auto!important}
  .customer-auth-visual-copy h1{font-size:34px!important;margin:8px auto 10px!important;line-height:1.15!important}
  .customer-auth-visual-copy p{font-size:13px!important;line-height:1.65!important;margin:auto!important}
  .customer-auth-brand,.customer-auth-back{margin-inline:auto!important}
  .customer-auth-content{min-height:auto!important;margin-top:-18px!important;position:relative!important;z-index:2!important}
}
@media(max-width:480px){
  .customer-auth-visual{min-height:185px!important;padding:17px 14px!important}
  .customer-auth-visual-copy{padding:12px 0 5px!important}
  .customer-auth-visual-copy h1{font-size:29px!important}
  .customer-auth-visual-copy p{font-size:12px!important;max-width:300px!important}
  .customer-auth-content{padding:0 10px 30px!important;margin-top:-12px!important}
  .customer-auth-card{padding:18px 13px 20px!important;border-radius:20px!important}
  .auth-tabs{padding:4px!important;gap:4px!important}
  .auth-tab{font-size:13px!important;padding:0 8px!important}
  .customer-auth-form input{font-size:14px!important}
}

/* Newsletter is the final visual block before footer */
.newsletter-section{margin-top:0!important;padding:64px 0 76px!important;background:linear-gradient(145deg,#8f2f59,#5f1f3b)!important}
.newsletter-card{background:rgba(255,250,252,.97)!important;box-shadow:0 22px 60px rgba(60,19,39,.22)!important}
@media(max-width:600px){
  .newsletter-section{padding:42px 10px 54px!important}
  .newsletter-card{padding:22px 16px!important;border-radius:22px!important}
  .newsletter-form{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .newsletter-form input,.newsletter-form button{width:100%!important;min-height:48px!important}
}


/* ===== Alice final darker palette + premium authentication ===== */
:root {
  --alice-deep-wine: #6d1738;
  --alice-wine: #8f2850;
  --alice-rose: #c84b78;
  --alice-bg-deep: #f2dfe3;
  --alice-bg-soft: #f7e8eb;
  --alice-card: #fff8f9;
  --alice-text: #35151f;
  --alice-muted: #75515d;
  --alice-border: rgba(109, 23, 56, .18);
}
body:not(.admin-body),
.customer-auth-body {
  background: linear-gradient(180deg, #ecd4da 0%, #f4e2e6 48%, #ead0d7 100%) !important;
  color: var(--alice-text) !important;
}
main, .page-shell, .account-shell, .checkout-page, .cart-page {
  --color-bg: #efd9df;
  --color-surface: #fff8f9;
  --color-surface-soft: #f3dce2;
  --color-primary: #8f2850;
  --color-primary-dark: #651832;
  --color-text: #35151f;
  --color-muted: #75515d;
  --color-border: rgba(109, 23, 56, .18);
}
.section, .ae-section, .content-card, .card, .product-card, .review-card,
.newsletter-card, .checkout-card, .cart-summary, .account-card {
  border-color: var(--alice-border) !important;
}
.button-primary, .primary-button, button[type="submit"]:not(.google-signin-button) {
  background: linear-gradient(135deg, #9b2d59, #cf4f7b) !important;
  box-shadow: 0 10px 24px rgba(109, 23, 56, .22) !important;
}
.customer-auth-page {
  min-height: 100svh !important;
  padding: 18px 12px !important;
  align-items: center !important;
}
.customer-auth-card {
  background: rgba(255, 248, 249, .96) !important;
  border: 1px solid rgba(109, 23, 56, .18) !important;
  box-shadow: 0 24px 65px rgba(78, 18, 42, .2) !important;
}
.auth-tabs {
  padding: 5px !important;
  background: #ead0d8 !important;
  border: 1px solid rgba(109, 23, 56, .13) !important;
  border-radius: 16px !important;
  gap: 5px !important;
}
.auth-tab {
  min-height: 43px !important;
  border-radius: 12px !important;
  color: #6f3348 !important;
  font-weight: 800 !important;
}
.auth-tab.active {
  color: #fff !important;
  background: linear-gradient(135deg, #7e2045, #b83c68) !important;
  box-shadow: 0 8px 18px rgba(109, 23, 56, .2) !important;
}
.social-auth-block { margin: 14px 0 12px; }
.google-signin-button {
  width: 100%; min-height: 48px; padding: 10px 16px;
  display: flex; align-items: center; justify-content: center; gap: 11px;
  border: 1px solid rgba(53, 21, 31, .16); border-radius: 14px;
  background: #fff !important; color: #35151f !important;
  font-weight: 800; box-shadow: 0 8px 20px rgba(53, 21, 31, .08);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.google-signin-button:hover { transform: translateY(-1px); border-color: #9b2d59; box-shadow: 0 12px 26px rgba(109, 23, 56, .14); }
.google-signin-button:disabled { opacity: .65; cursor: wait; }
.google-mark { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; background: conic-gradient(from -45deg,#4285f4 0 25%,#34a853 0 50%,#fbbc05 0 75%,#ea4335 0); color:#fff; font:bold 16px Arial; box-shadow: inset 0 0 0 5px #fff; }
.auth-divider { display:flex; align-items:center; gap:10px; margin:12px 0 0; color:#8a6672; font-size:11px; }
.auth-divider::before,.auth-divider::after { content:""; height:1px; flex:1; background:rgba(109,23,56,.14); }
.phone-login-switch .button { min-height: 44px !important; border: 1px solid #a93b64 !important; color: #7b2146 !important; background: #fff3f6 !important; }
.customer-auth-form .field input { background:#fff !important; border:1px solid rgba(109,23,56,.2) !important; min-height:48px !important; }
.customer-auth-form .field input:focus { border-color:#9b2d59 !important; box-shadow:0 0 0 4px rgba(155,45,89,.11) !important; }
@media (max-width: 600px) {
  .customer-auth-page { padding: 0 !important; display:block !important; }
  .customer-auth-visual { min-height: 150px !important; padding: 18px 18px 28px !important; }
  .customer-auth-content { margin-top: -16px !important; padding: 0 10px 18px !important; }
  .customer-auth-card { padding: 17px 12px 16px !important; border-radius: 21px !important; }
  .customer-auth-heading h2 { font-size: 25px !important; margin-bottom: 2px !important; }
  .customer-auth-heading p { font-size: 12px !important; line-height: 1.65 !important; }
  .social-auth-block { margin: 11px 0 10px; }
  .google-signin-button { min-height: 46px; font-size: 12px; }
}
