/* Medikal estetik (es-; gorunum/estetik.js, estetik-kart.js, estetik-uygulama.js, estetik-harita.js). Renkler yalnız belirteçlerden (Gündüz). */

/* ---------------- şema ---------------- */
.es-harita { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.es-gorunum-sec { max-width: 100%; overflow-x: auto; }
.es-sema-kap { position: relative; width: 100%; max-width: 420px; margin-inline: auto; border: 1px solid var(--cizgi); border-radius: var(--r); background: var(--yuzey2); }
.es-svg { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; touch-action: manipulation; }
.es-svg:not([data-salt]) { cursor: crosshair; }
.es-sema .es-c { fill: none; stroke: var(--metin2); stroke-width: 3.2; stroke-linecap: round; stroke-linejoin: round; }
.es-sema .es-ince { stroke: var(--metin3); stroke-width: 2.2; }
.es-sema .es-kesik { stroke-dasharray: 10 9; }
.es-sema .es-dolgu { fill: var(--yuzey); }
.es-sema .es-dolgu-yalniz { fill: var(--yuzey); stroke: none; }
.es-sema-yazi { fill: var(--metin3); font-size: 30px; font-family: var(--font-sans, inherit); }
.es-isaret-daire { fill: var(--vurgu); stroke: var(--yuzey); stroke-width: 5; }
.es-isaret-no { fill: var(--vurgu-ustu); font-size: 30px; font-weight: 700; font-family: var(--f-sayi); pointer-events: none; }
.es-isaret { cursor: pointer; }
.es-svg[data-salt] .es-isaret { cursor: default; }
.es-isaret[data-secili] .es-isaret-daire { stroke: var(--metin); stroke-width: 7; }
@media (forced-colors: active) {
  .es-sema .es-c { stroke: CanvasText; }
  .es-isaret-daire { fill: Highlight; stroke: Canvas; }
  .es-isaret-no { fill: HighlightText; }
}

/* ---------------- kip düzeni ---------------- */
.es-kip .kip-govde { container-type: inline-size; }
.es-ust { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); gap: 12px 16px; }
.es-duzen { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; align-items: start; }
@container (min-width: 860px) {
  .es-duzen { grid-template-columns: minmax(300px, 400px) minmax(0, 1fr); }
  .es-duzen-harita { position: sticky; top: 0; }
}
.es-duzen-harita, .es-duzen-liste { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.es-ekle { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 8px 10px; }
.es-ekle > .alan { flex: 1 1 200px; min-width: 0; }
.es-bos-not { margin: 0; }
.es-grup { min-width: 0; }

.es-nokta-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.es-nokta { border: 1px solid var(--cizgi); border-radius: var(--r); padding: 10px 12px; display: flex; flex-direction: column; gap: 8px; min-width: 0; background: var(--yuzey); }
.es-nokta[data-secili] { border-color: var(--vurgu); box-shadow: 0 0 0 1px var(--vurgu); }
.es-nokta-bas { display: flex; align-items: flex-end; gap: 8px; min-width: 0; }
.es-nokta-bolge { flex: 1 1 auto; min-width: 0; }
.es-no { flex: none; display: inline-grid; place-items: center; width: 28px; height: 28px; margin-bottom: 6px; border-radius: var(--r-tam); background: var(--vurgu); color: var(--vurgu-ustu);
  font-family: var(--f-sayi); font-weight: 700; font-size: 13px; }
.es-nokta-alanlar { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr)); gap: 8px 12px; min-width: 0; }
.es-urun { display: contents; }
.es-miktar { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 92px); align-items: end; gap: 6px; min-width: 0; }
.es-miktar-girdi { min-width: 0; }
.es-onceki-kap:empty { display: none; }
.es-onceki { margin: 0; font-size: 12.5px; padding: 6px 8px; border-radius: var(--r-k); background: var(--vurgu-zemin); overflow-wrap: anywhere; }

.es-stok:empty { display: none; }
.es-stok-satirlar { display: flex; flex-direction: column; gap: 8px; }
.es-stok-satir { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 12px; padding: 8px 10px; border: 1px dashed var(--cizgi2); border-radius: var(--r-k); min-width: 0; }
.es-stok-ad { min-width: 0; overflow-wrap: anywhere; flex: 1 1 200px; }
.es-stok-girdi { display: inline-flex; align-items: center; gap: 6px; }
.es-stok-girdi .girdi { width: 11ch; }

/* ---------------- hasta kartı ---------------- */
.es-dosya { min-width: 0; container-type: inline-size; }
.es-taslak .esnek { overflow-wrap: anywhere; }
.es-zaman { list-style: none; margin: 0; padding: 0 0 0 14px; display: flex; flex-direction: column; gap: 12px; border-left: 2px solid var(--cizgi); }
.es-zaman-oge { position: relative; display: flex; flex-direction: column; gap: 6px; min-width: 0; padding: 10px 12px; border: 1px solid var(--cizgi); border-radius: var(--r); background: var(--yuzey); }
.es-zaman-oge::before { content: ''; position: absolute; left: -21px; top: 16px; width: 10px; height: 10px; border-radius: var(--r-tam); background: var(--vurgu); border: 2px solid var(--yuzey); }
.es-zaman-oge[data-durum="duzeltildi"], .es-zaman-oge[data-durum="iptal"] { background: var(--yuzey2); }
.es-zaman-oge[data-durum="duzeltildi"]::before, .es-zaman-oge[data-durum="iptal"]::before { background: var(--cizgi2); }
.es-zaman-oge[data-durum="iptal"] .es-zaman-baslik strong { text-decoration: line-through; text-decoration-color: var(--metin3); }
.es-zaman-oge p { margin: 0; }
.es-zaman-oge:target { border-color: var(--vurgu); }
.es-zaman-bas { display: flex; align-items: flex-start; gap: 8px; min-width: 0; }
.es-zaman-baslik { overflow-wrap: anywhere; }
.es-urunler { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; font-size: 13px; overflow-wrap: anywhere; }
.es-bolgeler { display: flex; flex-wrap: wrap; gap: 4px; }
.es-cip { display: inline-block; padding: 1px 8px; border-radius: var(--r-tam); background: var(--yuzey3); color: var(--metin2); font-size: 12px; }
.es-not { white-space: pre-line; font-size: 13px; overflow-wrap: anywhere; }
.es-eylemler { gap: 6px; }
.es-ayrinti { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.es-ayrinti-izgara { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; align-items: start; }
/* yan yana yalnız kart sütunu genişse (kart dar sütunda da olabilir: görünüm genişliği değil, kap genişliği) */
@container (min-width: 640px) { .es-ayrinti-izgara { grid-template-columns: minmax(240px, 320px) minmax(0, 1fr); } }
.es-alt-baslik { margin: 0 0 4px; font-size: 13px; color: var(--metin2); }
.es-stok-liste, .es-gecmis { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; font-size: 13px; overflow-wrap: anywhere; }
.es-lot { font-family: var(--font-mono); font-size: 12.5px; overflow-wrap: anywhere; }
.es-alt { display: block; font-size: 12px; overflow-wrap: anywhere; }
.es-bolge-ozet { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2px; margin: 4px 0 0; font-size: 13px; }
.es-bolge-ozet dt { font-weight: 600; overflow-wrap: anywhere; }
.es-bolge-ozet dd { margin: 0 0 8px; display: flex; flex-direction: column; gap: 2px; overflow-wrap: anywhere; min-width: 0; }
@container (min-width: 520px) {
  .es-bolge-ozet { grid-template-columns: minmax(0, max-content) minmax(0, 1fr); gap: 6px 14px; }
  .es-bolge-ozet dd { margin-bottom: 0; }
}

/* ---------------- menü ekranı ---------------- */
.es-hasta { overflow-wrap: anywhere; }
.es-tekrar { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; }
.es-alt-liste { display: flex; flex-direction: column; gap: 2px; font-size: 12.5px; overflow-wrap: anywhere; }
.es-suzgec > .secim { flex: 1 1 160px; min-width: 0; max-width: 260px; }
.es-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 16px; align-items: start; }
.es-tanim-pasif .kart-baslik { color: var(--metin3); }
.es-bugun-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.es-bugun-liste li { padding-left: 10px; border-left: 3px solid var(--cizgi); overflow-wrap: anywhere; }
.es-bugun-liste li[data-ton="uyari"] { border-left-color: var(--uyari); }
.es-bugun-liste li[data-ton="vurgu"] { border-left-color: var(--vurgu); }
