/* ── Anamneza (Chestionarul Bunatatii Personale) - stiluri pe tokenii platformei ──
   Prefix .anm-*; culorile celor 6 scale NU stau aici (vin inline din date - metodologia lui Petre). */

/* hub - ACELASI standard vizual cu .panel al platformei (congruenta, Marian 24.07) */
.anm-hub-card { background: var(--m-surf); border: 1px solid var(--m-border); border-radius: var(--m-r-5);
  box-shadow: var(--m-sh-md); padding: 20px; }
.anm-hub-titlu { font-size: var(--m-fs-6); font-weight: 700; color: var(--m-navy); margin: 0 0 2px; }
.anm-progres { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.anm-bar { flex: 1 1 120px; height: 6px; border-radius: 4px; background: var(--m-navy-s); overflow: hidden; }
.anm-bar > i { display: block; height: 100%; background: var(--m-navy); border-radius: 4px; transition: width .25s; }
.anm-actiuni { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 10px; margin-top: 14px; }
.anm-actiune { display: flex; flex-direction: column; gap: 3px; align-items: flex-start; text-align: left;
  background: var(--m-surf2); border: 1px solid var(--m-border); border-radius: var(--m-r-3);
  padding: 12px 14px; cursor: pointer; font: inherit; color: var(--m-text); }
.anm-actiune:hover:not(:disabled) { border-color: var(--m-navy); box-shadow: var(--m-sh-sm); }
.anm-actiune:disabled { opacity: .55; cursor: not-allowed; }
.anm-actiune b { font-size: var(--m-fs-4); }
.anm-actiune span { font-size: var(--m-fs-2); color: var(--m-muted); }

/* chestionar */
.anm-sticky { position: sticky; top: 0; z-index: 5; background: var(--m-bg); padding: 8px 0 10px; }
.anm-aria-head { background: var(--m-navy); color: #fff; border-radius: var(--m-r-3);
  padding: 9px 14px; font-weight: 600; font-size: var(--m-fs-4); margin: 18px 0 10px;
  display: flex; justify-content: space-between; gap: 10px; align-items: baseline; }
.anm-aria-head small { opacity: .85; font-weight: 500; }
.anm-item { background: var(--m-surf); border: 1px solid var(--m-border); border-radius: var(--m-r-3);
  box-shadow: var(--m-sh-sm); padding: 13px 15px; margin-bottom: 10px; }
.anm-item-ind { font-weight: 600; margin: 0 0 2px; }
.anm-item-nucleu { color: var(--m-muted); font-size: var(--m-fs-3); margin: 0 0 9px; }
.anm-radio { display: flex; gap: 9px; align-items: flex-start; border: 1px solid var(--m-border);
  border-radius: var(--m-r-2); padding: 8px 10px; margin-bottom: 6px; cursor: pointer;
  font-size: var(--m-fs-3); line-height: 1.45; background: var(--m-surf); }
.anm-radio:hover { border-color: var(--m-navy); }
.anm-radio input { margin-top: 3px; accent-color: var(--m-navy); flex: 0 0 auto; }
.anm-radio.aleasa { border-color: var(--m-navy); background: var(--m-navy-s); }

/* rapoarte - panourile = standardul .panel al platformei; titlurile de sectiune = stilul .sect-label */
.anm-sect { background: var(--m-surf); border: 1px solid var(--m-border); border-radius: var(--m-r-5);
  box-shadow: var(--m-sh-md); padding: 20px; margin-bottom: 14px; }
.anm-sect-titlu { font-size: var(--m-fs-1); font-weight: 700; letter-spacing: .09em;
  text-transform: uppercase; color: var(--m-muted); margin: 0 0 12px; }

/* latimi STANDARD de coloane (dimensionate dupa continutul maxim posibil, identice pe toate
   ecranele - P1 si P2 au aceeasi geometrie indiferent de date) */
.anm-table th.c-scor { width: 100px; }
.anm-table th.c-stadiu { width: 265px; }
.anm-table th.c-delta { width: 70px; }
.anm-table th.c-semnal { width: 250px; }
.anm-table th.c-val { width: 130px; }
.anm-kpi-rand { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; }
.anm-kpi { background: var(--m-surf2); border: 1px solid var(--m-border); border-radius: var(--m-r-3); padding: 10px 12px; }
.anm-kpi small { display: block; color: var(--m-muted); font-size: var(--m-fs-1); text-transform: uppercase;
  letter-spacing: .04em; margin-bottom: 2px; }
.anm-kpi b { font-size: var(--m-fs-6); }
.anm-verdict { border-radius: var(--m-r-3); padding: 11px 14px; font-size: var(--m-fs-3);
  line-height: 1.5; margin-top: 10px; border: 1px solid var(--m-border); white-space: pre-wrap; }
.anm-verdict.pozitiv { background: var(--m-good-s); border-color: var(--m-good); }
.anm-verdict.negativ { background: var(--m-warn-s); border-color: var(--m-warn); }
.anm-chipuri { display: flex; gap: 7px; flex-wrap: wrap; margin-top: 10px; }
.anm-chip-scala { display: inline-flex; align-items: center; gap: 6px; border-radius: 999px;
  padding: 3px 10px 3px 5px; font-size: var(--m-fs-2); border: 1px solid var(--m-border); background: var(--m-surf2); }
.anm-chip-scala i { width: 12px; height: 12px; border-radius: 50%; display: inline-block; }

/* axa rautate -> bunatate */
.anm-axa { display: grid; grid-template-columns: repeat(6, 1fr); gap: 4px; margin-top: 10px; }
.anm-axa-seg { border-radius: 6px; height: 12px; position: relative; }
.anm-axa-marcaj { position: absolute; top: -17px; left: 50%; transform: translateX(-50%); font-size: 12px; }
.anm-axa-lbl { font-size: var(--m-fs-1); color: var(--m-muted); text-align: center; margin-top: 4px;
  line-height: 1.25; }

/* tabele */
.anm-table { width: 100%; border-collapse: collapse; font-size: var(--m-fs-3); }
.anm-table th { text-align: left; color: var(--m-muted); font-size: var(--m-fs-1); text-transform: uppercase;
  letter-spacing: .04em; padding: 6px 10px; border-bottom: 1px solid var(--m-border); }
/* padding aliniat la .tbl al platformei (congruenta 24.07) */
.anm-table td { padding: 9px 10px; border-bottom: 1px solid var(--m-border); vertical-align: top; }
.anm-table tr:last-child td { border-bottom: none; }
/* celule care raman pe UN rand (stadii, scoruri, semnale); la ferestre inguste tabelul face scroll */
.anm-table .nw { white-space: nowrap; }
.anm-scroll { overflow-x: auto; }

/* alerte */
.anm-alerta { border-left: 3px solid var(--m-bad); background: var(--m-surf2);
  border-radius: 0 var(--m-r-2) var(--m-r-2) 0; padding: 8px 12px; margin: 6px 0; font-size: var(--m-fs-3); }
.anm-alerta small { display: block; color: var(--m-muted); }

/* decodificare */
.anm-dec-titlu { font-weight: 600; margin: 14px 0 6px; }
.anm-dec-lista { margin: 0; padding-left: 18px; }
.anm-dec-lista li { margin-bottom: 5px; font-size: var(--m-fs-3); line-height: 1.5; }

/* certificat */
.anm-cert { border: 2px solid var(--m-navy); outline: 3px solid var(--m-navy-s); outline-offset: 3px;
  border-radius: var(--m-r-4); background: var(--m-surf); padding: 26px 20px; text-align: center;
  max-width: 520px; margin: 18px auto; }
.anm-cert .rand1 { letter-spacing: .18em; font-weight: 700; color: var(--m-navy); font-size: var(--m-fs-4); }
.anm-cert .nume { font-size: var(--m-fs-7); font-weight: 700; margin: 10px 0 2px; }
.anm-cert .stadiu { font-size: var(--m-fs-6); font-weight: 700; color: var(--m-navy);
  text-transform: uppercase; margin: 8px 0; letter-spacing: .04em; }
.anm-cert .mic { color: var(--m-muted); font-size: var(--m-fs-2); }

/* dashboard */
.anm-dash-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); gap: 14px; }
.anm-seg { display: inline-flex; border: 1px solid var(--m-border); border-radius: 999px; overflow: hidden; }
.anm-seg button { border: 0; background: var(--m-surf); color: var(--m-text); padding: 5px 16px;
  font: inherit; font-size: var(--m-fs-3); cursor: pointer; }
.anm-seg button.activ { background: var(--m-navy); color: #fff; }
.anm-lista-simpla { margin: 0; padding-left: 18px; }
.anm-lista-simpla li { margin-bottom: 4px; font-size: var(--m-fs-3); }

/* stare goala / gating */
.anm-gate { text-align: center; padding: 30px 16px; }
.anm-gate b { display: block; font-size: var(--m-fs-5); margin-bottom: 6px; }
.anm-gate p { color: var(--m-muted); margin: 0 0 12px; }

/* telefon (<=640px): compactare in pas cu blocul din index.html - fonturile coboara
   deja prin tokenii --m-fs-*, aici doar spatierile proprii anamnezei */
@media (max-width: 640px) {
  /* in pas cu scara -25% din index.html (cerinta Marian 24.07) */
  .anm-hub-card, .anm-sect { padding: 10px 11px; }
  .anm-sect { margin-bottom: 8px; }
  .anm-item { padding: 8px 9px; margin-bottom: 6px; }
  .anm-radio { padding: 5px 7px; margin-bottom: 4px; }
  .anm-aria-head { padding: 6px 9px; margin: 10px 0 6px; }
  .anm-table th { padding: 4px 5px; }
  .anm-table td { padding: 5px 6px; }
  .anm-kpi { padding: 6px 8px; }
  .anm-cert { padding: 14px 11px; }
  .anm-gate { padding: 15px 9px; }
}
