/* אפיקי מים – ספריית הרבנים · עיצוב v1.5
   Scoped to #afk-app so nothing leaks into the WordPress theme.
   Brand: "streams of water" — deep teal + restrained gold on warm parchment.
   The two brand colours come from the settings page (--afk-teal / --afk-gold). */
#afk-app{
  --afk-teal:#0e5a54; --afk-teal-deep:#0a423e; --afk-teal-soft:#e4efec;
  --afk-gold:#b0812c; --afk-gold-soft:#f4ecd9;
  --afk-paper:#f6f1e6; --afk-paper2:#fbf8f1; --afk-card:#ffffff;
  --afk-ink:#20211d; --afk-ink2:#4a4b44; --afk-faint:#8a8b80;
  --afk-line:#e6dfcf; --afk-line2:#efe9db; --afk-star:#c99a2e;
  --afk-maxwidth:1180px; --afk-radius:15px;
  --afk-serif:"Frank Ruhl Libre","David Libre","Noto Serif Hebrew",'Times New Roman',serif;
  --afk-shadow-sm:0 1px 2px rgba(20,30,25,.05),0 4px 14px -8px rgba(20,40,35,.16);
  --afk-shadow-md:0 8px 30px -14px rgba(14,60,54,.34);
  direction:rtl; color:var(--afk-ink);
  font-family:-apple-system,"Segoe UI","Noto Sans Hebrew","Rubik",system-ui,sans-serif;
  line-height:1.6; max-width:var(--afk-maxwidth); margin:0 auto;
  /* Reserve height up-front so the block doesn't start tiny and jump to full
     size once the feed loads (avoids layout shift inside the Elementor container). */
  min-height:90vh;
}
#afk-app *{box-sizing:border-box}
#afk-app h1,#afk-app h2,#afk-app h3{font-family:var(--afk-serif);margin:0}
#afk-app a{color:inherit;text-decoration:none}
#afk-app .afk-loading,#afk-app .afk-err{min-height:80vh;display:grid;place-items:center;padding:40px 20px;text-align:center;color:var(--afk-faint)}

/* hero */
#afk-app .afk-hero{background:linear-gradient(155deg,var(--afk-teal-deep),var(--afk-teal));color:#f6f1e6;
  border-radius:20px;padding:30px 30px 54px;position:relative;overflow:hidden}
#afk-app .afk-hero .afk-waves{position:absolute;inset:auto 0 -1px 0;height:64px;width:100%;opacity:.5}
#afk-app .afk-hero .afk-ey{font-size:12px;letter-spacing:.2em;color:var(--afk-gold);font-weight:700;text-transform:uppercase}
#afk-app .afk-hero h1{font-size:clamp(26px,4.4vw,40px);margin:8px 0 6px;color:#fbf7ec;font-weight:800;line-height:1.14}
#afk-app .afk-hero p{max-width:56ch;color:rgba(246,241,230,.86);font-size:15.5px;margin:0;position:relative;z-index:2}

/* filter panel */
#afk-app .afk-panel{background:var(--afk-card);border:1px solid var(--afk-line);border-radius:18px;
  box-shadow:var(--afk-shadow-md);padding:18px;margin:-40px 12px 22px;position:relative;z-index:5}
#afk-app .afk-srow{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch}
#afk-app .afk-search{flex:1;min-width:220px;position:relative;display:flex;align-items:center}
#afk-app .afk-search svg{position:absolute;right:13px;color:var(--afk-faint)}
#afk-app .afk-search input{width:100%;padding:13px 42px 13px 14px;border:1px solid var(--afk-line);border-radius:12px;
  background:var(--afk-paper2);color:var(--afk-ink);font:inherit;font-size:15.5px}
#afk-app .afk-search input:focus{outline:none;border-color:var(--afk-teal);box-shadow:0 0 0 3px var(--afk-teal-soft)}
#afk-app .afk-near{display:inline-flex;align-items:center;gap:8px;padding:0 18px;border-radius:12px;border:1px solid var(--afk-teal);
  background:var(--afk-teal);color:#fff;font:inherit;font-weight:700;font-size:14.5px;cursor:pointer;white-space:nowrap;transition:.15s}
#afk-app .afk-near:hover{background:var(--afk-teal-deep)}
#afk-app .afk-near.afk-on{background:var(--afk-gold);border-color:var(--afk-gold)}
#afk-app .afk-selrow{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
#afk-app .afk-fld{flex:1;min-width:150px}
#afk-app .afk-fld label{display:block;font-size:11.5px;font-weight:700;color:var(--afk-faint);margin:0 2px 5px}
#afk-app .afk-fld select{width:100%;padding:10px 12px;border:1px solid var(--afk-line);border-radius:11px;
  background:var(--afk-paper2);color:var(--afk-ink);font:inherit;font-size:14.5px;cursor:pointer}
#afk-app .afk-fld select:focus{outline:none;border-color:var(--afk-teal)}
#afk-app .afk-trow{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px;align-items:center}
#afk-app .afk-tlabel{font-size:11.5px;font-weight:700;color:var(--afk-faint);margin-inline-end:2px}
#afk-app .afk-tchip{border:1px solid var(--afk-line);background:var(--afk-paper2);color:var(--afk-ink2);border-radius:999px;
  padding:5px 13px;font:inherit;font-size:12.5px;cursor:pointer;transition:.13s}
#afk-app .afk-tchip:hover{border-color:var(--afk-teal)}
#afk-app .afk-tchip.afk-on{background:var(--afk-teal);border-color:var(--afk-teal);color:#fff;font-weight:700}
#afk-app .afk-bbottom{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:14px;
  border-top:1px solid var(--afk-line2);flex-wrap:wrap;gap:10px}
#afk-app .afk-count{font-size:14px;color:var(--afk-ink2)}
#afk-app .afk-count b{color:var(--afk-teal);font-family:var(--afk-serif);font-size:18px}
#afk-app .afk-rctl{display:flex;gap:8px;align-items:center}
#afk-app .afk-clear{background:none;border:none;color:var(--afk-faint);font:inherit;font-size:13px;cursor:pointer;text-decoration:underline}
#afk-app .afk-toggle{display:flex;border:1px solid var(--afk-line);border-radius:10px;overflow:hidden}
#afk-app .afk-toggle button{background:var(--afk-paper2);border:none;padding:8px 14px;font:inherit;font-size:13px;
  cursor:pointer;color:var(--afk-ink2);display:flex;align-items:center;gap:6px}
#afk-app .afk-toggle button.afk-on{background:var(--afk-teal);color:#fff;font-weight:700}

/* results grid */
#afk-app .afk-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;padding:0 12px 50px}
#afk-app .afk-card{background:var(--afk-card);border:1px solid var(--afk-line);border-radius:var(--afk-radius);padding:16px 17px;
  box-shadow:var(--afk-shadow-sm);cursor:pointer;transition:transform .16s,box-shadow .16s,border-color .16s;
  position:relative;display:flex;flex-direction:column;gap:10px}
#afk-app .afk-card:hover{transform:translateY(-3px);box-shadow:var(--afk-shadow-md);
  border-color:color-mix(in srgb,var(--afk-teal) 45%,var(--afk-line))}
#afk-app .afk-star{position:absolute;top:14px;left:14px;color:var(--afk-star);font-size:14px}
#afk-app .afk-ctop{display:flex;gap:13px;align-items:center}
#afk-app .afk-chead{flex:1;min-width:0}
#afk-app .afk-avatar{width:62px;height:78px;border-radius:9px;flex:none;overflow:hidden;border:1px solid var(--afk-line);
  background:var(--afk-teal-soft);box-shadow:0 2px 8px rgba(20,40,35,.16)}
#afk-app .afk-avatar img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
#afk-app .afk-card h3{font-size:18.5px;font-weight:700;line-height:1.22;padding-inline-end:16px}
#afk-app .afk-cmeta{display:flex;align-items:center;gap:6px;color:var(--afk-ink2);font-size:13.5px;margin-top:3px}
#afk-app .afk-cmeta svg{color:var(--afk-teal);flex:none}
#afk-app .afk-ctopics{display:flex;flex-wrap:wrap;gap:6px}
#afk-app .afk-rt{background:var(--afk-teal-soft);color:var(--afk-teal);border-radius:6px;padding:2px 8px;font-size:11.5px;font-weight:600}
#afk-app .afk-rt.afk-more{background:transparent;color:var(--afk-faint)}
#afk-app .afk-cfoot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:11px;border-top:1px solid var(--afk-line2)}
#afk-app .afk-cphone{direction:ltr;font-size:13.5px;color:var(--afk-ink2);font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:6px}
#afk-app .afk-cgo{color:var(--afk-teal);font-weight:700;font-size:13.5px;display:flex;align-items:center;gap:3px}
#afk-app .afk-dist{background:var(--afk-gold-soft);color:var(--afk-gold);border-radius:7px;padding:2px 9px;font-size:12px;font-weight:700}

/* map view */
#afk-app .afk-mapwrap{margin:0 12px 50px;border-radius:16px;overflow:hidden;border:1px solid var(--afk-line);height:560px;position:relative;box-shadow:var(--afk-shadow-sm)}
#afk-app .afk-map{width:100%;height:100%}
#afk-app .afk-map-svg{position:relative;background:linear-gradient(160deg,#e8f0ec,#dfeae4);width:100%;height:100%}
#afk-app .afk-map-svg svg{position:absolute;inset:0;width:100%;height:100%}
#afk-app .afk-pin{position:absolute;transform:translate(50%,-100%);cursor:pointer;z-index:2}
#afk-app .afk-pin .afk-ph{width:26px;height:26px;border-radius:50% 50% 50% 2px;background:var(--afk-teal);transform:rotate(45deg);
  border:2px solid #fff;box-shadow:0 3px 8px rgba(0,0,0,.3);transition:.15s}
#afk-app .afk-pin:hover .afk-ph{background:var(--afk-gold);transform:rotate(45deg) scale(1.15)}
#afk-app .afk-pin .afk-pl{position:absolute;top:-8px;right:34px;background:var(--afk-card);border:1px solid var(--afk-line);
  border-radius:8px;padding:5px 10px;font-size:12.5px;font-weight:700;white-space:nowrap;box-shadow:var(--afk-shadow-sm);opacity:0;pointer-events:none;transition:.15s}
#afk-app .afk-pin:hover .afk-pl{opacity:1}

/* empty */
#afk-app .afk-empty{grid-column:1/-1;text-align:center;padding:56px 20px;color:var(--afk-faint)}

/* detail */
#afk-app .afk-dhero{background:linear-gradient(155deg,var(--afk-teal-deep),var(--afk-teal));color:#f6f1e6;border-radius:20px;
  padding:30px;position:relative;overflow:hidden;margin:0 12px}
/* Fixed-height top area so the green banner starts at the SAME height on both the
   archive (empty) and the rabbi page (holds the "back" button). */
#afk-app .afk-topbar{display:flex;align-items:center;min-height:42px;padding:6px 14px 10px}
#afk-app .afk-back{display:inline-flex;align-items:center;gap:5px;background:none;border:none;color:var(--afk-teal);
  font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;padding:0}
#afk-app .afk-back:hover{color:var(--afk-teal-deep)}
#afk-app .afk-dhead{display:flex;gap:24px;align-items:center;position:relative;z-index:2}
#afk-app .afk-dphoto{width:132px;height:166px;border-radius:12px;flex:none;overflow:hidden;border:4px solid rgba(246,241,230,.92);
  box-shadow:0 8px 22px rgba(0,0,0,.32);background:var(--afk-teal-soft)}
#afk-app .afk-dphoto img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
#afk-app .afk-dbadge{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.14);
  border:1px solid rgba(246,241,230,.3);border-radius:999px;padding:4px 12px;font-size:12.5px;font-weight:700;margin-bottom:8px;color:#f6f1e6}
#afk-app .afk-dey{font-size:12px;letter-spacing:.2em;color:var(--afk-gold);font-weight:700;text-transform:uppercase}
#afk-app .afk-dhero h1{font-size:clamp(26px,4.2vw,38px);margin:8px 0 10px;color:#fdfaf2;font-weight:800}
#afk-app .afk-dmeta{display:flex;gap:16px;flex-wrap:wrap;color:rgba(246,241,230,.9);font-size:14.5px}
#afk-app .afk-dmeta span{display:flex;align-items:center;gap:6px}
#afk-app .afk-dcta{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap;position:relative;z-index:2}
#afk-app .afk-hbtn{display:inline-flex;align-items:center;gap:8px;border-radius:11px;padding:10px 18px;font:inherit;font-size:14px;font-weight:700;cursor:pointer;text-decoration:none;transition:.15s}
#afk-app .afk-hbtn.afk-solid{background:var(--afk-gold);color:#2a2008;border:1px solid var(--afk-gold)}
#afk-app .afk-hbtn.afk-ghost{background:rgba(255,255,255,.12);color:#f6f1e6;border:1px solid rgba(246,241,230,.42)}
#afk-app .afk-hbtn:hover{filter:brightness(1.06)}
/* navigation-address chooser (when a rabbi has more than one area) */
#afk-app .afk-navov{position:fixed;inset:0;background:rgba(10,20,18,.45);display:grid;place-items:center;z-index:1000;padding:20px}
#afk-app .afk-navbox{background:var(--afk-card);border:1px solid var(--afk-line);border-radius:16px;box-shadow:var(--afk-shadow-md);padding:16px;max-width:400px;width:100%;max-height:80vh;overflow:auto}
#afk-app .afk-navttl{font-family:var(--afk-serif);font-weight:700;font-size:16px;color:var(--afk-teal);margin-bottom:12px;padding-bottom:9px;border-bottom:1px solid var(--afk-line2)}
#afk-app .afk-navitem{display:flex;align-items:center;gap:11px;padding:12px 13px;border-radius:12px;border:1px solid var(--afk-line);margin-bottom:8px;color:var(--afk-ink);cursor:pointer;transition:.13s}
#afk-app .afk-navitem:last-child{margin-bottom:0}
#afk-app .afk-navitem:hover{border-color:var(--afk-teal);background:var(--afk-teal-soft)}
#afk-app .afk-navitem svg{color:var(--afk-teal);flex:none}
#afk-app .afk-navitem b{font-size:14.5px;font-weight:700;display:block}
#afk-app .afk-navloc{color:var(--afk-ink2);font-size:12.5px;display:block;margin-top:1px;font-weight:400}
#afk-app .afk-dgrid{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;margin:22px 12px 60px}
#afk-app .afk-dsec{background:var(--afk-card);border:1px solid var(--afk-line);border-radius:15px;padding:20px 22px;box-shadow:var(--afk-shadow-sm);margin-bottom:16px}
#afk-app .afk-dsec h2{font-size:16px;margin-bottom:12px;color:var(--afk-teal);font-weight:700;display:flex;align-items:center;gap:8px}
#afk-app .afk-dsec p{margin:0;color:var(--afk-ink2);font-size:14.5px;line-height:1.75}
#afk-app .afk-bigchip{background:var(--afk-teal-soft);color:var(--afk-teal);border-radius:8px;padding:6px 13px;font-size:13.5px;font-weight:600;display:inline-block}
#afk-app .afk-chiprow{display:flex;flex-wrap:wrap;gap:8px}
/* two-per-row uniform chips; an odd last chip centers on its own row */
#afk-app .afk-chipgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#afk-app .afk-chipgrid .afk-gchip{background:var(--afk-teal-soft);color:var(--afk-teal);border-radius:9px;padding:9px 10px;font-size:13.5px;font-weight:600;text-align:center;width:100%;box-sizing:border-box}
#afk-app .afk-chipgrid > .afk-gchip:last-child:nth-child(odd){grid-column:1 / -1;justify-self:center;width:calc(50% - 4px)}
#afk-app .afk-area{border:1px solid var(--afk-line);border-radius:13px;padding:15px 16px;margin-bottom:12px;background:var(--afk-paper2)}
#afk-app .afk-area:last-child{margin-bottom:0}
#afk-app .afk-at{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}
#afk-app .afk-aname{font-weight:700;font-size:15px;display:flex;align-items:center;gap:7px}
#afk-app .afk-aname svg{color:var(--afk-teal)}
#afk-app .afk-hbadge{background:var(--afk-gold-soft);color:var(--afk-gold);border-radius:6px;padding:1px 8px;font-size:11px;font-weight:700}
#afk-app .afk-arow{color:var(--afk-ink2);font-size:13.5px;margin:3px 0;display:flex;align-items:center;gap:7px}
#afk-app .afk-arow svg{color:var(--afk-faint);flex:none}
#afk-app .afk-acta{display:flex;gap:8px;margin-top:11px;flex-wrap:wrap}
#afk-app .afk-btn{display:inline-flex;align-items:center;gap:7px;border-radius:10px;padding:9px 15px;font:inherit;font-size:13.5px;
  font-weight:700;cursor:pointer;border:1px solid var(--afk-line);background:var(--afk-card);color:var(--afk-ink)}
#afk-app .afk-btn.afk-teal{background:var(--afk-teal);border-color:var(--afk-teal);color:#fff}
#afk-app .afk-btn.afk-teal:hover{background:var(--afk-teal-deep)}
#afk-app .afk-minimap{height:160px;border-radius:11px;overflow:hidden;margin-top:11px;border:1px solid var(--afk-line);background:linear-gradient(160deg,#e8f0ec,#dfeae4)}

/* mobile filter tabs (rendered only on narrow screens) */
#afk-app .afk-mtabs{display:flex;gap:7px;overflow-x:auto;margin-bottom:12px;-webkit-overflow-scrolling:touch;padding-bottom:2px}
#afk-app .afk-mtabs::-webkit-scrollbar{height:0}
#afk-app .afk-mtab{flex:0 0 auto;border:1px solid var(--afk-line);background:var(--afk-paper2);color:var(--afk-ink2);
  border-radius:999px;padding:9px 15px;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
#afk-app .afk-mtab.afk-on{background:var(--afk-teal);border-color:var(--afk-teal);color:#fff}
#afk-app .afk-mgrp .afk-near{width:100%;justify-content:center;padding:13px 18px}
#afk-app .afk-mgrp .afk-selrow{margin-top:0}
#afk-app .afk-mgrp .afk-trow{margin-top:0}

/* SVG-map popup (fallback when no Google key) */
#afk-app .afk-svgpop{position:absolute;transform:translate(50%,calc(-100% - 12px));background:var(--afk-card);border:1px solid var(--afk-line);
  border-radius:11px;box-shadow:var(--afk-shadow-md);padding:10px 13px;z-index:9;cursor:pointer;min-width:150px;max-width:230px}
#afk-app .afk-svgpop .n{font-weight:700;font-size:14px;font-family:var(--afk-serif)}
#afk-app .afk-svgpop .a{color:var(--afk-ink2);font-size:12.5px;margin-top:2px}
#afk-app .afk-svgpop .g{color:var(--afk-teal);font-weight:700;font-size:12.5px;margin-top:6px}

@media(max-width:820px){#afk-app .afk-dgrid{grid-template-columns:1fr}}
@media(max-width:560px){#afk-app .afk-dhead{flex-direction:column;text-align:center}#afk-app .afk-panel{padding:14px;margin:-36px 8px 20px}#afk-app .afk-hero{padding:24px 20px 48px}}

/* Custom Google-map popup (OverlayView) — UNSCOPED: it renders inside the map's
   own layer, outside #afk-app, so brand colours are literal here. */
.afk-gpop{transform:translate(-50%,-100%);position:absolute}
.afk-gpop-box{position:relative;transform:translateY(-14px);background:#fff;border:1px solid #e6dfcf;border-radius:13px;
  box-shadow:0 12px 32px -10px rgba(14,60,54,.5);padding:12px 14px 11px;min-width:160px;max-width:240px;
  direction:rtl;text-align:right;font-family:"Segoe UI","Noto Sans Hebrew",system-ui,sans-serif;cursor:pointer}
.afk-gpop-box::after{content:"";position:absolute;bottom:-8px;left:50%;transform:translateX(-50%) rotate(45deg);
  width:15px;height:15px;background:#fff;border-right:1px solid #e6dfcf;border-bottom:1px solid #e6dfcf}
.afk-gpop-x{position:absolute;top:5px;left:7px;border:none;background:none;font-size:19px;line-height:1;color:#b3b3a7;cursor:pointer;padding:2px 5px}
.afk-gpop-x:hover{color:#4a4b44}
.afk-gpop-n{font-weight:700;font-size:15px;font-family:"Frank Ruhl Libre","David Libre","Noto Serif Hebrew",serif;color:#20211d;padding-inline-start:18px}
.afk-gpop-a{color:#4a4b44;font-size:12.5px;margin-top:3px}
.afk-gpop-c{color:#8a8b80;font-size:12px;margin-top:1px}
.afk-gpop-go{color:#0e5a54;font-weight:700;font-size:12.5px;margin-top:8px}
