/* Beyin diyagramı SVG stilleri (Beyin Haritası ile Bir Günün İçinden ortak) */
/* ── Tema renkleri (SVG içi) ── */
.bm-svg {
  --b-hi: #cba5da; --b-mid: #9669b0; --b-lo: #58397f;
  --b-stem-hi: #8b62a8; --b-stem-lo: #4a3070;
  --b-groove: #351d57; --b-groove-op: .8; --b-hl: #ffffff; --b-hl-op: .32;
  --b-edge: #e2c4f0; --b-glow: rgba(167,139,250,.35);
  --b-ghost: #e8d6f4; --b-ghost-op: .26;
  --b-label-bg: rgba(14,14,28,.78); --b-label-ink: #ecebf8; --b-label-line: rgba(255,255,255,.14);
  --b-marker-bg: #12121f;
}
html.light .bm-svg {
  --b-hi: #f8e0ee; --b-mid: #e5bddb; --b-lo: #bd90c9;
  --b-stem-hi: #d9aed2; --b-stem-lo: #b283bd;
  --b-groove: #84529a; --b-groove-op: .68; --b-hl: #ffffff; --b-hl-op: .85;
  --b-edge: #8d5aa3; --b-glow: rgba(139,92,246,.18);
  --b-ghost: #6a3d82; --b-ghost-op: .22;
  --b-label-bg: rgba(255,255,255,.92); --b-label-ink: #1f1f36; --b-label-line: rgba(60,40,120,.16);
  --b-marker-bg: #ffffff;
}
.st-hi { stop-color: var(--b-hi); } .st-mid { stop-color: var(--b-mid); } .st-lo { stop-color: var(--b-lo); }
.st-shi { stop-color: var(--b-stem-hi); } .st-slo { stop-color: var(--b-stem-lo); }

.b-stem-line { fill: none; stroke: var(--b-groove); stroke-opacity: .35; stroke-width: 1.4; stroke-linecap: round; }
.b-folds-shadow { fill: none; stroke: var(--b-groove); stroke-opacity: .22; stroke-width: 5.5; stroke-linejoin: round; }
.b-folds { fill: var(--b-groove); fill-opacity: var(--b-groove-op); fill-rule: evenodd; }
.b-folds-hl { fill: var(--b-hl); fill-opacity: var(--b-hl-op); fill-rule: evenodd; }
.b-fissure { fill: none; stroke: var(--b-groove); stroke-opacity: .92; stroke-linecap: round; stroke-linejoin: round; }
.b-fissure-lip { fill: none; stroke: var(--b-hl); stroke-opacity: .5; stroke-linecap: round; stroke-linejoin: round; }
.b-edge { fill: none; stroke: var(--b-edge); stroke-width: 1.6; stroke-linejoin: round; stroke-opacity: .9; }
.b-folia { fill: none; stroke: var(--b-groove); stroke-opacity: .5; stroke-width: 1.2; }
.b-ghost { fill: none; stroke: var(--b-ghost); stroke-opacity: var(--b-ghost-op); stroke-width: 1.6; stroke-dasharray: 3 5; stroke-linecap: round; }
.b-ghost-fill { fill: var(--b-ghost); fill-opacity: calc(var(--b-ghost-op) * .35); stroke: var(--b-ghost); stroke-opacity: var(--b-ghost-op); stroke-width: 1.2; stroke-dasharray: 3 5; }

/* loblar */
.b-lobe { opacity: 0; transition: opacity .5s ease; mix-blend-mode: normal; }
.bm-svg.show-lobes .b-lobe { opacity: .34; }
html.light .bm-svg.show-lobes .b-lobe { opacity: .3; }
.b-lobe-label { font: 800 13px var(--font-sans); letter-spacing: .22em; text-anchor: middle; fill: #fff; opacity: 0; transition: opacity .5s; pointer-events: none; paint-order: stroke; stroke: rgba(30,20,60,.55); stroke-width: 3px; }
html.light .b-lobe-label { fill: #3a2160; stroke: rgba(255,255,255,.7); }
.bm-svg.show-lobes .b-lobe-label { opacity: .95; }

/* iç yapılar (saydam görünüm) */
#bmCortex, .b-folds, .b-folds-hl, .b-folds-shadow, .b-lobe { transition: opacity .6s ease; }
.bm-svg.xray #bmCortex { opacity: .32; }
.bm-svg.xray .b-folds, .bm-svg.xray .b-folds-hl, .bm-svg.xray .b-folds-shadow { opacity: .18; }
.bm-svg.xray .b-ghost { stroke-opacity: .85; stroke-width: 2; }
.bm-svg.xray .b-ghost-fill { fill-opacity: .3; stroke-opacity: .9; }
.b-inner-label { font: 700 11px var(--font-sans); letter-spacing: .12em; text-transform: uppercase; text-anchor: middle; fill: var(--b-label-ink); opacity: 0; transition: opacity .5s; pointer-events: none; paint-order: stroke; stroke: var(--b-label-bg); stroke-width: 4px; }
.bm-svg.xray .b-inner-label { opacity: .95; }

/* bölge şekilleri */
.r-shape { transition: filter .35s ease, opacity .35s ease, transform .35s ease; transform-box: fill-box; transform-origin: center; }
.r-zone { fill-opacity: .1; stroke-width: 1.5; stroke-dasharray: 5 5; stroke-opacity: .55; fill: var(--c); stroke: var(--c); transition: fill-opacity .35s, stroke-opacity .35s; }
.bm-svg [data-r].is-active .r-zone { fill-opacity: .24; stroke-opacity: 1; }
.bm-svg [data-r].is-active .r-shape { filter: drop-shadow(0 0 9px var(--c)) drop-shadow(0 0 18px var(--c)); transform: scale(1.12); }
.bm-svg [data-r].is-hover .r-shape { filter: drop-shadow(0 0 8px var(--c)); }
.bm-svg.dim [data-r]:not(.is-in-path) { opacity: .35; }

/* işaretçiler */
.mk { cursor: pointer; outline: none; }
.mk-halo { fill: var(--c); opacity: 0; transform-box: fill-box; transform-origin: center; }
.mk.is-active .mk-halo { animation: mkHalo 2.2s ease-out infinite; }
@keyframes mkHalo { 0% { opacity: .5; transform: scale(.55); } 100% { opacity: 0; transform: scale(1.5); } }
.mk-ring { fill: var(--b-marker-bg); stroke: var(--c); stroke-width: 2.4; transition: all .25s; }
.mk-num { font: 800 12px var(--font-sans); fill: var(--c); text-anchor: middle; dominant-baseline: central; pointer-events: none; }
.mk:hover .mk-ring, .mk:focus-visible .mk-ring { stroke-width: 3.4; }
.mk.is-active .mk-ring { fill: var(--c); }
.mk.is-active .mk-num { fill: #fff; }
.mk:focus-visible .mk-ring { stroke: var(--gv-ink); }

/* etiketler */
.lb { cursor: pointer; }
.lb-bg { fill: var(--b-label-bg); stroke: var(--b-label-line); stroke-width: 1; transition: all .25s; }
.lb-tx { font: 700 12.5px var(--font-sans); fill: var(--b-label-ink); dominant-baseline: central; pointer-events: none; }
.lb-dot { fill: var(--c); }
.lb-line { fill: none; stroke: var(--c); stroke-opacity: .5; stroke-width: 1.2; stroke-dasharray: 3 4; transition: stroke-opacity .25s; }
.lb.is-active .lb-bg { stroke: var(--c); stroke-width: 1.6; }
.lb.is-active .lb-line, .lb:hover .lb-line { stroke-opacity: 1; }
.bm-svg.dim .lb:not(.is-in-path), .bm-svg.dim .mk:not(.is-in-path) { opacity: .4; }

/* yollar */
.pw { fill: none; stroke-linecap: round; opacity: 0; transition: opacity .4s; pointer-events: none; }
.pw-glow { stroke-width: 9; stroke-opacity: .18; }
.pw-line { stroke-width: 2.2; stroke-dasharray: 2 9; animation: pwFlow 1.1s linear infinite; }
.pw-base { stroke-width: 1.2; stroke-opacity: .35; }
.pw.is-on { opacity: 1; }
@keyframes pwFlow { to { stroke-dashoffset: -11; } }

