:root{
  --teal:#0f766e;
  --bg:#eef2f6;
  --text:#0f172a;
  --muted:#64748b;
  --line:#e2e8f0;
}
*{box-sizing:border-box}
body.page{
  margin:0;padding:18px;
  font-family:Cairo,Tahoma,Arial,sans-serif;
  background:var(--bg);color:var(--text);direction:rtl;
}
.wrap{max-width:980px;margin:0 auto}
body.page.auth-page{
  min-height:100vh;
  margin:0;
  padding:28px 16px;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  overflow:auto;
  background:
    radial-gradient(900px 500px at 100% -10%, rgba(20,184,166,.28), transparent 55%),
    radial-gradient(700px 420px at -10% 110%, rgba(14,116,144,.35), transparent 50%),
    linear-gradient(165deg, #062026 0%, #0b3b3a 42%, #082f3b 100%);
}
.auth-card{
  width:100%;
  max-width:440px;
  margin:40px auto;
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:28px 26px 22px;
  box-shadow:0 22px 48px rgba(15,23,42,.12)
}
.auth-page .auth-card{
  margin:24px auto;
  box-shadow:0 24px 50px rgba(0,0,0,.22)
}
.auth-card.wide{max-width:640px}
.auth-page .auth-card.wide{padding:26px 28px 20px}
.form-section{
  margin-bottom:12px;
  padding:12px 14px 6px;
  background:#f8fafc;
  border:1px solid var(--line);
  border-radius:14px
}
.form-section h3{
  margin:0 0 10px;
  font-size:.78rem;
  font-weight:900;
  color:var(--teal)
}
.auth-page .form label{margin-bottom:12px}
.auth-brand{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  margin-bottom:22px
}
.auth-logo{
  width:58px;height:58px;border-radius:16px;margin-bottom:12px;
  background:linear-gradient(135deg,#0f766e,#14b8a6);
  color:#fff;display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;box-shadow:0 10px 22px rgba(15,118,110,.3)
}
.auth-card h1{margin:0;color:#0f172a;font-size:1.28rem;font-weight:900}
.wrap>h1{margin:0 0 8px;color:var(--teal);font-size:1.35rem}
.auth-brand .muted{margin:6px 0 0}
.auth-card .form .btn.primary{
  width:100%;margin-top:10px;padding:12px 16px;border-radius:12px;font-size:1rem
}
.auth-foot{
  display:flex;justify-content:center;gap:18px;flex-wrap:wrap;
  margin-top:16px;padding-top:14px;border-top:1px solid var(--line)
}
.auth-foot a{color:var(--teal);font-weight:900;text-decoration:none}
.auth-foot a:hover{text-decoration:underline}
.muted{color:var(--muted);font-weight:700;font-size:.9rem;margin:0 0 14px}
.form label{display:block;font-weight:800;font-size:.82rem;color:var(--muted);margin-bottom:10px}
.form input{
  display:block;width:100%;margin-top:6px;padding:12px 14px;border:1px solid var(--line);
  border-radius:12px;font:inherit;font-weight:700;background:#f8fafc
}
.form input:focus{outline:none;border-color:#5eead4;box-shadow:0 0 0 3px rgba(15,118,110,.12)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:560px){.grid-2{grid-template-columns:1fr}}
.btn{
  display:inline-block;border:none;border-radius:10px;padding:10px 14px;font:inherit;font-weight:800;
  cursor:pointer;background:#e2e8f0;color:#0f172a;text-decoration:none
}
.btn.primary{background:var(--teal);color:#fff}
.btn.primary:hover{background:#0d5f59}
.btn.danger{background:#dc2626;color:#fff}
.btn.danger:hover{background:#b91c1c}
.btn.sm{padding:5px 9px;font-size:.78rem;border-radius:8px}
.wrap.wide{max-width:1100px}
.tabs{
  display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;
  background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px
}
.tabs a{
  text-decoration:none;color:#334155;font-weight:800;padding:8px 12px;border-radius:8px
}
.tabs a.active,.tabs a:hover{background:#ecfdf5;color:var(--teal)}
.panel-head-row{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.panel-head-row h2,.panel-head-row h1{margin:0}
.search-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.search-bar input[type=search]{
  flex:1;min-width:220px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;font:inherit;font-weight:700
}
.table-scroll{overflow:auto}
.actions-cell{white-space:nowrap}
.actions-cell .btn{margin-left:4px;margin-bottom:2px}
.inline-form{display:inline}
.logo-edit{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.logo-preview img,.logo-placeholder{
  width:88px;height:88px;border-radius:12px;border:1px solid var(--line);background:#f8fafc;
  object-fit:contain
}
.logo-placeholder{display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;color:var(--muted)}
.alert{padding:10px 12px;border-radius:10px;font-weight:800;margin-bottom:12px}
.alert.err{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}
.alert.ok{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}
.foot{margin-top:14px;font-weight:700;font-size:.88rem}
.foot a{color:var(--teal);font-weight:900;text-decoration:none}
.topbar{
  max-width:980px;margin:0 auto 16px;display:flex;justify-content:space-between;align-items:center;
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;gap:10px;flex-wrap:wrap
}
.topbar nav a{margin-right:12px;color:var(--teal);font-weight:800;text-decoration:none}
.pill{display:inline-block;background:#ecfdf5;color:var(--teal);border:1px solid #99f6e4;border-radius:999px;padding:2px 10px;font-size:.78rem;font-weight:900;margin-right:8px;direction:ltr}
.cards-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}
@media(max-width:760px){.cards-3{grid-template-columns:1fr}}
.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px}
.stat .k{font-size:.75rem;font-weight:800;color:var(--muted)}
.stat .v{font-size:1.4rem;font-weight:900;margin-top:4px}
.stat .v.small{font-size:.95rem;word-break:break-all}
.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:14px}
.panel h2{margin:0 0 12px;font-size:1.05rem;color:var(--teal)}
.copy-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end;margin-bottom:10px}
.copy-row label{display:block;font-weight:800;font-size:.78rem;color:var(--muted)}
.copy-row input{width:100%;margin-top:4px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;font:inherit;font-weight:700}
.hint{font-size:.82rem;color:var(--muted);font-weight:700;margin:8px 0 0}
.tbl{width:100%;border-collapse:collapse;font-size:.9rem}
.tbl th{background:var(--teal);color:#fff;padding:8px;text-align:right}
.tbl td{padding:8px;border-bottom:1px solid var(--line);font-weight:700}
.tbl.center th,.tbl.center td{text-align:center}
.lab-brand{display:flex;gap:12px;align-items:center;margin-bottom:10px}
.lab-brand img{width:56px;height:56px;object-fit:contain;border-radius:10px;border:1px solid var(--line);background:#fff}
.result-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}
.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.info-grid .k{display:block;font-size:.75rem;color:var(--muted);font-weight:800}
@media(max-width:560px){.info-grid{grid-template-columns:1fr}}
.patient-link-box{
  margin-top:14px;padding:14px;border:1px solid #99f6e4;background:#f0fdfa;border-radius:14px
}
.patient-link-box .k{display:block;margin-bottom:8px;color:var(--teal);font-size:.8rem;font-weight:900}
.patient-link-actions{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}
.patient-link-actions input{
  width:100%;padding:10px 12px;border:1px solid #99f6e4;border-radius:10px;
  font:inherit;font-weight:700;background:#fff;color:#0f172a
}
.patient-link-actions input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(15,118,110,.12)}
@media(max-width:640px){.patient-link-actions{grid-template-columns:1fr}}
.hero{
  max-width:720px;margin:24px auto;background:linear-gradient(160deg,#0f766e 0%,#0b4f4a 55%,#115e59 100%);
  color:#fff;border-radius:24px;padding:42px 32px 36px;text-align:center;
  box-shadow:0 24px 50px rgba(0,0,0,.18)
}
.hero-logo{
  width:64px;height:64px;border-radius:18px;margin:0 auto 16px;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);
  display:flex;align-items:center;justify-content:center;font-size:1.55rem
}
.hero h1{margin:0 0 10px;font-size:2rem;font-weight:900;letter-spacing:.02em}
.hero p{margin:0 auto 22px;opacity:.92;font-weight:700;max-width:34em;line-height:1.7}
.hero .actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.hero .btn{background:#fff;color:#0f766e;padding:12px 18px;border-radius:12px}
.hero .btn.ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.45)}
.hero .btn.ghost:hover{background:rgba(255,255,255,.1)}
.home-page{
  min-height:100vh;margin:0;padding:28px 16px;
  display:flex;align-items:center;justify-content:center;
  background:
    radial-gradient(900px 500px at 100% -10%, rgba(20,184,166,.28), transparent 55%),
    radial-gradient(700px 420px at -10% 110%, rgba(14,116,144,.35), transparent 50%),
    linear-gradient(165deg, #062026 0%, #0b3b3a 42%, #082f3b 100%)
}
.home-page .hero{margin:0 auto}
.features{max-width:980px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media(max-width:760px){.features{grid-template-columns:1fr}}
.feature{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}
.feature h3{margin:0 0 6px;color:var(--teal)}
.feature p{margin:0;color:var(--muted);font-weight:700;font-size:.9rem}
