/* =========================================================
   doctors.css — page-specific styles for doctors.php
   ========================================================= */

.page-hero-doctors{
  background:
    radial-gradient(circle at 85% 0%, rgba(47,169,140,0.14), transparent 45%),
    var(--bg-deep);
}
.page-hero-doctors .eyebrow{ color:#7FBFAE; }
.page-hero-doctors h1{ color:#FFFFFF; }
.page-hero-doctors .page-hero-lead{ color:#D7E7E1; }

.doctor-toolbar{
  display:flex; gap:14px; margin-bottom:32px; flex-wrap:wrap;
}
.doctor-search, .doctor-filter{
  font-family:'IBM Plex Sans',sans-serif; font-size:14px;
  padding:12px 16px; border-radius:8px;
  border:1.5px solid var(--paper-line-strong);
  background:#fff; color:var(--ink);
}
.doctor-search{flex:1; min-width:220px;}
.doctor-search:focus, .doctor-filter:focus{outline:none; border-color:var(--teal);}

.doctor-full-grid{
  display:grid; grid-template-columns:repeat(2, 1fr); gap:20px;
}
.doctor-full-card{
  display:flex; gap:18px;
  background:#fff; border:1px solid var(--paper-line); border-radius:var(--radius-lg);
  padding:24px; box-shadow:var(--shadow-card);
  transition:opacity .2s ease, transform .2s ease;
}
.doctor-full-avatar{
  flex-shrink:0;
  width:58px; height:58px; border-radius:50%;
  background:var(--bg-deep); color:var(--teal-light);
  display:flex; align-items:center; justify-content:center;
  font-family:'Space Grotesk',sans-serif; font-weight:600; font-size:17px;
}
.doctor-full-body h3{font-size:16.5px; margin-bottom:2px;}
.doctor-full-body .doctor-role{
  font-family:'IBM Plex Mono',monospace; font-size:11px; color:var(--teal-dim);
  text-transform:uppercase; letter-spacing:.02em; margin-bottom:10px;
}
.doctor-full-body .doctor-bio{color:var(--muted); font-size:13.5px; margin-bottom:14px;}
.doctor-full-footer{
  display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap;
}
.fee-chip{
  font-family:'IBM Plex Mono',monospace; font-size:11.5px; color:var(--muted);
  background:#EEF3F1; padding:5px 10px; border-radius:14px;
}
.doctor-full-actions{display:flex; gap:8px;}

/* Featured doctor profile */
.doctor-featured-section{margin-bottom:36px;}
.doctor-featured-heading{
  font-family:'Space Grotesk',sans-serif; font-size:20px; font-weight:600;
  margin-bottom:16px; color:var(--ink);
}
.doctor-featured-card{
  display:flex; gap:28px;
  background:#fff; border:1px solid var(--paper-line); border-radius:var(--radius-lg);
  padding:28px; box-shadow:var(--shadow-card); flex-wrap:wrap;
}
.doctor-featured-image{
  flex-shrink:0; width:180px; height:220px; border-radius:var(--radius-lg);
  overflow:hidden; background:var(--bg-deep);
}
.doctor-featured-image img{width:100%; height:100%; object-fit:cover; display:block;}
.doctor-featured-details{flex:1; min-width:260px;}
.doctor-featured-details h3{font-size:19px; margin-bottom:4px; color:var(--ink);}
.doctor-featured-role{
  font-family:'IBM Plex Mono',monospace; font-size:11.5px; color:var(--teal-dim);
  text-transform:uppercase; letter-spacing:.02em; margin-bottom:12px;
}
.doctor-featured-bio{
  color:var(--muted); font-size:15.5px; line-height:1.65; font-weight: bold;
  max-height:120px; overflow:hidden; position:relative;
  transition:max-height .35s ease;
}
.doctor-featured-bio::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:36px;
  background:linear-gradient(to bottom, rgba(255,255,255,0), #fff);
  pointer-events:none;
}
.doctor-featured-bio.expanded{max-height:2000px;}
.doctor-featured-bio.expanded::after{display:none;}
.doctor-featured-bio p{margin-bottom:10px;}
.doctor-featured-toggle{
  margin-top:10px; background:none; border:none; padding:0;
  font-family:'IBM Plex Sans',sans-serif; font-size:13px; font-weight:600;
  color:var(--teal-dim); cursor:pointer;
}
.doctor-featured-toggle:hover{text-decoration:underline;}

@media (max-width: 760px){
  .doctor-featured-card{flex-direction:column;}
  .doctor-featured-image{width:100%; height:220px;}
}

.empty-state{
  text-align:center; padding:50px 20px; color:var(--muted); font-size:14.5px;
  background:#EEF3F1; border-radius:var(--radius-lg);
}
.empty-state a{color:var(--teal-dim); font-weight:600;}

@media (max-width: 760px){
  .doctor-full-grid{grid-template-columns:1fr;}
  .doctor-full-card{flex-direction:column;}
}

/* Hero text colors — tune for contrast against .page-hero-doctors background */
.page-hero-doctors .eyebrow{
  color:#7FBFAE;
}
.page-hero-doctors h1{
  color:#FFFFFF;
}
.page-hero-doctors .page-hero-lead{
  color:#D7E7E1;
}