/* Pet Friendly Ukraine Directory — clean modern UI */
.pfu-directory,
.pfu-single-details {
    --pfu-green: #2f9147;
    --pfu-green-2: #43aa5f;
    --pfu-green-dark: #164c31;
    --pfu-green-soft: #edf8ef;
    --pfu-ink: #102b20;
    --pfu-muted: #6f7e76;
    --pfu-border: #e2e9e4;
    --pfu-bg: #f7faf8;
    --pfu-white: #fff;
    --pfu-yellow: #f4b91f;
    --pfu-shadow: 0 18px 50px rgba(28, 66, 45, .10);
    color: var(--pfu-ink);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.pfu-directory *,
.pfu-single-details * { box-sizing: border-box; }
.pfu-directory a { text-decoration: none; }
.pfu-directory button,
.pfu-directory input,
.pfu-directory select { font: inherit; }

.pfu-eyebrow,
.pfu-section-kicker {
    display: inline-flex;
    color: var(--pfu-green);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.pfu-directory-title { margin: 0 0 20px; }

/* Home explorer */
.pfu-home-explorer {
    display: grid;
    gap: 30px;
}

.pfu-home-panel {
    display: grid;
    grid-template-columns: minmax(320px, .78fr) minmax(520px, 1.35fr);
    min-height: 460px;
    overflow: hidden;
    background: var(--pfu-white);
    border: 1px solid var(--pfu-border);
    border-radius: 24px;
    box-shadow: var(--pfu-shadow);
}

.pfu-home-search {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(28px, 4vw, 58px);
    background: linear-gradient(145deg, #ffffff 0%, #f8fcf8 100%);
}

.pfu-home-search h1 {
    max-width: 620px;
    margin: 12px 0 14px;
    color: var(--pfu-green-dark);
    font-size: clamp(34px, 4vw, 58px);
    line-height: 1.04;
    letter-spacing: -.04em;
}

.pfu-home-search > p {
    max-width: 600px;
    margin: 0 0 24px;
    color: var(--pfu-muted);
    font-size: 16px;
    line-height: 1.65;
}

.pfu-home-map-wrap { min-height: 460px; }
.pfu-home-map-wrap .pfu-map {
    height: 100% !important;
    min-height: 460px;
    border: 0;
    border-radius: 0;
}

.pfu-map-expand {
    position: absolute;
    left: 50%;
    bottom: 18px;
    z-index: 500;
    transform: translateX(-50%);
    padding: 10px 16px;
    border: 1px solid var(--pfu-border);
    border-radius: 10px;
    background: rgba(255,255,255,.95);
    color: var(--pfu-ink);
    box-shadow: 0 8px 25px rgba(0,0,0,.12);
    cursor: pointer;
    font-size: 13px;
    font-weight: 700;
}

.pfu-map-is-expanded .pfu-home-map-wrap {
    position: fixed;
    inset: 0;
    z-index: 99999;
    min-height: 100vh;
    background: #fff;
}
.pfu-map-is-expanded .pfu-map { height: 100vh !important; border-radius: 0; }
.pfu-no-scroll { overflow: hidden; }

.pfu-popular-searches {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    margin-top: 12px;
    color: var(--pfu-muted);
    font-size: 12px;
}
.pfu-popular-searches button {
    padding: 6px 10px;
    border: 1px solid var(--pfu-border);
    border-radius: 999px;
    background: #fff;
    color: var(--pfu-muted);
    cursor: pointer;
}
.pfu-popular-searches button:hover { border-color: var(--pfu-green); color: var(--pfu-green-dark); }

/* Filters */
.pfu-filter-bar {
    display: grid;
    grid-template-columns: minmax(220px, 1.55fr) repeat(3, minmax(145px, 1fr));
    gap: 10px;
    padding: 14px;
    margin-bottom: 12px;
    background: #fff;
    border: 1px solid var(--pfu-border);
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(28,66,45,.07);
}

.pfu-filter-bar-home {
    grid-template-columns: 1fr 1fr;
    padding: 12px;
    margin: 0;
    border-radius: 14px;
}

.pfu-filter-bar label { min-width: 0; }
.pfu-field-label {
    display: block;
    margin: 0 0 5px 2px;
    color: var(--pfu-muted);
    font-size: 11px;
    font-weight: 700;
}

.pfu-filter-bar input,
.pfu-filter-bar select,
.pfu-filter-bar button {
    width: 100%;
    min-height: 44px;
    margin: 0;
    padding: 0 12px;
    border: 1px solid var(--pfu-border);
    border-radius: 9px;
    background: #fff;
    color: var(--pfu-ink);
}
.pfu-filter-bar input:focus,
.pfu-filter-bar select:focus {
    outline: 3px solid rgba(47,145,71,.12);
    border-color: var(--pfu-green);
}

.pfu-filter-actions {
    display: flex;
    grid-column: 1 / -1;
    gap: 8px;
}
.pfu-filter-actions button { width: auto; cursor: pointer; font-weight: 750; }
.pfu-filter-actions .pfu-apply-filters {
    flex: 1;
    background: linear-gradient(135deg, var(--pfu-green), var(--pfu-green-2));
    border-color: var(--pfu-green);
    color: #fff;
}
.pfu-filter-actions .pfu-near-me { color: var(--pfu-green-dark); background: var(--pfu-green-soft); }
.pfu-filter-actions .pfu-reset-filters { color: var(--pfu-muted); background: #fff; }

/* Section headings and categories */
.pfu-section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 16px;
}
.pfu-section-heading h2 { margin: 4px 0 0; font-size: clamp(25px, 2vw, 34px); letter-spacing: -.025em; }
.pfu-section-heading > a { color: var(--pfu-green); font-size: 14px; font-weight: 750; }

.pfu-category-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
}
.pfu-category-card {
    display: flex;
    min-height: 140px;
    flex-direction: column;
    justify-content: center;
    gap: 9px;
    padding: 18px;
    color: var(--pfu-ink);
    background: #fff;
    border: 1px solid var(--pfu-border);
    border-radius: 16px;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.pfu-category-card:hover {
    transform: translateY(-3px);
    border-color: #b7d9c0;
    box-shadow: 0 12px 26px rgba(28,66,45,.09);
}
.pfu-category-icon {
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 14px;
    color: var(--pfu-green);
    background: var(--pfu-green-soft);
}
.pfu-category-icon svg { width: 27px; height: 27px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.pfu-category-card strong { font-size: 14px; line-height: 1.25; }
.pfu-category-card small { color: var(--pfu-muted); }

/* Directory / map */
.pfu-results-meta {
    display: flex;
    min-height: 36px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 0 3px 9px;
    color: var(--pfu-muted);
    font-size: 13px;
}
.pfu-results-count { color: var(--pfu-green-dark); }

.pfu-directory-grid {
    display: grid;
    grid-template-columns: minmax(360px, .78fr) minmax(0, 1.22fr);
    gap: 14px;
}
.pfu-layout-map-only .pfu-directory-grid { grid-template-columns: 1fr; }
.pfu-map-wrap { position: relative; min-width: 0; }
.pfu-map {
    width: 100%;
    min-height: 380px;
    overflow: hidden;
    border: 1px solid var(--pfu-border);
    border-radius: 18px;
    background: #edf4ef;
}
.pfu-map-loading {
    position: absolute;
    top: 18px;
    left: 50%;
    z-index: 700;
    transform: translateX(-50%);
    padding: 8px 12px;
    border: 1px solid var(--pfu-border);
    border-radius: 999px;
    background: rgba(255,255,255,.95);
    box-shadow: 0 6px 20px rgba(0,0,0,.1);
    font-size: 13px;
}
.pfu-map-error { display:grid; min-height:380px; place-items:center; padding:30px; text-align:center; color:#8b3333; }

.pfu-place-list { display: grid; gap: 11px; overflow-y: auto; padding-right: 4px; align-content: start; }
.pfu-home-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: visible;
    padding: 0;
}

.pfu-place-card {
    display: grid;
    grid-template-columns: 145px minmax(0, 1fr);
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--pfu-border);
    border-radius: 16px;
    box-shadow: 0 7px 22px rgba(28,66,45,.06);
    cursor: pointer;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.pfu-place-card:hover { transform: translateY(-2px); border-color:#c5ddcc; box-shadow: 0 13px 30px rgba(28,66,45,.10); }
.pfu-home-card-grid .pfu-place-card { grid-template-columns: 1fr; cursor: default; }

.pfu-card-image-link { display:block; min-height: 100%; background: linear-gradient(135deg,#eef5ef,#f7f9f7); }
.pfu-card-image { display:block; width:100%; height:100%; min-height:190px; object-fit:cover; }
.pfu-home-card-grid .pfu-card-image { height: 205px; min-height:205px; }
.pfu-card-placeholder { display:grid; min-height:190px; place-items:center; color:var(--pfu-green); font-size:44px; }
.pfu-card-body { min-width:0; padding:15px; }
.pfu-card-body h3 { margin:6px 0; font-size:18px; line-height:1.25; }
.pfu-card-body h3 a,.pfu-card-link { color:var(--pfu-ink); }
.pfu-card-body p { margin:9px 0; color:var(--pfu-muted); font-size:13px; line-height:1.45; }
.pfu-card-meta,.pfu-card-address,.pfu-card-pets,.pfu-card-fee { margin-top:5px; color:var(--pfu-muted); font-size:12.5px; }
.pfu-card-link { display:inline-block; margin-top:9px; color:var(--pfu-green); font-size:13px; font-weight:800; }
.pfu-card-badges { display:flex; flex-wrap:wrap; gap:5px; min-height:20px; }
.pfu-card-verified,.pfu-card-featured,.pfu-popup-verified,.pfu-verified-badge {
    display:inline-flex; width:fit-content; align-items:center; padding:4px 8px; border-radius:999px; font-size:10.5px; font-weight:800;
}
.pfu-card-verified,.pfu-popup-verified,.pfu-verified-badge { color:#14623a; background:#e4f5e9; }
.pfu-card-featured { color:#6f4b00; background:#fff4cf; }
.pfu-empty-state { grid-column:1/-1; padding:34px; text-align:center; color:var(--pfu-muted); background:var(--pfu-bg); border:1px dashed var(--pfu-border); border-radius:16px; }

/* CTA */
.pfu-home-cta {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 16px;
    padding: 22px;
    background: linear-gradient(100deg,#eef8f0,#f9fcf9);
    border: 1px solid #dcecdf;
    border-radius: 18px;
}
.pfu-home-cta-icon { display:grid; width:50px; height:50px; place-items:center; border-radius:14px; background:#fff; color:var(--pfu-green); font-size:27px; box-shadow:0 7px 18px rgba(28,66,45,.08); }
.pfu-home-cta strong,.pfu-home-cta span { display:block; }
.pfu-home-cta strong { margin-bottom:3px; }
.pfu-home-cta span { color:var(--pfu-muted); font-size:13px; }

.pfu-button {
    display:inline-flex; min-height:44px; align-items:center; justify-content:center; padding:0 18px; border:1px solid var(--pfu-green); border-radius:10px; background:var(--pfu-green); color:#fff !important; font-weight:800; text-decoration:none !important;
}
.pfu-button-secondary { background:#fff; color:var(--pfu-green-dark) !important; }

/* Markers / popup */
.pfu-leaflet-marker {
    position:relative; display:grid; width:38px; height:38px; place-items:center; border:3px solid #fff; border-radius:50% 50% 50% 8px; transform:rotate(-45deg); background:var(--pfu-green); box-shadow:0 5px 16px rgba(16,63,34,.28);
}
.pfu-leaflet-marker > span { width:10px; height:10px; border-radius:50%; transform:rotate(45deg); color:#fff; background:#fff; font-size:0; }
.pfu-leaflet-marker.is-featured { background:var(--pfu-yellow); }
.pfu-leaflet-marker.is-verified { background:#249e54; }
.marker-cluster-small,.marker-cluster-medium,.marker-cluster-large { background:rgba(47,145,71,.20); }
.marker-cluster-small div,.marker-cluster-medium div,.marker-cluster-large div { background:var(--pfu-green); color:#fff; font-weight:800; }
.leaflet-control-zoom a { color:var(--pfu-green-dark); }
.leaflet-popup-content-wrapper { overflow:hidden; border-radius:14px; }
.leaflet-popup-content { margin:0; }
.pfu-popup-card { overflow:hidden; min-width:250px; }
.pfu-popup-image { display:block; width:100%; height:140px; object-fit:cover; }
.pfu-popup-body { padding:14px; }
.pfu-popup-body h3 { margin:6px 0; color:var(--pfu-ink); font-size:18px; }
.pfu-popup-meta,.pfu-popup-address,.pfu-popup-pets { margin-top:4px; color:var(--pfu-muted); font-size:12px; }
.pfu-popup-link { display:inline-block; margin-top:10px; color:var(--pfu-green); font-weight:800; }

/* Single place */
.pfu-single-details { margin-top:28px; }
.pfu-info-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:18px 0; }
.pfu-info-item { display:grid; gap:5px; padding:17px; border:1px solid var(--pfu-border); border-radius:14px; background:#fff; }
.pfu-info-item span,.pfu-info-item a { color:var(--pfu-muted); }
.pfu-single-section { margin:26px 0; }
.pfu-feature-chips { display:flex; flex-wrap:wrap; gap:8px; }
.pfu-feature-chips span { padding:7px 10px; border:1px solid #d5eadb; border-radius:999px; background:var(--pfu-green-soft); font-size:13px; }
.pfu-contact-actions { display:flex; flex-wrap:wrap; gap:10px; margin:22px 0; }

/* Fallback plugin templates */
.pfu-template-container { width:min(1440px,calc(100% - 32px)); margin:0 auto; padding:44px 0 70px; }
.pfu-template-header { max-width:820px; margin-bottom:28px; }
.pfu-template-header h1 { margin:7px 0 10px; font-size:clamp(38px,5vw,64px); line-height:1.05; }
.pfu-template-header p { color:var(--pfu-muted); font-size:18px; }

@media (max-width: 1120px) {
    .pfu-home-panel { grid-template-columns:1fr; }
    .pfu-home-map-wrap,.pfu-home-map-wrap .pfu-map { min-height:430px; }
    .pfu-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .pfu-home-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .pfu-directory-grid { grid-template-columns:1fr; }
    .pfu-place-list:not(.pfu-home-card-grid) { grid-template-columns:repeat(2,minmax(0,1fr)); max-height:none !important; overflow:visible; }
}

@media (max-width: 760px) {
    .pfu-home-search { padding:28px 20px; }
    .pfu-home-search h1 { font-size:36px; }
    .pfu-filter-bar,.pfu-filter-bar-home { grid-template-columns:1fr; }
    .pfu-filter-actions { flex-wrap:wrap; }
    .pfu-filter-actions button { flex:1 1 140px; }
    .pfu-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .pfu-home-card-grid,.pfu-place-list:not(.pfu-home-card-grid) { grid-template-columns:1fr; }
    .pfu-place-card { grid-template-columns:115px minmax(0,1fr); }
    .pfu-home-card-grid .pfu-place-card { grid-template-columns:1fr; }
    .pfu-map { height:58vh !important; min-height:420px; }
    .pfu-home-map-wrap .pfu-map { height:430px !important; min-height:430px; }
    .pfu-home-cta { grid-template-columns:auto 1fr; }
    .pfu-home-cta .pfu-button { grid-column:1/-1; }
    .pfu-section-heading { align-items:flex-start; }
    .pfu-section-heading > a { display:none; }
    .pfu-info-grid { grid-template-columns:1fr; }
}

@media (max-width: 480px) {
    .pfu-home-panel { border-radius:16px; }
    .pfu-category-grid { grid-template-columns:1fr 1fr; gap:8px; }
    .pfu-category-card { min-height:126px; padding:14px; }
    .pfu-place-card { grid-template-columns:1fr; }
    .pfu-card-image { height:190px; min-height:190px; }
    .pfu-results-hint { display:none; }
}


/* === PFU 0.3.0 gallery + category markers === */
.pfu-single-gallery{margin:24px 0 0}
.pfu-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.pfu-gallery-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.pfu-gallery-heading span{color:var(--pfu-muted);font-size:13px}.pfu-gallery-card{min-width:0}
.pfu-gallery-card{display:block;position:relative;overflow:hidden;border-radius:16px;background:#f5f7f5;border:1px solid var(--pfu-border);box-shadow:0 8px 26px rgba(20,55,44,.06);text-decoration:none}
.pfu-gallery-card img{display:block;width:100%;height:180px;object-fit:cover;transition:transform .22s ease}
.pfu-gallery-card:hover img{transform:scale(1.03)}
.pfu-gallery-caption{display:block;padding:10px 12px;color:var(--pfu-muted);font-size:13px;line-height:1.4;background:#fff}

.pfu-marker-wrapper{background:transparent;border:none}
.pfu-marker-pin{position:relative;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:linear-gradient(180deg,#2ca660 0%,#1f8f6a 100%);box-shadow:0 10px 24px rgba(22,85,61,.24);border:3px solid #fff}
.pfu-marker-pin::after{content:"";position:absolute;inset:7px;border-radius:999px;background:#fff}
.pfu-marker-glyph{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;width:20px;height:20px;transform:rotate(45deg);color:#1f8f6a}
.pfu-marker-glyph svg{display:block;width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.pfu-marker-pin.is-featured{background:linear-gradient(180deg,#f5cb4c 0%,#efad19 100%)}
.pfu-marker-pin.is-featured .pfu-marker-glyph{color:#8d6400}
.pfu-marker-pin.is-verified{background:linear-gradient(180deg,#2a9f75 0%,#166e57 100%)}
.pfu-marker-hotel .pfu-marker-glyph{color:#2a8051}
.pfu-marker-cafe .pfu-marker-glyph{color:#9b5b17}
.pfu-marker-park .pfu-marker-glyph{color:#2c7c3e}
.pfu-marker-vet .pfu-marker-glyph{color:#0b8d8a}
.pfu-marker-grooming .pfu-marker-glyph{color:#8a548c}
.pfu-marker-care .pfu-marker-glyph{color:#4d7d3c}
.pfu-marker-training .pfu-marker-glyph{color:#b4641c}
.pfu-marker-shop .pfu-marker-glyph{color:#2f6ca3}

@media (max-width: 720px){
  .pfu-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .pfu-gallery-card img{height:150px}
}
@media (max-width: 420px){.pfu-gallery-grid{grid-template-columns:1fr 1fr}.pfu-gallery-card img{height:125px}.pfu-gallery-caption{font-size:11px;padding:7px 8px}}


/* === PFU 0.4.0 SEO, FAQ, reviews, lightbox, submission === */
.pfu-breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:7px;list-style:none;margin:0 0 18px;padding:0;color:var(--pfu-muted);font-size:14px}.pfu-breadcrumbs li+li::before{content:"›";margin-right:7px;color:#9aa8a2}.pfu-breadcrumbs a{color:var(--pfu-green-dark);text-decoration:none}.pfu-faq-list{display:grid;gap:10px}.pfu-faq-item{border:1px solid var(--pfu-border);border-radius:14px;background:#fff;overflow:hidden}.pfu-faq-item summary{padding:16px 18px;cursor:pointer;font-weight:750;color:var(--pfu-ink);list-style:none}.pfu-faq-item summary::-webkit-details-marker{display:none}.pfu-faq-item summary::after{content:"＋";float:right;color:var(--pfu-green)}.pfu-faq-item[open] summary::after{content:"−"}.pfu-faq-item>div{padding:0 18px 16px;color:var(--pfu-muted)}.pfu-review-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.pfu-rating-summary{display:flex;gap:8px;align-items:center}.pfu-rating-summary strong{font-size:28px}.pfu-rating-summary span{color:#efad19;letter-spacing:1px}.pfu-rating-summary small{color:var(--pfu-muted)}.pfu-review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.pfu-review-card{padding:18px;border:1px solid var(--pfu-border);border-radius:16px;background:#fff}.pfu-review-card blockquote{margin:12px 0;color:var(--pfu-ink);font-style:normal}.pfu-review-card footer{display:flex;justify-content:space-between;gap:10px;color:var(--pfu-muted);font-size:13px}.pfu-review-stars{color:#a66a00;font-weight:700}
.pfu-lightbox{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:30px;background:rgba(8,22,18,.92)}.pfu-lightbox.is-open{display:flex}.pfu-lightbox figure{margin:0;max-width:min(1100px,88vw);max-height:88vh;display:grid;justify-items:center;gap:10px}.pfu-lightbox img{display:block;max-width:100%;max-height:80vh;object-fit:contain;border-radius:10px;box-shadow:0 20px 70px rgba(0,0,0,.45)}.pfu-lightbox figcaption{color:#fff;text-align:center;max-width:760px}.pfu-lightbox button{position:absolute;border:0;background:rgba(255,255,255,.14);color:#fff;border-radius:999px;cursor:pointer}.pfu-lightbox-close{right:24px;top:20px;width:46px;height:46px;font-size:30px}.pfu-lightbox-prev,.pfu-lightbox-next{top:50%;transform:translateY(-50%);width:52px;height:52px;font-size:40px}.pfu-lightbox-prev{left:24px}.pfu-lightbox-next{right:24px}.pfu-lightbox-counter{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);color:#fff;background:rgba(0,0,0,.35);padding:6px 10px;border-radius:999px}.pfu-no-scroll{overflow:hidden}
.pfu-submit-shell{max-width:1000px;margin:0 auto}.pfu-submit-shell>header{margin-bottom:24px}.pfu-submit-shell>header h1{margin:5px 0 8px}.pfu-submit-form{display:grid;gap:20px}.pfu-submit-form fieldset{margin:0;padding:22px;border:1px solid var(--pfu-border);border-radius:18px;background:#fff;box-shadow:0 7px 24px rgba(20,55,44,.05)}.pfu-submit-form legend{padding:0 8px;font-weight:800;color:var(--pfu-ink)}.pfu-submit-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.pfu-submit-grid label{display:grid;gap:7px;font-weight:650}.pfu-submit-grid .wide{grid-column:1/-1}.pfu-submit-grid input,.pfu-submit-grid select,.pfu-submit-grid textarea{width:100%;padding:12px 13px;border:1px solid var(--pfu-border);border-radius:10px;background:#fff;color:var(--pfu-ink);font:inherit}.pfu-submit-map{height:420px;border-radius:14px;overflow:hidden;border:1px solid var(--pfu-border)}.pfu-submit-help{margin:0;color:var(--pfu-muted);font-size:13px}.pfu-consent{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start}.pfu-consent input{width:auto!important;margin-top:4px}.pfu-submit-button{justify-self:start;border:0;cursor:pointer;font:inherit}.pfu-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.pfu-upload-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px}.pfu-upload-preview img{width:100%;height:90px;object-fit:cover;border-radius:9px}.pfu-submit-errors,.pfu-submit-success{padding:18px 20px;margin-bottom:20px;border-radius:14px}.pfu-submit-errors{background:#fff2f2;border:1px solid #efc1c1;color:#8a2424}.pfu-submit-success{background:#eaf8f1;border:1px solid #b7e1ca;color:#145d43}.pfu-submit-errors ul{margin-bottom:0}
@media(max-width:720px){.pfu-submit-grid{grid-template-columns:1fr}.pfu-submit-grid .wide{grid-column:auto}.pfu-submit-map{height:360px}.pfu-lightbox{padding:70px 12px 50px}.pfu-lightbox-prev{left:8px}.pfu-lightbox-next{right:8px}.pfu-review-heading{align-items:flex-start;flex-direction:column}}


/* === PFU 0.4.2 visible frontend form fields === */
.pfu-submit-shell {
    --pfu-green: #2f9147;
    --pfu-green-2: #43aa5f;
    --pfu-green-dark: #164c31;
    --pfu-green-soft: #edf8ef;
    --pfu-ink: #102b20;
    --pfu-muted: #6f7e76;
    --pfu-border: #d7e1da;
    --pfu-bg: #f7faf8;
    --pfu-white: #ffffff;
    --pfu-yellow: #f4b91f;
    --pfu-shadow: 0 18px 50px rgba(28, 66, 45, .10);
    color: var(--pfu-ink);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.pfu-submit-shell,
.pfu-submit-shell * { box-sizing: border-box; }
.pfu-submit-shell .pfu-section-kicker { color: var(--pfu-green); }
.pfu-submit-form fieldset {
    border-color: #dfe7e1;
}
.pfu-submit-grid label {
    color: #17382a;
}
.pfu-submit-grid input:not([type="checkbox"]):not([type="radio"]),
.pfu-submit-grid select,
.pfu-submit-grid textarea {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    min-height: 48px;
    padding: 12px 14px !important;
    border: 1.5px solid #cbd8cf !important;
    border-radius: 10px !important;
    background-color: #ffffff !important;
    color: #102b20 !important;
    -webkit-text-fill-color: #102b20;
    box-shadow: 0 1px 2px rgba(16, 43, 32, .04) !important;
    outline: none;
    font: inherit !important;
    line-height: 1.35;
}
.pfu-submit-grid textarea {
    min-height: 116px;
    resize: vertical;
}
.pfu-submit-grid textarea[rows="7"] { min-height: 190px; }
.pfu-submit-grid select {
    cursor: pointer;
    appearance: auto;
    -webkit-appearance: menulist;
}
.pfu-submit-grid input[type="file"] {
    min-height: 52px;
    padding: 9px 11px !important;
    cursor: pointer;
}
.pfu-submit-grid input::placeholder,
.pfu-submit-grid textarea::placeholder {
    color: #8a9890 !important;
    opacity: 1;
}
.pfu-submit-grid input:focus,
.pfu-submit-grid select:focus,
.pfu-submit-grid textarea:focus {
    border-color: #2f9147 !important;
    box-shadow: 0 0 0 3px rgba(47, 145, 71, .14) !important;
}
.pfu-submit-grid input:disabled,
.pfu-submit-grid select:disabled,
.pfu-submit-grid textarea:disabled {
    background: #f3f6f4 !important;
    color: #718078 !important;
}
.pfu-submit-help { color: #68776f; }


/* === PFU 0.5.3 category palette and location status === */
.pfu-category-card{position:relative;overflow:hidden;border-top:4px solid var(--pfu-category,#12b5b0)}
.pfu-category-card::after{content:"";position:absolute;width:90px;height:90px;right:-35px;bottom:-45px;border-radius:50%;background:color-mix(in srgb,var(--pfu-category,#12b5b0) 10%,transparent);pointer-events:none}
.pfu-category-card .pfu-category-icon{color:var(--pfu-category,#12b5b0);background:var(--pfu-category-soft,#eaf9f8)}
.pfu-category-hotel{--pfu-category:#2f80ed;--pfu-category-soft:#eaf2ff}
.pfu-category-cafe{--pfu-category:#e67e22;--pfu-category-soft:#fff1e5}
.pfu-category-park{--pfu-category:#2e9d50;--pfu-category-soft:#eaf8ee}
.pfu-category-vet{--pfu-category:#00a7a7;--pfu-category-soft:#e4f8f8}
.pfu-category-grooming{--pfu-category:#9b51e0;--pfu-category-soft:#f3eafe}
.pfu-category-care{--pfu-category:#8d6e63;--pfu-category-soft:#f3eeec}
.pfu-category-training{--pfu-category:#f2994a;--pfu-category-soft:#fff1e4}
.pfu-category-petshop{--pfu-category:#2d9cdb;--pfu-category-soft:#e8f6fd}
.pfu-category-shopping{--pfu-category:#d94f70;--pfu-category-soft:#fdebf0}
.pfu-category-other{--pfu-category:#667085;--pfu-category-soft:#eff1f5}

.pfu-marker-pin.is-featured{box-shadow:0 0 0 4px rgba(246,192,67,.75),0 10px 24px rgba(22,85,61,.24)}
.pfu-marker-pin.is-verified{border-color:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.75),0 10px 24px rgba(22,85,61,.24)}
.pfu-marker-hotel{background:linear-gradient(180deg,#4d96f5,#2f80ed)}.pfu-marker-hotel .pfu-marker-glyph{color:#1d62bd}
.pfu-marker-cafe{background:linear-gradient(180deg,#f39a4b,#e67e22)}.pfu-marker-cafe .pfu-marker-glyph{color:#a6520a}
.pfu-marker-park{background:linear-gradient(180deg,#4ab866,#2e9d50)}.pfu-marker-park .pfu-marker-glyph{color:#1f7137}
.pfu-marker-vet{background:linear-gradient(180deg,#28c1c1,#00a7a7)}.pfu-marker-vet .pfu-marker-glyph{color:#007575}
.pfu-marker-grooming{background:linear-gradient(180deg,#b675ed,#9b51e0)}.pfu-marker-grooming .pfu-marker-glyph{color:#7031a9}
.pfu-marker-care{background:linear-gradient(180deg,#a88a80,#8d6e63)}.pfu-marker-care .pfu-marker-glyph{color:#654a42}
.pfu-marker-training{background:linear-gradient(180deg,#f7b56f,#f2994a)}.pfu-marker-training .pfu-marker-glyph{color:#b96219}
.pfu-marker-petshop{background:linear-gradient(180deg,#55b5e9,#2d9cdb)}.pfu-marker-petshop .pfu-marker-glyph{color:#1f70a0}
.pfu-marker-shopping{background:linear-gradient(180deg,#e87791,#d94f70)}.pfu-marker-shopping .pfu-marker-glyph{color:#a83250}
.pfu-marker-other{background:linear-gradient(180deg,#8490a4,#667085)}.pfu-marker-other .pfu-marker-glyph{color:#465063}
.pfu-card-distance{margin-top:6px;color:#17706d;font-size:13px;font-weight:750}

@supports not (background:color-mix(in srgb,red 10%,transparent)){
  .pfu-category-card::after{background:rgba(18,181,176,.08)}
}


/* === PFU 0.5.6 clearer map clusters === */
.pfu-map-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 2px 13px;padding:11px 12px;border:1px solid var(--pfu-border);border-radius:14px;background:#fbfdfc}
.pfu-map-summary[hidden]{display:none}
.pfu-summary-label{margin-right:2px;color:var(--pfu-muted);font-size:12px;font-weight:750}
.pfu-summary-chip{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 11px;border:1px solid #d9e9df;border-radius:999px;background:#fff;color:var(--pfu-green-dark);font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;transition:.15s ease}
.pfu-summary-chip strong{display:inline-grid;min-width:22px;height:22px;place-items:center;padding:0 5px;border-radius:999px;background:var(--pfu-green-soft);font-size:11px}
.pfu-summary-chip:hover,.pfu-summary-chip.is-active{border-color:var(--pfu-green);background:var(--pfu-green);color:#fff}
.pfu-summary-chip:hover strong,.pfu-summary-chip.is-active strong{background:rgba(255,255,255,.2);color:#fff}
.pfu-cluster-icon{background:transparent!important;border:0!important}
.pfu-cluster-bubble{display:flex;flex-direction:column;align-items:center;justify-content:center;width:54px;height:54px;border:4px solid #fff;border-radius:50%;background:linear-gradient(145deg,#35a961,#248a4c);color:#fff;box-shadow:0 7px 22px rgba(22,85,61,.35);text-align:center;line-height:1;cursor:pointer}
.pfu-cluster-bubble.is-medium{width:60px;height:60px;background:linear-gradient(145deg,#1e9d77,#126e58)}
.pfu-cluster-bubble.is-large{width:66px;height:66px;background:linear-gradient(145deg,#146d5c,#0b4d43)}
.pfu-cluster-bubble strong{font-size:18px;font-weight:900;letter-spacing:-.03em}
.pfu-cluster-bubble.is-medium strong{font-size:20px}.pfu-cluster-bubble.is-large strong{font-size:22px}
.pfu-cluster-bubble span{margin-top:3px;font-size:9px;font-weight:800;opacity:.92;text-transform:lowercase}
.marker-cluster-small,.marker-cluster-medium,.marker-cluster-large,.marker-cluster-small div,.marker-cluster-medium div,.marker-cluster-large div{background:transparent}
@media(max-width:760px){.pfu-results-meta{align-items:flex-start;flex-direction:column}.pfu-map-summary{overflow-x:auto;flex-wrap:nowrap;padding-bottom:10px}.pfu-summary-label{flex:0 0 auto}.pfu-summary-chip{flex:0 0 auto}}


/* === PFU 0.5.7 scrollable place list + individual markers === */
.pfu-layout-split .pfu-directory-grid{
    grid-template-columns:minmax(390px,430px) minmax(0,1fr);
    align-items:stretch;
}
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid){
    display:flex;
    flex-direction:column;
    gap:10px;
    height:100%;
    max-height:680px;
    min-height:380px;
    overflow-y:scroll;
    overflow-x:hidden;
    padding:2px 10px 2px 2px;
    scrollbar-width:auto;
    scrollbar-color:#9fcbb0 #edf5ef;
    overscroll-behavior:contain;
}
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid)::-webkit-scrollbar{width:11px}
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid)::-webkit-scrollbar-track{background:#edf5ef;border-radius:999px}
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid)::-webkit-scrollbar-thumb{background:#9fcbb0;border:2px solid #edf5ef;border-radius:999px}
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid)::-webkit-scrollbar-thumb:hover{background:#6fad86}

.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-place-card{
    flex:0 0 auto;
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    min-height:116px;
    max-height:none;
    overflow:hidden;
    border-radius:15px;
    background:#fff;
}
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-image-link{
    min-height:116px;
    height:100%;
}
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-image,
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-placeholder{
    width:112px;
    min-height:116px;
    height:100%;
}
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-body{
    padding:11px 13px;
    overflow:hidden;
}
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-body h3{
    margin:3px 0 5px;
    font-size:16px;
    line-height:1.22;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-body p{
    display:none;
}
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-badges{
    min-height:0;
}
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-meta,
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-address,
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-pets,
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-fee,
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-distance{
    margin-top:3px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    font-size:11.5px;
}
.pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-link{
    margin-top:5px;
    font-size:12px;
}
.pfu-layout-split .pfu-place-card.is-active{
    border-color:#2f9147;
    box-shadow:0 0 0 2px rgba(47,145,71,.16),0 10px 24px rgba(28,66,45,.10);
    background:#fbfffc;
}

.pfu-map-legend{
    position:absolute;
    right:12px;
    bottom:24px;
    z-index:650;
    display:flex;
    max-width:min(440px,calc(100% - 24px));
    gap:6px;
    flex-wrap:wrap;
    justify-content:flex-end;
    padding:7px 8px;
    border:1px solid rgba(212,229,216,.95);
    border-radius:12px;
    background:rgba(255,255,255,.92);
    box-shadow:0 7px 20px rgba(24,58,38,.10);
    backdrop-filter:blur(5px);
}
.pfu-map-legend[hidden]{display:none}
.pfu-legend-item{display:inline-flex;align-items:center;gap:5px;color:#405148;font-size:10.5px;font-weight:700;white-space:nowrap}
.pfu-legend-item i{display:block;width:10px;height:10px;border-radius:50%;background:#6c7f74}
.pfu-legend-hotel i{background:#3d79c5}.pfu-legend-cafe i{background:#d27b26}.pfu-legend-park i{background:#3b934f}.pfu-legend-vet i{background:#18a4a0}.pfu-legend-grooming i{background:#915b9b}.pfu-legend-care i{background:#748f4b}.pfu-legend-training i{background:#d58a35}.pfu-legend-petshop i{background:#4387c7}.pfu-legend-shopping i{background:#d76a91}.pfu-legend-other i{background:#718078}

@media(max-width:1100px){
    .pfu-layout-split .pfu-directory-grid{grid-template-columns:1fr}
    .pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid){
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        max-height:380px!important;
        min-height:0;
        overflow-y:auto;
    }
}
@media(max-width:680px){
    .pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid){grid-template-columns:1fr;max-height:360px!important}
    .pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-place-card{grid-template-columns:96px minmax(0,1fr);min-height:104px}
    .pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-image-link,
    .pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-image,
    .pfu-layout-split .pfu-place-list:not(.pfu-home-card-grid) .pfu-card-placeholder{width:96px;min-height:104px}
    .pfu-map-legend{left:10px;right:10px;bottom:22px;justify-content:flex-start;max-width:none;max-height:64px;overflow:auto}
}


/* === PFU 0.5.8 clusters + scroll list === */
.pfu-cluster-bubble{transition:transform .16s ease,box-shadow .16s ease}
.pfu-cluster-bubble:hover{transform:scale(1.06);box-shadow:0 9px 26px rgba(22,85,61,.42)}
.pfu-cluster-icon:focus .pfu-cluster-bubble{outline:3px solid rgba(47,145,71,.24);outline-offset:3px}

/* === PFU 0.5.12 performance: lazy directory list === */
.pfu-list-load-hint{
    flex:0 0 auto;
    padding:13px 12px;
    border:1px dashed #cbded1;
    border-radius:12px;
    background:#f7fbf8;
    color:#708078;
    text-align:center;
    font-size:12px;
    font-weight:700;
}
.pfu-place-card-pinned{order:-1}


/* === PFU 0.5.13: places without coordinates stay visible in lists === */
.pfu-card-no-geo{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin-top:7px;padding:4px 8px;border-radius:999px;background:#f7f7f2;border:1px solid #e7e4d8;color:#7c7464;font-size:11px;font-weight:700;line-height:1.2}


/* === PFU 0.5.17 frontend place ratings === */
.pfu-rate-widget{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:14px;padding:12px 14px;border:1px solid var(--pfu-border);border-radius:16px;background:#fff;box-shadow:0 8px 26px rgba(20,55,44,.05);max-width:620px}
.pfu-rate-current{display:flex;align-items:center;gap:7px;min-width:145px}.pfu-rate-current strong{font-size:25px;line-height:1;color:var(--pfu-ink)}.pfu-rating-star-mark{color:#efad19;font-size:21px}.pfu-rate-current small{color:var(--pfu-muted);font-size:12px}
.pfu-rate-action{display:flex;align-items:center;gap:10px}.pfu-rate-label{font-weight:750;color:var(--pfu-ink);font-size:13px}.pfu-rate-stars{display:flex;gap:2px;direction:ltr}.pfu-rate-star{appearance:none;border:0;background:transparent;color:#cbd3ce;font-size:28px;line-height:1;padding:1px 2px;cursor:pointer;transition:color .15s ease,transform .15s ease}.pfu-rate-star:hover,.pfu-rate-star:focus,.pfu-rate-star.is-hovered,.pfu-rate-star.is-selected{color:#efad19}.pfu-rate-star:hover,.pfu-rate-star:focus{transform:translateY(-1px)}.pfu-rate-star:disabled{cursor:default}.pfu-rate-message{flex-basis:100%;min-height:16px;color:var(--pfu-green-dark);font-size:12px}.pfu-rate-widget.is-rated{background:#f6fbf8}
@media(max-width:620px){.pfu-rate-widget{align-items:flex-start}.pfu-rate-action{flex-direction:column;align-items:flex-start;gap:5px}.pfu-rate-star{font-size:31px}}

/* === PFU 0.7.1 compact rating pill beside verification badges === */
.pfc-status-row .pfu-rate-widget.is-compact{margin:0;max-width:none;min-height:44px;padding:7px 11px;border-radius:14px;box-shadow:none;gap:8px;flex-wrap:nowrap;background:#fff9e9;border-color:#f0d99c}
.pfc-status-row .pfu-rate-widget.is-compact .pfu-rate-current{min-width:auto;gap:4px;white-space:nowrap}
.pfc-status-row .pfu-rate-widget.is-compact .pfu-rate-current strong{font-size:17px}
.pfc-status-row .pfu-rate-widget.is-compact .pfu-rating-star-mark{font-size:16px}
.pfc-status-row .pfu-rate-widget.is-compact .pfu-rate-current small{font-size:10px}
.pfc-status-row .pfu-rate-widget.is-compact .pfu-rate-action{gap:5px}
.pfc-status-row .pfu-rate-widget.is-compact .pfu-rate-label{font-size:12px;white-space:nowrap}
.pfc-status-row .pfu-rate-widget.is-compact .pfu-rate-stars{gap:0}
.pfc-status-row .pfu-rate-widget.is-compact .pfu-rate-star{font-size:20px;padding:0 1px}
.pfc-status-row .pfu-rate-widget.is-compact .pfu-rate-message:empty{display:none}
.pfc-status-row .pfu-rate-widget.is-compact .pfu-rate-message:not(:empty){position:absolute;z-index:20;margin-top:54px;padding:7px 10px;border:1px solid var(--pfu-border);border-radius:10px;background:#fff;box-shadow:0 8px 26px rgba(20,55,44,.08);white-space:nowrap}
@media(max-width:620px){.pfc-status-row .pfu-rate-widget.is-compact{flex-wrap:wrap}.pfc-status-row .pfu-rate-widget.is-compact .pfu-rate-action{flex-direction:row;align-items:center}.pfc-status-row .pfu-rate-widget.is-compact .pfu-rate-star{font-size:22px}}
.pfc-status-row .pfu-rate-widget.is-compact{position:relative}

/* 0.8.0: category-specific feature chips */
.pfu-category-features{margin:14px 0 22px;padding:15px 16px;border:1px solid #dce9e7;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(24,70,64,.04)}
.pfu-category-features__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:11px}.pfu-category-features__head>span{font-weight:850;font-size:17px;color:#193c39}.pfu-category-features__head small{font-size:12px;color:#69817e;text-align:right}.pfu-category-features__chips{display:flex;flex-wrap:wrap;gap:8px}.pfu-cat-feature{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:7px 12px 7px 8px;border:1px solid #dce8e6;border-radius:12px;background:#fff;color:#244744;font-size:13px;font-weight:750;line-height:1.15;box-shadow:0 2px 7px rgba(24,70,64,.025)}.pfu-cat-feature__icon{width:27px;height:27px;border-radius:9px;background:#edf9f6;color:#0f9b82;display:grid;place-items:center;flex:0 0 27px}.pfu-cat-feature__icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.pfu-cat-feature strong{font-weight:850}.pfu-cat-feature.is-from-description{background:#fbfdfc}.pfu-cat-feature.is-from-description .pfu-cat-feature__icon{background:#f0faf7}.pfu-cat-feature:hover{border-color:#b8ddd5;background:#fcfffe}@media(max-width:640px){.pfu-category-features{padding:14px}.pfu-category-features__head{display:block}.pfu-category-features__head small{display:block;margin-top:3px;text-align:left}.pfu-cat-feature{font-size:12px;min-height:40px;padding:6px 10px 6px 7px}}

/* 0.8.4: explicit fence status chips */
.pfu-cat-feature.is-warning{border-color:#efd59a;background:#fff9e9;color:#6d5419}
.pfu-cat-feature.is-warning .pfu-cat-feature__icon{background:#fff0bd;color:#b67a00}
.pfu-cat-feature.is-positive{border-color:#b8e0d7;background:#f7fdfb}
.pfu-cat-feature.is-positive .pfu-cat-feature__icon{background:#e2f7f1;color:#0c8e77}

/* === PFU 0.8.5 performance: server-paged list + viewport map === */
.pfu-list-loading{padding:18px 14px;border:1px solid #e1ebe6;border-radius:14px;background:#f8fbf9;color:#65766e;text-align:center;font-size:13px;font-weight:700}
.pfu-map-loading[hidden]{display:none!important}


/* === PFU 0.8.10 information trust status === */
.pfu-info-trust{display:flex;align-items:flex-start;gap:11px;margin:0 0 18px;padding:13px 15px;border:1px solid;border-radius:15px;font-size:13px;line-height:1.45;box-sizing:border-box}
.pfu-info-trust__icon{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;font-weight:900;font-size:16px}
.pfu-info-trust__body{display:flex;flex-direction:column;gap:2px}.pfu-info-trust__body strong{font-size:14px;color:inherit}.pfu-info-trust__body span{opacity:.88}
.pfu-info-trust--verified{background:#effaf5;border-color:#b8dfcd;color:#1b684f}.pfu-info-trust--verified .pfu-info-trust__icon{background:#d8f2e6;color:#147455}
.pfu-info-trust--open_sources{background:#fff9e9;border-color:#ecd79d;color:#70571b}.pfu-info-trust--open_sources .pfu-info-trust__icon{background:#ffedb6;color:#9b6e00}
.pfu-info-trust--needs_review{background:#fff2ef;border-color:#edc0b6;color:#8a3a2b}.pfu-info-trust--needs_review .pfu-info-trust__icon{background:#ffe0d9;color:#a14331}
@media(max-width:620px){.pfu-info-trust{padding:12px 13px}.pfu-info-trust__body strong{font-size:13px}}

/* === PFU 0.8.19 compact modal forms === */
html.pfu-modal-open,body.pfu-modal-open{overflow:hidden}
.pfu-modal{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;padding:24px}
.pfu-modal.is-open{display:flex}
.pfu-modal__backdrop{position:absolute;inset:0;background:rgba(17,35,34,.58);backdrop-filter:blur(3px)}
.pfu-modal__dialog{position:relative;z-index:1;width:min(680px,100%);max-height:min(86vh,820px);overflow:auto;padding:26px;border:1px solid #d9e8e5;border-radius:22px;background:#fff;box-shadow:0 28px 90px rgba(13,45,42,.24)}
.pfu-modal__dialog--wide{width:min(900px,100%)}
.pfu-modal__close{position:absolute;top:12px;right:14px;width:38px;height:38px;border:0;border-radius:50%;background:#f2f7f6;color:#244744;font-size:26px;line-height:1;cursor:pointer}
.pfu-modal__head{padding-right:44px;margin-bottom:18px}.pfu-modal__head h2{margin:4px 0 6px}.pfu-modal__head p{margin:0;color:#6f7d80}
.pfu-modal__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px;flex-wrap:wrap}
@media(max-width:640px){.pfu-modal{padding:10px;align-items:flex-end}.pfu-modal__dialog{width:100%;max-height:92vh;padding:20px 16px 18px;border-radius:20px 20px 10px 10px}.pfu-modal__actions>*{flex:1 1 auto}}

/* 0.8.21: the plugin and theme previously rendered a breadcrumb separator each. Keep only one. */
.pfu-breadcrumbs li:not(:last-child)::after{content:none!important;display:none!important}
