/* חיבור המנוע החדש אל עיצוב האתר המקורי */
:root {
  --primary: var(--navy);
  --primary-dark: var(--navy-dark);
  --paper: #fff;
  --line: #e3e9f3;
  --ink: #142342;
  --muted: #718099;
  --danger: #c94f4f;
}

.public-page-main { min-height: calc(100vh - 180px); padding: 42px 0 64px; }
.public-page-main .auth-wrap, .public-page-main .setup-wrap { min-height: calc(100vh - 250px); }
.public-page-main .panel { margin-top: 0; }

/* התאמות למסכים החדשים, באותה שפה עיצובית של האתר */
.app-main .page-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:18px; }
.app-main .page-heading h1 { margin:0; color:var(--navy); font-size:32px; }
.app-main .page-heading p { margin:7px 0 0; color:#4e5f7b; }
.app-main .page-heading code { direction:ltr; display:inline-block; background:#eef3fb; padding:2px 7px; border-radius:5px; }
.app-main .panel { margin-top:18px; }
.app-main .panel-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.app-main .panel-head h2 { margin:0; color:var(--navy); }
.app-main .panel-head p { margin:4px 0 0; color:var(--muted); }
.app-main .kpi-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:18px; }
.app-main .kpi { background:#fff; border:1px solid var(--line); border-radius:16px; padding:18px; box-shadow:0 10px 26px rgba(13,39,83,.06); }
.app-main .kpi span { display:block; color:var(--muted); font-size:13px; font-weight:700; }
.app-main .kpi strong { display:block; color:var(--navy); font-size:32px; line-height:1.15; margin:7px 0 3px; }
.app-main .kpi small { color:var(--muted); }
.app-main .two-col { display:grid; grid-template-columns:1.2fr .8fr; gap:18px; margin-top:18px; }
.app-main .card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.app-main .ambassador-card { border:1px solid var(--line); border-radius:14px; padding:16px; background:#fff; }
.app-main .person-row { display:flex; align-items:center; gap:10px; }
.app-main .person-row h3 { margin:0; color:var(--navy); }
.app-main .person-row p, .app-main .muted { color:var(--muted); font-size:12px; }
.app-main .avatar.large { width:42px; height:42px; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; background:#e8effb; color:var(--navy); font-weight:900; }
.app-main .card-metric { margin:16px 0; display:flex; align-items:baseline; gap:7px; }
.app-main .card-metric strong { font-size:25px; color:var(--navy); }
.app-main .card-metric span { color:var(--muted); font-size:12px; }
.app-main .form-stack { display:grid; gap:16px; }
.app-main .table-panel { overflow:hidden; }
.app-main .link-cell, .app-main .inline-link { direction:ltr; text-align:left; display:block; max-width:350px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; color:#50617d; font-size:12px; margin-bottom:6px; }
.app-main .action-cell { display:flex; align-items:center; flex-wrap:wrap; gap:5px; }
.app-main .inline-form, .app-main .inline-status { display:inline; }
.app-main .small-select { min-width:135px; padding:7px 9px; }
.app-main .empty-cell { text-align:center; color:var(--muted); padding:36px; }
.app-main .tips { background:linear-gradient(145deg,#fff9ed,#fff); }
.app-main .tips ol { margin:0; padding-right:20px; }
.app-main .tips li { margin:8px 0; color:#4e5f7b; }

.portal-hero { display:grid; grid-template-columns:1fr auto; align-items:center; gap:26px; padding:28px; border-radius:18px; background:linear-gradient(135deg,#e8effd,#fff); border:1px solid var(--line); box-shadow:var(--shadow); }
.portal-hero h1 { color:var(--navy); margin:5px 0 8px; }
.portal-hero p { margin:0; color:#4e5f7b; }
.progress-circle { --size:150px; width:var(--size); height:var(--size); border-radius:50%; display:grid; place-content:center; text-align:center; background:conic-gradient(var(--gold) calc(var(--progress) * 1%),#e5ebf4 0); position:relative; color:var(--navy); }
.progress-circle::before { content:""; position:absolute; inset:10px; border-radius:50%; background:#fff; }
.progress-circle > * { position:relative; z-index:1; }
.progress-circle strong { font-size:31px; line-height:1; }
.progress-circle small { margin-top:5px; color:var(--muted); }
.kpi-grid.compact { grid-template-columns:repeat(2,minmax(0,1fr)); margin:18px 0; }
.home-hero, .dashboard-hero { background:linear-gradient(135deg,#eef4ff,#fff); border:1px solid var(--line); border-radius:20px; padding:28px; box-shadow:var(--shadow); }
.hero-card { background:var(--navy); color:#fff; border-radius:16px; padding:20px; min-width:190px; }
.hero-card strong { display:block; color:var(--gold-light); font-size:38px; margin:5px 0; }
.meter { height:8px; background:#e6edf7; overflow:hidden; border-radius:999px; margin-top:8px; }
.meter i { display:block; height:100%; background:var(--gold); border-radius:inherit; }

@media(max-width:850px) {
  .site-menu { display:none; }
  .site-brand { min-width:0; }
  .site-brand strong { font-size:17px; }
  .site-brand small { display:none; }
  .site-logo { width:48px; height:48px; }
  .site-actions a:not(.site-cta) { display:none; }
  .app-main .page-heading, .portal-hero { grid-template-columns:1fr; display:grid; align-items:start; }
  .app-main .kpi-grid, .kpi-grid.compact, .app-main .card-grid, .app-main .two-col { grid-template-columns:1fr; }
  .progress-circle { --size:126px; }
  .public-page-main { padding-top:28px; }
}

.portal-kpis { margin:18px 0; }
.contacts-hero { display:grid; grid-template-columns:1fr minmax(220px,.75fr); gap:20px; align-items:center; }
.contacts-link-box { direction:ltr; text-align:left; background:#fff; border:1px dashed #b8c8e5; color:#45618d; padding:13px; border-radius:10px; font-size:12px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ambassador-card--inactive { opacity:.66; background:#f8fafc; }
.ambassador-card--inactive .ambassador-link { text-decoration:line-through; }
@media(max-width:850px){ .contacts-hero { grid-template-columns:1fr; } }

/* הודעות מובנות – תצוגה ידידותית בסגנון WhatsApp */
.portal-hero--compact { grid-template-columns:1fr auto; padding:22px 26px; }
.message-send-layout { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr); gap:20px; align-items:stretch; margin-top:18px; }
.message-template-list { display:grid; gap:10px; }
.message-template-card { display:flex; align-items:center; gap:12px; padding:13px; border:1px solid #e2e9f3; border-radius:14px; background:#fff; text-decoration:none; color:var(--ink); transition:.16s ease; }
.message-template-card:hover { transform:translateY(-1px); border-color:#b8c8e5; box-shadow:0 9px 22px rgba(13,39,83,.08); }
.message-template-card.is-selected { border-color:#cda64a; background:#fffaf0; box-shadow:0 8px 18px rgba(205,166,74,.12); }
.message-template-card > span:nth-child(2) { display:grid; gap:3px; flex:1; }
.message-template-card strong { color:var(--navy); font-size:15px; }
.message-template-card small { color:var(--muted); font-size:12px; }
.message-template-card b { color:#9a6a08; font-size:12px; }
.message-template-number { width:32px; height:32px; flex:0 0 32px; display:grid; place-items:center; border-radius:50%; background:#edf3ff; color:var(--navy); font-weight:900; }
.message-template-card.is-selected .message-template-number { background:#dcae40; color:#fff; }
.whatsapp-phone { display:grid; grid-template-rows:auto 1fr; min-height:475px; overflow:hidden; border:9px solid #1a2437; border-radius:30px; background:#efece5; box-shadow:0 18px 40px rgba(9,29,62,.18); }
.whatsapp-phone-top { display:flex; align-items:center; gap:10px; padding:14px 15px; color:#fff; background:#0b5b51; direction:rtl; }
.whatsapp-back { font-size:31px; line-height:.7; transform:translateY(-1px); }
.whatsapp-contact-avatar { width:35px; height:35px; display:grid; place-items:center; border-radius:50%; background:#dfeee7; color:#0b5b51; font-weight:900; }
.whatsapp-phone-top > span:last-child { display:grid; gap:2px; }
.whatsapp-phone-top strong { font-size:14px; }
.whatsapp-phone-top small { font-size:10px; opacity:.85; }
.whatsapp-chat-area { position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:14px; padding:20px 15px; min-height:375px; background-color:#efece5; background-image:radial-gradient(rgba(84,101,78,.12) 1px, transparent 1px); background-size:15px 15px; }
.whatsapp-date { align-self:center; padding:5px 12px; border-radius:7px; background:#fff; color:#748194; font-size:11px; box-shadow:0 2px 5px rgba(0,0,0,.05); }
.whatsapp-bubble { position:relative; max-width:89%; padding:13px 13px 8px; border-radius:5px 0 5px 5px; background:#dcf8c6; color:#1d3029; line-height:1.72; font-size:14px; box-shadow:0 2px 4px rgba(0,0,0,.08); }
.whatsapp-bubble::before { content:""; position:absolute; top:0; right:-8px; border-top:10px solid #dcf8c6; border-left:9px solid transparent; }
.whatsapp-bubble small { display:block; text-align:left; margin-top:7px; color:#75937c; font-size:10px; }
.message-send-action { margin-top:18px; }
.message-send-form { display:grid; gap:15px; }
.message-send-form > div:first-of-type { display:grid; gap:3px; }
.message-send-form > div:first-of-type strong { color:var(--navy); }
.message-send-form > div:first-of-type span { color:var(--muted); font-size:13px; }
.personal-message-details { border-top:1px solid var(--line); padding-top:13px; }
.personal-message-details summary { color:#45618d; cursor:pointer; font-weight:800; }
.personal-message-details .form-group { margin-top:13px; }
.btn-whatsapp { width:100%; min-height:50px; font-size:16px; }
.message-admin-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.message-admin-card { display:grid; gap:12px; padding:17px; border:1px solid #e1e8f3; border-radius:15px; background:#fff; }
.message-admin-card.is-inactive { opacity:.6; background:#f8fafc; }
.message-admin-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
.message-admin-card h3 { margin:0; color:var(--navy); font-size:17px; }
.message-admin-card p { margin:4px 0 0; color:var(--muted); font-size:12px; }
.message-admin-preview { min-height:110px; padding:12px; border-radius:11px; background:#f6f9fd; color:#4d5e78; line-height:1.65; font-size:13px; white-space:normal; }
.checkbox-group > span:last-child { display:flex; align-items:center; gap:8px; font-size:14px; font-weight:700; }
.app-hero--compact { padding:22px 26px; }

@media(max-width:850px){
  .portal-hero--compact, .message-send-layout { grid-template-columns:1fr; }
  .message-send-layout { gap:15px; }
  .whatsapp-phone { min-height:445px; max-width:430px; width:100%; justify-self:center; }
  .message-admin-list { grid-template-columns:1fr; }
}

/* מוכנות משפחתית: שני שלבים בלבד */
.app-kpi--family { grid-template-columns:repeat(3,minmax(0,1fr)); }
.campaign-flow { display:flex; align-items:center; gap:12px; justify-content:space-between; }
.campaign-flow > i { height:2px; flex:1; min-width:26px; background:#dfe6f2; }
.flow-stage { display:grid; grid-template-columns:auto; justify-items:center; gap:6px; text-align:center; color:#8a96a9; min-width:110px; }
.flow-stage b { width:34px; height:34px; display:grid; place-items:center; border-radius:50%; border:2px solid #cbd5e5; color:#8090a7; background:#fff; }
.flow-stage strong { color:#66758c; font-size:13px; }
.flow-stage span { color:#8a96a9; font-size:11px; }
.flow-stage.is-active b { border-color:#b88c27; background:#fff7e7; color:#9d7314; }
.flow-stage.is-active strong { color:#946b10; }
.flow-stage.is-complete b { border-color:#2f8d5a; background:#e8f7ee; color:#237447; }
.flow-stage.is-complete strong { color:#237447; }
.readiness-summary { margin-top:25px; padding-top:17px; border-top:1px solid var(--line); display:flex; align-items:center; gap:10px; }
.readiness-summary strong { color:var(--navy); font-size:31px; line-height:1; }
.readiness-summary span { color:var(--muted); font-size:13px; font-weight:700; }
.campaign-flow--vertical { align-items:stretch; flex-direction:column; gap:0; }
.campaign-flow--vertical > i { flex:none; width:2px; min-height:25px; height:25px; margin-right:16px; background:#dfe6f2; }
.campaign-flow--vertical .flow-stage { width:100%; grid-template-columns:34px 1fr; justify-items:stretch; align-items:center; text-align:right; gap:11px; }
.campaign-flow--vertical .flow-stage > div { display:grid; gap:3px; }
.campaign-flow--vertical .flow-stage strong { font-size:15px; }
.campaign-flow--vertical .flow-stage span { font-size:12px; }

@media(max-width:850px){
  .app-kpi--family { grid-template-columns:1fr; }
  .campaign-flow:not(.campaign-flow--vertical) { align-items:flex-start; gap:6px; }
  .campaign-flow:not(.campaign-flow--vertical) > i { margin-top:17px; }
  .flow-stage { min-width:0; flex:1; }
  .flow-stage strong { font-size:12px; }
  .flow-stage span { font-size:10px; }
}


/* השלמות לאזור האישי של השגריר */
.site-nav--portal { justify-content:space-between; }
.site-nav--portal .site-actions { margin-right:auto; }
.portal-logout-link { color:#53627a; font-size:13px; font-weight:800; padding:8px 3px; }
.portal-logout-link:hover { color:var(--navy); }
.ambassador-card--clickable { cursor:pointer; transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease; }
.ambassador-card--clickable:hover, .ambassador-card--clickable:focus { transform:translateY(-2px); border-color:#b5c8e7; box-shadow:0 18px 36px rgba(10,42,86,.14); outline:none; }
.message-mode-tabs { display:flex; gap:8px; margin-top:18px; padding:5px; width:max-content; max-width:100%; border:1px solid #e1e8f2; border-radius:13px; background:#f7f9fd; }
.message-mode-tabs a { color:#63728a; font-weight:900; font-size:14px; text-decoration:none; padding:10px 15px; border-radius:9px; }
.message-mode-tabs a.is-active { color:#fff; background:var(--navy); box-shadow:0 6px 14px rgba(12,40,84,.18); }
.message-choices .textarea { min-height:295px; line-height:1.8; }
@media(max-width:700px) {
  .site-nav--portal .site-actions { gap:7px; }
  .portal-logout-link { font-size:12px; }
  .message-mode-tabs { width:100%; }
  .message-mode-tabs a { flex:1; text-align:center; padding:10px 7px; font-size:13px; }
}

/* יעדי מוכנות כלליים ויעדי גיוס אישיים */
.metric-card--money strong,
.mini-card--money strong,
.money-value { white-space:nowrap; color:var(--gold-dark, #8d6716); }
.financial-summary-card { display:flex; align-items:center; justify-content:space-between; gap:22px; margin:20px auto 8px; padding:22px 26px; border:1px solid #ead6a1; border-radius:18px; background:linear-gradient(135deg,#fffaf0,#fff); box-shadow:0 12px 30px rgba(125,91,20,.08); }
.financial-summary-card > div:first-child { display:grid; gap:4px; }
.financial-summary-card span { color:#6f5a31; font-size:14px; font-weight:800; }
.financial-summary-card strong { color:var(--navy); font-size:clamp(28px,4vw,43px); line-height:1.05; }
.financial-summary-card small { color:#7a6a4d; font-weight:700; }
.financial-summary-goals { display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end; }
.financial-summary-goals span { padding:9px 12px; background:#fff; border:1px solid #eddcae; border-radius:999px; color:#695a3f; font-size:13px; }
.financial-summary-goals b { color:var(--navy); }
.app-kpi--five { grid-template-columns:repeat(5,minmax(0,1fr)); }
.app-kpi--four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.ambassador-financial { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:14px 0 10px; padding:10px 11px; background:#fff9ec; border:1px solid #f0ddad; border-radius:11px; }
.ambassador-financial span { color:#80652f; font-size:12px; font-weight:800; }
.ambassador-financial strong { color:#5e4816; font-size:18px; white-space:nowrap; }
.ambassador-target-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:end; margin:0 0 13px; }
.ambassador-target-form .input { min-width:0; padding:9px 10px; }
.app-card--attention { border-color:#e2b45d; box-shadow:0 0 0 3px rgba(212,164,53,.10); }

@media(max-width:1050px) {
  .app-kpi--five { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .app-kpi--four { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
  .financial-summary-card { align-items:flex-start; flex-direction:column; padding:19px; }
  .financial-summary-goals { justify-content:flex-start; }
  .app-kpi--five, .app-kpi--four { grid-template-columns:1fr; }
  .ambassador-target-form { grid-template-columns:1fr; }
}


/* דף בית והתקדמות כללית בתוך האזור האישי של השגריר */
.portal-home-link { color:var(--navy); font-size:13px; font-weight:900; padding:9px 11px; border:1px solid #d7e1f0; border-radius:10px; background:#fff; text-decoration:none; white-space:nowrap; }
.portal-home-link:hover { border-color:#a9bddc; background:#f5f8fe; }
.campaign-global-progress { display:grid; gap:18px; margin:18px 0; padding:24px; border:1px solid #cfdceb; border-radius:18px; background:linear-gradient(135deg,#f3f7fd,#fff 64%); box-shadow:0 12px 28px rgba(10,42,86,.07); }
.campaign-global-progress-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.campaign-global-progress h2 { margin:5px 0 7px; color:var(--navy); font-size:22px; }
.campaign-global-progress p { margin:0; color:#66758c; font-size:13px; line-height:1.65; }
.campaign-global-progress-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }
.campaign-global-stat { display:grid; gap:9px; min-width:0; padding:17px; border:1px solid #dfe7f2; border-radius:14px; background:#fff; }
.campaign-global-stat > span { color:#62728b; font-size:12px; font-weight:900; }
.campaign-global-stat > strong { color:var(--navy); font-size:28px; line-height:1; white-space:nowrap; }
.campaign-global-stat > strong small { color:#758399; font-size:15px; font-weight:800; }
.campaign-global-stat .metric-line { margin:2px 0 -2px; }
.campaign-global-stat .metric-line span { color:#7a889b; font-size:11px; }
.campaign-global-stat .metric-line b { color:#445b7d; font-size:12px; }
.campaign-global-stat > small { color:#76613b; font-size:12px; line-height:1.5; font-weight:700; }
.campaign-global-stat--money { border-color:#ead9ad; background:linear-gradient(145deg,#fffaf0,#fff); }
.campaign-global-stat--money > strong { color:#7b5a15; font-size:26px; }
.campaign-global-readiness { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:20px; padding-top:18px; border-top:1px solid #dfe7f2; }
.campaign-global-readiness-score { --size:104px; width:var(--size); height:var(--size); display:grid; place-content:center; text-align:center; border-radius:50%; background:conic-gradient(var(--gold) calc(var(--progress) * 1%),#dfe8f3 0); position:relative; }
.campaign-global-readiness-score::before { content:""; position:absolute; inset:9px; border-radius:50%; background:#fff; }
.campaign-global-readiness-score > * { position:relative; z-index:1; }
.campaign-global-readiness-score strong { color:var(--navy); font-size:22px; line-height:1; }
.campaign-global-readiness-score span { margin-top:5px; color:#60718b; font-size:10px; font-weight:900; }
.campaign-global-flow { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:12px; }
.campaign-global-flow > i { height:2px; min-width:25px; background:#d4dfed; }
.campaign-global-flow .flow-stage { display:grid; grid-template-columns:34px 1fr; justify-items:stretch; align-items:center; gap:10px; min-width:0; text-align:right; }
.campaign-global-flow .flow-stage > div { display:grid; gap:3px; }
.campaign-global-flow .flow-stage strong { font-size:14px; }
.campaign-global-flow .flow-stage span { font-size:11px; line-height:1.4; }
.campaign-global-readiness > p { grid-column:2; color:#78869a; font-size:11px; line-height:1.5; }
@media(max-width:850px) {
  .campaign-global-progress { padding:19px; }
  .campaign-global-progress-head { flex-direction:column; }
  .campaign-global-progress-grid { grid-template-columns:1fr; }
  .campaign-global-readiness { grid-template-columns:1fr; justify-items:start; }
  .campaign-global-flow { width:100%; grid-template-columns:1fr; align-items:stretch; gap:0; }
  .campaign-global-flow > i { width:2px; height:22px; min-height:22px; margin-right:16px; }
  .campaign-global-readiness > p { grid-column:auto; }
}
@media(max-width:700px) {
  .portal-home-link { padding:7px 8px; font-size:12px; }
  .site-nav--portal .site-actions { flex-wrap:wrap; justify-content:flex-end; }
}

/* ===== חוויית שגריר: מסלול קצר וברור, מותאם לנייד ולמחשב ===== */
.ambassador-flow-page { padding-top:34px; padding-bottom:70px; }
.ambassador-dashboard-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:34px;
  position:relative;
  overflow:hidden;
  padding:32px 36px;
  color:#fff;
  border-radius:24px;
  background:linear-gradient(135deg,#08275a 0%,#123f7a 68%,#15477d 100%);
  box-shadow:0 20px 46px rgba(7,37,85,.18);
}
.ambassador-dashboard-hero::before,
.ambassador-dashboard-hero::after { content:""; position:absolute; border:1px solid rgba(255,255,255,.14); border-radius:50%; pointer-events:none; }
.ambassador-dashboard-hero::before { width:330px; height:330px; top:-210px; left:-80px; }
.ambassador-dashboard-hero::after { width:250px; height:250px; bottom:-180px; right:42%; }
.ambassador-dashboard-copy { position:relative; z-index:1; }
.ambassador-dashboard-copy .eyebrow { margin-bottom:8px; color:#efc86c; }
.ambassador-dashboard-copy h1 { margin:0 0 9px; color:#fff; font-size:clamp(29px,3.2vw,43px); line-height:1.12; }
.ambassador-dashboard-copy p { max-width:620px; margin:0; color:#dceaff; line-height:1.65; font-size:15px; }
.hero-scroll-action { display:inline-flex; align-items:center; gap:9px; margin-top:18px; color:#08275a; background:#fff; border-radius:12px; padding:11px 15px; font-weight:900; font-size:14px; box-shadow:0 8px 19px rgba(0,0,0,.14); }
.hero-scroll-action:hover { transform:translateY(-1px); }
.hero-scroll-action span { font-size:18px; line-height:1; }
.ambassador-progress-ring {
  --ring-size:136px;
  width:var(--ring-size); height:var(--ring-size); flex:0 0 auto;
  display:grid; place-items:center; position:relative; border-radius:50%;
  color:#fff; background:conic-gradient(#efc86c calc(var(--progress) * 1%),rgba(255,255,255,.22) 0);
  box-shadow:0 15px 30px rgba(0,0,0,.2); z-index:1;
}
.ambassador-progress-ring::before { content:""; position:absolute; inset:10px; border-radius:50%; background:#113c76; box-shadow:inset 0 0 0 1px rgba(255,255,255,.1); }
.ambassador-progress-ring > div { position:relative; z-index:1; text-align:center; }
.ambassador-progress-ring strong { display:block; font-size:31px; line-height:1; }
.ambassador-progress-ring span { display:block; margin-top:6px; color:#d8e8ff; font-size:11px; font-weight:800; }

.ambassador-start-guide {
  display:grid; grid-template-columns:210px minmax(0,1fr); align-items:center; gap:22px;
  margin-top:18px; padding:18px 20px; border:1px solid #dfe8f4; border-radius:19px; background:#fff; box-shadow:0 10px 26px rgba(13,39,83,.045);
}
.ambassador-start-guide-title { display:flex; align-items:center; gap:10px; }
.guide-icon { display:grid; place-items:center; width:36px; height:36px; border-radius:12px; background:#e8f7ee; color:#247447; font-weight:900; }
.ambassador-start-guide h2 { margin:0 0 2px; color:var(--navy); font-size:18px; }
.ambassador-start-guide p { margin:0; color:var(--muted); font-size:12px; line-height:1.5; }
.guide-groups { display:grid; grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr); align-items:center; gap:12px; }
.guide-group-head { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:0 2px 7px; }
.guide-group-head b { color:#295287; font-size:12px; }
.guide-group-head small { color:var(--muted); font-size:10px; }
.guide-group--campaign .guide-group-head b { color:#93680b; }
.guide-steps { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.guide-step { min-height:72px; padding:10px 11px; border:1px solid #e6edf6; border-radius:13px; background:#f9fbfe; }
.guide-step i { display:inline-grid; place-items:center; width:22px; height:22px; margin-left:6px; border-radius:50%; background:#315f99; color:#fff; font-style:normal; font-size:11px; font-weight:900; vertical-align:middle; }
.guide-step strong { font-size:12px; color:#253b5d; }
.guide-step small { display:block; margin-top:4px; color:#7b8ca2; font-size:10px; line-height:1.35; }
.guide-step.is-done { border-color:#bee2ce; background:#f2fbf6; }
.guide-step.is-done i { background:#2f985a; }
.guide-group--campaign .guide-step { border-color:#f0e3bc; background:#fffaf0; }
.guide-group--campaign .guide-step i { background:#c98d1e; }
.guide-step.is-locked { opacity:.68; }
.guide-group--campaign.is-live .guide-step.is-active { border-color:#d9b861; background:#fff8e5; opacity:1; }
.guide-bridge { display:grid; place-items:center; position:relative; width:43px; height:43px; border:1px solid #ead8a5; border-radius:50%; color:#9f7419; background:#fff8e6; font-size:19px; }
.guide-bridge small { position:absolute; top:48px; white-space:nowrap; color:#9b782f; font-size:10px; font-weight:800; }

.ambassador-personal-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:22px; }
.ambassador-personal-card { min-height:184px; position:relative; overflow:hidden; padding:18px; border:1px solid #e0e8f2; border-radius:19px; background:#fff; box-shadow:0 10px 24px rgba(13,39,83,.045); }
.ambassador-personal-card::after { content:""; position:absolute; width:120px; height:120px; bottom:-74px; left:-49px; border-radius:50%; background:rgba(44,105,172,.08); }
.ambassador-personal-card--financial::after { background:rgba(201,141,30,.11); }
.ambassador-personal-card--donation::after { background:rgba(47,152,90,.10); }
.ambassador-personal-card.is-needed { border-color:#ead08f; }
.personal-card-top { display:flex; align-items:center; gap:8px; position:relative; z-index:1; color:#63728a; font-size:13px; font-weight:900; }
.personal-card-icon { display:grid; place-items:center; width:31px; height:31px; border-radius:10px; background:#eaf1fc; color:#16447d; font-size:15px; }
.ambassador-personal-card--financial .personal-card-icon { background:#fff2cf; color:#8d6514; }
.ambassador-personal-card--donation .personal-card-icon { background:#e8f7ee; color:#237447; }
.personal-card-number { display:flex; align-items:baseline; gap:7px; position:relative; z-index:1; margin-top:16px; }
.personal-card-number strong { color:var(--navy); font-size:29px; line-height:1.1; letter-spacing:-.5px; }
.personal-card-number small { color:#758399; font-size:13px; font-weight:800; }
.personal-card-number--money strong { font-size:25px; color:#795914; white-space:nowrap; }
.ambassador-personal-card p { position:relative; z-index:1; min-height:20px; margin:7px 0 0; color:#758399; font-size:12px; line-height:1.45; }
.personal-card-progress { position:relative; z-index:1; height:7px; overflow:hidden; margin-top:13px; border-radius:999px; background:#e6edf7; }
.personal-card-progress span { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#173f78,#4d8ac9); }
.ambassador-personal-card--contacts > b { position:relative; z-index:1; display:block; margin-top:7px; color:#305c92; font-size:12px; }
.personal-card-action { position:relative; z-index:2; margin-top:12px; min-height:32px; padding:0 10px; border:1px solid #ccd9ea; border-radius:10px; color:#234a7d; background:#fff; font:inherit; font-size:12px; font-weight:900; cursor:pointer; }
.personal-card-action:hover { border-color:#91b0d7; background:#f5f9ff; }

.ambassador-path-card { margin-top:17px; padding:20px; border:1px solid #e0e8f2; border-radius:19px; background:#fff; box-shadow:0 10px 24px rgba(13,39,83,.04); }
.ambassador-path-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.ambassador-path-heading h2 { margin:0; color:var(--navy); font-size:19px; }
.ambassador-path-heading p { margin:3px 0 0; color:var(--muted); font-size:12px; }
.ambassador-path-heading > span { padding:7px 10px; border:1px solid #dde7f3; border-radius:999px; color:#6b7d96; background:#f9fbfe; font-size:11px; font-weight:900; white-space:nowrap; }
.ambassador-path { display:flex; align-items:flex-start; justify-content:space-between; gap:7px; position:relative; margin:26px 9px 3px; }
.ambassador-path > i { align-self:flex-start; flex:1; height:3px; min-width:18px; margin-top:20px; background:#dfe7f2; }
.ambassador-path > i.is-complete { background:#2f985a; }
.path-stage { display:grid; justify-items:center; gap:5px; min-width:100px; position:relative; text-align:center; color:#8b98aa; }
.path-stage b { display:grid; place-items:center; width:43px; height:43px; border:3px solid #dce5f1; border-radius:50%; background:#fff; color:#8b98aa; font-size:14px; }
.path-stage strong { color:#65758d; font-size:13px; }
.path-stage small { color:#8e9bad; font-size:10px; line-height:1.35; }
.path-stage.is-complete b { border-color:#2f985a; color:#fff; background:#2f985a; }
.path-stage.is-complete strong,.path-stage.is-complete small { color:#237447; }
.path-stage.is-active b { border-color:#c98d1e; color:#9b6f13; background:#fff8e7; box-shadow:0 0 0 6px rgba(201,141,30,.13); }
.path-stage.is-active strong { color:#8d6514; }
.path-stage.is-locked b { color:#a3afbe; background:#f7f9fc; }

.ambassador-contact-import { display:grid; grid-template-columns:minmax(0,1fr) minmax(330px,.9fr); gap:30px; align-items:center; position:relative; overflow:hidden; margin-top:18px; padding:27px 30px; border-radius:23px; color:#fff; background:linear-gradient(130deg,#082f5c,#15546c); box-shadow:0 18px 38px rgba(8,42,79,.17); }
.ambassador-contact-import::after { content:""; position:absolute; left:-82px; bottom:-135px; width:245px; height:245px; border:1px solid rgba(255,255,255,.14); border-radius:50%; }
.contact-import-copy,.contact-import-actions { position:relative; z-index:1; }
.ambassador-contact-import .eyebrow { margin-bottom:7px; color:#f2d37f; }
.ambassador-contact-import h2 { margin:0 0 7px; color:#fff; font-size:27px; line-height:1.15; }
.ambassador-contact-import p { max-width:530px; margin:0; color:#dbeff7; font-size:14px; line-height:1.62; }
.contact-import-count { display:inline-flex; margin-top:17px; padding:7px 10px; border:1px solid rgba(255,255,255,.22); border-radius:999px; color:#d7f2ee; background:rgba(255,255,255,.09); font-size:12px; font-weight:800; }
.contact-import-actions { display:grid; gap:10px; }
.contact-picker-main { min-height:58px; border:0; border-radius:15px; padding:0 16px; color:#0c375d; background:#fff; box-shadow:0 10px 22px rgba(0,0,0,.16); font:inherit; font-size:16px; font-weight:900; cursor:pointer; }
.contact-picker-main:hover { transform:translateY(-1px); }
.contact-picker-main span { display:inline-grid; place-items:center; width:25px; height:25px; margin-left:6px; border-radius:8px; color:#fff; background:#174f7c; font-size:13px; }
.contact-picker-manual { justify-self:start; border:0; padding:7px 3px; color:#dbeeff; background:transparent; font:inherit; font-size:13px; font-weight:800; cursor:pointer; text-decoration:underline; }
.contact-import-actions small { color:#bcdbe8; font-size:11px; line-height:1.45; }
.visually-hidden { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important; }

.ambassador-send-callout { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:18px; padding:20px 23px; border:1px solid #bfe4cc; border-radius:18px; background:linear-gradient(135deg,#ecfbf2,#fff); }
.ambassador-send-callout .eyebrow { margin-bottom:5px; color:#237447; }
.ambassador-send-callout h2 { margin:0 0 4px; color:#185d35; font-size:20px; }
.ambassador-send-callout p { margin:0; color:#547667; font-size:13px; }
.ambassador-campaign-wait { display:flex; align-items:center; gap:12px; margin-top:18px; padding:17px 19px; border:1px solid #eadcae; border-radius:17px; background:#fffaf0; }
.ambassador-campaign-wait > span { display:grid; place-items:center; width:34px; height:34px; border-radius:11px; color:#986d13; background:#fff0ca; font-size:18px; }
.ambassador-campaign-wait > div { display:grid; gap:2px; }
.ambassador-campaign-wait strong { color:#795914; font-size:14px; }
.ambassador-campaign-wait small { color:#8a7652; font-size:12px; }
.ambassador-contacts-card { margin-top:18px; }
.btn-disabled { pointer-events:none; opacity:.64; }

.portal-dialog { width:min(535px,calc(100% - 30px)); max-height:calc(100% - 30px); overflow:auto; border:0; padding:0; color:var(--ink); border-radius:21px; box-shadow:0 28px 90px rgba(4,23,55,.35); }
.portal-dialog::backdrop { background:rgba(6,24,58,.53); backdrop-filter:blur(2px); }
.portal-dialog-inner { position:relative; padding:28px; background:#fff; }
.portal-dialog .eyebrow { color:#315f99; }
.portal-dialog h2 { margin:0 0 7px; color:var(--navy); font-size:25px; }
.portal-dialog p { margin:0 0 18px; color:#6b7b90; font-size:14px; line-height:1.6; }
.portal-dialog-close { position:absolute; top:13px; left:13px; display:grid; place-items:center; width:32px; height:32px; border:1px solid #dbe4f0; border-radius:50%; color:#5d6f86; background:#fff; font-size:22px; line-height:1; cursor:pointer; }
.portal-dialog-close:hover { color:var(--navy); background:#f5f8fd; }

/* תצוגת ניהול: שלושה כרטיסים ברורים; העיגולים משתמשים באותה שפה של תצוגת השגריר */
.management-progress-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; margin:18px 0; }
.management-progress-card { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:14px; min-height:165px; padding:18px; border:1px solid #e0e8f2; border-radius:19px; background:#fff; box-shadow:0 10px 24px rgba(13,39,83,.045); }
.management-card-copy { min-width:0; }
.management-card-copy > span { display:block; color:#687a93; font-size:13px; font-weight:900; }
.management-card-copy > strong { display:block; margin-top:10px; color:var(--navy); font-size:25px; line-height:1.12; white-space:nowrap; }
.management-card-copy > strong small { color:#7c8da3; font-size:14px; }
.management-card-copy p { margin:6px 0 0; color:#7c8da3; font-size:11px; line-height:1.45; }
.management-progress-ring { --ring-size:92px; width:var(--ring-size); height:var(--ring-size); display:grid; place-items:center; position:relative; border-radius:50%; color:#17477f; background:conic-gradient(#326baa calc(var(--progress) * 1%),#e5edf6 0); }
.management-progress-ring::before { content:""; position:absolute; inset:8px; border-radius:50%; background:#fff; }
.management-progress-ring > div { position:relative; z-index:1; text-align:center; }
.management-progress-ring b { display:block; color:#16467d; font-size:19px; line-height:1; }
.management-progress-ring small { display:block; margin-top:4px; color:#7a8ba2; font-size:9px; font-weight:900; }
.management-progress-card--contacts .management-progress-ring { background:conic-gradient(#2f985a calc(var(--progress) * 1%),#e5f0e9 0); }
.management-progress-card--contacts .management-progress-ring b { color:#237447; }
.management-progress-card--money { position:relative; overflow:hidden; border-color:#ebd8a8; background:linear-gradient(135deg,#fffaf0,#fff); }
.management-progress-card--money .management-card-copy > span { color:#7c6630; }
.management-progress-card--money .management-card-copy > strong { color:#795914; font-size:26px; }
.management-progress-card--money .management-card-copy p { color:#8a7652; }
.management-money-mark { display:grid; place-items:center; width:92px; height:92px; border-radius:50%; color:#9b7017; background:#fff0c9; box-shadow:inset 0 0 0 8px #fff8e9; font-size:34px; font-weight:900; }

@media (max-width:1050px) {
  .ambassador-start-guide { grid-template-columns:1fr; }
  .ambassador-start-guide-title { padding-bottom:1px; }
  .management-progress-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .management-progress-card--money { grid-column:span 2; }
}
@media (max-width:800px) {
  .ambassador-dashboard-hero { grid-template-columns:1fr; padding:26px 22px; }
  .ambassador-progress-ring { --ring-size:122px; justify-self:start; }
  .guide-groups { grid-template-columns:1fr; gap:15px; }
  /* במובייל הגשר הופך לחלק אנכי עצמאי, כדי שלא יחפוף את שלב 2. */
  .guide-bridge { width:100%; height:auto; margin:0; border:0; border-radius:0; background:transparent; display:flex; flex-direction:column; align-items:center; gap:5px; color:#9f7419; }
  .guide-bridge > span { display:grid; place-items:center; width:32px; height:32px; border:1px solid #ead8a5; border-radius:50%; background:#fff8e6; transform:rotate(90deg); }
  .guide-bridge small { position:static; transform:none; white-space:normal; text-align:center; line-height:1.35; }
  .ambassador-personal-metrics { grid-template-columns:1fr; }
  .ambassador-personal-card { min-height:156px; }
  .ambassador-contact-import { grid-template-columns:1fr; gap:20px; padding:24px 21px; }
  .management-progress-cards { grid-template-columns:1fr; }
  .management-progress-card--money { grid-column:auto; }
}
@media (max-width:640px) {
  .ambassador-flow-page { padding-top:21px; padding-bottom:46px; }
  .ambassador-dashboard-copy h1 { font-size:31px; }
  .ambassador-dashboard-copy p { font-size:14px; }
  .ambassador-start-guide { padding:16px; }
  .guide-steps { grid-template-columns:1fr; }
  .guide-step { min-height:0; }
  .guide-bridge { margin:0; }
  .ambassador-path-card { padding:18px 15px; }
  .ambassador-path-heading { align-items:flex-start; flex-direction:column; }
  .ambassador-path { display:grid; grid-template-columns:36px 1fr; justify-content:start; gap:0 12px; margin:21px 2px 1px; }
  .ambassador-path > i { grid-column:1; align-self:stretch; width:3px; min-width:3px; min-height:24px; height:24px; margin:0 auto; }
  .path-stage { display:grid; grid-column:1 / -1; grid-template-columns:36px 1fr; justify-items:stretch; align-items:center; gap:0 10px; min-width:0; text-align:right; }
  .path-stage b { width:36px; height:36px; grid-row:1 / span 2; border-width:2px; }
  .path-stage strong { align-self:end; font-size:13px; }
  .path-stage small { align-self:start; font-size:10px; }
  .ambassador-send-callout { align-items:flex-start; flex-direction:column; }
  .ambassador-send-callout .btn { width:100%; }
  .contact-picker-main { min-height:56px; font-size:15px; }
  .contact-picker-manual { justify-self:center; }
  .ambassador-contacts-card .app-card-head { align-items:flex-start; }
  .portal-dialog-inner { padding:24px 19px; }
  .portal-dialog h2 { font-size:22px; }
  .management-progress-card { min-height:142px; }
}

/* ===== דף משפחה: אותה שפת זרימה של אזור השגריר ===== */
.family-flow-page { padding-top:4px; padding-bottom:22px; }
.family-dashboard-hero { margin-top:0; background:linear-gradient(135deg,#0b315f 0%,#174a7e 66%,#1b5d7b 100%); }
.family-dashboard-hero .ambassador-progress-ring::before { background:#174778; }
.family-start-guide { margin-top:18px; }
.family-ready-guide .guide-groups { display:block; }
.family-ready-guide .guide-steps { grid-template-columns:repeat(3,minmax(0,1fr)); }
.family-ready-path { max-width:760px; }
.family-personal-metrics { margin-top:22px; }
.family-personal-card--ambassadors::after { background:rgba(44,105,172,.08); }
.family-personal-card--ambassadors .personal-card-icon { color:#16447d; background:#eaf1fc; }
.family-personal-card--contacts::after { background:rgba(47,152,90,.10); }
.family-personal-card--contacts .personal-card-icon { color:#237447; background:#e8f7ee; }
.family-personal-card--contacts .personal-card-progress span { background:linear-gradient(90deg,#237447,#5ab57c); }
.family-personal-card--contacts > b { color:#237447; }
.family-path-card { margin-top:17px; }

.family-next-step {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(315px,.84fr);
  align-items:center;
  gap:30px;
  position:relative;
  overflow:hidden;
  margin-top:18px;
  padding:27px 30px;
  color:#fff;
  border-radius:23px;
  background:linear-gradient(130deg,#082f5c,#15546c);
  box-shadow:0 18px 38px rgba(8,42,79,.17);
}
.family-next-step::after { content:""; position:absolute; left:-82px; bottom:-135px; width:245px; height:245px; border:1px solid rgba(255,255,255,.14); border-radius:50%; }
.family-next-copy,.family-next-actions { position:relative; z-index:1; }
.family-next-step .eyebrow { margin-bottom:7px; color:#f2d37f; }
.family-next-step h2 { margin:0 0 7px; color:#fff; font-size:27px; line-height:1.15; }
.family-next-step p { max-width:565px; margin:0; color:#dbeff7; font-size:14px; line-height:1.62; }
.family-next-count { display:inline-flex; margin-top:17px; padding:7px 10px; border:1px solid rgba(255,255,255,.22); border-radius:999px; color:#d7f2ee; background:rgba(255,255,255,.09); font-size:12px; font-weight:800; }
.family-next-actions { display:grid; gap:10px; }
.family-next-primary { min-height:58px; display:flex; align-items:center; justify-content:center; gap:8px; border-radius:15px; padding:0 16px; color:#0c375d; background:#fff; box-shadow:0 10px 22px rgba(0,0,0,.16); font-size:16px; font-weight:900; text-decoration:none; }
.family-next-primary:hover { color:#0c375d; transform:translateY(-1px); }
.family-next-primary span { display:inline-grid; place-items:center; width:25px; height:25px; border-radius:8px; color:#fff; background:#174f7c; font-size:16px; line-height:1; }
.family-next-secondary { justify-self:start; padding:7px 3px; color:#dbeeff; font-size:13px; font-weight:800; text-decoration:underline; }
.family-next-secondary:hover { color:#fff; }
.family-next-actions small { color:#bcdbe8; font-size:11px; line-height:1.45; }

.family-campaign-state { display:flex; align-items:center; gap:12px; margin-top:18px; padding:17px 19px; border:1px solid #eadcae; border-radius:17px; background:#fffaf0; }
.family-campaign-state > span { display:grid; place-items:center; width:34px; height:34px; border-radius:11px; color:#986d13; background:#fff0ca; font-size:18px; }
.family-campaign-state > div { display:grid; gap:2px; }
.family-campaign-state strong { color:#795914; font-size:14px; }
.family-campaign-state small { color:#8a7652; font-size:12px; }
.family-campaign-state--live { border-color:#bfe4cc; background:#ecfbf2; }
.family-campaign-state--live > span { color:#237447; background:#dff4e6; }
.family-campaign-state--live strong { color:#185d35; }
.family-campaign-state--live small { color:#547667; }
.family-ambassadors-card { margin-top:18px; }

@media (max-width:800px) {
  .family-next-step { grid-template-columns:1fr; gap:20px; padding:24px 21px; }
}
@media (max-width:640px) {
  .family-flow-page { padding-top:0; padding-bottom:0; }
  .family-ready-guide .guide-steps { grid-template-columns:1fr; }
  .family-next-step h2 { font-size:24px; }
  .family-next-primary { min-height:56px; font-size:15px; }
  .family-next-secondary { justify-self:center; }
}

/* כפתור הפעולה הראשי באזור השגריר יכול לפתוח חלון הזנה בלי לשנות את מראה הקישור. */
.hero-scroll-action--button {
  border:0;
  font:inherit;
  cursor:pointer;
  text-align:right;
}

/* ===== מסך שליחת הודעה: באותה שפת זרימה של אזור השגריר ===== */
.message-screen-hero { margin-top:0; }
.message-screen-hero .ambassador-dashboard-copy { max-width:660px; }
.message-back-action { border:1px solid rgba(255,255,255,.15); color:#08275a; }
.message-contact-hero-card {
  position:relative; z-index:1; min-width:250px; display:grid; grid-template-columns:46px minmax(0,1fr); align-items:center; gap:10px;
  padding:14px; border:1px solid rgba(255,255,255,.18); border-radius:17px; color:#fff; background:rgba(255,255,255,.11); box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.message-contact-hero-avatar { width:46px; height:46px; display:grid; place-items:center; border-radius:50%; color:#173f78; background:#edf7f4; font-size:19px; font-weight:900; }
.message-contact-hero-copy { min-width:0; display:grid; gap:2px; }
.message-contact-hero-copy > span { color:#d5e9ff; font-size:10px; font-weight:800; }
.message-contact-hero-copy strong { overflow:hidden; color:#fff; font-size:15px; text-overflow:ellipsis; white-space:nowrap; }
.message-contact-hero-copy small { color:#dbeaff; font-size:11px; }
.message-contact-hero-card .badge { grid-column:1 / -1; justify-self:start; margin-top:3px; }

.message-flow-strip { display:flex; align-items:center; gap:10px; margin-top:18px; padding:12px 16px; border:1px solid #dfe8f4; border-radius:16px; background:#fff; box-shadow:0 9px 20px rgba(13,39,83,.04); }
.message-flow-strip > div { display:flex; align-items:center; gap:9px; min-width:0; }
.message-flow-strip > div > b { width:28px; height:28px; flex:0 0 28px; display:grid; place-items:center; border-radius:50%; color:#fff; background:#315f99; font-size:12px; }
.message-flow-strip > div:nth-of-type(3) > b { background:#2f985a; }
.message-flow-strip > div.message-flow-status-step > b { background:#5d779b; }
.message-flow-strip > div > span { display:grid; gap:1px; }
.message-flow-strip strong { color:#294567; font-size:12px; }
.message-flow-strip small { color:#798ba1; font-size:10px; }
.message-flow-strip > i { height:2px; flex:1; min-width:18px; background:#dfe7f2; }

.message-workspace { display:grid; grid-template-columns:minmax(0,1.16fr) minmax(310px,.84fr); gap:18px; align-items:start; margin-top:18px; }
.message-composer-card .app-card-head, .message-preview-card .app-card-head, .message-status-card .app-card-head { align-items:flex-start; }
.message-composer-card .app-card-head small, .message-preview-card .app-card-head small, .message-status-card .app-card-head small { display:block; margin-top:4px; color:#728197; font-size:12px; line-height:1.45; }
.message-step-tag { padding:7px 10px; border:1px solid #d8e4f2; border-radius:999px; color:#315f99; background:#f4f8fe; font-size:11px; font-weight:900; white-space:nowrap; }
.message-composer-card .message-mode-tabs { width:100%; margin:0 0 17px; }
.message-template-list--flow { gap:9px; }
.message-template-list--flow .message-template-card { min-height:72px; padding:13px 14px; }
.message-template-list--flow .message-template-card.is-selected { border-color:#c99a2d; background:linear-gradient(135deg,#fff9eb,#fff); box-shadow:0 10px 20px rgba(180,128,24,.10); }
.message-editor-group { margin:0; }
.message-editor-group .textarea { min-height:344px; border-color:#d5e0ee; background:#fbfcfe; line-height:1.8; }
.message-side-stack { display:grid; gap:14px; }
.message-preview-card .app-card-body { padding:14px; background:linear-gradient(180deg,#fbfcff,#fff); }
.message-preview-badge { padding:7px 10px; border-radius:999px; color:#0b5b51; background:#e5f4ee; font-size:11px; font-weight:900; }
.message-preview-phone { min-height:350px; border-width:7px; border-radius:22px; box-shadow:0 13px 27px rgba(9,29,62,.12); }
.message-preview-phone .whatsapp-chat-area { min-height:279px; }
.message-status-card { border-color:#dbe5f1; }
.message-status-card--after-send { margin-top:18px; border-color:#cfe0ef; box-shadow:0 10px 24px rgba(13,39,83,.04); }
.message-status-card--after-send .app-card-body { padding-top:13px; }
.message-status-form { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:10px; }
.message-status-form .form-group { margin:0; }
.message-status-form .btn { min-height:43px; white-space:nowrap; }
.message-status-hint { margin:11px 0 0; color:#728197; font-size:11px; line-height:1.55; }
.message-ready-to-send {
  display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:24px; position:relative; overflow:hidden;
  margin-top:18px; padding:23px 26px; border-radius:21px; color:#fff; background:linear-gradient(130deg,#0a7355,#117f65); box-shadow:0 17px 34px rgba(15,117,84,.17);
}
.message-ready-to-send::after { content:""; position:absolute; left:-65px; bottom:-135px; width:250px; height:250px; border:1px solid rgba(255,255,255,.16); border-radius:50%; }
.message-ready-copy, .message-ready-form { position:relative; z-index:1; }
.message-ready-copy .eyebrow { margin-bottom:5px; color:#d9f2e5; }
.message-ready-copy h2 { margin:0 0 5px; color:#fff; font-size:22px; }
.message-ready-copy p { max-width:630px; margin:0; color:#dff8ed; font-size:13px; line-height:1.55; }
.message-ready-actions { display:flex; align-items:center; gap:9px; flex-wrap:wrap; justify-content:flex-end; }
.message-ready-to-send .btn-whatsapp { width:auto; min-width:205px; min-height:54px; color:#0b654c; background:#fff; box-shadow:0 10px 20px rgba(0,0,0,.14); }
.message-ready-to-send .btn-whatsapp:hover { color:#084c3a; background:#fff; }
.message-ready-to-send .btn-whatsapp span { font-size:17px; line-height:1; }
.message-edit-link { color:#fff; border-color:rgba(255,255,255,.45); background:transparent; }
.message-edit-link:hover { color:#fff; background:rgba(255,255,255,.11); }

@media(max-width:900px) {
  .message-screen-hero { grid-template-columns:1fr; }
  .message-contact-hero-card { width:min(100%, 420px); }
  .message-workspace { grid-template-columns:1fr; }
  .message-side-stack { grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; }
}
@media(max-width:700px) {
  .message-screen-hero { padding:25px 20px; gap:19px; }
  .message-contact-hero-card { min-width:0; }
  .message-flow-strip { align-items:stretch; flex-direction:column; gap:9px; padding:14px; }
  .message-flow-strip > i { width:2px; min-width:2px; min-height:16px; height:16px; margin-right:13px; flex:none; }
  .message-flow-strip > div > b { width:27px; height:27px; flex-basis:27px; }
  .message-side-stack { grid-template-columns:1fr; }
  .message-preview-phone { min-height:320px; max-width:100%; }
  .message-preview-phone .whatsapp-chat-area { min-height:248px; }
  .message-status-form { grid-template-columns:1fr; }
  .message-status-form .btn { width:100%; }
  .message-ready-to-send { grid-template-columns:1fr; gap:16px; padding:22px 20px; }
  .message-ready-to-send .btn-whatsapp, .message-ready-to-send .message-edit-link { width:100%; }
  .message-ready-actions { display:grid; width:100%; }
  .message-ready-copy h2 { font-size:20px; }
}



/* ===== הודעות אישיות: ספרייה פרטית ופשוטה לשגריר ===== */
.personal-message-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 13px; padding:12px 13px; border:1px solid #dce8f4; border-radius:14px; background:#f8fbff; }
.personal-message-toolbar > div { display:grid; gap:3px; }
.personal-message-toolbar strong { color:#294567; font-size:13px; }
.personal-message-toolbar small { color:#74859b; font-size:11px; line-height:1.45; }
.personal-message-list { margin-bottom:14px; }
.personal-message-editor { display:grid; gap:13px; margin-top:14px; padding:16px; border:1px solid #d7e4f1; border-radius:16px; background:linear-gradient(180deg,#fbfdff,#f6faff); }
.personal-message-editor .form-group { margin:0; }
.personal-message-editor .textarea { min-height:210px; }
.personal-message-editor-actions { display:flex; align-items:center; gap:10px; }
.personal-message-delete-form { margin-top:9px; }
.message-empty-state { display:grid; gap:7px; padding:20px; border:1px dashed #cbd9e8; border-radius:15px; color:#546d89; background:#fbfdff; text-align:center; }
.message-empty-state strong { color:#294567; font-size:14px; }
.message-empty-state small { max-width:380px; justify-self:center; color:#74859b; line-height:1.55; }
.message-empty-state .btn { justify-self:center; margin-top:3px; }
.message-preview-empty { display:block; color:#78879a; font-size:12px; line-height:1.6; }

@media(max-width:640px) {
  .personal-message-toolbar { align-items:stretch; flex-direction:column; }
  .personal-message-toolbar .btn { width:100%; min-height:42px; }
  .personal-message-editor { padding:14px; }
  .personal-message-editor-actions .btn { width:100%; }
  .personal-message-delete-form .btn { width:100%; }
}


/* ===== תיקון זרימה RTL וכותרת שגריר בנייד ===== */
/* בדסקטופ המסלול נקרא מימין לשמאל: 1 → 2 → 3 → 4. */
.ambassador-start-guide,
.guide-groups,
.guide-group,
.guide-steps,
.ambassador-path,
.message-flow-strip { direction:rtl; }

/* מחליף את העיגול והחץ ההפוך במעבר קצר וברור בין הכנה לשליחה. */
.guide-groups { grid-template-columns:minmax(0,1fr) 122px minmax(0,1fr); }
.guide-bridge {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  width:auto;
  height:auto;
  min-height:72px;
  border:0;
  border-radius:0;
  color:#9a701a;
  background:transparent;
  font-size:inherit;
}
.guide-bridge > i {
  display:block;
  flex:1 1 10px;
  min-width:10px;
  height:1px;
  background:#ead9ac;
}
.guide-bridge > b {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:8px 10px;
  border:1px solid #ead8a5;
  border-radius:999px;
  color:#8e6818;
  background:#fffaf0;
  font-size:10px;
  font-weight:900;
  line-height:1.25;
  white-space:nowrap;
  box-shadow:0 4px 10px rgba(152,108,19,.07);
}
.guide-bridge > b em {
  font-style:normal;
  font-size:15px;
  line-height:1;
}

/* המסלול התחתון משתמש בכיוון RTL גם אם הדפדפן או תבנית חיצונית ניסו להחליף אותו. */
.ambassador-path { flex-direction:row; }

/* קישורי פעולה של השגריר נשארים גלויים גם בטלפון. */
.portal-home-link,
.portal-logout-link { display:inline-flex; align-items:center; justify-content:center; gap:5px; }
.portal-greeting-link { display:inline-flex; align-items:center; }

@media (max-width:850px) {
  .site-nav--portal {
    min-height:66px;
    flex-wrap:nowrap;
    gap:9px;
    padding:7px 0;
  }
  .site-nav--portal .site-brand {
    min-width:0;
    max-width:140px;
    gap:8px;
    overflow:hidden;
  }
  .site-nav--portal .site-brand > span {
    min-width:0;
    overflow:hidden;
  }
  .site-nav--portal .site-brand strong {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:15px;
  }
  .site-nav--portal .site-actions {
    display:flex;
    align-items:center;
    flex:0 0 auto;
    flex-wrap:nowrap;
    gap:6px;
    margin-right:auto;
  }
  .site-nav--portal .site-actions .portal-home-link,
  .site-nav--portal .site-actions .portal-logout-link {
    display:inline-flex;
    min-height:36px;
    padding:7px 9px;
    border-radius:10px;
    font-size:12px;
    white-space:nowrap;
  }
  .site-nav--portal .site-actions .portal-home-link {
    color:#0e376a;
    border:1px solid rgba(255,255,255,.74);
    background:#fff;
  }
  .site-nav--portal .site-actions .portal-logout-link {
    color:#fff1d1;
    border:1px solid rgba(255,255,255,.28);
    background:rgba(255,255,255,.08);
  }
  .site-nav--portal .site-actions .portal-greeting-link,
  .site-nav--portal .site-actions .portal-personal-link { display:none; }

  /* מעבר בין הכנה לשליחה לא חופף את שלב 2, והוא נשאר בכיוון הקריאה הנכון. */
  .guide-groups { grid-template-columns:1fr; gap:11px; }
  .guide-bridge {
    width:100%;
    min-height:38px;
    margin:0;
    flex-direction:row;
  }
  .guide-bridge > i { max-width:none; }
  .guide-bridge > b { padding:7px 10px; }
  .guide-bridge > b em { transform:none; }
}

@media (max-width:390px) {
  .site-nav--portal .site-brand { max-width:104px; }
  .site-nav--portal .site-logo { width:40px; height:40px; }
  .site-nav--portal .site-actions { gap:4px; }
  .site-nav--portal .site-actions .portal-home-link,
  .site-nav--portal .site-actions .portal-logout-link { padding:7px 7px; font-size:11px; }
}


/* ===== תיקון עיצוב יסודי לזרימות RTL ===== */
.ambassador-dashboard-hero,.ambassador-start-guide,.ambassador-personal-metrics,.ambassador-path-card,.ambassador-contact-import,.ambassador-send-callout,.ambassador-campaign-wait,.family-next-step,.management-progress-cards{direction:rtl;}
.hero-scroll-action{gap:10px;}
.hero-scroll-action span{display:none;}
.guide-groups{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:14px;align-items:stretch;}
.guide-group{display:grid;align-content:start;}
.guide-step{display:flex;flex-direction:column;justify-content:center;}
.guide-step i{margin-left:0;margin-right:0;margin-inline-start:0;margin-inline-end:6px;}
.guide-bridge{min-height:auto;display:flex;align-items:center;justify-content:center;padding:0 4px;}
.guide-bridge>i,.guide-bridge small,.guide-bridge>b em{display:none !important;}
.guide-bridge>b{padding:10px 14px;border:1px solid #ead8a5;border-radius:999px;background:#fff8e6;color:#8e6818;font-size:11px;font-weight:900;white-space:nowrap;box-shadow:0 4px 10px rgba(152,108,19,.08);}
.ambassador-path-heading p,.family-path-card .ambassador-path-heading p{letter-spacing:0;}
.ambassador-path{direction:rtl;display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:10px;margin:24px 0 0;}
.ambassador-path>i{align-self:flex-start;flex:1 1 24px;height:3px;min-width:24px;max-width:140px;margin-top:21px;background:#dfe7f2;border-radius:999px;}
.path-stage{min-width:110px;max-width:140px;}
.path-stage strong{display:block;}
.path-stage small{display:block;min-height:28px;}
.family-ready-path .path-stage{min-width:120px;}
.site-nav--portal .site-actions{display:flex;align-items:center;gap:8px;}
.portal-home-link,.portal-logout-link{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:8px 12px;border-radius:10px;font-weight:800;}
.portal-home-link span,.portal-logout-link span{display:none;}
.portal-home-link{background:#fff;color:#0e376a;border:1px solid rgba(255,255,255,.8);}
.portal-logout-link{background:rgba(255,255,255,.09);color:#fff4d8;border:1px solid rgba(255,255,255,.22);}
.management-progress-cards{direction:rtl;}
.management-progress-card{direction:rtl;}
.management-card-copy{text-align:right;}
@media (max-width:850px){.guide-groups{grid-template-columns:1fr;gap:12px;}.guide-bridge{padding:0;}.guide-bridge>b{width:100%;text-align:center;white-space:normal;}.ambassador-path{display:grid;grid-template-columns:36px 1fr;justify-content:start;gap:0 12px;margin:21px 2px 1px;}.ambassador-path>i{grid-column:1;align-self:stretch;width:3px;min-width:3px;max-width:none;min-height:24px;height:24px;margin:0 auto;}.path-stage{display:grid;grid-column:1 / -1;grid-template-columns:36px 1fr;justify-items:stretch;align-items:center;gap:0 10px;min-width:0;max-width:none;text-align:right;}.path-stage b{width:36px;height:36px;grid-row:1 / span 2;border-width:2px;}.path-stage strong{align-self:end;font-size:13px;}.path-stage small{align-self:start;font-size:10px;min-height:0;}.site-nav--portal .site-actions{gap:6px;}.portal-home-link,.portal-logout-link{padding:7px 9px;font-size:12px;}}

/* שומר על כפתור יציאה לשגריר גם כשהוא צופה בדף הבית מהנייד. */
@media (max-width:700px) {
  .site-header--home .site-actions > a:not(.site-cta):not(.portal-logout-link):not(.portal-home-link) { display:none; }
  .site-header--home .site-actions .portal-logout-link {
    display:inline-flex;
    min-height:38px;
    padding:7px 9px;
    border:1px solid #f0d5d1;
    border-radius:10px;
    color:#9c3b3b;
    background:#fff5f4;
    font-size:12px;
  }
  .site-header--home .site-actions .portal-logout-link span { display:none; }
}
