/* חיבור המנוע החדש אל עיצוב האתר המקורי */
: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; } }
