/* SAHNE · DENEME SINAVI: OPTİK DOSYASI → ANALİZ (includes/scenes/exam-analysis.php) — adımlar:
   s1 optik TXT dosyası sürüklenir · s2 bırakılır, «Optik format» seçilir · s3 «Yükle ve eşleştir» → 39 eşleşti, okumalara kayar ·
   s4 «Uygula ve hesapla» → Hesaplama ✓, katılım 39/39, analiz sekmeleri · s5 «Sonuçlar» sekmesi: sıralı liste ·
   s6 «Öğrenci ve veliye yayınla» → üç adım ✓ · s7 Can Kılınç'ın adına tıklanır · s8 sınav karnesi (sayaçlar, ders çubukları) */
@property --exa-a { syntax: '<integer>'; inherits: false; initial-value: 0; }
@property --exa-b { syntax: '<integer>'; inherits: false; initial-value: 0; }

.exa { container-type: inline-size; --d: 0s; --exa-fh: 90px; --exa-st: 244px; --gx: 380px; --gy: -70px;
  --exa-ok: #047857; --exa-ok-ink: #065f46; --exa-spring: cubic-bezier(.34, 1.56, .64, 1); }
.exa.s2 { --d: .1s; } .exa.s3 { --d: .8s; } .exa.s4 { --d: .75s; } .exa.s5 { --d: .45s; } .exa.s6 { --d: .6s; } .exa.s7 { --d: 0s; }
.exa-win { border-radius: 14px 14px 0 0; border-bottom: 0; }
.exa-i { width: 14px; height: 14px; flex: none; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

/* çapraz geçiş: katmanlar aynı ızgara hücresinde üst üste; on-A-B = A. adımdan B. adıma kadar görünür */
.exa-x, .exa-reads { display: grid; min-width: 0; }
.exa-x > *, .exa-reads > * { grid-area: 1 / 1; min-width: 0; }
.exa [class*="on-"] { opacity: 0; transform: translateY(3px); transition: opacity .3s var(--ui-ease) var(--d), transform .35s var(--ui-ease) var(--d); }
.exa:not(.s2) .on-0-2, .exa:not(.s3) .on-0-3, .exa:not(.s4) .on-0-4, .exa.s2 .on-2, .exa.s3 .on-3, .exa.s3:not(.s4) .on-3-4,
.exa.s4 .on-4, .exa.s4:not(.s6) .on-4-6, .exa.s6 .on-6 { opacity: 1; transform: none; }
.exa.s2 .exa-in--sel [class*="on-"] { transition-delay: .62s; }

/* imleç: .exa-hit tıklama noktasıdır; ok ucu tam orada, halka dalgası çevresinde */
.exa-hit { position: absolute; z-index: 7; width: 0; height: 0; pointer-events: none; }
.exa-hit .ui-cur { left: -5px; top: -3px; transform: translate(14px, 12px); transition: opacity .2s var(--ui-ease); }
.exa-rip { position: absolute; left: -11px; top: -11px; width: 22px; height: 22px; border-radius: 50%; box-shadow: 0 0 0 2px rgba(29, 79, 134, .55); opacity: 0; }
@keyframes exa-cur { 0% { opacity: 0; transform: translate(14px, 12px); } 34% { opacity: 1; transform: none; scale: 1; } 50% { scale: .8; } 64%, 100% { opacity: 1; transform: none; scale: 1; } }
@keyframes exa-cur-out { 0% { opacity: 0; transform: translate(14px, 12px); } 30% { opacity: 1; transform: none; scale: 1; } 44% { scale: .8; } 56% { scale: 1; } 76% { opacity: 1; transform: none; } 100% { opacity: 0; transform: none; } }
@keyframes exa-rip { 0% { opacity: 0; scale: .25; } 12% { opacity: .9; } 100% { opacity: 0; scale: 1.7; } }
@keyframes exa-push { 50% { scale: .95; } }
@keyframes exa-sheen { from { transform: translateX(-120%); } to { transform: translateX(280%); } }
@keyframes exa-pop { 0% { scale: .4; } 60% { scale: 1.15; } 100% { scale: 1; } }

/* ── başlık bandı (kurum rengi) ── */
.exa-band { display: flex; align-items: center; gap: 12px; margin: 12px 12px 0; padding: 11px 12px; border-radius: 12px; color: #fff;
  background: linear-gradient(120deg, var(--navy-night), var(--navy) 55%, var(--navy-soft));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12), 0 1px 2px rgba(11, 36, 64, .18), 0 10px 20px -14px rgba(11, 36, 64, .7); }
.exa-ico { flex: none; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: rgba(255, 255, 255, .13); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .2); }
.exa-ico .exa-i { width: 18px; height: 18px; stroke-width: 1.8; }
.exa-ttl { flex: 1; min-width: 0; line-height: 20px; }
.exa-ttl > b { font-size: 15px; font-weight: 800; letter-spacing: -.01em; }
.exa-chip { display: inline-flex; align-items: center; gap: 4px; height: 19px; margin: 1px 0 0 7px; padding: 0 6px; border-radius: 6px; vertical-align: top; background: rgba(255, 255, 255, .16); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .28); font-size: 10.5px; font-weight: 800; }
.exa-chip .exa-i { width: 12px; height: 12px; }
.exa-ttl small { display: block; margin-top: 2px; font-size: 11.5px; line-height: 15px; font-weight: 600; color: rgba(255, 255, 255, .82); font-variant-numeric: tabular-nums; white-space: nowrap; }
.exa-more { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: rgba(255, 255, 255, .1); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .22); }
.exa-more .exa-i { width: 16px; height: 16px; }

/* sayaçlar (ileri sayar) */
.exa-n { counter-reset: exa-a var(--exa-a) exa-b var(--exa-b); font-variant-numeric: tabular-nums; transition: --exa-a .8s var(--ui-ease), --exa-b .8s var(--ui-ease); }
.exa-n::after { content: counter(exa-a); }
.exa-n--net::after, .exa-n--puan::after { content: counter(exa-a) "," counter(exa-b, decimal-leading-zero); }
.exa.s4 .exa-n--kat { --exa-a: 39; transition-delay: .8s; }
.exa.s3 .exa-n--es { --exa-a: 39; transition-duration: .7s; transition-delay: .95s; }

/* ── sonuç yayını ── */
.exa-pub { padding: 8px 14px 10px; }
.exa-pub__top { display: flex; align-items: center; gap: 8px; height: 28px; }
.exa-pub__lbl { flex: none; font-size: 10px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; color: var(--ui-muted); }
.exa-kim { flex: 1; font-size: 11.5px; font-weight: 700; color: var(--ui-text); }
.exa-kim > * { white-space: nowrap; }
.exa-act { flex: none; margin-left: auto; justify-items: end; }
.exa-btn2 { position: relative; display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 10px; border-radius: 8px; background: #fff; font-size: 11.5px; font-weight: 700; color: #27272a; white-space: nowrap;
  box-shadow: inset 0 0 0 1px #e4e4e7, 0 1px 2px rgba(16, 37, 64, .06), inset 0 1px 0 rgba(255, 255, 255, .6); }
.exa-btn2 .exa-i { width: 13px; height: 13px; color: #52525b; }
.exa-act__on { display: flex; gap: 6px; }
.exa-btn2--pub .exa-hit { right: 22px; bottom: 7px; }
.exa.s6 .exa-btn2--pub { animation: exa-push .3s var(--ui-ease) .42s; }
.exa.s6:not(.s7) .exa-hit--pub .ui-cur { animation: exa-cur .9s var(--ui-ease) both; }
.exa.s6:not(.s7) .exa-hit--pub .exa-rip { animation: exa-rip .55s ease-out .42s both; }

.exa-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 6px 0 0; padding: 0; }
.exa-st { position: relative; min-width: 0; }
.exa-st__row { display: flex; align-items: center; gap: 7px; }
.exa-st b { font-size: 12px; font-weight: 800; white-space: nowrap; color: var(--ui-text); }
.exa-dot { flex: none; display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; font-size: 11px; font-weight: 800; font-variant-numeric: tabular-nums;
  background: #f4f4f5; color: #52525b; box-shadow: inset 0 0 0 1px #e4e4e7;
  transition: background-color .35s var(--ui-ease) var(--d), color .35s var(--ui-ease) var(--d), box-shadow .35s var(--ui-ease) var(--d); }
.exa-dot .exa-i { width: 12px; height: 12px; stroke-width: 2.4; }
.exa-dot .exa-x > * { display: grid; place-items: center; transform: scale(.5); transition: opacity .25s var(--ui-ease) var(--d), transform .45s var(--exa-spring) var(--d); }
.exa-st--1 .exa-dot, .exa.s4 .exa-st--2 .exa-dot { background: var(--navy-soft); color: #fff; box-shadow: 0 0 0 4px rgba(29, 79, 134, .15); }
.exa.s4 .exa-st--3 .exa-dot { background: #fff; color: #52525b; box-shadow: inset 0 0 0 1px #d4d4d8; }
.exa.s4 .exa-st--1 .exa-dot, .exa.s6 .exa-st--2 .exa-dot, .exa.s6 .exa-st--3 .exa-dot { background: var(--exa-ok); color: #fff; box-shadow: 0 0 0 0 rgba(4, 120, 87, 0); }
.exa.s6 .exa-st--3 .exa-dot { transition-delay: .72s; }
.exa.s6 .exa-st--3 .exa-dot .exa-x > * { transition-delay: .72s; }
.exa-ln { position: relative; flex: 1; min-width: 12px; height: 2px; border-radius: 2px; background: #e4e4e7; overflow: hidden; }
.exa-ln::after { content: ""; position: absolute; inset: 0; border-radius: inherit; background: #34d399; transform: scaleX(0); transform-origin: left; transition: transform .5s var(--ui-ease) var(--d); }
.exa.s4 .exa-st--1 .exa-ln::after, .exa.s6 .exa-st--2 .exa-ln::after { transform: none; }
.exa.s4 .exa-st--1 .exa-ln::after { transition-delay: .95s; }
.exa-st small { margin-top: 2px; padding-left: 29px; font-size: 10.5px; font-weight: 600; line-height: 14px; color: #52525b; }
.exa-st small > * { white-space: nowrap; }
.exa-st small .ok { color: var(--exa-ok-ink); font-weight: 700; }

/* ── sekmeler ── */
.exa-main { position: relative; }
.exa-tabs { position: relative; display: flex; height: 32px; margin: 0 14px; box-shadow: inset 0 -1px 0 var(--ui-line); }
.exa-tabs::after { content: ""; position: absolute; z-index: 2; top: 0; right: -14px; bottom: 1px; width: 48px; background: linear-gradient(90deg, rgba(255, 255, 255, 0), #fff 80%); pointer-events: none; }
.exa-tab { position: relative; flex: none; display: flex; align-items: center; padding: 0 10px; font-size: 12px; font-weight: 800; color: var(--ui-muted); white-space: nowrap; transition: color .3s var(--ui-ease) var(--d); }
.exa-tab::after { content: ""; position: absolute; left: 10px; right: 10px; bottom: 0; height: 2px; border-radius: 2px; background: var(--navy-soft); transform: scaleX(0); transition: transform .32s var(--ui-ease) var(--d); }
/* hesaplanınca gelen sekmeler (s0–s3'te yoklar): s4'te kayarak eklenir; «Genel Bakış» başa açılır, etkin sekme alt çizgisiyle sağa kayar */
.exa-tab--new { opacity: 0; translate: -8px 0; transition: opacity .3s var(--ui-ease) 1.1s, translate .4s var(--ui-ease) 1.1s; }
.exa-tab--gb { max-width: 0; padding: 0; overflow: hidden;
  transition: max-width .5s var(--ui-ease) .95s, padding .5s var(--ui-ease) .95s, opacity .3s var(--ui-ease) 1.15s, translate .4s var(--ui-ease) 1.15s; }
.exa.s4 .exa-tab--new { opacity: 1; translate: 0 0; }
.exa.s4 .exa-tab--gb { max-width: 120px; padding: 0 10px; }
.exa:not(.s5) .exa-tab--oo, .exa.s5 .exa-tab--so { color: var(--navy-soft); }
.exa:not(.s5) .exa-tab--oo::after, .exa.s5 .exa-tab--so::after { transform: none; }
.exa-tab--oo::after { transform-origin: right; }
.exa-tab--so::after { transform-origin: left; }
.exa.s5 .exa-tab--so::after { transition-delay: calc(var(--d) + .1s); }
.exa-tab--so .exa-hit { left: 62%; top: 20px; }
.exa.s5:not(.s6) .exa-hit--tab .ui-cur { animation: exa-cur .8s var(--ui-ease) both; }
.exa.s5:not(.s6) .exa-hit--tab .exa-rip { animation: exa-rip .55s ease-out .3s both; }

/* ── sahne gövdesi: iki sekme aynı hücrede ── */
.exa-stage { position: relative; display: grid; height: var(--exa-st); overflow: hidden; }
.exa-stage::after { content: ""; position: absolute; z-index: 3; left: 0; right: 0; bottom: 0; height: 16px; background: linear-gradient(rgba(255, 255, 255, 0), #fff); pointer-events: none; }
.exa-p { grid-area: 1 / 1; min-width: 0; }
.exa-imp { padding: 10px 14px 0; transition: opacity .3s var(--ui-ease) var(--d), translate .65s var(--ui-ease) .78s; }
.exa-stage::after { transition: opacity .3s var(--ui-ease) var(--d); }
.exa.s5 .exa-stage::after { opacity: 0; }
.exa.s3 .exa-imp { translate: 0 calc(-1 * (var(--exa-fh) + 10px)); }
.exa.s5 .exa-imp { opacity: 0; }
.exa-res { padding: 8px 14px 0; opacity: 0; translate: 0 8px; transition: opacity .3s var(--ui-ease) var(--d), translate .45s var(--ui-ease) var(--d); }
.exa.s5 .exa-res { opacity: 1; translate: 0 0; }

/* yükleme formu (kesikli kenarlı alan) */
.exa-up { position: relative; height: var(--exa-fh); padding: 9px 12px; border: 1px dashed #bfc7d2; border-radius: 12px; background: #fff; }
.exa-up__row, .exa-up__row2 { display: flex; align-items: flex-end; gap: 8px; min-width: 0; }
.exa-up__row2 { flex: none; }
.exa-fld { min-width: 0; }
.exa-fld--file { flex: 1; }
.exa-fld--fmt { flex: none; width: 168px; }
.exa-lbl { display: block; margin-bottom: 4px; font-size: 10.5px; font-weight: 800; line-height: 14px; color: #52525b; }
.exa-in { position: relative; display: flex; align-items: center; gap: 7px; height: 30px; padding: 0 9px 0 4px; border-radius: 8px; background: #fff; font-size: 11px; font-weight: 700; color: var(--ui-text);
  box-shadow: inset 0 0 0 1px var(--ui-line-2), 0 1px 1px rgba(16, 37, 64, .03); transition: box-shadow .3s var(--ui-ease); }
.exa-in { min-width: 0; }
.exa-in .exa-x { flex: 1; }
.exa-in .exa-x > * { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.exa-mut { color: var(--ui-muted); font-weight: 600; }
.exa-pick { flex: none; display: grid; place-items: center; height: 22px; padding: 0 7px; border-radius: 5px; background: #f1f2f4; box-shadow: inset 0 0 0 1px #c9cfd8; font-size: 10.5px; font-weight: 600; color: #27272a; }
.exa-in--sel { padding-left: 10px; }
.exa-chev { width: 13px; height: 13px; color: var(--ui-muted); }
.exa.s2 .exa-in--sel { box-shadow: inset 0 0 0 1px var(--navy-soft), 0 0 0 3px rgba(29, 79, 134, .14); transition-delay: .5s; }
.exa.s3 .exa-in--sel { box-shadow: inset 0 0 0 1px var(--ui-line-2); transition-delay: 0s; }
.exa-in--sel .exa-hit { right: 26px; bottom: 9px; }
.exa.s2:not(.s3) .exa-hit--fmt .ui-cur { animation: exa-cur .9s var(--ui-ease) .15s both; }
.exa.s2:not(.s3) .exa-hit--fmt .exa-rip { animation: exa-rip .55s ease-out .6s both; }
.exa-btn { position: relative; flex: none; display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 12px; border-radius: 9px; font-size: 11.5px; font-weight: 800; color: #fff; white-space: nowrap;
  background: linear-gradient(135deg, var(--navy-soft), var(--navy));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18), 0 1px 2px rgba(16, 37, 64, .2), 0 6px 14px -8px rgba(20, 61, 107, .75); }
.exa-btn .exa-hit { right: 26px; bottom: 9px; }
.exa.s3:not(.s4) .exa-btn--up { animation: exa-push .3s var(--ui-ease) .38s; }
.exa.s3:not(.s4) .exa-hit--up .ui-cur { animation: exa-cur-out 1.05s var(--ui-ease) both; }
.exa.s3:not(.s4) .exa-hit--up .exa-rip { animation: exa-rip .55s ease-out .4s both; }
.exa-up__note { margin: 7px 0 0; font-size: 10px; font-weight: 600; line-height: 13px; color: var(--ui-muted); white-space: nowrap; }

/* sürüklenen dosya (işletim sisteminden) */
.exa-ghost { position: absolute; z-index: 8; left: 78px; top: 24px; display: flex; align-items: center; gap: 8px; padding: 6px 12px 6px 6px; border-radius: 10px; background: #fff; pointer-events: none;
  box-shadow: 0 0 0 1px rgba(16, 37, 64, .1), 0 2px 4px rgba(16, 37, 64, .08), 0 18px 34px -14px rgba(16, 37, 64, .5);
  opacity: 0; translate: var(--gx) var(--gy); rotate: -5deg;
  transition: opacity .25s var(--ui-ease), translate .85s cubic-bezier(.3, .75, .25, 1) .08s, rotate .85s var(--ui-ease) .08s, scale .25s var(--ui-ease); }
.exa-ghost__ico { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 7px; background: var(--ui-primary-soft); color: var(--navy-soft); }
.exa-ghost > b { display: block; font-size: 11px; font-weight: 800; line-height: 14px; white-space: nowrap; }
.exa-ghost .exa-hit { left: 20px; top: 18px; }
.exa-ghost .ui-cur { transform: none; }
.exa.s1 .exa-ghost { opacity: 1; translate: 0 0; rotate: -2deg; }
.exa.s1:not(.s2) .exa-hit--drag .ui-cur { opacity: 1; }
.exa.s2 .exa-ghost { opacity: 0; scale: .55; transition-delay: 0s; }

/* okumalar */
.exa-reads { margin-top: 10px; }
.exa-card { border-radius: 12px; background: #fff; box-shadow: 0 0 0 1px var(--ui-line), 0 1px 2px rgba(16, 37, 64, .05), inset 0 1px 0 rgba(255, 255, 255, .6); }
.exa-card__h { display: flex; align-items: center; height: 34px; padding: 0 12px; border-bottom: 1px solid var(--ui-line); font-size: 12px; font-weight: 800; }
.exa-empty__b { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 16px 12px 22px; font-size: 11.5px; font-weight: 700; color: var(--ui-muted); }
.exa-empty__b .exa-i { width: 26px; height: 26px; stroke-width: 1.6; color: #c4c9d2; }
.exa-flash { min-height: 30px; align-items: center; margin-bottom: 8px; padding: 6px 12px; border-radius: 10px; background: #ecfdf5; box-shadow: inset 0 0 0 1px #a7f3d0; font-size: 11.5px; font-weight: 700; line-height: 16px; color: var(--exa-ok-ink); }
.exa-rd { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-bottom: 1px solid var(--ui-line); }
.exa-rd__ico { flex: none; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; background: var(--ui-primary-soft); color: var(--navy-soft); }
.exa-rd__ad { flex: 1; min-width: 0; line-height: 15px; }
.exa-rd__ad b { display: block; font-size: 11.5px; font-weight: 800; white-space: nowrap; }
.exa-rd__ad small { display: block; font-size: 10.5px; font-weight: 700; color: var(--ui-muted); font-variant-numeric: tabular-nums; }
.exa-rd__st { display: inline-grid; vertical-align: top; }
.exa-rd__st .wait { color: #b45309; } .exa-rd__st .ok { color: var(--exa-ok); }
.exa-rd__acts { flex: none; display: flex; flex-wrap: wrap; gap: 6px; }
.exa-rd__acts > * { flex: none; }
.exa-rd__acts .exa-x { justify-items: end; }
.exa-btn3 { position: relative; display: inline-flex; align-items: center; gap: 5px; height: 28px; padding: 0 9px; border-radius: 8px; font-size: 11px; font-weight: 800; white-space: nowrap; }
.exa-btn3 .exa-i { width: 13px; height: 13px; }
.exa-btn3--prova { color: #92400e; box-shadow: inset 0 0 0 1px #fcd34d; background: #fff; }
.exa-btn3--go { color: #fff; background: var(--exa-ok); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .16), 0 1px 2px rgba(4, 120, 87, .3), 0 6px 12px -8px rgba(4, 120, 87, .8); }
.exa-btn3--undo { color: #b91c1c; background: #fff; box-shadow: inset 0 0 0 1px #fca5a5; }
.exa-btn3--go .exa-hit { right: 24px; bottom: 8px; }
.exa.s4 .exa-btn3--go { animation: exa-push .3s var(--ui-ease) .4s; }
.exa.s4:not(.s5) .exa-hit--apply .ui-cur { animation: exa-cur .9s var(--ui-ease) both; }
.exa.s4:not(.s5) .exa-hit--apply .exa-rip { animation: exa-rip .55s ease-out .42s both; }
.exa-flt { display: flex; align-items: center; height: 32px; padding: 0 10px; border-bottom: 1px solid var(--ui-line); }
.exa-seg { display: flex; gap: 2px; }
.exa-seg > span { display: grid; place-items: center; height: 22px; padding: 0 9px; border-radius: 7px; font-size: 11px; font-weight: 800; line-height: 1; color: #52525b; }
.exa-seg > .is-on { background: #18181b; color: #fff; box-shadow: 0 1px 2px rgba(16, 37, 64, .2), inset 0 1px 0 rgba(255, 255, 255, .1); }
.exa-tr { display: grid; grid-template-columns: 36px minmax(0, 1fr) 150px 84px; align-items: center; column-gap: 8px; height: 32px; padding: 0 10px; border-top: 1px solid #f1f1f3; }
.exa-tr--h { height: 22px; border-top: 0; background: var(--ui-bg-2); font-size: 10px; font-weight: 800; color: var(--ui-muted); }
.exa-tr:not(.exa-tr--h) { opacity: 0; translate: 0 6px; transition: opacity .3s var(--ui-ease) calc(1s + var(--i) * 80ms), translate .4s var(--ui-ease) calc(1s + var(--i) * 80ms); }
.exa.s3 .exa-tr { opacity: 1; translate: 0 0; }
.exa-tr__no { font: 600 10.5px/1 ui-monospace, "SFMono-Regular", Consolas, monospace; color: var(--ui-muted); }
.exa-tr__ad, .exa-tr__st { min-width: 0; line-height: 13px; }
.exa-tr__ad b { display: block; font-size: 11px; font-weight: 800; white-space: nowrap; }
.exa-tr small { display: block; font-size: 10px; font-weight: 600; color: var(--ui-muted); white-space: nowrap; font-variant-numeric: tabular-nums; }
.exa-tr__st > span { display: flex; align-items: center; gap: 5px; font-size: 10.5px; font-weight: 700; color: var(--ui-muted); font-variant-numeric: tabular-nums; }
.exa-tr__st em { font-style: normal; height: 15px; padding: 0 5px; border-radius: 4px; background: #d1fae5; color: var(--exa-ok); font-size: 10px; font-weight: 800; line-height: 15px; }
.exa-tr__st small { margin-top: 1px; color: #52525b; }
.exa-tr .exa-c-is { justify-items: end; text-align: right; color: #a1a1aa; font-size: 11px; font-weight: 700; }
.exa-unl { display: inline-flex; align-items: center; gap: 4px; height: 22px; padding: 0 7px; border-radius: 7px; background: #fff; font-size: 10px; font-weight: 800; color: #52525b; white-space: nowrap;
  box-shadow: inset 0 0 0 1px #d4d4d8, 0 1px 1px rgba(16, 37, 64, .04); }
.exa-unl .exa-i { width: 11px; height: 11px; stroke-width: 2.2; }
.exa-tr--h .exa-c-is { color: var(--ui-muted); font-size: 10px; font-weight: 800; }

/* ── sonuçlar ── */
.exa-sum { display: flex; align-items: center; gap: 5px; height: 22px; margin: 0; font-size: 11px; font-weight: 600; color: #52525b; white-space: nowrap; font-variant-numeric: tabular-nums; }
.exa-sum b { font-weight: 800; color: var(--ui-text); } .exa-sum b.ok { color: var(--exa-ok); } .exa-sum b.bad { color: #b91c1c; }
.exa-sum i { font-style: normal; color: #a1a1aa; }
.exa-rt { --exa-rc: 28px minmax(0, 1fr) 48px 92px 78px 50px; margin-top: 6px; border-radius: 12px; background: #fff; box-shadow: 0 0 0 1px var(--ui-line), 0 1px 2px rgba(16, 37, 64, .05); }
.exa-rr { display: grid; grid-template-columns: var(--exa-rc); align-items: center; column-gap: 8px; height: 26px; padding: 0 10px; border-top: 1px solid #f1f1f3; font-variant-numeric: tabular-nums;
  opacity: 0; translate: 0 5px;
  transition: opacity .3s var(--ui-ease) calc(.55s + var(--i) * 55ms), translate .35s var(--ui-ease) calc(.55s + var(--i) * 55ms), background-color .25s var(--ui-ease) .2s, box-shadow .25s var(--ui-ease) .2s; }
.exa-rr > * { min-width: 0; }
.exa-rr--h { height: 24px; border-top: 0; border-radius: 12px 12px 0 0; background: var(--ui-bg-2); font-size: 10.5px; font-weight: 800; color: #52525b; opacity: 1; translate: 0 0; }
.exa-rr--h > * { line-height: 14px; }
.exa-rr--h > :first-child { text-align: center; }
.exa-rr--h .exa-c-pu { display: inline-flex; align-items: center; justify-content: flex-end; gap: 2px; color: var(--ui-text); }
.exa-rr--h .exa-i { width: 11px; height: 11px; stroke-width: 2.4; }
.exa.s5 .exa-rr { opacity: 1; translate: 0 0; }
.exa-rr--can { border-radius: 0 0 12px 12px; }
.exa.s7 .exa-rr--can { background: #f3f7fc; box-shadow: inset 2px 0 0 var(--navy-soft); }
.exa-rr__sira { font-size: 11px; font-weight: 800; color: #52525b; text-align: center; }
.exa-rr__sira i { display: inline-grid; place-items: center; width: 18px; height: 18px; border-radius: 50%; font-style: normal; font-size: 10.5px; font-weight: 900; }
.exa-rr__sira .m1 { background: #fbbf24; color: #451a03; } .exa-rr__sira .m2 { background: #d4d4d8; color: #3f3f46; } .exa-rr__sira .m3 { background: #fdba74; color: #7c2d12; }
.exa-rr__ad { display: flex; align-items: center; gap: 4px; white-space: nowrap; overflow: hidden; }
.exa-rr__ad b { position: relative; font-size: 11.5px; font-weight: 800; color: #27272a; text-decoration: underline transparent; text-underline-offset: 2px; transition: color .25s var(--ui-ease) .2s, text-decoration-color .25s var(--ui-ease) .2s; }
.exa.s7 .exa-rr--can .exa-rr__ad b { color: var(--navy-soft); text-decoration-color: currentColor; }
.exa-rr__ad em { flex: none; height: 15px; padding: 0 4px; border-radius: 4px; font-style: normal; font-size: 10px; font-weight: 800; line-height: 15px; letter-spacing: -.01em; }
.exa-rr__ad .r10 { background: #d1fae5; color: #047857; } .exa-rr__ad .r25 { background: #ecfccb; color: #4d7c0f; } .exa-rr__ad .rs { background: #fef3c7; color: #b45309; }
.exa-rr__ad .exa-hit { left: 34px; top: 9px; }
.exa.s7:not(.s8) .exa-hit--can .ui-cur { animation: exa-cur .85s var(--ui-ease) both; }
.exa.s7:not(.s8) .exa-hit--can .exa-rip { animation: exa-rip .55s ease-out .4s both; }
.exa-c-sb { line-height: 11px; }
.exa-c-sb b { display: block; font-size: 11px; font-weight: 800; color: #3f3f46; }
.exa-c-sb small { display: block; font-size: 10px; font-weight: 700; letter-spacing: -.02em; color: var(--ui-muted); white-space: nowrap; }
.exa-rr--h .exa-c-dp { white-space: nowrap; }
.exa-dp { display: flex; align-items: flex-end; gap: 3px; height: 18px; }
.exa-dp i { width: 6px; border-radius: 2px 2px 1px 1px; scale: 1 0; transform-origin: bottom; transition: scale .45s var(--ui-ease) calc(.7s + var(--i) * 55ms + var(--k) * 30ms); }
.exa.s5 .exa-dp i { scale: 1 1; }
.exa .p1 { background: #10b981; } .exa .p2 { background: #84cc16; } .exa .p3 { background: #f59e0b; } .exa .p4 { background: #ef4444; }
.exa-rr__net > span { display: flex; align-items: baseline; justify-content: space-between; line-height: 12px; }
.exa-rr__net b { font-size: 11px; font-weight: 800; color: #3f3f46; }
.exa-rr__net small { font-size: 10px; font-weight: 700; color: var(--ui-muted); }
.exa-rr__net > i { display: block; height: 4px; margin-top: 3px; border-radius: 2px; background: #f4f4f5; overflow: hidden; }
.exa-rr__net > i > i { display: block; height: 100%; border-radius: inherit; scale: 0 1; transform-origin: left; transition: scale .6s var(--ui-ease) calc(.75s + var(--i) * 55ms); }
.exa.s5 .exa-rr__net > i > i { scale: 1 1; }
.exa-rr__pu { text-align: right; font-size: 12.5px; font-weight: 900; color: #18181b; letter-spacing: -.01em; }
.exa-rr--h .exa-rr__pu, .exa-rr--h > * { line-height: 14px; }
.exa-rr--h > :first-child { text-align: center; }
.exa-rr--h .exa-c-pu { font-size: 10.5px; }

/* ── sınav karnesi (Can Kılınç) ── */
.exa-karne { position: absolute; z-index: 9; inset: 4px 8px 0; padding: 8px 8px 0; border-radius: 14px 14px 0 0; background: #fff; pointer-events: none;
  box-shadow: 0 0 0 1px rgba(16, 37, 64, .08), 0 -1px 3px rgba(16, 37, 64, .06), 0 -20px 40px -18px rgba(16, 37, 64, .5);
  opacity: 0; translate: 0 36px; transition: opacity .3s var(--ui-ease), translate .6s cubic-bezier(.3, 1.25, .5, 1); }
.exa.s8 .exa-karne { opacity: 1; translate: 0 0; }
.exa-kh { display: flex; align-items: center; gap: 10px; padding: 7px 12px; border-radius: 10px; color: #fff;
  background: linear-gradient(120deg, var(--navy-night), var(--navy) 55%, var(--navy-soft)); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12); }
.exa-kh__l { flex: 1; min-width: 0; }
.exa-kh__l small { display: block; font-size: 10px; line-height: 12px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: rgba(255, 255, 255, .72); white-space: nowrap; }
.exa-kh__l b { display: block; margin-top: 2px; font-size: 14px; line-height: 18px; font-weight: 800; letter-spacing: -.01em; }
.exa-kh__r { flex: none; text-align: right; }
.exa-kh__r b { display: block; font-size: 11.5px; line-height: 15px; font-weight: 800; font-variant-numeric: tabular-nums; }
.exa-kh__r small { display: block; font-size: 10px; line-height: 13px; font-weight: 600; color: rgba(255, 255, 255, .78); }
.exa-kt { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 8px; }
.exa-tile { position: relative; display: block; min-width: 0; height: 60px; padding: 6px 10px 0; border-radius: 10px; background: #fff;
  box-shadow: 0 0 0 1px var(--ui-line), 0 1px 2px rgba(16, 37, 64, .05), inset 0 1px 0 rgba(255, 255, 255, .6);
  opacity: 0; translate: 0 6px; transition: opacity .3s var(--ui-ease) calc(.2s + var(--i) * 60ms), translate .4s var(--ui-ease) calc(.2s + var(--i) * 60ms); }
.exa.s8 .exa-tile { opacity: 1; translate: 0 0; }
.exa-tile--net { box-shadow: inset 3px 0 0 var(--navy-soft), 0 0 0 1px var(--ui-line), 0 1px 2px rgba(16, 37, 64, .05); }
.exa-tile small { display: block; font-size: 10px; font-weight: 800; letter-spacing: .04em; line-height: 12px; text-transform: uppercase; color: #52525b; white-space: nowrap; }
.exa-tile__v { display: flex; align-items: baseline; gap: 4px; margin-top: 1px; font-size: 19px; font-weight: 800; line-height: 23px; letter-spacing: -.02em; color: #0f172a; font-variant-numeric: tabular-nums; white-space: nowrap; }
.exa-tile__v em { font-style: normal; line-height: 12px; font-size: 10px; font-weight: 700; letter-spacing: 0; color: var(--ui-muted); }
.exa-tile__v--b { color: var(--navy-soft); }
.exa-z { display: inline-block; margin-left: 5px; padding: 0 4px; border-radius: 4px; background: #d1fae5; color: #065f46; font-weight: 800; line-height: 13px; }
.exa-tile__s { display: block; font-size: 10px; font-weight: 600; line-height: 13px; color: var(--ui-muted); white-space: nowrap; font-variant-numeric: tabular-nums; }
.exa-bar { position: relative; display: block; height: 5px; margin-top: 4px; border-radius: 3px; background: #eef1f5; overflow: hidden; }
.exa-bar i { position: absolute; inset: 0 auto 0 0; border-radius: inherit; background: var(--navy-soft); overflow: hidden; scale: 0 1; transform-origin: left; transition: scale .8s var(--ui-ease) .35s; }
.exa-bar i::after, .exa-kb .f::after { content: ""; position: absolute; inset: 0; width: 45%; background: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, .45), rgba(255, 255, 255, 0)); transform: translateX(-120%); }
.exa.s8 .exa-bar i { scale: 1 1; }
.exa.s8 .exa-bar i::after { animation: exa-sheen 1s ease-in-out 1.15s both; }
.exa.s8 .exa-n--net { --exa-a: 78; --exa-b: 33; transition-duration: .9s; transition-delay: .3s; }
.exa.s8 .exa-n--puan { --exa-a: 457; --exa-b: 96; transition-duration: .9s; transition-delay: .36s; }

.exa-kd { margin-top: 6px; }
.exa-kd__h { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; height: 16px; }
.exa-kd__h b { font-size: 12px; font-weight: 800; }
.exa-kd__h small { min-width: 0; font-size: 10px; font-weight: 600; color: var(--ui-muted); white-space: nowrap; }
.exa-kr { display: grid; grid-template-columns: 122px 40px 58px 42px minmax(0, 1fr); align-items: center; column-gap: 8px; height: 17px; padding: 0 8px; font-variant-numeric: tabular-nums;
  opacity: 0; translate: 0 4px; transition: opacity .3s var(--ui-ease) calc(.35s + var(--i) * 50ms), translate .35s var(--ui-ease) calc(.35s + var(--i) * 50ms); }
.exa-kr--h { height: 16px; margin: 4px 0 1px; border-radius: 5px; background: #f1f4f8; font-size: 10px; font-weight: 800; letter-spacing: .02em; text-transform: uppercase; color: #52525b; opacity: 1; translate: 0 0; transition-delay: .3s; }
.exa:not(.s8) .exa-kr--h { opacity: 0; }
.exa.s8 .exa-kr { opacity: 1; translate: 0 0; }
.exa-kr > * { min-width: 0; white-space: nowrap; }
.exa-kr > b { font-size: 11px; font-weight: 800; color: #0f172a; }
.exa-kr__net { font-size: 11px; font-weight: 900; color: var(--navy-soft); }
.exa-kr .exa-c-ort { font-size: 10.5px; font-weight: 600; color: var(--ui-muted); }
.exa-kr .exa-c-fark { font-size: 10.5px; font-weight: 800; color: var(--exa-ok-ink); }
.exa-kr.exa-kr--h > * { font-size: 10px; font-weight: 800; color: #52525b; }
.exa-kb { position: relative; height: 9px; border-radius: 5px; background: #eef1f5; }
.exa-kb i { position: absolute; display: block; }
.exa-kb .r { top: 3px; height: 3px; border-radius: 2px; background: #cbd5e1; opacity: 0; transition: opacity .3s var(--ui-ease) .5s; }
.exa-kb .f { top: 0; bottom: 0; left: 0; border-radius: 5px; background: var(--navy-soft); opacity: .92; overflow: hidden; scale: 0 1; transform-origin: left; transition: scale .7s var(--ui-ease) calc(.5s + var(--i) * 60ms); }
.exa-kb .m { top: -3px; bottom: -3px; width: 2px; margin-left: -1px; border-radius: 1px; background: #1e293b; opacity: 0; scale: 1 .3; transition: opacity .25s var(--ui-ease) calc(1s + var(--i) * 40ms), scale .35s var(--exa-spring) calc(1s + var(--i) * 40ms); }
.exa.s8 .exa-kb .r, .exa.s8 .exa-kb .m { opacity: 1; scale: 1 1; }
.exa.s8 .exa-kb .f { scale: 1 1; }
.exa.s8 .exa-kb .f::after { animation: exa-sheen 1s ease-in-out calc(1.25s + var(--i) * 70ms) both; }
.exa-kr > b::after { content: attr(data-short); display: none; }
.exa-kr--top { display: none; margin-top: 3px; border-radius: 5px; background: #f1f4f8; }
.exa-kr--top .exa-kb { background: #e2e8f0; }

/* ── DAR KAPLAR ── */
@container (max-width: 630px) {
  .exa-btn2--sira { display: none; }
}
@container (max-width: 600px) {
  .exa-win { --exa-fh: 126px; --gx: 300px; }
  .exa-up__row { flex-direction: column; align-items: stretch; gap: 8px; }
  .exa-fld--fmt { flex: 1; width: auto; }
  .exa-up__note { display: none; }
  .exa-empty__b { flex-direction: row; justify-content: center; gap: 8px; padding: 10px 12px; }
  .exa-empty__b .exa-i { width: 20px; height: 20px; }
  .exa-sum .exa-w2 { display: none; }
  .exa-rr__ad .rs { display: none; }
  .exa-st small > * { white-space: normal; text-wrap: balance; }
}
@container (max-width: 540px) {
  .exa-win { --exa-st: 258px; --gx: 250px; --gy: -60px; }
  .exa-band { margin: 10px 10px 0; padding: 10px 12px; }
  .exa-ico, .exa-more, .exa-tur { display: none; }
  .exa-ttl > b { font-size: 13.5px; }
  .exa-chip { margin-left: 5px; }
  .exa-ttl small { font-size: 11px; }
  .exa-pub { padding: 6px 10px; }
  .exa-kim { visibility: hidden; }
  .exa-steps { gap: 0; margin-top: 6px; }
  .exa-st__row { flex-direction: column; gap: 4px; }
  .exa-st b { font-size: 10.5px; line-height: 14px; }
  .exa-st small { display: none; }
  .exa-ln { position: absolute; top: 10px; left: calc(50% + 17px); width: calc(100% - 34px); flex: none; min-width: 0; }
  .exa-tabs { margin: 0 10px; }
  .exa-tabs::after { right: -10px; }
  .exa-tab--gb, .exa-tab--ca { display: none; }
  .exa-tab { font-size: 11.5px; }
  .exa-imp, .exa-res { padding-left: 10px; padding-right: 10px; }
  .exa-up { padding: 9px 10px; }
  .exa-fld--fmt { flex: 1; width: auto; }
  .exa-ghost { left: 74px; }
  .exa-rd { flex-wrap: wrap; row-gap: 8px; }
  .exa-rd__acts { width: 100%; padding-left: 38px; }
  .exa-tr { grid-template-columns: 26px minmax(0, 1fr) 92px; }
  .exa-tr .exa-c-is { display: none; }
  .exa-tr__st small { display: none; }
  .exa-flash { font-size: 11px; }
  .exa-sum .exa-w { display: none; }
  .exa-rt { --exa-rc: 22px minmax(0, 1fr) 70px 50px; }
  .exa-c-sb, .exa-c-dp, .exa-rr__ad em { display: none; }
  .exa-rr__ad b { font-size: 11.5px; }
  .exa-rr__net small { font-size: 10px; }
  .exa-karne { inset: 4px 6px 0; padding: 6px 6px 0; }
  .exa-kh__s { display: none; }
  .exa-kh__l small { font-size: 10px; }
  .exa-kt { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .exa-tile { padding: 6px 8px 0; height: 59px; }
  .exa-tile--ust, .exa-soru { display: none; }
  .exa-tile small { font-size: 10px; letter-spacing: .03em; }
  .exa-tile__v { font-size: 17px; gap: 3px; }
  .exa-tile__s { font-size: 10px; }
  .exa-tile:nth-child(3) .exa-tile__s { display: none; }
  .exa-kd__h small, .exa-kr--h, .exa-kr .exa-c-ort, .exa-kr .exa-c-fark { display: none; }
  .exa-kr { grid-template-columns: 80px 38px minmax(0, 1fr); height: 19px; padding: 0 4px; }
  .exa-kr > b > span { display: none; }
  .exa-kr > b::after { display: inline; }
  .exa-kr > b, .exa-kr__net { font-size: 11px; }
  .exa-kr--top { display: grid; }
}
@container (max-width: 400px) {
  .exa-z { display: none; }
}
/* en dar: format seçimi tam genişlik, «Yükle ve eşleştir» alta sarar (uygulamadaki flex-wrap gibi); okuma düğmeleri girintisiz */
@container (max-width: 380px) {
  .exa-win { --exa-fh: 164px; --exa-st: 268px; }
  .exa-up__row2 { flex-wrap: wrap; row-gap: 8px; }
  .exa-fld--fmt { flex: 1 1 100%; }
  .exa-rd__acts { padding-left: 0; }
  .exa-kr { height: 21px; }
}
