/* APD 76.0.0 — premium motion, luxury buttons and identity/page polish */

:root{
  --apd76-ink:#111827;
  --apd76-ink-soft:#354052;
  --apd76-gold:#d9b25f;
  --apd76-gold-2:#f3d89a;
  --apd76-blue:#1f6feb;
  --apd76-blue-2:#6ea9ff;
  --apd76-surface:#ffffff;
  --apd76-surface-2:#fbfcff;
  --apd76-border:rgba(17,24,39,.08);
  --apd76-border-strong:rgba(17,24,39,.14);
  --apd76-shadow:0 20px 55px rgba(15,23,42,.10);
  --apd76-shadow-strong:0 28px 80px rgba(15,23,42,.16);
  --apd76-ring:0 0 0 1px rgba(255,255,255,.65) inset,0 14px 34px rgba(15,23,42,.10);
}

html{scroll-behavior:smooth}
body.apd76-premium-ready{--apd-motion:.28s}

@keyframes apd76-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes apd76-glow{0%,100%{box-shadow:var(--apd76-shadow)}50%{box-shadow:0 24px 70px rgba(15,23,42,.14),0 0 0 1px rgba(255,255,255,.6) inset}}
@keyframes apd76-sheen{0%{transform:translateX(-130%) skewX(-18deg)}100%{transform:translateX(230%) skewX(-18deg)}}
@keyframes apd76-pop{0%{transform:scale(.96)}55%{transform:scale(1.06)}100%{transform:scale(1)}}

/* Better general cards / sections */
body.apd76-premium-ready :is(.apd27-profile-card,.apd27-profile-about,.apd27-profile-points,.apd27-profile-reviews,.apd27-profile-listings,.apd16-profile-empty,.apd13-guest-favorite,.apd19-review-hero,.apd52-rating-overview,.apd27-host-card,.apd52-host-info,.apd19-host-strip,.apd52-empty-reviews,.apd52-rules-grid article,.apd52-amenity-grid>div,.apd70-ledger-block,.apd70-payment-card,.apd31-service-dialog,.apd31-message-dialog,.apd-identity-main,.apd-identity-privacy){
  position:relative;
  overflow:hidden;
}

body.apd76-premium-ready :is(.apd27-profile-card,.apd27-profile-about,.apd27-profile-points,.apd27-profile-reviews,.apd27-profile-listings,.apd16-profile-empty,.apd13-guest-favorite,.apd19-review-hero,.apd52-rating-overview,.apd27-host-card,.apd52-host-info,.apd19-host-strip,.apd52-empty-reviews,.apd52-rules-grid article,.apd52-amenity-grid>div,.apd70-ledger-block,.apd70-payment-card,.apd31-service-dialog,.apd31-message-dialog,.apd-identity-main,.apd-identity-privacy)::after{
  content:"";
  position:absolute;
  inset:-1px;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(135deg,rgba(255,255,255,.42) 0%,rgba(255,255,255,0) 22%,rgba(31,111,235,.07) 64%,rgba(217,178,95,.08) 100%);
  opacity:.82;
}

/* Premium buttons */
body.apd76-premium-ready :is(.apd-dark-button,.apd31-contact-button,.apd31-message-button,.apd70-payments-actions a,.apd70-coupon-action a,.apd70-giftcard-action a,.woocommerce-Button,button[type="submit"].button,.button.alt,.button:not(.remove),a.button){
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  min-height:52px!important;
  padding:0 20px!important;
  border-radius:16px!important;
  border:1px solid rgba(17,24,39,.08)!important;
  background:linear-gradient(180deg,#1d4ed8 0%,#155ad8 100%)!important;
  color:#fff!important;
  font-weight:800!important;
  letter-spacing:-.015em!important;
  box-shadow:0 14px 28px rgba(29,78,216,.28), inset 0 1px 0 rgba(255,255,255,.2)!important;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease,background .2s ease!important;
  text-decoration:none!important;
  overflow:hidden!important;
}

body.apd76-premium-ready :is(.apd-dark-button,.apd31-contact-button,.apd31-message-button,.apd70-payments-actions a,.apd70-coupon-action a,.apd70-giftcard-action a,.woocommerce-Button,button[type="submit"].button,.button.alt,.button:not(.remove),a.button)::before{
  content:"";
  position:absolute;
  top:-25%;left:-55%;width:42%;height:150%;
  background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.42) 48%,rgba(255,255,255,0) 100%);
  transform:translateX(-130%) skewX(-18deg);
}

body.apd76-premium-ready :is(.apd-dark-button,.apd31-contact-button,.apd31-message-button,.apd70-payments-actions a,.apd70-coupon-action a,.apd70-giftcard-action a,.woocommerce-Button,button[type="submit"].button,.button.alt,.button:not(.remove),a.button):hover{
  transform:translateY(-2px)!important;
  box-shadow:0 22px 38px rgba(29,78,216,.34), inset 0 1px 0 rgba(255,255,255,.22)!important;
  filter:saturate(1.08)!important;
}
body.apd76-premium-ready :is(.apd-dark-button,.apd31-contact-button,.apd31-message-button,.apd70-payments-actions a,.apd70-coupon-action a,.apd70-giftcard-action a,.woocommerce-Button,button[type="submit"].button,.button.alt,.button:not(.remove),a.button):hover::before{animation:apd76-sheen .85s ease}
body.apd76-premium-ready :is(.apd-dark-button,.apd31-contact-button,.apd31-message-button,.apd70-payments-actions a,.apd70-coupon-action a,.apd70-giftcard-action a,.woocommerce-Button,button[type="submit"].button,.button.alt,.button:not(.remove),a.button):active{transform:translateY(0) scale(.985)!important}

body.apd76-premium-ready :is(.apd31-message-button,.apd70-giftcard-action a,.apd70-coupon-action a,.apd70-payment-card .button,.button.apd-light,.apd-light-button){
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  color:var(--apd76-ink)!important;
  border-color:rgba(17,24,39,.10)!important;
  box-shadow:var(--apd76-ring)!important;
}

/* Identity intro screen fix */
body .apd-account-content .apd-identity-page.apd-identity-intro{
  width:min(1180px,100%)!important;
  margin:0 auto!important;
  padding:18px 6px 72px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,360px)!important;
  gap:34px!important;
  align-items:start!important;
}
body .apd-account-content .apd-identity-main,
body .apd-account-content .apd-identity-privacy{
  background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(248,251,255,.98) 100%)!important;
  border:1px solid var(--apd76-border)!important;
  border-radius:28px!important;
  box-shadow:var(--apd76-shadow)!important;
}
body .apd-account-content .apd-identity-main{padding:38px 38px 42px!important; min-height:460px!important}
body .apd-account-content .apd-identity-privacy{padding:28px 26px!important; position:sticky!important; top:120px!important}
body .apd-account-content .apd-identity-main h2{
  font-size:clamp(38px,4vw,64px)!important;
  line-height:.96!important;
  letter-spacing:-.055em!important;
  max-width:12ch!important;
  color:var(--apd76-ink)!important;
  margin:0 0 18px!important;
}
body .apd-account-content .apd-identity-main p,
body .apd-account-content .apd-identity-privacy p,
body .apd-account-content .apd-identity-privacy a{
  font-size:18px!important;
  line-height:1.7!important;
  color:var(--apd76-ink-soft)!important;
}
body .apd-account-content .apd-identity-privacy h3{
  font-size:26px!important; letter-spacing:-.04em!important; color:var(--apd76-ink)!important; margin-bottom:14px!important;
}
body .apd-account-content .apd-identity-privacy a{
  display:flex!important; align-items:center!important; gap:10px!important; padding:10px 0!important; font-weight:700!important; text-decoration:none!important;
}
body .apd-account-content .apd-identity-privacy a:hover{color:#0f56d9!important; transform:translateX(2px)}
body .apd-account-content .apd-identity-intro-action{margin-top:28px!important}
body .apd-account-content .apd-identity-status{
  margin-top:24px!important; border-radius:20px!important; padding:18px 18px!important; background:linear-gradient(180deg,#ffffff,#f7fbff)!important; border:1px solid rgba(17,24,39,.08)!important;
}

/* Service booking modal premium */
body.apd76-premium-ready .apd31-service-dialog,
body.apd76-premium-ready .apd31-message-dialog{
  border-radius:28px!important;
  border:1px solid rgba(17,24,39,.08)!important;
  box-shadow:0 35px 95px rgba(15,23,42,.24)!important;
  animation:apd76-pop .28s ease both;
}
body.apd76-premium-ready .apd31-service-dialog>header,
body.apd76-premium-ready .apd31-message-dialog>header{
  background:linear-gradient(180deg,#ffffff 0%,#fbfcff 100%)!important;
}
body.apd76-premium-ready .apd31-service-dialog>header h2,
body.apd76-premium-ready .apd31-message-dialog>header h2{font-size:30px!important;letter-spacing:-.045em!important;color:var(--apd76-ink)!important}
body.apd76-premium-ready .apd31-service-dialog>footer,
body.apd76-premium-ready .apd31-message-dialog>footer{background:linear-gradient(180deg,#fff,#f9fbff)!important}
body.apd76-premium-ready .apd74-service-total{
  border-radius:22px!important;
  background:linear-gradient(135deg,rgba(255,249,227,.95) 0%,rgba(255,255,255,.98) 48%,rgba(239,246,255,.98) 100%)!important;
  border:1px solid rgba(217,178,95,.28)!important;
  box-shadow:0 18px 36px rgba(15,23,42,.08)!important;
}
body.apd76-premium-ready .apd74-service-total small{font-size:13px!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:#8b6a2c!important}
body.apd76-premium-ready .apd74-service-total strong{font-size:28px!important;color:var(--apd76-ink)!important;letter-spacing:-.04em!important}
body.apd76-premium-ready .apd74-service-total em{color:#3b82f6!important;font-style:normal!important;font-weight:700!important}

/* Floating/premium favorites */
body.apd76-premium-ready :is(.apd5-favorite,.apd17-favorite-button,.add_fav,.remove_fav){
  width:46px!important;height:46px!important; box-shadow:0 16px 32px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.86)!important;
}
body.apd76-premium-ready :is(.apd5-favorite,.apd17-favorite-button,.add_fav,.remove_fav).apd76-burst{animation:apd76-pop .34s ease}

/* Score / points / rating sections */
body.apd76-premium-ready :is(.apd19-review-hero,.apd52-rating-overview,.apd16-profile-empty,.apd52-empty-reviews){
  border-radius:30px!important;
  padding:34px 34px!important;
}
body.apd76-premium-ready .apd19-review-hero strong,
body.apd76-premium-ready .apd52-rating-overview strong,
body.apd76-premium-ready .apd16-profile-empty strong{color:var(--apd76-ink)!important;letter-spacing:-.04em!important}
body.apd76-premium-ready :is(.apd19-review-hero,.apd52-rating-overview) .fa-star,
body.apd76-premium-ready :is(.apd27-profile-points,.apd19-review-hero,.apd52-rating-overview,.apd27-profile-about) .apd52-icon,
body.apd76-premium-ready :is(.apd52-rules-grid article,.apd52-amenity-grid>div,.apd19-host-strip,.apd27-profile-points) i{
  color:#d1a646!important;
  filter:drop-shadow(0 8px 16px rgba(217,178,95,.18));
}
body.apd76-premium-ready .apd27-badge-grid > * ,
body.apd76-premium-ready .apd27-points-grid > *{
  border-radius:24px!important;
  background:linear-gradient(180deg,#fff,#fbfcff)!important;
  border:1px solid rgba(17,24,39,.08)!important;
  box-shadow:0 14px 28px rgba(15,23,42,.06)!important;
  transition:transform .22s ease, box-shadow .22s ease!important;
}
body.apd76-premium-ready .apd27-badge-grid > *:hover,
body.apd76-premium-ready .apd27-points-grid > *:hover{transform:translateY(-3px)!important;box-shadow:0 22px 38px rgba(15,23,42,.1)!important}

/* Menu icons and utility circles */
body.apd76-premium-ready :is(.apd39-menu-icon,.apd-identity-avatar,.apd-identity-menu-icon,.apd31-service-dialog>header button,.apd31-message-dialog>header button){
  box-shadow:0 12px 24px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.9)!important;
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease!important;
}
body.apd76-premium-ready :is(.apd39-menu-icon,.apd-identity-avatar,.apd-identity-menu-icon,.apd31-service-dialog>header button,.apd31-message-dialog>header button):hover{transform:translateY(-2px)!important;box-shadow:0 18px 34px rgba(15,23,42,.12), inset 0 1px 0 rgba(255,255,255,.95)!important}

/* Links, tabs and small controls */
body.apd76-premium-ready a{transition:color .18s ease, opacity .18s ease, transform .18s ease}
body.apd76-premium-ready .apd70-ledger-meta,
body.apd76-premium-ready .apd52-rules-grid article p,
body.apd76-premium-ready .apd52-amenity-grid>div span,
body.apd76-premium-ready .apd27-profile-about p{color:#667085!important}

/* Search/message helper UI */
body.apd76-premium-ready .apd-ai-chat-wrap,
body.apd76-premium-ready [data-apd-ai-messages]{background:#fff!important}
body.apd76-premium-ready [data-apd-ai-send]{box-shadow:0 12px 24px rgba(16,185,129,.22)!important}

/* Responsive */
@media (max-width: 980px){
  body .apd-account-content .apd-identity-page.apd-identity-intro{grid-template-columns:1fr!important;padding:10px 0 48px!important}
  body .apd-account-content .apd-identity-main{padding:28px 24px 30px!important;min-height:0!important}
  body .apd-account-content .apd-identity-main h2{font-size:clamp(34px,9vw,48px)!important;max-width:none!important}
  body .apd-account-content .apd-identity-privacy{position:relative!important;top:auto!important}
}
@media (max-width: 640px){
  body.apd76-premium-ready :is(.apd-dark-button,.apd31-contact-button,.apd31-message-button,.apd70-payments-actions a,.apd70-coupon-action a,.apd70-giftcard-action a,.woocommerce-Button,button[type="submit"].button,.button.alt,.button:not(.remove),a.button){min-height:50px!important;border-radius:15px!important;padding:0 18px!important}
  body.apd76-premium-ready .apd31-service-dialog>header h2,body.apd76-premium-ready .apd31-message-dialog>header h2{font-size:24px!important}
}
