:root{--pm-blue:#0a69d8;--pm-blue2:#eaf4ff;--pm-dark:#102d56;--pm-text:#19345b;--pm-muted:#6d7f97;--pm-line:#dfe9f4;--pm-bg:#f6fbff;--pm-white:#fff;--pm-shadow:0 10px 30px rgba(23,66,111,.08)}
.petmap-app{width:100vw;max-width:none;position:relative;left:50%;transform:translateX(-50%);margin:0;padding:0 0 70px;background:linear-gradient(180deg,#f7fbff 0,#fff 68%);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--pm-text);box-sizing:border-box;overflow:hidden}.petmap-app *{box-sizing:border-box}.petmap-shell{width:min(1420px,calc(100% - 80px));margin:0 auto}.petmap-topbar{display:flex;align-items:center;justify-content:space-between;padding:26px 8px 14px}.petmap-brand{display:flex;align-items:center;gap:12px;color:var(--pm-dark)}.petmap-brand-mark{width:46px;height:46px;border-radius:15px;background:var(--pm-blue);color:#fff;display:grid;place-items:center;font-size:22px;box-shadow:0 7px 18px rgba(10,105,216,.18)}.petmap-brand strong{font-size:22px}.petmap-mobile-menu{display:none}
.petmap-hero{display:grid;grid-template-columns:minmax(0,1.48fr) minmax(430px,.82fr);gap:18px;margin-top:10px}.petmap-hero-copy,.petmap-uki-hero,.petmap-map-card,.petmap-sidebar,.petmap-card,.petmap-how article,.petmap-contribute,.petmap-score{background:#fff;border:1px solid var(--pm-line);box-shadow:var(--pm-shadow)}.petmap-hero-copy{border-radius:26px;padding:38px 42px 40px;min-height:365px}.petmap-kicker{font-size:10px;color:var(--pm-blue);font-weight:900;letter-spacing:.08em;text-transform:uppercase}.petmap-hero h1{font-size:58px;line-height:1.02;margin:10px 0 10px;color:var(--pm-dark);letter-spacing:-.045em}.petmap-lead{font-size:19px;font-weight:600;margin:0 0 8px}.petmap-copy{font-size:14px;line-height:1.55;color:var(--pm-muted);max-width:690px;margin:0}.petmap-hero-how{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:22px}.petmap-hero-how>div{border:1px solid var(--pm-line);border-radius:15px;background:#f8fbfe;padding:12px 13px;display:flex;flex-direction:column;gap:4px}.petmap-hero-how b{font-size:12px;color:var(--pm-dark)}.petmap-hero-how span{font-size:11px;line-height:1.4;color:var(--pm-muted)}
.petmap-search-row{display:grid;grid-template-columns:minmax(0,1fr) 145px 110px;gap:10px;margin-top:28px}.petmap-searchbox{height:54px;border:1px solid var(--pm-line);border-radius:15px;background:#fff;display:flex;align-items:center;gap:10px;padding:0 15px}.petmap-searchbox span{font-size:23px;color:var(--pm-blue)}.petmap-searchbox input{border:0;outline:0;width:100%;font:inherit;color:var(--pm-dark);background:transparent}.petmap-outline-btn{border:1px solid var(--pm-line);border-radius:15px;background:#fff;color:var(--pm-dark);font-weight:800;cursor:pointer}.petmap-outline-btn:hover{border-color:#9bc9f1;background:#f5fbff}
.petmap-uki-hero{border-radius:26px;min-height:365px;position:relative;overflow:hidden;background:linear-gradient(145deg,#fff 15%,#f4fbff 100%);display:flex;align-items:flex-start;padding:34px 30px}.uki-copy{width:55%;position:relative;z-index:2}.uki-script{font-family:"Brush Script MT","Segoe Script",cursive;font-size:34px;line-height:1;color:#0870df;margin-bottom:12px}.uki-script span{font-family:inherit}.uki-copy>strong{display:block;color:var(--pm-dark);font-size:13px}.uki-copy p{font-size:12px;line-height:1.5;color:var(--pm-muted);margin:9px 0 16px}.petmap-uki-hero>img{position:absolute;right:-5px;bottom:0;height:94%;width:53%;object-fit:contain;object-position:bottom center}.petmap-primary{border:0;border-radius:999px;background:var(--pm-blue);color:#fff;padding:11px 17px;font-weight:900;cursor:pointer;box-shadow:0 8px 18px rgba(10,105,216,.18)}
.petmap-map-section{display:grid;grid-template-columns:minmax(0,1.48fr) minmax(350px,.62fr);gap:18px;margin-top:18px}.petmap-map-card{border-radius:26px;overflow:hidden;min-height:570px}.petmap-map{height:100%;min-height:570px;background:#e9f3fa;position:relative}.petmap-map-fallback{padding:28px;color:var(--pm-muted);font-size:13px}.petmap-sidebar{border-radius:26px;padding:26px;min-height:570px}.sidebar-title{display:flex;justify-content:space-between;gap:12px;align-items:start}.sidebar-title h2{font-size:24px;line-height:1.1;margin:0;color:var(--pm-dark)}.sidebar-title button,.section-head button{border:0;background:none;color:var(--pm-blue);font-weight:900;cursor:pointer;padding:2px}.petmap-category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.petmap-category{border:1px solid var(--pm-line);background:#fff;border-radius:16px;padding:14px 6px;display:flex;flex-direction:column;align-items:center;gap:7px;min-height:82px;cursor:pointer;transition:.15s}.petmap-category span{font-size:24px}.petmap-category small{font-size:11px;text-align:center;line-height:1.15}.petmap-category:hover,.petmap-category.active{background:#e8f5ff;border-color:#8cc6ef;color:var(--pm-blue);font-weight:800}.petmap-side-petfilters{border-top:1px solid var(--pm-line);margin-top:19px;padding-top:16px}.petmap-side-petfilters strong,.petmap-side-location-filters strong{display:block;font-size:12px;margin-bottom:9px}.petmap-side-petfilters>div{display:flex;gap:6px;flex-wrap:wrap}.petmap-petfilter{border:1px solid var(--pm-line);border-radius:999px;background:#fff;color:var(--pm-dark);padding:8px 11px;font-size:11px;font-weight:800;cursor:pointer}.petmap-petfilter.active{background:#e8f5ff;border-color:#8cc6ef;color:var(--pm-blue)}.petmap-side-location-filters{border-top:1px solid var(--pm-line);margin-top:16px;padding-top:14px}.petmap-location-filters{display:grid;grid-template-columns:1fr;gap:7px}.petmap-location-filters select{width:100%;height:40px;border:1px solid var(--pm-line);border-radius:12px;background:#fff;padding:0 10px;color:var(--pm-dark);font:inherit;font-size:12px}.petmap-location-filters select:disabled{background:#f6f9fc;color:#9aabba}.petmap-promo{margin-top:17px;border-radius:19px;padding:17px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;min-height:125px}.petmap-promo-beach{background:linear-gradient(135deg,#edf9ff,#fff5ec)}.petmap-promo-beach b,.petmap-promo-beach strong,.petmap-promo-beach span{display:block}.petmap-promo-beach b{color:var(--pm-blue);font-size:14px}.petmap-promo-beach strong{font-size:16px;margin:3px 0 9px;max-width:190px}.petmap-promo-beach button{border:0;border-radius:999px;background:var(--pm-blue);color:#fff;padding:8px 12px;font-weight:800;cursor:pointer}.promo-visual{font-size:55px}.petmap-promo-uki{background:#eef8ff;min-height:145px}.petmap-promo-uki b,.petmap-promo-uki strong,.petmap-promo-uki span{display:block}.petmap-promo-uki strong{margin-top:3px}.petmap-promo-uki span{color:var(--pm-muted);font-size:11px;line-height:1.35;margin-top:5px}.promo-dog{height:130px;width:105px;align-self:flex-end;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}.promo-dog img{height:145px;width:auto;max-width:none;object-fit:contain;object-position:bottom center}
.petmap-section{margin-top:30px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:13px}.section-head>div{display:flex;align-items:center;gap:7px}.section-head h2{font-size:27px;margin:0;color:var(--pm-dark)}.petmap-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.petmap-card{border-radius:20px;overflow:hidden}.card-image{height:155px;position:relative;display:flex;align-items:center;justify-content:center;font-size:58px;overflow:hidden}.card-image-1{background:linear-gradient(135deg,#d9efff,#fff2df)}.card-image-2{background:linear-gradient(135deg,#f4e9d9,#e9f5ff)}.card-image-3{background:linear-gradient(135deg,#eaf7e9,#dff2ff)}.card-image-4{background:linear-gradient(135deg,#e5efff,#f5e8ff)}.card-rating,.card-score{position:absolute;background:#fff;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800;box-shadow:0 3px 8px rgba(0,0,0,.07)}.card-rating{top:10px;left:10px}.card-score{bottom:10px;left:10px;color:var(--pm-blue)}.card-body{padding:14px 15px 16px}.card-body small{color:var(--pm-blue);font-size:11px}.card-body h3{font-size:16px;margin:4px 0 7px;color:var(--pm-dark)}.card-body p{font-size:12px;color:var(--pm-muted);margin:0 0 10px}.card-badges{display:flex;gap:5px;flex-wrap:wrap}.card-badges b,.card-badges span{font-size:10px;background:#edf7ff;border-radius:999px;padding:5px 7px}.petmap-how{margin-top:30px}.how-title{display:flex;align-items:center;gap:8px;margin-bottom:13px}.how-title h2{margin:0;font-size:25px;color:var(--pm-dark)}.how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.how-grid article{border-radius:18px;padding:18px;display:flex;gap:12px;align-items:flex-start}.how-grid article>span{font-size:30px;color:var(--pm-blue)}.how-grid b{font-size:14px}.how-grid p{font-size:12px;line-height:1.45;color:var(--pm-muted);margin:4px 0 0}.petmap-bottom-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.8fr);gap:18px;margin-top:18px}.petmap-contribute,.petmap-score{border-radius:22px;min-height:190px;padding:24px;display:flex;align-items:center;justify-content:space-between;overflow:hidden}.petmap-contribute h2{font-size:24px;margin:3px 0 7px;color:var(--pm-dark)}.petmap-contribute p,.petmap-score p{color:var(--pm-muted);margin:0 0 14px;line-height:1.45}.contribute-uki{align-self:stretch;width:210px;display:flex;align-items:end;justify-content:end}.contribute-uki img{height:175px;width:auto;max-width:100%;object-fit:contain;object-position:center bottom}.petmap-score h3{margin:0 0 6px;font-size:21px;color:var(--pm-dark)}.petmap-score a{font-size:12px;color:var(--pm-blue);font-weight:800}.score-circle{width:112px;height:112px;border:7px solid #55b98a;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;flex:none;color:#2b8a62}.score-circle strong{font-size:29px}.score-circle span{font-size:10px;font-weight:800}.petmap-empty{padding:30px;border:1px dashed var(--pm-line);border-radius:18px;color:var(--pm-muted);grid-column:1/-1}.petmap-modal{display:none;position:fixed;inset:0;background:rgba(10,30,50,.45);z-index:9999;padding:20px;align-items:center;justify-content:center}.petmap-modal.open{display:flex}.petmap-modal-inner{width:min(560px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:24px;padding:28px;position:relative}.petmap-close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:32px;cursor:pointer}.petmap-modal form{display:grid;gap:14px}.petmap-modal label{display:grid;gap:6px;font-weight:700}.petmap-modal input,.petmap-modal select,.petmap-modal textarea{border:1px solid var(--pm-line);border-radius:12px;padding:12px;font:inherit}.petmap-pet-fieldset{border:1px solid var(--pm-line);border-radius:14px;padding:12px}.petmap-check{display:inline-flex!important;align-items:center;gap:7px;margin-right:14px;font-weight:500!important}.petmap-check input{width:auto}.petmap-form-msg{font-size:13px}.petmap-trekking-fields{display:none;border:1px solid var(--pm-line);border-radius:14px;padding:13px;background:#f8fcff}.petmap-trekking-fields h3{font-size:14px;margin:0 0 10px}
@media(max-width:1100px){.petmap-shell{width:min(100% - 32px,960px)}.petmap-hero{grid-template-columns:1fr}.petmap-uki-hero{min-height:340px}.petmap-map-section{grid-template-columns:1fr}.petmap-sidebar{min-height:auto}.petmap-category-grid{grid-template-columns:repeat(3,1fr)}.petmap-cards{grid-template-columns:repeat(2,1fr)}.how-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.petmap-app{padding-bottom:40px}.petmap-shell{width:100%;padding:0 14px}.petmap-topbar{padding:12px 2px 10px}.petmap-brand strong{font-size:18px}.petmap-brand-mark{width:36px;height:36px}.petmap-mobile-menu{display:block;color:var(--pm-blue);font-size:22px}.petmap-hero{display:flex;flex-direction:column;gap:12px}.petmap-hero-copy{padding:24px 17px 20px;border-radius:20px;min-height:auto}.petmap-hero h1{font-size:37px}.petmap-lead{font-size:15px}.petmap-copy{font-size:12px}.petmap-search-row{grid-template-columns:1fr 1fr;gap:7px;margin-top:18px}.petmap-searchbox{grid-column:1/-1;height:45px}.petmap-outline-btn{height:42px;font-size:11px}.petmap-uki-hero{min-height:280px;padding:22px 16px;border-radius:20px}.uki-copy{width:58%}.uki-script{font-size:25px}.uki-copy p{font-size:11px;line-height:1.4;margin:7px 0 11px}.petmap-primary{padding:9px 12px;font-size:11px}.petmap-uki-hero>img{height:94%;width:55%;right:-6px}.petmap-map-section{margin-top:0;display:flex;flex-direction:column;gap:12px}.petmap-map-card{border-radius:20px;min-height:330px}.petmap-map{min-height:330px;height:330px}.petmap-sidebar{display:block;padding:16px;border-radius:20px}.sidebar-title h2{font-size:20px}.petmap-category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.petmap-category{min-height:76px;padding:10px 5px}.petmap-side-location-filters .petmap-location-filters{grid-template-columns:1fr}.petmap-promo{min-height:115px;margin-top:13px}.petmap-promo-uki{display:flex}.petmap-section{margin-top:22px}.section-head h2{font-size:20px}.petmap-cards{display:flex;overflow:auto;gap:10px;padding-bottom:5px;scroll-snap-type:x mandatory}.petmap-card{min-width:245px;scroll-snap-align:start}.card-image{height:120px}.petmap-how{display:none}.petmap-bottom-grid{grid-template-columns:1fr;margin-top:18px}.petmap-contribute{min-height:150px;padding:18px}.petmap-contribute h2{font-size:19px}.petmap-contribute p{font-size:12px}.contribute-uki{width:120px}.contribute-uki img{height:125px}.petmap-score{min-height:135px;padding:18px}.score-circle{width:86px;height:86px}.score-circle strong{font-size:23px}.petmap-score h3{font-size:18px}.petmap-score p{font-size:12px}.petmap-modal-inner{padding:22px}}

.petmap-add-place-modal{width:min(650px,100%)}
.petmap-modal-kicker{font-size:11px;font-weight:900;color:#0a69d8;letter-spacing:.04em;text-transform:uppercase;margin-bottom:5px}
.petmap-modal-intro{color:var(--pm-muted);font-size:13px;line-height:1.5;margin-top:0}
.petmap-google-place-step{background:#f5faff;border:1px solid #d8eaf8;border-radius:16px;padding:14px}
.petmap-place-search-label{font-size:13px!important}
.petmap-place-search-label input{height:48px;font-size:14px!important;background:#fff}
.petmap-place-hint{font-size:11px;color:var(--pm-muted);margin-top:7px}
.petmap-ok{color:#16823b;font-weight:800}
.petmap-selected-place{display:grid;grid-template-columns:1.05fr 1fr;border:1px solid #dcebf5;border-radius:17px;overflow:hidden;background:#fff;min-height:180px}
.petmap-selected-place-map{min-height:180px;background:#eaf3f8}
.petmap-selected-place-info{padding:16px;display:flex;flex-direction:column;justify-content:center}
.petmap-google-badge{display:inline-flex;align-self:flex-start;background:#eaf7ef;color:#16823b;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:900;margin-bottom:7px}
.petmap-selected-place-info h3{margin:0 0 6px;font-size:18px;color:var(--pm-dark)}
.petmap-selected-place-info p{margin:0 0 9px;color:var(--pm-muted);font-size:12px;line-height:1.4}
.petmap-selected-place-info a{color:var(--pm-blue);font-size:12px;font-weight:800;text-decoration:none}
#petmap-submit-btn:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:700px){.petmap-selected-place{grid-template-columns:1fr}.petmap-selected-place-map{min-height:150px}.petmap-selected-place-info{padding:13px}.petmap-add-place-modal{padding:20px}}

.petmap-category{position:relative}.petmap-category .pm-cat-icon{width:34px;height:34px;border-radius:11px;background:#f7fbff;display:inline-flex;align-items:center;justify-content:center;border:1px solid #e2edf7;position:relative}.petmap-category.active{border-color:#0a69d8;background:#edf7ff;box-shadow:0 0 0 2px rgba(10,105,216,.08)}.petmap-category.active small{color:#0a69d8;font-weight:800}.pm-cat-cafe{color:#8b5e34}.pm-cat-restaurante{color:#f28c28}.pm-cat-hotel{color:#2563eb}.pm-cat-camping{color:#15803d}.pm-cat-parque{color:#16a34a}.pm-cat-playa{color:#0891b2}.pm-cat-canil{color:#db2777}.pm-cat-centro-comercial{color:#7c3aed}.pm-cat-senderos-trekking{color:#b45309}.card-category-icon{width:48px;height:48px;border-radius:15px;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center}.pm-cat-svg{display:block}.petmap-petfilter.active{background:#eaf5ff;border-color:#0a69d8;color:#0a69d8;font-weight:800}.petmap-location-filters select:not(:disabled):focus{border-color:#0a69d8;box-shadow:0 0 0 2px rgba(10,105,216,.08);outline:none}

.petmap-category .pm-cat-icon img{width:26px;height:26px;object-fit:contain;display:block}.petmap-category .pm-cat-icon{display:flex;align-items:center;justify-content:center}

.petmap-my-location{width:42px;height:42px;border:0;border-radius:10px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.22);cursor:pointer;color:#0a69d8;font-size:25px;display:flex;align-items:center;justify-content:center;margin:10px}.petmap-my-location:hover{background:#f4f8ff}.petmap-my-location.is-loading{opacity:.55;cursor:wait}.petmap-my-location span{line-height:1;display:block;transform:translateY(-1px)}

/* PetMap 0.8.12 */
.petmap-hero-copy{min-height:315px}.petmap-hero-copy{padding-bottom:30px}
.petmap-uki-category-card{margin-top:17px;border-radius:19px;min-height:175px;background:linear-gradient(135deg,#edf8ff 0%,#fff7ee 100%);display:flex;align-items:stretch;justify-content:space-between;overflow:hidden;border:1px solid #e2edf7;position:relative}
.petmap-uki-category-copy{padding:18px 15px 17px;display:flex;flex-direction:column;justify-content:center;min-width:0;position:relative;z-index:2}
.petmap-uki-category-kicker{font-size:11px;color:var(--pm-blue);font-weight:900;margin-bottom:4px}
.petmap-uki-category-copy strong{font-size:16px;line-height:1.2;color:var(--pm-dark);margin-bottom:5px}
.petmap-uki-category-copy>span:not(.petmap-uki-category-kicker){font-size:11px;line-height:1.35;color:var(--pm-muted);margin-bottom:11px}
.petmap-uki-category-copy .petmap-primary{align-self:flex-start;padding:8px 12px;font-size:11px}
.petmap-uki-category-visual{width:47%;min-width:130px;display:flex;align-items:flex-end;justify-content:flex-end;overflow:hidden}
.petmap-uki-category-visual img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.petmap-score-note{font-size:11px;color:var(--pm-muted);display:block}
.petmap-score .score-circle{border-color:#0a69d8;color:#0a69d8}
.petmap-score .score-circle strong{font-size:22px}
@media(max-width:700px){.petmap-hero-copy{min-height:auto}.petmap-uki-category-card{min-height:145px}.petmap-uki-category-copy{padding:14px 12px}.petmap-uki-category-copy strong{font-size:14px}.petmap-uki-category-copy>span:not(.petmap-uki-category-kicker){font-size:10px}.petmap-uki-category-visual{width:43%;min-width:112px}}

@media(max-width:700px){.petmap-hero-how{grid-template-columns:1fr;gap:7px;margin-top:16px}.petmap-hero-how>div{padding:9px 11px}.petmap-hero-how span{font-size:10px}}

/* PetMap 0.8.14 — UX base */
.petmap-search-row{display:none!important}
.petmap-section{display:none!important}
.petmap-bottom-grid{display:block;margin-top:22px}
.petmap-score-explainer{width:100%;min-height:210px;border-radius:22px;padding:28px 30px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:linear-gradient(135deg,#f4fcf8 0%,#ffffff 58%,#f5fbff 100%);border:1px solid #dcefe5;box-shadow:var(--pm-shadow);box-sizing:border-box}
.petmap-score-copy{max-width:760px}
.petmap-score-kicker{display:block;font-size:11px;color:#2b8a62;font-weight:900;letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px}
.petmap-score-explainer h3{margin:0 0 7px;font-size:24px;color:var(--pm-dark)}
.petmap-score-explainer p{margin:0 0 10px;color:var(--pm-muted);line-height:1.5}
.petmap-score-note{display:block;font-size:11px;color:#6d7b88}
.petmap-score-demo{min-width:190px;text-align:center;border-left:1px solid #dcefe5;padding-left:28px;color:#2b8a62}
.petmap-stars{display:flex;justify-content:center;gap:2px;font-size:22px;line-height:1;color:#36a56f;letter-spacing:0}
.petmap-score-demo strong{display:block;font-size:28px;line-height:1.1;margin-top:7px;color:#2b8a62}
.petmap-score-demo small{display:block;font-size:11px;font-weight:800;color:#2b8a62;margin-top:3px}
.petmap-map-rate-btn{margin-top:10px;border:0;border-radius:999px;background:#0a69d8;color:#fff;padding:8px 12px;font:700 12px Arial,sans-serif;cursor:pointer}
.petmap-map-rate-btn:hover{background:#075ab9}
.petmap-review-modal-inner{width:min(520px,100%)}
.petmap-review-question{font-weight:800;color:var(--pm-dark);margin:12px 0 14px}
.petmap-review-stars{display:flex;justify-content:center;gap:5px;padding:8px 0 5px}
.petmap-review-star{border:0;background:transparent;color:#cbd5df;font-size:38px;line-height:1;padding:0 2px;cursor:pointer;transition:transform .12s,color .12s}
.petmap-review-star:hover,.petmap-review-star.selected{color:#36a56f;transform:translateY(-1px)}
.petmap-review-star:focus-visible{outline:2px solid #0a69d8;outline-offset:3px;border-radius:5px}
.petmap-review-scale{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:var(--pm-muted);margin-bottom:14px}
#petmap-review-comment{width:100%;box-sizing:border-box;border:1px solid var(--pm-line);border-radius:12px;padding:12px;font:inherit;resize:vertical;margin-bottom:12px}
.petmap-review-modal-inner .petmap-primary{width:100%}

@media(max-width:700px){
 .petmap-score-explainer{min-height:190px;padding:20px;display:flex;flex-direction:column;align-items:flex-start;gap:18px}
 .petmap-score-explainer h3{font-size:19px}
 .petmap-score-explainer p{font-size:12px}
 .petmap-score-demo{width:100%;border-left:0;border-top:1px solid #dcefe5;padding:15px 0 0}
 .petmap-stars{font-size:20px}
 .petmap-review-star{font-size:32px}
 .petmap-review-scale{font-size:10px}
}


/* PetMap 0.8.15 — bienvenida Uki + responsabilidad + evaluación 1–5 */
.petmap-hero-copy{display:flex;flex-direction:column;justify-content:center}
.petmap-responsible-box{margin-top:22px;display:flex;gap:12px;align-items:flex-start;border:1px solid #dcefe5;background:linear-gradient(135deg,#f1fbf5,#f8fcff);border-radius:18px;padding:16px 17px;max-width:720px}
.petmap-responsible-icon{width:38px;height:38px;flex:none;border-radius:12px;background:#0a69d8;color:#fff;display:grid;place-items:center;font-size:20px;box-shadow:0 5px 12px rgba(10,105,216,.15)}
.petmap-responsible-box strong{display:block;color:var(--pm-dark);font-size:14px;margin-bottom:4px}
.petmap-responsible-box p{margin:0;color:var(--pm-muted);font-size:12px;line-height:1.5}
.petmap-uki-hero{background:linear-gradient(145deg,#fff 12%,#edf8ff 100%)}
.uki-map-badge{display:flex}
.uki-mini-map{display:grid}
.uki-map-badge{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid #dbeaf5;border-radius:15px;padding:9px 11px;box-shadow:0 5px 16px rgba(23,66,111,.08);max-width:210px}
.uki-map-badge b{display:block;color:var(--pm-dark);font-size:11px}
.uki-map-badge small{display:block;color:var(--pm-muted);font-size:10px;margin-top:2px}
.uki-mini-map{width:31px;height:31px;border-radius:9px;background:#eaf4ff;place-items:center;font-size:17px}
.petmap-score-explainer{background:linear-gradient(135deg,#effaf3 0%,#ffffff 65%,#f5fbff 100%);border-color:#cfead9}
.petmap-score-kicker{color:#238653}
.petmap-score-demo{color:#238653}
.petmap-stars{color:#2ca85f}
.petmap-score-demo strong,.petmap-score-demo small{color:#238653}
.petmap-review-star:hover,.petmap-review-star.selected{color:#2ca85f}
.petmap-review-question{font-size:15px}

@media(max-width:700px){
 .petmap-hero-copy{padding:24px 17px 22px}
 .petmap-responsible-box{margin-top:16px;padding:13px}
 .petmap-responsible-icon{width:34px;height:34px;font-size:17px}
 .petmap-responsible-box strong{font-size:12px}
 .petmap-responsible-box p{font-size:10.5px}
 .petmap-uki-hero{min-height:300px;padding:22px 16px}
 .uki-copy{width:62%;z-index:3}
 .uki-map-badge{max-width:175px;padding:8px 9px}
 .petmap-uki-hero>img{height:92%;width:58%;right:-8px}
 .petmap-score-explainer{min-height:205px;padding:19px}
 .petmap-score-demo{padding-top:14px}
 .petmap-stars{font-size:22px}
 .petmap-review-star{font-size:34px}
}

/* PetMap 0.8.16 — maqueta visual consolidada */
.petmap-hero-v16{grid-template-columns:minmax(0,1.35fr) minmax(420px,.85fr);gap:0;margin-top:0;border-radius:26px;overflow:hidden;background:#fff;border:1px solid var(--pm-line);box-shadow:var(--pm-shadow)}
.petmap-hero-v16 .petmap-hero-copy{border:0;border-radius:0;box-shadow:none;min-height:350px;padding:38px 42px;background:linear-gradient(135deg,#fff 0%,#f8fcff 100%)}
.petmap-hero-v16 .petmap-hero-copy-inner{max-width:700px}
.petmap-hero-v16 h1{font-size:58px;margin:0 0 10px}
.petmap-hero-v16 .petmap-lead{font-size:19px;margin-bottom:10px}
.petmap-hero-v16 .petmap-copy{font-size:14px;max-width:650px}
.petmap-responsible-box{max-width:650px;margin-top:20px;padding:14px 16px;background:linear-gradient(135deg,#eaf7ff,#f3fbf6);border-color:#d7e9f5}
.petmap-responsible-box strong{font-size:14px}
.petmap-responsible-box p{font-size:11.5px}
.petmap-uki-hero-v16{border:0!important;border-radius:0!important;box-shadow:none!important;min-height:350px!important;padding:30px 26px!important;background:linear-gradient(135deg,#eef8ff 0%,#fff 100%)!important}
.petmap-uki-hero-v16:before{content:"";position:absolute;inset:auto -80px -130px auto;width:330px;height:330px;background:radial-gradient(circle,#dff2ff 0%,rgba(223,242,255,0) 70%);pointer-events:none}
.petmap-uki-hero-v16 .uki-copy{width:52%}
.petmap-uki-hero-v16>img{height:98%;width:59%;right:-14px}
.petmap-map-section-v16{grid-template-columns:minmax(0,1.35fr) minmax(370px,.65fr);gap:18px;margin-top:18px}
.petmap-map-section-v16 .petmap-map-card{min-height:570px}
.petmap-map-section-v16 .petmap-sidebar{min-height:570px;padding:22px}
.petmap-map-section-v16 .sidebar-title h2{font-size:21px}
.petmap-map-section-v16 .petmap-category-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px}
.petmap-map-section-v16 .petmap-category{min-height:76px;padding:11px 5px;border-radius:14px}
.petmap-map-section-v16 .petmap-side-petfilters{margin-top:15px;padding-top:13px}
.petmap-map-section-v16 .petmap-side-location-filters{margin-top:13px;padding-top:12px}
.petmap-map-section-v16 .petmap-location-filters select{height:38px;border-radius:11px}
.petmap-bottom-grid-v16{display:block;margin-top:18px}
.petmap-bottom-grid-v16 .petmap-score-explainer{min-height:150px;padding:20px 26px;display:grid;grid-template-columns:80px minmax(0,1.25fr) 240px minmax(170px,.6fr);gap:20px;align-items:center;border-radius:22px;background:linear-gradient(90deg,#effaf3,#fff 55%,#eefbf1);border-color:#cfead9}
.petmap-score-paw{width:64px;height:64px;border-radius:50%;background:#dff5e7;display:grid;place-items:center;font-size:30px}
.petmap-score-kicker{font-size:18px;color:var(--pm-dark);text-transform:none;letter-spacing:0;margin-bottom:5px}
.petmap-score-explainer h3{font-size:15px;margin:0 0 4px;color:var(--pm-dark)}
.petmap-score-explainer p{font-size:11px;line-height:1.4;margin:0;color:var(--pm-muted)}
.petmap-score-demo{min-width:0;border-left:1px solid #cfead9;padding-left:20px;text-align:left;color:#238653}
.petmap-score-label{display:block;font-size:11px;font-weight:900;color:var(--pm-dark);margin-bottom:4px}
.petmap-score-demo .petmap-stars{justify-content:flex-start;font-size:25px;color:#2ca85f;gap:1px}
.petmap-score-value{display:flex;align-items:center;gap:8px;margin-top:5px}
.petmap-score-demo strong{font-size:22px;color:var(--pm-dark);margin:0}
.petmap-score-demo small{font-size:10px;background:#36a85f;color:#fff;border-radius:999px;padding:4px 8px;margin:0}
.petmap-score-responsible{border-left:1px solid #cfead9;padding-left:18px;color:#28754c;font-size:11px;line-height:1.4}
.petmap-score-responsible strong{display:block;color:#237044;margin-bottom:3px}
.petmap-score-responsible span{display:block}

/* categorías nuevas */
.pm-cat-supermercado,.pm-cat-supermercados{color:#f0a400}
.pm-cat-plaza,.pm-cat-plazas{color:#183d6b}
.pm-cat-transporte{color:#7c3aed}

@media(max-width:900px){
 .petmap-shell{width:min(100% - 28px,720px)}
 .petmap-hero-v16{grid-template-columns:1fr}
 .petmap-hero-v16 .petmap-hero-copy{min-height:auto;padding:30px 26px}
 .petmap-uki-hero-v16{min-height:300px!important}
 .petmap-map-section-v16{grid-template-columns:1fr}
 .petmap-map-section-v16 .petmap-map-card,.petmap-map-section-v16 .petmap-map,.petmap-map-section-v16 .petmap-sidebar{min-height:0}
 .petmap-map-section-v16 .petmap-map-card,.petmap-map-section-v16 .petmap-map{height:520px}
 .petmap-map-section-v16 .petmap-sidebar{padding:20px}
 .petmap-bottom-grid-v16 .petmap-score-explainer{grid-template-columns:62px 1fr;gap:14px}
 .petmap-score-demo{grid-column:1/-1;border-left:0;border-top:1px solid #cfead9;padding:14px 0 0}
 .petmap-score-responsible{grid-column:1/-1;border-left:0;border-top:1px solid #cfead9;padding:12px 0 0}
}
@media(max-width:600px){
 .petmap-shell{width:100%}
 .petmap-hero-v16{border-radius:0;border-left:0;border-right:0}
 .petmap-hero-v16 .petmap-hero-copy{padding:25px 18px}
 .petmap-hero-v16 h1{font-size:39px}
 .petmap-hero-v16 .petmap-lead{font-size:16px}
 .petmap-hero-v16 .petmap-copy{font-size:12px}
 .petmap-responsible-box{padding:12px;margin-top:15px}
 .petmap-responsible-box strong{font-size:12px}
 .petmap-responsible-box p{font-size:10px}
 .petmap-uki-hero-v16{min-height:265px!important;padding:20px 17px!important}
 .petmap-uki-hero-v16 .uki-copy{width:58%}
 .petmap-uki-hero-v16>img{width:61%;height:94%;right:-12px}
 .petmap-uki-hero-v16 .uki-script{font-size:28px}
 .petmap-map-section-v16{margin-top:12px;gap:12px}
 .petmap-map-section-v16 .petmap-map-card,.petmap-map-section-v16 .petmap-map{height:420px}
 .petmap-map-section-v16 .petmap-sidebar{border-radius:20px;padding:16px}
 .petmap-map-section-v16 .petmap-category-grid{grid-template-columns:repeat(3,1fr)}
 .petmap-bottom-grid-v16{margin-top:12px}
 .petmap-bottom-grid-v16 .petmap-score-explainer{border-radius:20px;padding:17px;grid-template-columns:50px 1fr}
 .petmap-score-paw{width:50px;height:50px;font-size:24px}
 .petmap-score-kicker{font-size:16px}
 .petmap-score-explainer h3{font-size:13px}
 .petmap-score-explainer p{font-size:10px}
 .petmap-score-demo .petmap-stars{font-size:22px}
}


/* PetMap 0.8.17 — frontend final basado en maqueta aprobada */
.petmap-app{width:100vw!important;max-width:none!important;position:relative!important;left:50%!important;transform:translateX(-50%)!important;margin-left:0!important;margin-right:0!important}
.petmap-shell{width:min(1420px,calc(100% - 48px))!important;margin-left:auto!important;margin-right:auto!important}
.petmap-hero-v16{grid-template-columns:minmax(0,1.35fr) minmax(420px,.85fr)!important;min-height:350px}
.petmap-hero-v16 .petmap-hero-copy{padding:38px 42px!important}
.petmap-hero-v16 h1{font-size:58px!important}
.petmap-hero-v16 .petmap-lead{font-size:19px!important}
.petmap-hero-v16 .petmap-copy{font-size:14px!important}
.petmap-uki-hero-v16{position:relative!important;display:flex!important;align-items:flex-start!important;overflow:hidden!important}
.petmap-uki-hero-v16 .uki-copy{width:47%!important;padding-top:4px;z-index:5}
.petmap-uki-hero-v16 .uki-script,.petmap-uki-hero-v16 .uki-map-badge{display:none!important}
.petmap-uki-hero-v16 .uki-speech{display:inline-block;background:#fff;border:1px solid #d9eaf6;border-radius:22px 22px 22px 7px;padding:13px 15px;color:#0870df;font-family:"Brush Script MT","Segoe Script",cursive;font-size:29px;line-height:1.05;box-shadow:0 8px 22px rgba(23,66,111,.08);position:relative}
.petmap-uki-hero-v16 .uki-speech:after{content:"";position:absolute;left:16px;bottom:-9px;border-width:9px 9px 0 0;border-style:solid;border-color:#d9eaf6 transparent transparent transparent}
.petmap-uki-hero-v16 .uki-speech span{font-family:inherit}
.petmap-uki-hero-v16 .uki-speech small{display:block;font-family:Inter,system-ui,sans-serif;font-size:11px;line-height:1.25;font-weight:800;color:#102d56;margin-top:5px}
.petmap-uki-hero-v16 .uki-copy>p{font-size:11px;line-height:1.45;max-width:190px;margin:18px 0 0;color:#6d7f97}
.petmap-uki-hero-v16>img{height:100%!important;width:63%!important;right:-22px!important;bottom:-2px!important;z-index:2}
.uki-map-prop{position:absolute;z-index:6;right:27%;bottom:26px;width:92px;height:66px;background:#fff;border:2px solid #d9eaf6;border-radius:7px 7px 14px 7px;box-shadow:0 7px 15px rgba(23,66,111,.12);transform:rotate(-8deg);overflow:hidden}
.uki-map-prop:after{content:"";position:absolute;left:0;right:0;bottom:-12px;width:16px;height:28px;margin:auto;background:#c89462;border-radius:0 0 8px 8px;transform:rotate(18deg)}
.uki-map-prop-title{position:absolute;left:6px;top:5px;font:900 7px Inter,system-ui,sans-serif;color:#0a69d8;letter-spacing:.06em}
.uki-map-prop-road{position:absolute;height:3px;background:#9fd4e9;border-radius:3px;transform-origin:left center}
.uki-map-prop-road.r1{width:75px;left:9px;top:26px;transform:rotate(12deg)}
.uki-map-prop-road.r2{width:65px;left:15px;top:45px;transform:rotate(-21deg)}
.uki-map-prop-road.r3{width:48px;left:43px;top:14px;transform:rotate(77deg)}
.uki-map-prop-pin{position:absolute;left:58px;top:27px;width:16px;height:16px;border-radius:50% 50% 50% 0;background:#e94747;color:#fff;font-size:0;transform:rotate(-45deg);box-shadow:0 2px 5px rgba(0,0,0,.12)}
.uki-map-prop-pin:after{content:"";position:absolute;inset:5px;background:#fff;border-radius:50%}
.petmap-uki-category-kicker{font-size:10px!important;text-transform:none!important;letter-spacing:0!important}
.petmap-uki-category-card{margin-top:17px!important}
.petmap-bottom-grid-v16 .petmap-score-explainer{min-height:150px!important}

@media(max-width:900px){
 .petmap-shell{width:min(100% - 28px,720px)!important}
 .petmap-hero-v16{grid-template-columns:1fr!important}
 .petmap-uki-hero-v16{min-height:310px!important}
 .petmap-uki-hero-v16 .uki-copy{width:46%!important}
 .petmap-uki-hero-v16>img{width:68%!important;right:-18px!important}
 .uki-map-prop{right:25%;bottom:22px}
}
@media(max-width:600px){
 .petmap-shell{width:100%!important}
 .petmap-hero-v16{border-radius:0!important}
 .petmap-hero-v16 .petmap-hero-copy{padding:25px 18px!important}
 .petmap-hero-v16 h1{font-size:39px!important}
 .petmap-uki-hero-v16{min-height:285px!important;padding:20px 17px!important}
 .petmap-uki-hero-v16 .uki-copy{width:55%!important}
 .petmap-uki-hero-v16 .uki-speech{font-size:25px;padding:11px 12px}
 .petmap-uki-hero-v16>img{width:66%!important;height:96%!important;right:-10px!important}
 .uki-map-prop{width:76px;height:55px;right:24%;bottom:18px}
}


/* ================================================================
   PetMap 0.8.18 — APPROVED MOCKUP LAYOUT
   The frontend is intentionally rebuilt around the supplied mockup:
   full-width canvas, hero + Uki, map/sidebar, contribution card,
   and 1–5 Petfriendly evaluation. This block overrides legacy UX.
   ================================================================ */
.petmap-app{
  position:relative!important;
  width:100vw!important;
  max-width:none!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:0!important;
  padding:24px 0 56px!important;
  background:linear-gradient(180deg,#f3faff 0%,#ffffff 76%)!important;
  overflow:visible!important;
}
.petmap-shell{
  width:min(1480px,calc(100vw - 48px))!important;
  max-width:none!important;
  margin:0 auto!important;
}
.petmap-hero-v16{
  display:grid!important;
  grid-template-columns:minmax(0,1.55fr) minmax(410px,.85fr)!important;
  gap:0!important;
  min-height:330px!important;
  margin:0!important;
  border-radius:24px!important;
  overflow:hidden!important;
  border:1px solid #dce9f4!important;
  box-shadow:0 10px 30px rgba(23,66,111,.08)!important;
  background:#fff!important;
}
.petmap-hero-v16 .petmap-hero-copy{
  min-height:330px!important;
  padding:38px 44px!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:linear-gradient(135deg,#ffffff 0%,#f8fcff 72%,#eef8ff 100%)!important;
}
.petmap-hero-v16 h1{font-size:56px!important;line-height:1.02!important;letter-spacing:-.045em!important;margin:0 0 9px!important}
.petmap-hero-v16 .petmap-lead{font-size:19px!important;font-weight:700!important;margin:0 0 8px!important}
.petmap-hero-v16 .petmap-copy{font-size:14px!important;line-height:1.5!important;max-width:680px!important}
.petmap-responsible-box{max-width:680px!important;margin-top:20px!important;border-radius:18px!important;padding:14px 16px!important}
.petmap-responsible-box p{font-size:11.5px!important;line-height:1.45!important}
.petmap-uki-hero-v16{
  min-height:330px!important;
  height:330px!important;
  padding:26px 24px!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:
    radial-gradient(circle at 82% 28%,rgba(255,255,255,.96) 0 15%,rgba(255,255,255,0) 34%),
    linear-gradient(135deg,#dff3ff 0%,#f7fbff 48%,#cfe9f8 100%)!important;
}
.petmap-uki-hero-v16:before{
  content:""!important;position:absolute!important;inset:auto -80px -180px auto!important;width:480px!important;height:480px!important;
  background:radial-gradient(circle,#9ed7ee 0%,rgba(158,215,238,0) 68%)!important;pointer-events:none!important;
}
.petmap-uki-hero-v16 .uki-copy{width:44%!important;padding-top:2px!important;z-index:6!important}
.petmap-uki-hero-v16 .uki-speech{font-size:28px!important;padding:12px 14px!important;border-radius:22px 22px 22px 7px!important}
.petmap-uki-hero-v16 .uki-speech small{font-size:10.5px!important}
.petmap-uki-hero-v16 .uki-copy>p{font-size:11px!important;line-height:1.45!important;max-width:190px!important;margin:17px 0 0!important}
.petmap-uki-hero-v16>img{height:108%!important;width:66%!important;right:-18px!important;bottom:-8px!important;z-index:4!important;object-fit:contain!important;object-position:bottom center!important}
.uki-map-prop{right:27%!important;bottom:28px!important;z-index:8!important}
.petmap-map-section-v16{
  display:grid!important;
  grid-template-columns:minmax(0,1.42fr) minmax(380px,.58fr)!important;
  gap:18px!important;
  margin-top:18px!important;
}
.petmap-map-section-v16 .petmap-map-card{height:570px!important;min-height:570px!important;border-radius:24px!important}
.petmap-map-section-v16 .petmap-map{height:570px!important;min-height:570px!important}
.petmap-map-section-v16 .petmap-sidebar{height:570px!important;min-height:570px!important;padding:20px!important;border-radius:24px!important;overflow:hidden!important}
.petmap-map-section-v16 .sidebar-title h2{font-size:21px!important}
.petmap-map-section-v16 .petmap-category-grid{grid-template-columns:repeat(3,1fr)!important;gap:8px!important;margin-top:14px!important}
.petmap-map-section-v16 .petmap-category{min-height:76px!important;padding:9px 4px!important;border-radius:13px!important}
.petmap-map-section-v16 .petmap-category .pm-cat-icon{width:32px!important;height:32px!important}
.petmap-map-section-v16 .petmap-category small{font-size:10.5px!important}
.petmap-map-section-v16 .petmap-side-petfilters{margin-top:13px!important;padding-top:12px!important}
.petmap-map-section-v16 .petmap-side-location-filters{margin-top:12px!important;padding-top:11px!important}
.petmap-map-section-v16 .petmap-location-filters select{height:37px!important;border-radius:10px!important}
.petmap-map-section-v16 .petmap-uki-category-card{margin-top:13px!important;min-height:124px!important;border-radius:17px!important}
.petmap-map-section-v16 .petmap-uki-category-copy{padding:13px!important}
.petmap-map-section-v16 .petmap-uki-category-copy strong{font-size:15px!important}
.petmap-map-section-v16 .petmap-uki-category-copy>span:not(.petmap-uki-category-kicker){font-size:10px!important}
.petmap-map-section-v16 .petmap-uki-category-visual{width:40%!important;min-width:112px!important}
.petmap-bottom-grid-v16{display:block!important;margin-top:18px!important}
.petmap-bottom-grid-v16 .petmap-score-explainer{
  min-height:145px!important;padding:20px 28px!important;border-radius:22px!important;
  display:grid!important;grid-template-columns:72px minmax(0,1.25fr) 250px minmax(180px,.6fr)!important;
  gap:18px!important;align-items:center!important;
  background:linear-gradient(90deg,#edf9f1 0%,#ffffff 57%,#eefaf2 100%)!important;
  border:1px solid #cfead9!important;box-shadow:0 8px 26px rgba(30,110,70,.07)!important;
}
.petmap-score-paw{width:58px!important;height:58px!important;font-size:28px!important;background:#dff5e7!important}
.petmap-score-kicker{font-size:17px!important;color:#1f7f4f!important;text-transform:none!important;letter-spacing:0!important}
.petmap-score-explainer h3{font-size:14px!important;margin:0 0 4px!important}
.petmap-score-explainer p{font-size:11px!important;line-height:1.4!important;margin:0!important}
.petmap-score-demo{min-width:0!important;border-left:1px solid #cfead9!important;padding-left:18px!important}
.petmap-score-demo .petmap-stars{justify-content:flex-start!important;font-size:24px!important;color:#2ca85f!important}
.petmap-score-demo strong{font-size:21px!important;color:#1f7f4f!important}
.petmap-score-demo small{font-size:10px!important;background:#35a75f!important;color:#fff!important;border-radius:999px!important;padding:4px 8px!important}
.petmap-score-responsible{border-left:1px solid #cfead9!important;padding-left:18px!important;font-size:10.5px!important;color:#28754c!important}

/* category icon colors */
.pm-cat-cafe{color:#8b5e34!important}.pm-cat-restaurante{color:#ef4444!important}.pm-cat-hotel{color:#2563eb!important}.pm-cat-camping{color:#15803d!important}.pm-cat-parque{color:#16a34a!important}.pm-cat-playa,.pm-cat-playas-rios{color:#0891b2!important}.pm-cat-canil{color:#f97316!important}.pm-cat-centro-comercial{color:#7c3aed!important}.pm-cat-senderos-trekking{color:#92400e!important}.pm-cat-supermercado,.pm-cat-supermercados{color:#f59e0b!important}.pm-cat-plaza,.pm-cat-plazas{color:#183d6b!important}.pm-cat-transporte{color:#2563eb!important}

@media(max-width:1100px){
 .petmap-shell{width:min(100vw - 28px,900px)!important}
 .petmap-hero-v16{grid-template-columns:1fr!important}
 .petmap-uki-hero-v16{height:300px!important;min-height:300px!important}
 .petmap-map-section-v16{grid-template-columns:1fr!important}
 .petmap-map-section-v16 .petmap-map-card,.petmap-map-section-v16 .petmap-map{height:500px!important;min-height:500px!important}
 .petmap-map-section-v16 .petmap-sidebar{height:auto!important;min-height:0!important;overflow:visible!important}
 .petmap-bottom-grid-v16 .petmap-score-explainer{grid-template-columns:64px 1fr 220px!important}
 .petmap-score-responsible{grid-column:1/-1;border-left:0;border-top:1px solid #cfead9;padding:12px 0 0!important}
}
@media(max-width:600px){
 .petmap-app{margin-left:calc(50% - 50vw)!important;padding-top:0!important}
 .petmap-shell{width:100vw!important}
 .petmap-hero-v16{border-radius:0!important}
 .petmap-hero-v16 .petmap-hero-copy{padding:25px 18px!important;min-height:0!important}
 .petmap-hero-v16 h1{font-size:38px!important}
 .petmap-hero-v16 .petmap-lead{font-size:16px!important}
 .petmap-hero-v16 .petmap-copy{font-size:12px!important}
 .petmap-responsible-box{margin-top:15px!important;padding:12px!important}
 .petmap-uki-hero-v16{height:265px!important;min-height:265px!important;padding:18px 16px!important}
 .petmap-uki-hero-v16 .uki-copy{width:55%!important}
 .petmap-uki-hero-v16 .uki-speech{font-size:24px!important;padding:10px 11px!important}
 .petmap-uki-hero-v16>img{width:67%!important;height:96%!important;right:-12px!important}
 .uki-map-prop{width:72px!important;height:52px!important;right:24%!important;bottom:16px!important}
 .petmap-map-section-v16{gap:12px!important;margin-top:12px!important}
 .petmap-map-section-v16 .petmap-map-card,.petmap-map-section-v16 .petmap-map{height:390px!important;min-height:390px!important;border-radius:0!important}
 .petmap-map-section-v16 .petmap-sidebar{border-radius:0!important;padding:15px!important}
 .petmap-map-section-v16 .petmap-category-grid{grid-template-columns:repeat(3,1fr)!important}
 .petmap-bottom-grid-v16{margin-top:12px!important}
 .petmap-bottom-grid-v16 .petmap-score-explainer{border-radius:0!important;grid-template-columns:50px 1fr!important;padding:18px!important}
 .petmap-score-paw{width:48px!important;height:48px!important;font-size:22px!important}
 .petmap-score-demo{grid-column:1/-1!important;border-left:0!important;border-top:1px solid #cfead9!important;padding:13px 0 0!important}
 .petmap-score-responsible{grid-column:1/-1!important}
}

/* PetMap 0.8.19 — simple map-first frontend */
.petmap-simple .petmap-shell{max-width:1280px;margin:0 auto;padding:18px}
.petmap-map-section-simple{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:18px;align-items:stretch}
.petmap-sidebar-simple{display:flex;flex-direction:column;min-width:0}
.petmap-sidebar-simple .petmap-category-grid{margin-bottom:18px}
.petmap-uki-category-card-simple{margin-top:auto}
.petmap-simple .petmap-map-card,.petmap-simple .petmap-map{min-height:680px}
.petmap-simple .petmap-map{height:680px}
.petmap-simple .petmap-category{min-height:76px}
@media(max-width:900px){.petmap-map-section-simple{grid-template-columns:1fr}.petmap-simple .petmap-map-card,.petmap-simple .petmap-map{min-height:520px;height:520px}.petmap-sidebar-simple{display:block}.petmap-uki-category-card-simple{margin-top:18px}}
@media(max-width:600px){.petmap-simple .petmap-shell{padding:8px}.petmap-simple .petmap-map-card,.petmap-simple .petmap-map{min-height:420px;height:420px}.petmap-simple .petmap-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.petmap-simple .petmap-category{min-height:70px;padding:8px 4px}.petmap-simple .petmap-uki-category-card{min-height:150px}.petmap-simple .petmap-uki-category-visual{width:120px}}

/* PetMap 0.8.19: mapa + categorías + banner Uki */
.petmap-simple .petmap-shell{max-width:1280px;margin:0 auto;padding:16px}
.petmap-map-section-simple{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:18px;align-items:stretch}
.petmap-simple .petmap-map-card,.petmap-simple .petmap-map{min-height:680px;height:680px}
.petmap-sidebar-simple{display:flex;flex-direction:column;min-width:0}
.petmap-sidebar-simple .petmap-category-grid{margin-bottom:18px}
.petmap-uki-category-card-simple{margin-top:auto}
.petmap-simple .petmap-category{min-height:76px}
@media(max-width:900px){.petmap-map-section-simple{grid-template-columns:1fr}.petmap-simple .petmap-map-card,.petmap-simple .petmap-map{min-height:520px;height:520px}.petmap-uki-category-card-simple{margin-top:18px}}
@media(max-width:600px){.petmap-simple .petmap-shell{padding:8px}.petmap-simple .petmap-map-card,.petmap-simple .petmap-map{min-height:420px;height:420px}.petmap-simple .petmap-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.petmap-simple .petmap-category{min-height:68px;padding:8px 4px}.petmap-simple .petmap-uki-category-card{min-height:150px}.petmap-simple .petmap-uki-category-visual{width:120px}}

.petmap-guest-data{margin:16px 0;padding:14px 16px;border:1px solid #dbe7f4;border-radius:14px;background:#f7fbff}.petmap-guest-data h3{margin:0 0 6px}.petmap-guest-data p{margin:0 0 12px;font-size:13px;color:#607089}.petmap-guest-data label{display:block;margin:9px 0}.petmap-guest-data input[type=text],.petmap-guest-data input[type=email],.petmap-guest-data input:not([type]){width:100%;box-sizing:border-box}.petmap-consent{display:flex!important;gap:8px;align-items:flex-start;font-size:13px}.petmap-consent input{width:auto!important;margin-top:3px}
.petmap-form-section-title{font-weight:800;color:#17386b;margin:16px 0 8px;font-size:15px}.petmap-guest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.petmap-guest-grid label{display:flex;flex-direction:column;gap:5px;font-weight:600;font-size:13px}.petmap-guest-grid input,.petmap-guest-grid select{width:100%;box-sizing:border-box}@media(max-width:600px){.petmap-guest-grid{grid-template-columns:1fr}}

.petmap-filter-clear{margin-top:9px;border:0;background:none;color:#0a69d8;font-size:11px;font-weight:800;cursor:pointer;padding:0}.petmap-filter-clear:hover{text-decoration:underline}.petmap-side-location-filters .petmap-location-filters{grid-template-columns:1fr}.petmap-side-location-filters select{appearance:auto}.petmap-side-location-filters select:disabled{cursor:not-allowed}


/* PetMap 0.8.26 — experiencia móvil tipo app / mapa a pantalla completa */
@media (max-width: 767px){
  html,body{overflow-x:hidden}
  .petmap-app.petmap-simple{
    width:100vw!important;
    max-width:none!important;
    min-height:100dvh;
    position:relative!important;
    left:0!important;
    transform:none!important;
    margin:0!important;
    padding:0!important;
    background:#fff;
    overflow:hidden;
  }
  .petmap-simple .petmap-shell{
    width:100%!important;
    max-width:none!important;
    padding:0!important;
    margin:0!important;
  }
  .petmap-simple .petmap-map-section-simple{
    display:block!important;
    position:relative;
    width:100%;
    height:100dvh;
    min-height:100dvh;
    margin:0!important;
  }
  .petmap-simple .petmap-map-card{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    min-height:100dvh!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    z-index:1;
  }
  .petmap-simple .petmap-map{
    width:100%!important;
    height:100dvh!important;
    min-height:100dvh!important;
    border-radius:0!important;
  }
  .petmap-simple .petmap-sidebar-simple{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    display:block!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    z-index:10;
    pointer-events:none;
  }
  .petmap-simple .petmap-sidebar-simple > *{pointer-events:auto}

  /* Barra superior de categorías */
  .petmap-simple .sidebar-title{
    position:absolute;
    top:max(10px,env(safe-area-inset-top));
    left:10px;
    right:10px;
    min-height:48px;
    padding:10px 12px;
    border-radius:18px;
    background:rgba(255,255,255,.96);
    box-shadow:0 4px 18px rgba(25,52,91,.14);
    align-items:center;
    z-index:4;
  }
  .petmap-simple .sidebar-title h2{
    font-size:17px;
    line-height:1;
    margin:0;
  }
  .petmap-simple .sidebar-title button{
    font-size:12px;
    white-space:nowrap;
  }
  .petmap-simple .petmap-category-grid{
    position:absolute;
    top:68px;
    left:0;
    right:0;
    display:flex!important;
    flex-wrap:nowrap!important;
    grid-template-columns:none!important;
    gap:8px!important;
    margin:0!important;
    padding:0 12px 8px!important;
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .petmap-simple .petmap-category-grid::-webkit-scrollbar{display:none}
  .petmap-simple .petmap-category{
    flex:0 0 auto;
    width:82px;
    min-width:82px!important;
    min-height:62px!important;
    height:62px;
    padding:7px 5px!important;
    border-radius:15px!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:0 3px 12px rgba(25,52,91,.13);
    gap:3px!important;
  }
  .petmap-simple .petmap-category .pm-cat-icon{font-size:22px;line-height:1}
  .petmap-simple .petmap-category .pm-cat-icon img{width:23px;height:23px;object-fit:contain}
  .petmap-simple .petmap-category small{font-size:9.5px;line-height:1.05;max-width:74px}
  .petmap-simple .petmap-category.active{box-shadow:0 0 0 2px var(--pm-blue),0 4px 14px rgba(10,105,216,.22)!important}

  /* Filtros de ubicación como tarjeta flotante */
  .petmap-simple .petmap-side-location-filters{
    position:absolute;
    left:10px;
    right:10px;
    bottom:calc(126px + env(safe-area-inset-bottom));
    margin:0!important;
    padding:10px!important;
    border:1px solid rgba(223,233,244,.95)!important;
    border-radius:17px!important;
    background:rgba(255,255,255,.95)!important;
    box-shadow:0 5px 20px rgba(25,52,91,.14);
    z-index:3;
  }
  .petmap-simple .petmap-side-location-filters strong{
    display:none;
  }
  .petmap-simple .petmap-location-filters{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }
  .petmap-simple .petmap-location-filters select{
    height:38px!important;
    min-width:0;
    border-radius:11px!important;
    padding:0 7px!important;
    font-size:11px!important;
    background:#fff!important;
  }
  .petmap-simple .petmap-filter-clear{
    display:none;
  }

  /* Banner Uki como tarjeta inferior, sobre el mapa */
  .petmap-simple .petmap-uki-category-card-simple{
    position:absolute!important;
    left:10px!important;
    right:10px!important;
    bottom:max(10px,env(safe-area-inset-bottom));
    min-height:104px!important;
    height:104px!important;
    margin:0!important;
    padding:12px 13px!important;
    border-radius:19px!important;
    background:rgba(255,250,235,.97)!important;
    border:1px solid rgba(231,220,194,.9)!important;
    box-shadow:0 6px 22px rgba(25,52,91,.18)!important;
    overflow:hidden;
    z-index:5;
  }
  .petmap-simple .petmap-uki-category-copy{
    width:calc(100% - 102px)!important;
    max-width:none!important;
    padding:0!important;
  }
  .petmap-simple .petmap-uki-category-kicker{
    font-size:9px!important;
    margin-bottom:2px;
  }
  .petmap-simple .petmap-uki-category-copy strong{
    display:block;
    font-size:15px!important;
    line-height:1.05!important;
    margin:0 0 4px!important;
  }
  .petmap-simple .petmap-uki-category-copy > span:not(.petmap-uki-category-kicker){
    display:block;
    font-size:10px!important;
    line-height:1.25!important;
    max-width:220px;
  }
  .petmap-simple .petmap-uki-category-copy .petmap-primary{
    padding:6px 10px!important;
    font-size:10px!important;
    margin-top:6px;
    box-shadow:none!important;
  }
  .petmap-simple .petmap-uki-category-visual{
    position:absolute!important;
    right:0!important;
    bottom:0!important;
    width:112px!important;
    height:104px!important;
    display:flex!important;
    align-items:flex-end!important;
    justify-content:center!important;
  }
  .petmap-simple .petmap-uki-category-visual img{
    width:auto!important;
    height:105px!important;
    max-width:120px!important;
    object-fit:contain!important;
    object-position:center bottom!important;
  }

  /* Oculta el contenido desktop que no corresponde a esta vista simple */
  .petmap-simple + .petmap-modal{z-index:100000}
  .petmap-simple .petmap-map .gm-style{font-family:inherit}
}

@media (max-width:390px){
  .petmap-simple .sidebar-title{top:max(7px,env(safe-area-inset-top));left:7px;right:7px}
  .petmap-simple .petmap-category-grid{top:64px;padding-left:8px!important;padding-right:8px!important}
  .petmap-simple .petmap-category{width:76px;min-width:76px!important}
  .petmap-simple .petmap-side-location-filters{left:7px;right:7px;bottom:calc(120px + env(safe-area-inset-bottom))}
  .petmap-simple .petmap-uki-category-card-simple{left:7px!important;right:7px!important;bottom:max(7px,env(safe-area-inset-bottom))}
  .petmap-simple .petmap-uki-category-copy{width:calc(100% - 94px)!important}
  .petmap-simple .petmap-uki-category-visual{width:102px!important}
}


/* PetMap 0.8.29 — respeta el ancho del contenedor padre (Elementor/WordPress) */
.petmap-app.petmap-simple {
  width: 100% !important;
  max-width: 100% !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}
.petmap-app.petmap-simple .petmap-shell {
  width: 100% !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}
@media (max-width: 767px) {
  .petmap-app.petmap-simple {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    overflow: hidden !important;
  }
  .petmap-app.petmap-simple .petmap-shell {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .petmap-simple .petmap-map-section-simple,
  .petmap-simple .petmap-map-card,
  .petmap-simple .petmap-map {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}

/* PetMap 0.8.30 — banner integrado para agregar lugares */
.petmap-add-place-banner{
  margin-top:18px;
  min-height:190px;
  border:1px solid var(--pm-line);
  border-radius:24px;
  overflow:hidden;
  background:linear-gradient(135deg,#eef8ff 0%,#f8fbff 58%,#fff8ed 100%);
  box-shadow:var(--pm-shadow);
  display:flex;
  align-items:center;
  justify-content:space-between;
  position:relative;
}
.petmap-add-place-banner-copy{padding:25px 30px;position:relative;z-index:2;max-width:68%}
.petmap-add-place-kicker{display:block;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:var(--pm-blue);margin-bottom:4px}
.petmap-add-place-banner h2{font-size:25px;line-height:1.1;margin:3px 0 7px;color:var(--pm-dark)}
.petmap-add-place-banner p{font-size:13px;line-height:1.45;color:var(--pm-muted);margin:0 0 14px;max-width:620px}
.petmap-add-place-banner .petmap-primary{border:0;border-radius:999px;background:var(--pm-blue);color:#fff;padding:10px 16px;font-weight:800;cursor:pointer}
.petmap-add-place-banner-visual{height:100%;min-height:190px;width:270px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;align-self:stretch;flex:none}
.petmap-add-place-banner-visual img{height:205px;width:auto;max-width:250px;object-fit:contain;object-position:center bottom;display:block}
@media(max-width:900px){
  .petmap-add-place-banner{min-height:170px}
  .petmap-add-place-banner-copy{padding:21px 23px;max-width:70%}
  .petmap-add-place-banner h2{font-size:21px}
  .petmap-add-place-banner p{font-size:12px}
  .petmap-add-place-banner-visual{width:210px;min-height:170px}
  .petmap-add-place-banner-visual img{height:180px;max-width:200px}
}
@media(max-width:600px){
  .petmap-add-place-banner{min-height:145px;border-radius:20px;margin-top:12px}
  .petmap-add-place-banner-copy{padding:18px 17px;max-width:72%}
  .petmap-add-place-kicker{font-size:9px}
  .petmap-add-place-banner h2{font-size:18px;margin:2px 0 5px}
  .petmap-add-place-banner p{font-size:10.5px;line-height:1.35;margin-bottom:9px}
  .petmap-add-place-banner .petmap-primary{padding:8px 11px;font-size:10.5px}
  .petmap-add-place-banner-visual{width:125px;min-height:145px}
  .petmap-add-place-banner-visual img{height:150px;max-width:130px}
}

/* PetMap 0.8.32 — flujo de aporte en dos pasos */
.petmap-form-step[hidden]{display:none!important}
.petmap-next-place{width:100%;margin-top:14px}
.petmap-selected-summary{display:grid;grid-template-columns:1fr auto;gap:5px 12px;padding:13px 15px;border:1px solid #dbe7f4;border-radius:14px;background:#f7fbff;margin-bottom:14px}
.petmap-selected-summary span{grid-column:1/-1;font-size:11px;color:#0a69d8;font-weight:800;text-transform:uppercase}
.petmap-selected-summary strong{font-size:15px;color:var(--pm-dark);align-self:center}
.petmap-link-button{border:0;background:none;color:var(--pm-blue);font-weight:800;cursor:pointer;justify-self:end}
.petmap-verification-note{padding:11px 13px;border-radius:12px;background:#eef8f1;color:#35634b;font-size:12px;line-height:1.45;margin:10px 0 14px}
.petmap-photo-upload{padding:13px 15px;border:1px dashed #cbdceb;border-radius:14px;background:#fbfdff}
.petmap-photo-upload p{font-size:12px;color:var(--pm-muted);margin:4px 0 10px}
.petmap-photo-button{display:inline-flex!important;align-items:center;gap:7px!important;width:max-content;border:1px solid #c9dced;border-radius:999px;padding:9px 13px;background:#fff;color:var(--pm-blue);font-weight:800!important;cursor:pointer!important}
.petmap-photo-button input{display:none!important}
.petmap-photo-name{font-size:11px;color:#607089;margin-top:7px;word-break:break-word}
@media(max-width:600px){.petmap-selected-summary{grid-template-columns:1fr}.petmap-link-button{justify-self:start;padding:0}.petmap-photo-button{font-size:12px!important}}
.petmap-location-note{font-size:11px;color:#718096;margin:7px 2px 0;line-height:1.35}.petmap-location-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.petmap-location-filters select{min-width:0}

.petmap-map-correct-btn{display:block;margin-top:6px;border:0;background:transparent;color:#0a69d8;font-weight:700;cursor:pointer;padding:2px 0}.petmap-map-correct-btn:hover{text-decoration:underline}.petmap-correction-current{display:flex;flex-direction:column;gap:3px;background:#f5f8fb;border:1px solid #dbe7f1;border-radius:12px;padding:12px;margin:10px 0 14px}.petmap-correction-current span{font-size:12px;color:#66758a}.petmap-correction-modal-inner{max-width:620px}.petmap-correction-modal-inner textarea{width:100%;box-sizing:border-box}.petmap-correction-modal-inner .petmap-selected-place{margin-top:10px}.petmap-correction-modal-inner .petmap-primary{margin-top:14px}

/* PetMap 0.8.38 — acciones de ficha y filtros configurables */
.petmap-map-action-btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;margin-top:0;padding:8px 12px;border:0;border-radius:999px;background:#0a69d8;color:#fff!important;font-weight:800;font-size:12px;line-height:1.1;cursor:pointer;box-shadow:0 4px 10px rgba(10,105,216,.16);text-decoration:none!important;box-sizing:border-box}
.petmap-map-action-btn:hover{background:#085dbf;color:#fff!important}
.petmap-map-action-btn + .petmap-map-action-btn{margin-left:0}
.petmap-filter-field{min-width:0}

/* PetMapp 0.8.40 — ficha de lugar limpia */
.petmap-place-popup{min-width:280px;max-width:330px;font-family:Arial,sans-serif;color:#17243a;box-sizing:border-box;padding:2px 0}
.petmap-popup-name{font-size:17px;font-weight:800;line-height:1.25;margin-bottom:4px}
.petmap-popup-category{font-size:12px;color:#0a69d8;font-weight:700;line-height:1.3;margin-bottom:8px}
.petmap-popup-address{font-size:12px;color:#66758a;line-height:1.45;margin-bottom:10px}
.petmap-popup-rating{font-size:20px;color:#f5b301;letter-spacing:2px;line-height:1;margin:2px 0 12px;font-weight:700}
.petmap-popup-no-rating{font-size:13px;color:#66758a;font-weight:700;line-height:1;margin:3px 0 12px}
.petmap-popup-actions{display:flex;gap:6px;flex-wrap:wrap}
.petmap-popup-actions .petmap-map-action-btn{flex:1 1 auto;min-width:128px}

/* PetMap 0.8.41 — control de pantalla completa móvil y filtros administrativos jerárquicos */
.petmap-mobile-fullscreen{display:none;position:absolute;top:12px;right:12px;z-index:20;width:42px;height:42px;border:1px solid #dfe9f4;border-radius:12px;background:rgba(255,255,255,.96);color:#102d56;box-shadow:0 5px 16px rgba(23,66,111,.16);font-size:24px;line-height:1;cursor:pointer;align-items:center;justify-content:center}
.petmap-mobile-fullscreen:hover{background:#fff}
.petmap-simple .petmap-map-card{position:relative}
@media(max-width:1024px){
  .petmap-mobile-fullscreen{display:flex!important;position:absolute!important;visibility:visible!important;opacity:1!important;z-index:99999!important}
  .petmap-simple .petmap-map-card{z-index:11!important}
  .petmap-simple .petmap-sidebar-simple{z-index:10!important}
  .petmap-mobile-fullscreen{top:max(12px,env(safe-area-inset-top));right:12px}
}
@media(max-width:767px){
  .petmap-mobile-fullscreen{display:flex!important}
  .petmap-app.petmap-map-fullscreen{
    position:fixed!important;left:0!important;top:0!important;right:0!important;bottom:0!important;
    width:100vw!important;height:100dvh!important;min-height:100dvh!important;
    margin:0!important;padding:0!important;transform:none!important;z-index:2147483000!important;
    overflow:hidden!important;background:#fff!important;
  }
  .petmap-app.petmap-map-fullscreen .petmap-shell,
  .petmap-app.petmap-map-fullscreen .petmap-map-section-simple,
  .petmap-app.petmap-map-fullscreen .petmap-map-card,
  .petmap-app.petmap-map-fullscreen .petmap-map{
    width:100vw!important;height:100dvh!important;min-height:100dvh!important;
  }
  .petmap-app.petmap-map-fullscreen .petmap-map-card{position:absolute!important;inset:0!important;border-radius:0!important}
  .petmap-app.petmap-map-fullscreen .petmap-sidebar-simple{height:100dvh!important;min-height:100dvh!important}
  body.petmap-body-map-fullscreen{overflow:hidden!important}
}

/* PetMap 0.8.42 — fullscreen mobile robusto frente a overlays de Elementor */
html.petmap-html-map-fullscreen, body.petmap-body-map-fullscreen{overflow:hidden!important;height:100%!important}
@media(max-width:1024px){
 .petmap-app.petmap-map-fullscreen{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;z-index:2147483647!important;background:#fff!important;margin:0!important;padding:0!important}
 .petmap-app.petmap-map-fullscreen .petmap-shell{width:100vw!important;height:100dvh!important;padding:0!important;margin:0!important;max-width:none!important}
 .petmap-app.petmap-map-fullscreen .petmap-map-section-simple{position:absolute!important;inset:0!important;width:100vw!important;height:100dvh!important;margin:0!important}
 .petmap-app.petmap-map-fullscreen .petmap-map-card{position:absolute!important;inset:0!important;width:100vw!important;height:100dvh!important;min-height:100dvh!important;border-radius:0!important;z-index:100!important}
 .petmap-app.petmap-map-fullscreen .petmap-map{width:100vw!important;height:100dvh!important;min-height:100dvh!important}
 .petmap-app.petmap-map-fullscreen .petmap-sidebar-simple{z-index:200!important}
 .petmap-app.petmap-map-fullscreen .petmap-mobile-fullscreen{z-index:999999!important}
}


/* PetMap 0.8.43 — filtros móviles fuera del mapa y cierre fullscreen siempre accesible */
@media (max-width: 767px){
  /* Estado recomendado: filtros debajo del mapa. Las categorías siguen sobre el mapa. */
  .petmap-simple.petmap-filter-layout-below .petmap-map-section-simple{
    display:block!important;
    position:relative!important;
    height:auto!important;
    min-height:0!important;
    padding-bottom:70px!important;
    overflow:visible!important;
  }
  .petmap-simple.petmap-filter-layout-below .petmap-map-card{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:420px!important;
    min-height:420px!important;
    border-radius:20px!important;
    overflow:hidden!important;
    z-index:1!important;
  }
  .petmap-simple.petmap-filter-layout-below .petmap-map{
    width:100%!important;
    height:420px!important;
    min-height:420px!important;
  }
  .petmap-simple.petmap-filter-layout-below .petmap-sidebar-simple{
    position:absolute!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:420px!important;
    min-height:420px!important;
    z-index:10!important;
    pointer-events:none!important;
  }
  .petmap-simple.petmap-filter-layout-below .petmap-sidebar-simple > *{pointer-events:auto!important}
  .petmap-simple.petmap-filter-layout-below .petmap-side-location-filters{
    position:absolute!important;
    top:432px!important;
    bottom:auto!important;
    left:10px!important;
    right:10px!important;
    margin:0!important;
    padding:10px!important;
    border:1px solid rgba(223,233,244,.95)!important;
    border-radius:17px!important;
    background:#fff!important;
    box-shadow:0 5px 20px rgba(25,52,91,.14)!important;
    z-index:20!important;
  }
  .petmap-simple.petmap-filter-layout-below .petmap-location-note{display:none!important}
  .petmap-simple.petmap-filter-layout-below .petmap-filter-clear{display:block!important}

  /* Opción: ocultar completamente los filtros. */
  .petmap-simple.petmap-filter-layout-hidden .petmap-side-location-filters{display:none!important}

  /* En fullscreen, la prioridad es el mapa y el botón de salida. */
  .petmap-simple.petmap-map-fullscreen .petmap-mobile-fullscreen{
    position:fixed!important;
    top:max(12px,env(safe-area-inset-top))!important;
    right:12px!important;
    width:46px!important;
    height:46px!important;
    z-index:2147483647!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    background:#fff!important;
    color:#102d56!important;
    font-size:28px!important;
    border:1px solid #dfe9f4!important;
    box-shadow:0 5px 18px rgba(23,66,111,.22)!important;
  }
  .petmap-simple.petmap-map-fullscreen .petmap-sidebar-simple .petmap-side-location-filters{display:none!important}
}
