/* Dolce Amore V39 Estable Pro Deluxe: capa de mejora sobre panel V38 conservado */
:root{--da-vino:#4d1435;--da-vino-2:#2b1320;--da-fresa:#f7256f;--da-rosa:#ffe1ec;--da-crema:#fff8ef;--da-dorado:#f6b73c;--da-choco:#3a1d10;--da-mint:#22c55e;--da-card:rgba(255,255,255,.88);--da-shadow:0 24px 80px rgba(79,20,53,.16);}
body.da-v39-stable-pro{background:radial-gradient(circle at 8% 0%,rgba(255,213,228,.8),transparent 32%),radial-gradient(circle at 93% 18%,rgba(255,238,190,.75),transparent 28%),linear-gradient(135deg,#fff8fb 0%,#fff8ef 100%)!important;color:#261624;}
.da-v39-stable-pro .content-wrapper{background:transparent!important;position:relative;overflow:hidden}.da-v39-stable-pro .content-wrapper:before,.da-v39-stable-pro .content-wrapper:after{content:'🧁';position:fixed;right:7vw;top:120px;font-size:54px;opacity:.08;filter:blur(.2px);animation:daSweetFloat 8s ease-in-out infinite;pointer-events:none}.da-v39-stable-pro .content-wrapper:after{content:'🍪';right:auto;left:290px;top:78%;font-size:48px;animation-delay:1.8s}
@keyframes daSweetFloat{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-16px) rotate(6deg)}}
.da-v39-stable-pro .main-sidebar{background:linear-gradient(180deg,#4b1235 0%,#2b1320 100%)!important;box-shadow:14px 0 40px rgba(47,18,34,.22)!important}.da-v39-stable-pro .brand-link{border-bottom:1px solid rgba(255,255,255,.12)!important}.da-v39-stable-pro .brand-logo-round{width:76px;height:76px;object-fit:cover;border-radius:26px;box-shadow:0 18px 35px rgba(0,0,0,.28),0 0 0 7px rgba(255,255,255,.08)}.da-v39-stable-pro .brand-text{font-family:'Playfair Display',serif;font-size:1.25rem;color:#fff!important}.da-v39-stable-pro .main-header{background:rgba(43,19,32,.94)!important;backdrop-filter:blur(18px);border:0!important;box-shadow:0 18px 50px rgba(43,19,32,.18)}.da-v39-stable-pro .lux-pill{background:linear-gradient(135deg,#ffe5a4,#f6b73c);color:#4b2816;border-radius:999px;padding:.55rem 1rem;font-weight:900;box-shadow:0 12px 24px rgba(246,183,60,.25)}
.da-v39-menu-group{margin:12px 12px 6px}.da-v39-menu-title{display:flex;align-items:center;gap:8px;padding:9px 12px;color:#ffd9a0;text-transform:uppercase;font-size:.72rem;font-weight:900;letter-spacing:.08em;border-top:1px solid rgba(255,255,255,.08)}.da-v39-stable-pro .nav-sidebar>.nav-item>.nav-link{border-radius:16px!important;margin:3px 8px;color:rgba(255,255,255,.83)!important;transition:all .22s ease}.da-v39-stable-pro .nav-sidebar>.nav-item>.nav-link:hover{background:rgba(255,255,255,.11)!important;transform:translateX(4px)}.da-v39-stable-pro .nav-sidebar>.nav-item>.nav-link.active{background:linear-gradient(135deg,#f7256f,#ff8fb1)!important;color:#fff!important;box-shadow:0 14px 34px rgba(247,37,111,.35)}
.da-v39-stable-pro .content-header h1,.da-v39-stable-pro h1,.da-v39-stable-pro h2{font-family:'Playfair Display',serif;color:#321429}.da-v39-stable-pro .lux-page-hero,.da-v39-hero{background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(255,241,247,.88));border:1px solid rgba(247,37,111,.13);border-radius:34px;padding:32px;box-shadow:var(--da-shadow);position:relative;overflow:hidden}.da-v39-hero:after,.da-v39-stable-pro .lux-page-hero:after{content:'🍰';position:absolute;right:24px;bottom:18px;font-size:74px;opacity:.10;transform:rotate(-12deg)}.da-v39-kicker{display:inline-flex;gap:8px;align-items:center;background:#fff0f6;color:#b51652;border:1px solid rgba(247,37,111,.16);padding:8px 14px;border-radius:999px;font-weight:900}.da-v39-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.da-v39-card,.da-v39-stable-pro .card{border:1px solid rgba(247,37,111,.12)!important;border-radius:28px!important;background:var(--da-card)!important;box-shadow:var(--da-shadow)!important;overflow:hidden}.da-v39-card{padding:22px}.da-v39-card .icon{width:54px;height:54px;border-radius:20px;background:linear-gradient(135deg,#fff0c6,#ffc36b);display:grid;place-items:center;color:#6b310b;font-size:24px}.da-v39-card strong{font-size:1.55rem;color:#341629}.da-v39-card span{display:block;color:#7a6071}.btn,.da-v39-btn{border-radius:16px!important;font-weight:800!important}.btn-primary,.da-v39-btn.primary{background:linear-gradient(135deg,#f7256f,#ff7aa7)!important;border:0!important;box-shadow:0 16px 28px rgba(247,37,111,.24)}.btn-warning,.da-v39-btn.gold{background:linear-gradient(135deg,#f6b73c,#ffdc7a)!important;border:0!important;color:#4b2816!important}.form-control,.custom-select,.da-v39-input,.da-v39-select{border-radius:16px!important;border:1px solid rgba(77,20,53,.16)!important;background:#fff!important;padding:.78rem 1rem!important;box-shadow:none!important}.form-control:focus,.da-v39-input:focus,.da-v39-select:focus{border-color:#f7256f!important;box-shadow:0 0 0 .22rem rgba(247,37,111,.12)!important}.modal-content{border-radius:30px!important;border:1px solid rgba(247,37,111,.15)!important;box-shadow:0 30px 90px rgba(77,20,53,.25)!important}.swal2-popup.da-cookie-alert{border-radius:34px!important;background:linear-gradient(145deg,#fff,#fff5ec)!important;border:1px solid rgba(247,37,111,.18)!important;box-shadow:0 30px 90px rgba(77,20,53,.24)!important}.da-cookie-icon{width:86px;height:86px;margin:0 auto 12px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe0a8 0 9%,transparent 10%),radial-gradient(circle at 67% 35%,#7c3f1d 0 7%,transparent 8%),radial-gradient(circle at 45% 63%,#7c3f1d 0 6%,transparent 7%),linear-gradient(135deg,#c8843f,#f0b467);box-shadow:inset -10px -12px 0 rgba(90,39,16,.12),0 16px 30px rgba(127,63,19,.24);position:relative;animation:daCookieBounce 1.15s ease infinite}.da-cookie-icon:before,.da-cookie-icon:after{content:'';position:absolute;background:#53260e;border-radius:20px}.da-cookie-icon:before{width:9px;height:9px;left:28px;top:29px;box-shadow:27px 4px 0 #53260e}.da-cookie-icon:after{width:33px;height:15px;left:27px;bottom:22px;border-radius:0 0 20px 20px;background:transparent;border-bottom:5px solid #53260e}@keyframes daCookieBounce{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-8px) rotate(4deg)}}
.da-address-pin{border:1px dashed rgba(247,37,111,.28);background:linear-gradient(135deg,#fff,#fff7fb);border-radius:24px;padding:16px;margin-top:12px}.da-address-tools{display:flex;gap:10px;flex-wrap:wrap}.da-map-canvas{min-height:260px;border-radius:22px;background:linear-gradient(135deg,#fff4f8,#fff7e7);border:1px solid rgba(77,20,53,.12);overflow:hidden;display:grid;place-items:center;color:#865c75;font-weight:800}.da-pin-ok{display:none;margin-top:10px;padding:10px 14px;border-radius:16px;background:#dcfce7;color:#166534;font-weight:900}.da-pin-ok.show{display:block}.da-results{display:grid;gap:8px;margin-top:10px}.da-result{border:1px solid rgba(77,20,53,.12);background:#fff;border-radius:14px;padding:10px;text-align:left;width:100%;cursor:pointer}.da-result:hover{border-color:#f7256f;background:#fff5fa}.da-quote-builder{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:22px}.da-quote-step{padding:22px;border-radius:28px;background:rgba(255,255,255,.86);border:1px solid rgba(247,37,111,.12);box-shadow:0 18px 50px rgba(77,20,53,.10);margin-bottom:18px}.da-quote-step h3{font-family:'Playfair Display',serif}.da-quote-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.da-quote-preview{position:sticky;top:92px}.da-cake-preview{border-radius:30px;min-height:280px;background:radial-gradient(circle at 50% 20%,#fff 0 16%,transparent 17%),linear-gradient(160deg,#ffd6e6,#fff2b8);display:grid;place-items:center;position:relative;overflow:hidden}.da-cake-preview:before{content:'🎂';font-size:112px;filter:drop-shadow(0 18px 28px rgba(77,20,53,.18));animation:daSweetFloat 5s ease-in-out infinite}.da-total-box{background:linear-gradient(135deg,#4b1235,#2b1320);color:#fff;border-radius:26px;padding:22px}.da-total-box strong{font-size:2rem}.da-login-cookie-bg{position:fixed;inset:0;pointer-events:none;overflow:hidden}.da-floating-cookie{position:absolute;font-size:34px;opacity:.28;animation:daCookieDrift 12s linear infinite}.da-floating-cookie:nth-child(1){left:8%;top:16%;animation-delay:0s}.da-floating-cookie:nth-child(2){left:78%;top:12%;animation-delay:1.5s}.da-floating-cookie:nth-child(3){left:88%;top:70%;animation-delay:3s}.da-floating-cookie:nth-child(4){left:14%;top:76%;animation-delay:4.5s}@keyframes daCookieDrift{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-26px) rotate(18deg)}}
@media(max-width:991px){.da-quote-builder{grid-template-columns:1fr}.da-quote-preview{position:relative;top:auto}.da-quote-form-grid{grid-template-columns:1fr}.da-v39-stable-pro .main-sidebar{margin-left:-250px}.da-v39-stable-pro.sidebar-open .main-sidebar{margin-left:0}.da-v39-stable-pro .content-wrapper{margin-left:0!important}}
.pin-search-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}.pin-map{min-height:260px;border-radius:22px;background:linear-gradient(135deg,#fff4f8,#fff7e7);border:1px solid rgba(77,20,53,.12);overflow:hidden;display:grid;place-items:center;color:#865c75;font-weight:800}.pin-status{margin-top:10px;color:#7a6071;font-weight:800}.dolce-login-premium{background:radial-gradient(circle at 8% 0%,rgba(255,213,228,.8),transparent 30%),radial-gradient(circle at 92% 18%,rgba(255,238,190,.75),transparent 28%),linear-gradient(135deg,#fff8fb 0%,#fff8ef 100%)}.dolce-login-card{position:relative;overflow:hidden;border-radius:34px!important;box-shadow:0 28px 80px rgba(79,20,53,.16)!important}.login-cookie{position:fixed;z-index:0;font-size:42px;opacity:.20;animation:daCookieDrift 12s linear infinite}.cookie-a{left:5%;top:18%}.cookie-b{right:8%;top:16%;animation-delay:2s}.cookie-c{right:12%;bottom:16%;animation-delay:4s}.dolce-login-cookie-badge{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(247,37,111,.16);background:#fff;border-radius:22px;padding:12px 16px;box-shadow:0 18px 40px rgba(79,20,53,.10);margin-top:10px}.dolce-login-cookie-badge span{font-size:32px}.dolce-login-cookie-badge strong,.dolce-login-cookie-badge small{display:block}.dolce-btn-glow{box-shadow:0 18px 34px rgba(247,37,111,.28)!important;position:relative;overflow:hidden}.dolce-btn-glow:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.32),transparent);transform:translateX(-120%);animation:daShine 2.8s ease infinite}@keyframes daShine{60%,100%{transform:translateX(120%)}}

/* V39.2 HOTFIX MODALES / BACKDROPS
   Evita que capas invisibles de sidebar/backdrop/SweetAlert queden encima de formularios.
   Problema corregido: los modales se veían, pero no permitían escribir ni hacer clic. */
body.modal-open.sidebar-open::after,
body.dolce-modal-active.sidebar-open::after{
  display:none!important;
  opacity:0!important;
  pointer-events:none!important;
}
body.dolce-modal-active .main-sidebar{
  pointer-events:none!important;
}
body.dolce-modal-active .main-sidebar .modal,
body.dolce-modal-active .modal{
  pointer-events:auto!important;
}
body .modal,
body .wrapper .modal,
body .content-wrapper .modal{
  position:fixed!important;
  z-index:2050!important;
  pointer-events:auto!important;
}
body .modal.show{display:block!important;}
body .modal-dialog{
  position:relative!important;
  z-index:2055!important;
  pointer-events:auto!important;
}
body .modal-content,
body .modal-content *{
  pointer-events:auto!important;
}
body .modal-backdrop{
  z-index:2040!important;
  pointer-events:auto!important;
}
body .modal-backdrop + .modal-backdrop{
  display:none!important;
  pointer-events:none!important;
}
body .swal2-container{
  z-index:3000!important;
}
body .swal2-container:not(.swal2-backdrop-show):not(.swal2-shown){
  pointer-events:none!important;
}
body.modal-open .da31-sprinkles,
body.modal-open .da-v39-stable-pro .content-wrapper:before,
body.modal-open .da-v39-stable-pro .content-wrapper:after,
body.dolce-modal-active .da31-sprinkles,
body.dolce-modal-active .da-v39-stable-pro .content-wrapper:before,
body.dolce-modal-active .da-v39-stable-pro .content-wrapper:after{
  pointer-events:none!important;
}
body.dolce-modal-active input,
body.dolce-modal-active textarea,
body.dolce-modal-active select,
body.dolce-modal-active button{
  user-select:auto!important;
}
