/* TippyTaps — veterinarian detail page.
   Reuses the clinic page's shared pieces (.crumbs, .block, .rev-*, .tt-empty)
   from single-clinic.css and site.css; only doctor-specific parts live here. */

.doctor-detail{ padding:26px 0 64px; }

/* ---- hero ----
   ⚠️ DEAD as of 2026-08-01: `single-tt_doctors.php` renders the hero with
   `.dhero / .dhead / .logo.portrait / .dinfo`, which live in single-clinic.css —
   NOT with the `.doc-*` selectors below. Only `.doc-courses` and `.doc-lines`
   further down are actually used.

   Left in place rather than deleted because it is the older hero design and may be
   wanted back, but do not edit it expecting the page to change: `.doc-photo` here
   already said `border-radius:var(--radius-sm)` while the page rendered a circle
   from `.logo.round`, which is exactly the trap this comment exists to close.
   Deleting it is a cleanup for sQuem to approve. */
.doc-hero{ display:grid; grid-template-columns:132px minmax(0,1fr); gap:24px; align-items:start;
  background:var(--surface); border:1px solid var(--line); border-radius:var(--radius);
  padding:24px; margin:18px 0 26px; }
.doc-photo{ width:132px; height:132px; border-radius:var(--radius-sm); overflow:hidden; flex:none;
  background:var(--surface-2); display:grid; place-items:center; }
.doc-photo img{ width:100%; height:100%; object-fit:cover; display:block; }
.doc-initials{ font-family:var(--disp); font-size:38px; font-weight:700; color:var(--muted); }

.doc-head h1{ margin:0 0 6px; font-size:clamp(26px,3.4vw,38px); line-height:1.1; }
.doc-role{ font-weight:700; color:var(--accent); margin-bottom:4px; }
.doc-disciplines{ color:var(--muted); font-weight:600; font-size:14.5px; }
.doc-rating{ display:flex; align-items:center; gap:8px; margin-top:10px; font-size:14.5px; }
.doc-rating .rc{ color:var(--muted); font-weight:600; }

.doc-chips{ display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.doc-chip{ display:inline-flex; align-items:center; gap:6px; padding:6px 11px; border-radius:999px;
  border:1px solid var(--line-strong); background:var(--surface-2); font-size:13px; font-weight:700; }
.doc-chip svg{ width:14px; height:14px; }
.doc-chip.is-ok{ border-color:var(--green,var(--accent)); color:var(--green,var(--accent)); }

/* ---- where they practise ---- */
.doc-clinics{ display:grid; gap:12px; }
.doc-clinic{ border:1px solid var(--line); border-radius:var(--radius-sm); padding:14px 16px; background:var(--surface); }
.dc-name{ font-family:var(--disp); font-weight:700; font-size:17px; text-decoration:none; color:var(--ink); }
.dc-name:hover{ color:var(--accent); }
.dc-addr{ display:flex; align-items:center; gap:6px; color:var(--muted); font-size:14px; margin-top:4px; }
.dc-addr svg{ width:14px; height:14px; flex:none; }
.dc-tel{ display:inline-block; margin-top:6px; font-weight:700; text-decoration:none; color:var(--accent); }

/* ---- facts + courses ---- */
.doc-facts{ margin:0; display:grid; grid-template-columns:minmax(140px,180px) minmax(0,1fr); gap:10px 18px; }
.doc-facts dt{ font-weight:700; color:var(--muted); font-size:13.5px; }
.doc-facts dd{ margin:0; }

.doc-courses{ list-style:none; margin:0; padding:0; display:grid; gap:8px; }
.doc-courses li{ display:grid; grid-template-columns:56px minmax(0,1fr); gap:12px; align-items:baseline;
  padding-bottom:8px; border-bottom:1px solid var(--line); }
.doc-courses li:last-child{ border-bottom:0; padding-bottom:0; }
.dc-year{ font-family:ui-monospace,Menlo,monospace; font-size:12.5px; font-weight:700; color:var(--muted); }
.dc-org{ display:block; color:var(--muted); font-size:13.5px; }

/* Kariéra / Členstvá / Publikácie — one entry per line, full main-column width.
   These used to sit in the aside's ~174px value column, where a four-line career
   history wrapped every three words and looked like missing CSS. */
.doc-lines{ list-style:none; margin:0; padding:0; display:grid; gap:9px; }
.doc-lines li{ padding-bottom:9px; border-bottom:1px solid var(--line); font-weight:500; }
.doc-lines li:last-child{ border-bottom:0; padding-bottom:0; }
.doc-lines.is-refs li{ font-size:14.5px; color:var(--ink); }

/* Long line lists (tt_lines_list) clamp to a first batch with a toggle under them.
   Same contract as the chip lists: every row is in the HTML, hiding is behind
   `.tt-js`, so with no JS — and for a crawler — the whole list is visible. */
.tt-js .tt-site .lines-box.is-clamped:not(.is-open) .line-extra{ display:none; }
.tt-site .lines-more{ margin-top:12px; font-size:13px; font-weight:700; color:var(--ink-2); cursor:pointer;
  background:transparent; border:1px dashed var(--line-strong); padding:7px 13px; border-radius:999px; }
.tt-site .lines-more:hover{ background:var(--surface-2); border-style:solid; }

/* The team block ("Náš tím") is rendered on the CLINIC page, so its rules live in
   single-clinic.css — not here. Keeping them in this file was the bug that made
   the block render as a 200px photo next to a bare blue link. */

@media (max-width:640px){
  .doc-hero{ grid-template-columns:1fr; }
  .doc-photo{ width:104px; height:104px; }
  .doc-facts{ grid-template-columns:1fr; gap:4px 0; }
  .doc-facts dd{ margin-bottom:10px; }
}

/* Certifikáty — sent by a venue with the subscription, approved by us
   (inc/platform-doctors.php). Images as thumbnails, a PDF as a tile; each opens
   the file in a new tab. */
.doc-certs{ display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:12px; }
.doc-cert{ display:flex; flex-direction:column; gap:8px; text-decoration:none; color:inherit; }
.doc-cert img,
.doc-cert__pdf{ width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:12px; border:1px solid var(--line); display:block; background:var(--surface-2,#f1ebdf); }
.doc-cert__pdf{ display:grid; place-items:center; font-weight:800; letter-spacing:.08em; color:var(--muted); }
.doc-cert__t{ font-size:14px; font-weight:600; line-height:1.35; }
