/* ---------- משתנים (לייט) ---------- */
:root{
  --bg:#f3f4f6;
  --card:#ffffff;
  --ink:#111827;
  --muted:#6b7280;
  --border:#e5e7eb;
  --focus:#3b82f6;
  --row-hover:#f3f4f6;
  --thead-bg:#f9fafb;
  --btn-bg:#f9fafb;
  --btn-hover:#f3f4f6;
  --share-bg:#ececec;
  --share-hover:#dcdcdc;
  --star-off:#d1d5db;
  --wa:#25d366;
  --wa-hover:#1ec85a;
}

/* ---------- דארק מוד – אוטומטי ---------- */
@media (prefers-color-scheme: dark){
  :root{
    --bg:#020617;
    --card:#0b1120;
    --ink:#e5e7eb;
    --muted:#9ca3af;
    --border:#1f2937;
    --focus:#60a5fa;
    --row-hover:#111a2e;
    --thead-bg:#0b1120;
    --btn-bg:#1e293b;
    --btn-hover:#273449;
    --share-bg:#1e293b;
    --share-hover:#273449;
    --star-off:#475569;
  }
}

/* ---------- בסיס ---------- */
[hidden]{ display:none !important; }

/* רקע ה-body = צבע הכותרת: Safari צובע את אזור שורת הסטטוס (שעון/סוללה) לפי צבע זה,
   כך שהוא נראה כהמשך של הכותרת. הרקע האפור עובר ל-.page שעוטף את שאר התוכן. */
html{ background:#0f172a; }

body{
  margin:0;
  background:#0f172a;
  color:var(--ink);
  font-family:"Segoe UI",Arial,sans-serif;
  font-size:18px;
}

button{ font:inherit; color:inherit; }

.page{
  display:flow-root;   /* שוליים של .container נשארים בתוך הרקע האפור */
  min-height:100vh;
  background:var(--bg);
}

a{ color:#1f6feb; text-decoration:none; }
a:hover{ text-decoration:underline; }

/* ---------- הדר ---------- */
.app-header{
  position:relative;
  overflow:hidden;
  display:flex;
  justify-content:center;
  padding:26px 20px;
  padding-top:calc(26px + env(safe-area-inset-top, 0px));   /* הכותרת נמשכת עד קצה המסך (מתחת לשעון/נוץ׳) */
  background:linear-gradient(135deg,#0f172a,#1e293b);
  border-bottom:2px solid #334155;
  box-shadow:0 4px 18px rgba(0,0,0,.35);
}

.header-content{
  display:flex;
  align-items:center;
  gap:14px;
}

.header-logo{
  width:60px;
  height:60px;
  border-radius:10px;
  object-fit:contain;
  filter:drop-shadow(0 3px 6px rgba(0,0,0,.4));
}

.title-block h1{
  margin:0;
  font-size:30px;
  font-weight:800;
  color:#e2e8f0;
  letter-spacing:-.8px;
}

.subtitle{
  font-size:14px;
  color:#94a3b8;
}

/* סילואט מסוק אפאצ׳י עדין בהדר */
.apache-ghost{
  position:absolute;
  left:0;
  top:50%;
  width:180px;
  max-width:45%;
  opacity:.15;
  transform:translateY(-50%);
  pointer-events:none;
  filter:grayscale(1) contrast(1.2);
  -webkit-mask-image:linear-gradient(to right,black 0%,transparent 100%);
  mask-image:linear-gradient(to right,black 0%,transparent 100%);
}

/* ---------- כרטיס ראשי ---------- */
.container{
  max-width:960px;
  margin:16px auto;
  padding:16px;
  background:var(--card);
  border-radius:16px;
  box-shadow:0 2px 12px rgba(0,0,0,.08);
}

/* ---------- חלונית התקנה (הוספה למסך הבית) ---------- */
.modal{
  position:fixed;
  inset:0;
  z-index:20;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
  background:rgba(2,6,23,.62);
}
.modal-card{
  width:100%;
  max-width:380px;
  max-height:100%;
  overflow-y:auto;
  box-sizing:border-box;
  padding:22px 20px 16px;
  background:var(--card);
  color:var(--ink);
  border-radius:20px;
  box-shadow:0 12px 40px rgba(0,0,0,.4);
  text-align:center;
}
.modal-icon{
  width:72px;
  height:72px;
  border-radius:16px;
  box-shadow:0 4px 12px rgba(0,0,0,.3);
}
.modal-card h2{ margin:12px 0 4px; font-size:20px; }
.modal-sub{ margin:0 0 14px; color:var(--muted); font-size:14px; }

.steps{
  margin:0 0 12px;
  padding:0;
  list-style:none;
  counter-reset:step;
  text-align:right;
}
.steps li{
  counter-increment:step;
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 0;
  font-size:15px;
  line-height:1.5;
  border-top:1px solid var(--border);
}
.steps li::before{
  content:counter(step);
  flex:none;
  width:26px;
  height:26px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--focus);
  color:#fff;
  font-size:14px;
  font-weight:700;
}
.modal-note{
  margin:0 0 12px;
  padding:8px 10px;
  background:var(--thead-bg);
  border-radius:10px;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}
.modal-note:empty{ display:none; }

.btn-primary,
.btn-secondary,
.btn-link{
  display:block;
  width:100%;
  box-sizing:border-box;
  cursor:pointer;
}
.btn-primary,
.btn-secondary{
  padding:12px;
  margin-bottom:8px;
  border-radius:12px;
  font-size:16px;
  font-weight:600;
}
.btn-primary{ border:none; background:var(--wa); color:#fff; }
.btn-primary:hover{ background:var(--wa-hover); }
.btn-secondary{ border:1px solid var(--border); background:var(--btn-bg); }
.btn-secondary:hover{ background:var(--btn-hover); }
.btn-link{
  padding:8px;
  border:none;
  background:transparent;
  color:var(--muted);
  font-size:14px;
  text-decoration:underline;
}

.ios-share{
  display:inline-block;
  width:1.2em;
  height:1.2em;
  vertical-align:-0.25em;
  background:url("assets/share.svg") center / contain no-repeat;
}
@media (prefers-color-scheme: dark){
  .ios-share{ filter:invert(1); }
}

/* ---------- חיפוש ופילטרים ---------- */
.search-row{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}

#search{
  flex:1;
  min-width:220px;
  padding:12px 14px;
  font-size:16px;
  border:1px solid var(--border);
  border-radius:12px;
  outline:0;
  background:var(--card);
  color:var(--ink);
}

#search:focus{
  border-color:var(--focus);
  box-shadow:0 0 0 3px rgba(59,130,246,.25);
}

.clear-btn,
.chip{
  border:1px solid var(--border);
  background:var(--btn-bg);
  cursor:pointer;
  font-size:14px;
}
.clear-btn{ padding:10px 14px; border-radius:10px; }
.chip{ padding:6px 10px; border-radius:999px; }
.clear-btn:hover,
.chip:hover{ background:var(--btn-hover); }
.chip:focus-visible{ outline:2px solid var(--focus); }

.filters{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:8px;
  color:var(--muted);
  font-size:14px;
  flex-wrap:wrap;
}

.recents{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-top:10px;
}

.status{
  margin-top:8px;
  color:var(--muted);
}

/* ---------- טבלה ---------- */
.table-wrapper{
  width:100%;
  overflow-x:auto;
  margin-top:12px;
}

table{
  width:100%;
  border-collapse:collapse;
  font-size:17px;
}

th{
  position:sticky;
  top:0;
  padding:16px;
  text-align:right;
  background:var(--thead-bg);
  color:var(--muted);
  border-bottom:2px solid var(--border);
}

td{
  padding:16px;
  border-bottom:1px solid var(--border);
}

tr:hover{ background:var(--row-hover); }

.col-fav{ width:56px; }
.col-town{ width:150px; }
.col-phone{ width:200px; }

/* ---------- יישוב + רבש״צ ---------- */
.town-name{
  display:block;
  font-size:17px;
  font-weight:600;
  color:var(--ink);
  line-height:1.2;
}

.rabshatz-line{
  margin-top:2px;
  font-size:13px;
  color:var(--muted);
  line-height:1.1;
}

/* ---------- כוכב מועדפים ---------- */
.star{
  cursor:pointer;
  font-size:20px;
  line-height:1;
  color:#f59e0b;
  background:transparent;
  border:none;
  transition:transform .12s ease-out;
}
.star[aria-pressed="false"]{ color:var(--star-off); }
.star:hover{ transform:translateY(-1px) scale(1.08); }

.star-animate{ animation:star-pop .22s ease-out; }

@keyframes star-pop{
  0%  { transform:scale(.4); text-shadow:0 0 0 rgba(245,158,11,0); }
  60% { transform:scale(1.4) rotate(-12deg); text-shadow:0 0 10px rgba(245,158,11,.8); }
  100%{ transform:scale(1); text-shadow:0 0 0 rgba(245,158,11,0); }
}

/* ---------- טלפון + כפתורי פעולה ---------- */
.phone-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:13px;
  white-space:nowrap;
}

.phone-actions{
  display:flex;
  gap:6px;
  flex-shrink:0;
}

.icon-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:8px 10px;
  font-size:14px;
  border-radius:10px;
  border:1px solid var(--border);
  background:var(--btn-bg);
  cursor:pointer;
  transition:background .15s ease, transform .1s ease, box-shadow .15s ease;
}
.icon-btn:hover{
  background:var(--btn-hover);
  transform:translateY(-1px) scale(1.06);
}
.icon-btn:active{ transform:scale(.97); }

.call-btn{ padding:8px 16px; }
.call-btn svg{
  width:20px;
  height:20px;
  fill:currentColor;
}
.phone-number{
  font-size:18px;
  font-weight:600;
}

.chat-btn{ background:var(--wa); border-color:transparent; }
.chat-btn:hover{ background:var(--wa-hover); }

.share-btn{ background:var(--share-bg); border-color:transparent; }
.share-btn:hover{ background:var(--share-hover); }

.wa-icon,
.share-icon{
  display:block;
  width:20px;
  height:20px;
  background:center / contain no-repeat;
}
.wa-icon{ background-image:url("assets/whatsapp.svg"); }
.share-icon{ background-image:url("assets/share.svg"); }

@media (prefers-color-scheme: dark){
  .share-icon{ filter:invert(1); }
}

/* ---------- כפתור תמיכה (וואטסאפ למבצעים) ---------- */
.support-btn{
  position:fixed;
  left:16px;
  bottom:calc(16px + env(safe-area-inset-bottom, 0px));
  z-index:10;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 16px;
  border:none;
  border-radius:999px;
  background:var(--wa);
  color:#fff;
  font-size:15px;
  font-weight:600;
  cursor:pointer;
  box-shadow:0 4px 14px rgba(0,0,0,.25);
  transition:background .15s ease, transform .1s ease;
}
.support-btn:hover{ background:var(--wa-hover); transform:translateY(-1px); }
.support-btn .wa-icon{ filter:brightness(0) invert(1); }

/* ---------- פוטר ---------- */
footer{
  text-align:center;
  padding:16px 16px 80px; /* מקום לכפתור התמיכה */
  color:var(--muted);
  font-size:14px;
}

/* ===== מובייל עד 640px — כל שורה ככרטיס ===== */
@media (max-width:640px){
  .container{ margin:12px; padding:12px; }

  .table-wrapper{ overflow:visible; margin-top:8px; }
  thead{ display:none; }
  tbody{ display:block; }

  tbody tr{
    position:relative;
    display:block;
    margin-bottom:8px;
    padding:10px 14px;
    background:var(--card);
    border:1px solid var(--border);
    border-radius:12px;
    box-shadow:0 1px 3px rgba(15,23,42,.06);
  }

  tbody td{
    display:block;
    width:auto;
    padding:0;
    border:none;
  }

  /* כוכב בפינה שמאלית עליונה */
  .star{
    position:absolute;
    top:10px;
    left:10px;
  }

  .col-town{ padding-top:6px; margin-bottom:4px; }
  .col-phone{ margin-top:6px; }

  .phone-row{ gap:6px; }
  .call-btn{ flex:1 1 32%; gap:8px; font-size:13px; }
  .call-btn svg{ width:18px; height:18px; }
  .phone-number{ font-size:13px; }

  .phone-actions{ flex:1 1 68%; }
  .phone-actions .icon-btn{ flex:1 1 0; }
  .icon-btn{ font-size:13px; }
  .icon-btn:hover{ transform:translateY(-1px) scale(1.03); }

  .wa-icon,
  .share-icon{ width:16px; height:16px; }
}
