/* ==========================================================================
   Ders Merkezi (v1.63.0) — akıllı tahtaya göre tasarlanmış ders anlatım arayüzü
   --------------------------------------------------------------------------
   🔴 BÜYÜTME SÖZLEŞMESİ: içerik bileşenlerinin TÜM ölçüleri `em`dir ve tek bir
   değişkenden (`--lc-zoom`) türer. Piksel yazan bir bileşen A−/A+ düğmelerine
   tepki vermez — uzaktan göremeyen öğrenci için yazıyı büyütmek bu sayfanın
   varlık sebebidir. Kabuk (üst çubuk, sunum çubuğu) bilinçle sabit kalır: yazıyı
   büyütmek düğmeleri ekrandan taşırmamalı.
   🔴 Katmanlar: sunum çubuğu 110 · görüntüleyici 120 · araç panelleri 130 ·
   bildirim 140. Hepsi panelin ortak diyalog katmanının (200) ALTINDADIR.
   ========================================================================== */

:root {
    --lc-zoom: 1;
    --bg: #eef3f9;
    --bg-2: #e3ebf5;
    --card: #ffffff;
    --card-2: #f6f9fc;
    --ink: #0f172a;
    --ink-2: #334155;
    --muted: #64748b;
    --line: #dbe4ef;
    --brand: #0284c7;
    --brand-ink: #075985;
    --navy: #0a2e5c;
    --accent: #f9c143;
    --ok: #16a34a;
    --ok-soft: #dcfce7;
    --bad: #dc2626;
    --bad-soft: #fee2e2;
    --shadow: 0 1px 2px rgba(15, 23, 42, .06), 0 8px 24px -12px rgba(15, 23, 42, .18);
    --radius: 1.1em;
    --t: #0284c7;
    --t-soft: #e0f2fe;
    --t-ink: #075985;
    --focus: 0 0 0 3px rgba(2, 132, 199, .45);
    color-scheme: light;
}

[data-theme="dark"] {
    --bg: #0b1220;
    --bg-2: #0f1a2e;
    --card: #121c31;
    --card-2: #17233b;
    --ink: #e8eef8;
    --ink-2: #c6d3e6;
    --muted: #93a4bd;
    --line: #25344f;
    --brand: #38bdf8;
    --brand-ink: #7dd3fc;
    --ok-soft: #12351f;
    --bad-soft: #3b1518;
    --shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 10px 30px -14px rgba(0, 0, 0, .7);
    --t-soft: #10283d;
    color-scheme: dark;
}

/* Tema renkleri: hafta sayfası ve kartlar `t-<renk>`, bileşenler `c-<renk>` */
.t-sky, .c-sky { --t: #0284c7; --t-soft: #e0f2fe; --t-ink: #075985; }
.t-violet, .c-violet { --t: #7c3aed; --t-soft: #ede9fe; --t-ink: #5b21b6; }
.t-emerald, .c-emerald { --t: #059669; --t-soft: #d1fae5; --t-ink: #065f46; }
.t-rose, .c-rose { --t: #e11d48; --t-soft: #ffe4e6; --t-ink: #9f1239; }
.t-amber, .c-amber { --t: #d97706; --t-soft: #fef3c7; --t-ink: #92400e; }
.t-indigo, .c-indigo { --t: #4f46e5; --t-soft: #e0e7ff; --t-ink: #3730a3; }
.t-teal, .c-teal { --t: #0d9488; --t-soft: #ccfbf1; --t-ink: #115e59; }
.t-orange, .c-orange { --t: #ea580c; --t-soft: #ffedd5; --t-ink: #9a3412; }
.t-slate, .c-slate { --t: #475569; --t-soft: #e2e8f0; --t-ink: #1e293b; }
.t-pink, .c-pink { --t: #db2777; --t-soft: #fce7f3; --t-ink: #9d174d; }
[data-theme="dark"] .t-sky, [data-theme="dark"] .c-sky { --t-soft: #0c2a40; --t-ink: #7dd3fc; }
[data-theme="dark"] .t-violet, [data-theme="dark"] .c-violet { --t-soft: #251a45; --t-ink: #c4b5fd; }
[data-theme="dark"] .t-emerald, [data-theme="dark"] .c-emerald { --t-soft: #0b3024; --t-ink: #6ee7b7; }
[data-theme="dark"] .t-rose, [data-theme="dark"] .c-rose { --t-soft: #3a1220; --t-ink: #fda4af; }
[data-theme="dark"] .t-amber, [data-theme="dark"] .c-amber { --t-soft: #3a2608; --t-ink: #fcd34d; }
[data-theme="dark"] .t-indigo, [data-theme="dark"] .c-indigo { --t-soft: #1c1d4a; --t-ink: #a5b4fc; }
[data-theme="dark"] .t-teal, [data-theme="dark"] .c-teal { --t-soft: #0b2f2c; --t-ink: #5eead4; }
[data-theme="dark"] .t-orange, [data-theme="dark"] .c-orange { --t-soft: #3a1a08; --t-ink: #fdba74; }
[data-theme="dark"] .t-slate, [data-theme="dark"] .c-slate { --t-soft: #1e293b; --t-ink: #cbd5e1; }
[data-theme="dark"] .t-pink, [data-theme="dark"] .c-pink { --t-soft: #3a1028; --t-ink: #f9a8d4; }

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body.lc {
    margin: 0;
    font-family: Inter, ui-sans-serif, system-ui, "Segoe UI", sans-serif;
    background: var(--bg);
    color: var(--ink);
    line-height: 1.55;
    -webkit-font-smoothing: antialiased;
}
body.lc h1, body.lc h2, body.lc h3, .lc-display { font-family: Sora, Inter, sans-serif; letter-spacing: -.01em; line-height: 1.2; }
a { color: var(--brand); }
button { font: inherit; color: inherit; }
[hidden] { display: none !important; }
:focus-visible { outline: none; box-shadow: var(--focus); border-radius: .4em; }
img, svg { max-width: 100%; }

.lc-skip { position: absolute; left: -999px; top: 8px; background: var(--card); padding: 8px 14px; z-index: 150; border-radius: 8px; }
.lc-skip:focus { left: 8px; }

/* ---- Üst çubuk (sabit ölçü) --------------------------------------------- */
.lc-top {
    position: sticky; top: 0; z-index: 100;
    display: flex; align-items: center; gap: 14px;
    padding: 10px clamp(12px, 2.4vw, 28px);
    background: var(--navy);
    background: color-mix(in srgb, var(--navy) 94%, transparent);
    color: #fff;
    backdrop-filter: blur(8px);
    box-shadow: 0 6px 20px -12px rgba(0, 0, 0, .5);
    font-size: 15px;
}
.lc-brand { display: flex; align-items: center; gap: 10px; color: #fff; text-decoration: none; flex-shrink: 0; }
.lc-brand img { border-radius: 10px; background: #fff; padding: 3px; }
.lc-brand span { display: flex; flex-direction: column; line-height: 1.05; }
.lc-brand strong { font-family: Sora, sans-serif; font-size: 16px; }
.lc-brand small { font-size: 11px; opacity: .7; letter-spacing: .08em; text-transform: uppercase; }
.lc-crumbs { display: flex; align-items: center; gap: 8px; min-width: 0; flex: 1; font-size: 14px; color: rgba(255, 255, 255, .78); white-space: nowrap; overflow: hidden; }
.lc-crumbs a { color: rgba(255, 255, 255, .92); text-decoration: none; }
.lc-crumbs a:hover { text-decoration: underline; }
.lc-crumbs i { font-size: 11px; opacity: .6; }
.lc-crumbs span[aria-current] { color: var(--accent); font-weight: 700; overflow: hidden; text-overflow: ellipsis; }
.lc-tools { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.lc-tool {
    display: inline-flex; align-items: center; justify-content: center; gap: 4px;
    min-width: 44px; height: 44px; padding: 0 10px;
    border: 1px solid rgba(255, 255, 255, .18); border-radius: 12px;
    background: rgba(255, 255, 255, .08); color: #fff; cursor: pointer;
    font-weight: 700; font-size: 15px;
    transition: background .15s, transform .15s;
}
.lc-tool:hover { background: rgba(255, 255, 255, .18); }
.lc-tool:active { transform: scale(.96); }
.lc-tool-a { font-family: Sora, sans-serif; font-size: 13px; }
.lc-tool-a-big { font-size: 18px; }
.lc-zoom-read { min-width: 62px; font-variant-numeric: tabular-nums; }
.lc-tool-cta { background: var(--accent); color: #1f2937; border-color: transparent; padding: 0 16px; }
.lc-tool-cta:hover { background: #ffd56e; }
.lc-tool-cta span { margin-left: 4px; }
@media (max-width: 900px) {
    .lc-crumbs { display: none; }
    .lc-tool-cta span { display: none; }
    .lc-brand small { display: none; }
}
@media (max-width: 560px) {
    .lc-top { flex-wrap: wrap; }
    .lc-tools { width: 100%; justify-content: flex-start; }
}

/* ---- Gövde (BÜYÜYEN bölge) ---------------------------------------------- */
.lc-main {
    font-size: calc(17px * var(--lc-zoom));
    padding: 1.2em clamp(12px, 2.6vw, 36px) 3em;
    max-width: calc(1500px + 20em);
    margin: 0 auto;
}
.lc-foot { text-align: center; color: var(--muted); font-size: 13px; padding: 20px 16px 40px; border-top: 1px solid var(--line); }
.lc-foot p { margin: .3em 0; }
.lc-muted { color: var(--muted); }
.lc-small { font-size: .82em; }
.lc-kicker {
    display: inline-block; font-size: .72em; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;
    color: var(--t-ink); background: var(--t-soft); padding: .25em .75em; border-radius: 999px;
}
.lc-lead { font-size: 1.18em; color: var(--ink-2); max-width: 60em; }
.lc-pill {
    display: inline-flex; align-items: center; gap: .4em;
    padding: .35em .8em; border-radius: 999px; font-size: .82em; font-weight: 600;
    background: var(--card-2); color: var(--ink-2); border: 1px solid var(--line);
}
.lc-pill-strong { background: var(--t); color: #fff; border-color: transparent; }
.lc-pill-theme { background: var(--t-soft); color: var(--t-ink); border-color: transparent; }
.lc-this-week { background: var(--accent); color: #1f2937; border-color: transparent; }

.lc-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: .45em;
    min-height: 2.75em; padding: .55em 1.1em; border-radius: 999px;
    border: 1px solid var(--line); background: var(--card); color: var(--ink);
    font-weight: 700; font-size: .95em; cursor: pointer; text-decoration: none;
    transition: transform .15s, background .15s, box-shadow .15s;
}
.lc-btn:hover { transform: translateY(-1px); box-shadow: var(--shadow); }
.lc-btn:active { transform: translateY(0) scale(.98); }
.lc-btn-primary { background: var(--brand); border-color: var(--brand); color: #fff; }
[data-theme="dark"] .lc-btn-primary { color: #04121f; }
.lc-btn-big { font-size: 1.05em; padding: .7em 1.4em; }
.lc-btn-small { min-height: 2.3em; font-size: .82em; padding: .35em .9em; }
.lc-btn-ok { background: var(--ok); border-color: var(--ok); color: #fff; }
.lc-chip {
    display: inline-flex; align-items: center; gap: .35em; min-height: 2.5em;
    padding: .35em .9em; border-radius: 999px; border: 1px solid var(--line);
    background: var(--card); cursor: pointer; font-weight: 600; font-size: .9em;
}
.lc-chip.is-on { background: var(--brand); color: #fff; border-color: var(--brand); }
.lc-icon-btn { width: 40px; height: 40px; border-radius: 10px; border: 0; background: transparent; cursor: pointer; font-size: 18px; color: var(--muted); }
.lc-icon-btn:hover { background: var(--card-2); color: var(--ink); }

/* ---- Hafta düzeni -------------------------------------------------------- */
.lc-week-layout { display: grid; grid-template-columns: 17em minmax(0, 1fr); gap: 1.6em; align-items: start; }
.lc-toc {
    position: sticky; top: 84px; max-height: calc(100vh - 100px); overflow: auto;
    background: var(--card); border: 1px solid var(--line); border-radius: var(--radius);
    padding: 1em; box-shadow: var(--shadow); font-size: .86em;
}
.lc-toc-title { margin: 0 0 .6em; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; font-size: .78em; color: var(--muted); }
.lc-toc ol { list-style: none; margin: 0; padding: 0; counter-reset: toc; }
.lc-toc li a {
    display: flex; gap: .6em; align-items: flex-start; padding: .45em .6em; border-radius: .6em;
    color: var(--ink-2); text-decoration: none; line-height: 1.3;
}
.lc-toc li a::before { counter-increment: toc; content: counter(toc); flex: 0 0 1.6em; height: 1.6em; border-radius: 50%; display: grid; place-items: center; font-size: .8em; font-weight: 800; background: var(--card-2); color: var(--muted); }
.lc-toc li a:hover { background: var(--card-2); }
.lc-toc li a.is-active { background: var(--t-soft); color: var(--t-ink); font-weight: 700; }
.lc-toc li a.is-active::before { background: var(--t); color: #fff; }
.lc-toc li.lc-toc-teacher a { color: var(--muted); font-style: italic; }
.lc-hide-teacher .lc-toc li.lc-toc-teacher { display: none; }
.lc-weeknav { display: grid; gap: .6em; margin-top: 1em; padding-top: 1em; border-top: 1px solid var(--line); }
.lc-weeknav-link {
    display: flex; align-items: center; gap: .6em; padding: .6em .75em; border-radius: .8em;
    background: var(--card-2); color: var(--ink-2); text-decoration: none; font-size: .92em; line-height: 1.25;
}
.lc-weeknav-link small { display: block; font-size: .78em; color: var(--muted); font-weight: 700; }
.lc-weeknav-link:hover { background: var(--t-soft); }
.lc-weeknav-next { justify-content: space-between; text-align: right; }
.lc-weeknav-bottom { grid-template-columns: 1fr auto 1fr; border: 0; margin-top: 2em; }
.lc-weeknav-mid { justify-content: center; }
@media (max-width: 1100px) {
    .lc-week-layout { grid-template-columns: minmax(0, 1fr); }
    .lc-toc { position: static; max-height: none; }
    .lc-toc ol { display: flex; flex-wrap: wrap; gap: .3em; }
    .lc-toc .lc-weeknav { display: none; }
}
@media (max-width: 640px) { .lc-weeknav-bottom { grid-template-columns: 1fr; } }

/* ---- Bölüm kartları ------------------------------------------------------ */
.lc-content { min-width: 0; }
.lc-sec {
    background: var(--card); border: 1px solid var(--line); border-radius: var(--radius);
    padding: 1.6em clamp(1em, 2.4vw, 2.2em); margin: 0 0 1.4em; box-shadow: var(--shadow);
    scroll-margin-top: 90px; position: relative;
}
.lc-sec-head { display: flex; flex-wrap: wrap; align-items: center; gap: .5em 1em; margin-bottom: 1em; }
.lc-sec-head .lc-kicker { flex: 0 0 auto; }
.lc-sec-head .lc-kicker + h2 { flex-basis: 100%; }
.lc-sec-head h2 { margin: 0; font-size: 1.6em; flex: 1 1 auto; }
.lc-hero { background: linear-gradient(135deg, var(--t-soft), var(--card) 55%); border-top: .35em solid var(--t); }
.lc-hero h1 { font-size: 2.3em; margin: .45em 0 .25em; }
.lc-hero-meta { display: flex; flex-wrap: wrap; gap: .5em; }
.lc-topics { display: flex; flex-wrap: wrap; gap: .5em; list-style: none; padding: 0; margin: .6em 0 1em; }
.lc-topics li { font-weight: 700; color: var(--t-ink); border-left: .25em solid var(--t); padding: .15em .7em; background: var(--card); border-radius: .3em; }
.lc-outcomes { background: var(--card); border: 1px solid var(--line); border-radius: .9em; padding: .8em 1.1em; }
.lc-outcomes summary { cursor: pointer; font-weight: 800; color: var(--ink); }
.lc-outcome p { margin: .7em 0 .3em; font-weight: 700; }
.lc-outcome ul { margin: 0; padding-left: 1.2em; color: var(--ink-2); }
.lc-outcome li { margin: .2em 0; list-style: none; }
.lc-code { font-family: ui-monospace, Consolas, monospace; font-size: .85em; background: var(--t-soft); color: var(--t-ink); padding: .1em .45em; border-radius: .35em; }
.lc-letter { font-weight: 800; color: var(--t-ink); }
.lc-days { display: flex; flex-wrap: wrap; gap: .5em; margin-top: 1em; }
.lc-day { font-size: .82em; font-weight: 600; padding: .3em .8em; border-radius: 999px; background: #fff7e0; color: #8a5a00; border: 1px solid #f7dc92; }
[data-theme="dark"] .lc-day { background: #3a2a08; color: #fcd34d; border-color: #5a4210; }
.lc-day-school { background: var(--card-2); color: var(--ink-2); border-color: var(--line); }

.lc-prose p { margin: 0 0 .8em; max-width: 62em; }
.lc-prose p:last-child { margin-bottom: 0; }
.lc-intro { margin-bottom: 1em; color: var(--ink-2); font-size: 1.05em; }
.lc-note-line { margin-top: 1em; color: var(--ink-2); font-style: italic; }
.lc-hint { color: var(--muted); font-size: .88em; margin: .6em 0 0; }

/* Dikkat çekme */
.lc-questions { list-style: none; margin: 0; padding: 0; display: grid; gap: .7em; }
.lc-questions li {
    display: flex; gap: .9em; align-items: flex-start; font-size: 1.22em; font-weight: 600;
    padding: .7em 1em; border-radius: .9em; background: var(--t-soft); color: var(--ink);
}
.lc-q-no { flex: 0 0 1.9em; height: 1.9em; display: grid; place-items: center; border-radius: 50%; background: var(--t); color: #fff; font-size: .85em; font-weight: 800; }

/* Metin + yan görsel */
.lc-split { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 1.6em; align-items: start; }
@media (max-width: 900px) { .lc-split { grid-template-columns: minmax(0, 1fr); } }
.lc-prose { font-size: 1.08em; }

/* Kartlar */
.lc-cards { display: grid; gap: 1em; }
.lc-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.lc-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lc-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1000px) { .lc-cols-3, .lc-cols-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .lc-cols-2, .lc-cols-3, .lc-cols-4 { grid-template-columns: minmax(0, 1fr); } }
.lc-card {
    background: var(--card-2); border: 1px solid var(--line); border-top: .3em solid var(--t);
    border-radius: 1em; padding: 1em 1.1em; text-align: left;
}
.lc-card-icon { font-size: 1.9em; color: var(--t); display: block; margin-bottom: .3em; }
.lc-card-term { display: block; font-size: 1.12em; color: var(--t-ink); margin-bottom: .25em; font-family: Sora, sans-serif; }
.lc-card p { margin: 0; color: var(--ink-2); }
.lc-flip { position: relative; min-height: 9.5em; cursor: pointer; perspective: 60em; background: transparent; border: 0; padding: 0; }
.lc-flip > span {
    position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .35em;
    padding: 1em; border-radius: 1em; text-align: center; backface-visibility: hidden; -webkit-backface-visibility: hidden;
    transition: transform .5s cubic-bezier(.2, .8, .2, 1), visibility 0s linear .25s;
    border: 1px solid var(--line); border-top: .3em solid var(--t);
}
.lc-flip-front { background: var(--card-2); }
.lc-flip-front i { font-size: 2.2em; color: var(--t); }
.lc-flip-front strong { font-size: 1.2em; font-family: Sora, sans-serif; color: var(--t-ink); }
.lc-flip-front small { color: var(--muted); font-size: .75em; }
.lc-flip-back { background: var(--t-soft); transform: rotateY(180deg); visibility: hidden; }
.lc-flip-back strong { color: var(--t-ink); }
.lc-flip.is-flipped .lc-flip-front { transform: rotateY(-180deg); visibility: hidden; }
.lc-flip.is-flipped .lc-flip-back { transform: rotateY(0); visibility: visible; }
/* GPU'suz tahtada 3B düzleşir (CLAUDE.md, pano çevirme dersi): görünürlük AÇIKÇA yönetilir. */

/* Karşılaştırma */
.lc-compare { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 1em; align-items: stretch; }
.lc-compare-col { background: var(--t-soft); border-radius: 1em; padding: 1em 1.2em; }
.lc-compare-col h3 { margin: 0 0 .5em; color: var(--t-ink); font-size: 1.2em; }
.lc-compare-col ul { margin: 0; padding-left: 1.1em; }
.lc-compare-col li { margin: .3em 0; }
.lc-compare-vs { align-self: center; font-weight: 900; font-family: Sora, sans-serif; color: var(--muted); font-size: 1.1em; }
@media (max-width: 760px) { .lc-compare { grid-template-columns: minmax(0, 1fr); } .lc-compare-vs { justify-self: center; } }

/* Zaman çizelgesi */
.lc-timeline { list-style: none; margin: 0; padding: 0; position: relative; }
.lc-timeline::before { content: ""; position: absolute; left: 7.4em; top: .5em; bottom: .5em; width: .2em; background: var(--line); border-radius: 1em; }
.lc-timeline li { display: grid; grid-template-columns: 6.4em 2em minmax(0, 1fr); gap: .5em; align-items: start; padding: .5em 0; }
.lc-tl-when { text-align: right; font-weight: 800; color: var(--t-ink); font-family: Sora, sans-serif; padding-top: .2em; }
.lc-tl-dot { width: 2em; height: 2em; border-radius: 50%; background: var(--t); color: #fff; display: grid; place-items: center; position: relative; z-index: 1; box-shadow: 0 0 0 .3em var(--card); }
.lc-tl-what strong { display: block; font-size: 1.08em; }
.lc-tl-what span { color: var(--ink-2); }

/* Adımlar */
.lc-steps { list-style: none; counter-reset: st; margin: 0; padding: 0; display: grid; gap: .55em; }
.lc-steps li { counter-increment: st; display: flex; gap: .8em; align-items: flex-start; padding: .55em .8em; border-radius: .8em; background: var(--card-2); }
.lc-steps li::before { content: counter(st); flex: 0 0 1.8em; height: 1.8em; display: grid; place-items: center; border-radius: .5em; background: var(--t); color: #fff; font-weight: 800; font-size: .9em; }

/* Görsel + simülasyon kapları */
.lc-figure, .lc-sim-wrap {
    position: relative; margin: 0; background: var(--card-2); border: 1px solid var(--line);
    border-radius: 1em; padding: 1em;
}
.lc-figure-art { display: flex; justify-content: center; }
.lc-figure-art svg { width: 100%; height: auto; max-height: 34em; }
.lc-figure figcaption { text-align: center; color: var(--muted); font-size: .9em; margin-top: .6em; }
.lc-expand {
    position: absolute; top: .6em; right: .6em; z-index: 2;
    display: inline-flex; align-items: center; gap: .4em; padding: .4em .8em; border-radius: 999px;
    border: 1px solid var(--line); background: var(--card); cursor: pointer; font-weight: 700; font-size: .8em; color: var(--ink-2);
    box-shadow: var(--shadow);
}
.lc-expand:hover { color: var(--brand); }
.lc-sim { min-height: 8em; }
.lc-sim-fallback { color: var(--muted); font-style: italic; margin: 2em 0; text-align: center; }
.lc-sim-wrap .lc-sim { padding-top: 1.6em; }

/* Bilgi kutuları */
.lc-callout { display: flex; gap: .9em; align-items: flex-start; padding: 1em 1.2em; border-radius: 1em; background: var(--card-2); border-left: .35em solid var(--brand); }
.lc-callout > i { font-size: 1.6em; color: var(--brand); line-height: 1; }
.lc-callout-warn { border-color: #f59e0b; background: #fffbeb; }
.lc-callout-warn > i { color: #d97706; }
.lc-callout-think { border-color: #8b5cf6; background: #f5f3ff; }
.lc-callout-think > i { color: #7c3aed; }
.lc-callout-fact { border-color: #10b981; background: #ecfdf5; }
.lc-callout-fact > i { color: #059669; }
.lc-callout-rule { border-color: #0ea5e9; background: #f0f9ff; }
.lc-callout-next { border-color: var(--accent); background: #fffbeb; margin-top: 1.2em; }
.lc-callout-next > i { color: #b7791f; }
[data-theme="dark"] .lc-callout-warn, [data-theme="dark"] .lc-callout-next { background: #2d2107; }
[data-theme="dark"] .lc-callout-think { background: #1f1638; }
[data-theme="dark"] .lc-callout-fact { background: #0a2a20; }
[data-theme="dark"] .lc-callout-rule { background: #0b2233; }

/* Tablo */
.lc-table-wrap { overflow-x: auto; border-radius: .9em; border: 1px solid var(--line); }
.lc-table { width: 100%; border-collapse: collapse; background: var(--card); }
.lc-table th, .lc-table td { padding: .7em .9em; text-align: left; border-bottom: 1px solid var(--line); vertical-align: top; }
.lc-table thead th { background: var(--t); color: #fff; font-size: .9em; letter-spacing: .02em; }
.lc-table tbody th { color: var(--t-ink); background: var(--t-soft); }
.lc-table tbody tr:last-child > * { border-bottom: 0; }

/* Aç-kapa cevaplar */
.lc-reveal { display: grid; gap: .6em; }
.lc-reveal-item { background: var(--card-2); border: 1px solid var(--line); border-radius: .9em; overflow: hidden; }
.lc-reveal-item summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 1em; padding: .8em 1em; cursor: pointer; font-weight: 700; }
.lc-reveal-item summary::-webkit-details-marker { display: none; }
.lc-reveal-cta { flex-shrink: 0; font-size: .78em; padding: .3em .8em; border-radius: 999px; background: var(--t); color: #fff; }
.lc-reveal-item[open] .lc-reveal-cta { background: var(--muted); }
.lc-reveal-item[open] .lc-reveal-cta::after { content: " ✓"; }
.lc-reveal-a { padding: 0 1em 1em; color: var(--ink-2); border-top: 1px dashed var(--line); padding-top: .8em; }

.lc-keywords { display: flex; flex-wrap: wrap; gap: .5em; list-style: none; padding: 0; margin: 1em 0 0; }
.lc-keywords li { padding: .35em .9em; border-radius: 999px; background: var(--t-soft); color: var(--t-ink); font-weight: 700; font-size: .9em; }

/* Etkinlik */
.lc-activity { border-left: .45em solid var(--accent); }
.lc-act-meta { display: flex; flex-wrap: wrap; gap: .5em; align-items: center; flex-basis: 100%; }
.lc-goal { margin-bottom: 1em; }
.lc-embed { margin: 1em 0; }

/* Özet */
.lc-recap-list { list-style: none; padding: 0; margin: 0; display: grid; gap: .5em; }
.lc-recap-list li { display: flex; gap: .7em; align-items: flex-start; font-size: 1.1em; }
.lc-recap-list i { color: var(--ok); font-size: 1.2em; line-height: 1.2; }

/* Öğretmen alanı */
.lc-tnote { display: flex; gap: .7em; margin-top: 1em; padding: .8em 1em; border-radius: .8em; background: #f8f5ff; border: 1px dashed #c4b5fd; color: #4c1d95; font-size: .92em; }
.lc-tnote > i { color: #7c3aed; font-size: 1.2em; }
.lc-tnote p { margin: 0 0 .4em; }
[data-theme="dark"] .lc-tnote { background: #1b1433; border-color: #4c3a86; color: #ddd6fe; }
.lc-hide-teacher .lc-teacher { display: none !important; }
.lc-teacher-zone { border: 2px dashed #c4b5fd; background: linear-gradient(180deg, #faf7ff, var(--card)); }
[data-theme="dark"] .lc-teacher-zone { background: var(--card); border-color: #4c3a86; }
.lc-teacher-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1em; }
@media (max-width: 900px) { .lc-teacher-grid { grid-template-columns: minmax(0, 1fr); } }
.lc-tcard { background: var(--card); border: 1px solid var(--line); border-radius: .9em; padding: 1em 1.1em; }
.lc-tcard-wide { grid-column: 1 / -1; }
.lc-tcard h3 { margin: 0 0 .6em; font-size: 1.05em; color: #6d28d9; }
[data-theme="dark"] .lc-tcard h3 { color: #c4b5fd; }
.lc-tcard ul, .lc-tcard ol { margin: 0; padding-left: 1.2em; }
.lc-tcard li { margin: .3em 0; }
.lc-tsub { font-weight: 800; margin: 1em 0 .4em; font-size: .9em; color: var(--ink-2); }
.lc-eba { list-style: none; padding: 0 !important; display: grid; grid-template-columns: repeat(auto-fill, minmax(16em, 1fr)); gap: .5em; }
.lc-eba a { display: flex; gap: .5em; align-items: flex-start; padding: .55em .75em; border-radius: .7em; background: var(--card-2); border: 1px solid var(--line); text-decoration: none; color: var(--ink); font-weight: 600; font-size: .9em; line-height: 1.3; }
.lc-eba a:hover { border-color: var(--brand); }
.lc-eba a small { display: block; color: var(--muted); font-weight: 500; font-size: .8em; margin-left: auto; white-space: nowrap; }
.lc-eba i { color: var(--brand); }
.lc-eba-forms i { color: #7c3aed; }
.lc-flow { list-style: none; padding: 0 !important; }
.lc-flow li { display: flex; gap: .6em; }
.lc-flow-min { flex: 0 0 3.6em; font-weight: 800; color: #6d28d9; font-variant-numeric: tabular-nums; }

/* Video */
.lc-video-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(22em, 1fr)); gap: 1em; }
.lc-video { position: relative; aspect-ratio: 16 / 9; border-radius: .9em; overflow: hidden; background: #0f172a; color: #fff; }
.lc-video-title { position: absolute; left: 0; right: 0; bottom: 0; margin: 0; padding: .6em .9em; background: linear-gradient(transparent, rgba(0, 0, 0, .75)); font-weight: 700; }
.lc-video-play { position: absolute; inset: 0; border: 0; background: radial-gradient(circle, rgba(2, 132, 199, .25), transparent 60%); color: #fff; cursor: pointer; display: grid; place-items: center; font-size: 1em; }
.lc-video-play i { font-size: 4em; }
.lc-video-play small { display: block; font-size: .8em; opacity: .85; margin-top: -2em; }
.lc-video iframe { width: 100%; height: 100%; border: 0; }
.lc-video-remove { position: absolute; top: .5em; right: .5em; z-index: 2; }
.lc-video-add { display: flex; flex-wrap: wrap; gap: .8em; align-items: flex-end; margin-top: 1em; padding-top: 1em; border-top: 1px dashed var(--line); }
.lc-video-add .lc-field { flex: 1 1 22em; }
.lc-video-add p { flex-basis: 100%; margin: 0; }
.lc-field { display: grid; gap: .3em; font-weight: 700; font-size: .9em; }
.lc-field input { font: inherit; font-weight: 500; min-height: 2.6em; padding: .4em .8em; border-radius: .7em; border: 1px solid var(--line); background: var(--card); color: var(--ink); }
.lc-check { display: flex; gap: .5em; align-items: center; margin: .6em 0; font-size: .9em; }
.lc-check input { width: 1.2em; height: 1.2em; }

/* ---- Etkileşimli bileşenler --------------------------------------------- */
.lc-widget { background: var(--card-2); border: 1px solid var(--line); border-radius: 1em; padding: 1em; }
.lc-w-bar { display: flex; flex-wrap: wrap; gap: .5em; align-items: center; justify-content: space-between; margin-bottom: .8em; }
.lc-w-bar .lc-w-status { font-weight: 800; color: var(--ink-2); }
.lc-w-actions { display: flex; flex-wrap: wrap; gap: .5em; }
.lc-sort-static, .lc-match-static, .lc-quiz-static { color: var(--ink-2); }
.lc-sort-static { display: grid; grid-template-columns: repeat(auto-fit, minmax(12em, 1fr)); gap: .8em; }

/* Sürükle-bırak sınıflandırma */
.lc-sort-pool { display: flex; flex-wrap: wrap; gap: .5em; min-height: 3.4em; padding: .7em; border-radius: .9em; border: 2px dashed var(--line); background: var(--card); margin-bottom: .9em; }
.lc-sort-pool:empty::before { content: "Tüm kartlar yerleştirildi"; color: var(--muted); font-style: italic; padding: .3em; }
.lc-sort-bins { display: grid; grid-template-columns: repeat(auto-fit, minmax(13em, 1fr)); gap: .8em; }
.lc-sort-bin { border-radius: .9em; background: var(--card); border: 2px solid var(--line); min-height: 9em; display: flex; flex-direction: column; transition: border-color .15s, background .15s; }
.lc-sort-bin h4 { margin: 0; padding: .6em .8em; font-size: 1em; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; gap: .5em; }
.lc-sort-bin h4 small { color: var(--muted); font-weight: 600; }
.lc-sort-bin-body { flex: 1; display: flex; flex-wrap: wrap; align-content: flex-start; gap: .45em; padding: .6em; }
.lc-sort-bin.is-target { border-color: var(--brand); background: var(--t-soft); background: color-mix(in srgb, var(--brand) 8%, var(--card)); cursor: pointer; }
.lc-sort-bin.is-over { border-color: var(--brand); box-shadow: var(--focus); }
.lc-token {
    display: inline-flex; align-items: center; gap: .4em; min-height: 2.6em; padding: .4em .9em;
    border-radius: .8em; background: var(--card-2); border: 2px solid var(--line); cursor: grab;
    font-weight: 600; user-select: none; touch-action: none; transition: transform .12s, box-shadow .12s, border-color .12s;
}
.lc-token:hover { border-color: var(--brand); }
.lc-token.is-picked { border-color: var(--brand); box-shadow: var(--focus); transform: translateY(-2px); }
.lc-token.is-dragging { opacity: .35; }
.lc-token.is-ok { border-color: var(--ok); background: var(--ok-soft); }
.lc-token.is-bad { border-color: var(--bad); background: var(--bad-soft); animation: lc-shake .35s; }
.lc-ghost { position: fixed; z-index: 125; pointer-events: none; transform: translate(-50%, -50%) rotate(-3deg); box-shadow: 0 12px 30px rgba(0, 0, 0, .25); cursor: grabbing; }
@keyframes lc-shake { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }

/* Eşleştirme */
.lc-match-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: .8em 1.6em; }
.lc-match-col { display: grid; gap: .55em; align-content: start; }
.lc-match-col h4 { margin: 0 0 .2em; color: var(--muted); font-size: .85em; text-transform: uppercase; letter-spacing: .1em; }
.lc-match-item { text-align: left; min-height: 2.8em; padding: .5em .9em; border-radius: .8em; background: var(--card); border: 2px solid var(--line); cursor: pointer; font-weight: 600; display: flex; align-items: center; gap: .6em; }
.lc-match-item .lc-mbadge { flex: 0 0 1.7em; height: 1.7em; border-radius: 50%; display: grid; place-items: center; font-size: .8em; font-weight: 800; background: var(--line); color: var(--ink-2); }
.lc-match-item.is-picked { border-color: var(--brand); box-shadow: var(--focus); }
.lc-match-item.is-paired { border-style: solid; }
.lc-match-item.is-ok { border-color: var(--ok); background: var(--ok-soft); }
.lc-match-item.is-bad { border-color: var(--bad); background: var(--bad-soft); }
@media (max-width: 640px) { .lc-match-grid { grid-template-columns: minmax(0, 1fr); } }

/* Quiz */
.lc-quiz-card { display: grid; gap: .9em; }
.lc-quiz-q { font-size: 1.3em; font-weight: 700; margin: 0; }
.lc-quiz-opts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6em; }
@media (max-width: 700px) { .lc-quiz-opts { grid-template-columns: minmax(0, 1fr); } }
.lc-quiz-opt { text-align: left; display: flex; gap: .7em; align-items: center; min-height: 3.2em; padding: .6em 1em; border-radius: .9em; border: 2px solid var(--line); background: var(--card); cursor: pointer; font-weight: 600; font-size: 1.05em; }
.lc-quiz-opt:hover:not(:disabled) { border-color: var(--brand); }
.lc-quiz-opt b { flex: 0 0 1.9em; height: 1.9em; display: grid; place-items: center; border-radius: .5em; background: var(--card-2); color: var(--ink-2); }
.lc-quiz-opt.is-ok { border-color: var(--ok); background: var(--ok-soft); }
.lc-quiz-opt.is-ok b { background: var(--ok); color: #fff; }
.lc-quiz-opt.is-bad { border-color: var(--bad); background: var(--bad-soft); }
.lc-quiz-opt.is-bad b { background: var(--bad); color: #fff; }
.lc-quiz-opt:disabled { cursor: default; }
.lc-quiz-why { padding: .8em 1em; border-radius: .8em; background: var(--card); border-left: .3em solid var(--brand); }
.lc-quiz-why.is-ok { border-color: var(--ok); }
.lc-quiz-why.is-bad { border-color: var(--bad); }
.lc-quiz-dots { display: flex; gap: .35em; flex-wrap: wrap; }
.lc-quiz-dots span { width: .8em; height: .8em; border-radius: 50%; background: var(--line); }
.lc-quiz-dots span.is-ok { background: var(--ok); }
.lc-quiz-dots span.is-bad { background: var(--bad); }
.lc-quiz-dots span.is-now { outline: 2px solid var(--brand); outline-offset: 2px; }
.lc-quiz-end { text-align: center; padding: 1em; }
.lc-quiz-score { font-family: Sora, sans-serif; font-size: 3em; font-weight: 800; color: var(--brand); margin: .1em 0; }

/* ---- Görüntüleyici (tam ekran + yakınlaştırma) --------------------------- */
.lc-viewer { position: fixed; inset: 0; z-index: 120; background: rgba(4, 10, 22, .94); display: flex; flex-direction: column; color: #fff; }
.lc-viewer-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 16px; font-size: 15px; }
.lc-viewer-title { font-weight: 700; font-family: Sora, sans-serif; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lc-viewer-actions { display: flex; gap: 6px; }
.lc-viewer-actions .lc-tool span { margin-left: 4px; }
.lc-viewer-stage { flex: 1; overflow: hidden; position: relative; touch-action: none; cursor: grab; }
.lc-viewer-stage.is-panning { cursor: grabbing; }
.lc-viewer-canvas { position: absolute; left: 50%; top: 50%; transform-origin: 0 0; will-change: transform; }
.lc-viewer-canvas > * { background: var(--card); color: var(--ink); border-radius: 12px; }
.lc-viewer-canvas .lc-expand { display: none; }
.lc-viewer-hint { margin: 0; padding: 6px 16px 12px; text-align: center; font-size: 13px; opacity: .6; }

/* ---- Araç panelleri ------------------------------------------------------ */
.lc-panel {
    position: fixed; right: 18px; bottom: 18px; z-index: 130; width: min(430px, calc(100vw - 36px));
    background: var(--card); color: var(--ink); border: 1px solid var(--line); border-radius: 18px;
    box-shadow: 0 24px 60px -20px rgba(0, 0, 0, .45); padding: 14px 16px 16px; font-size: 16px;
}
.lc-panel-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; font-family: Sora, sans-serif; }
.lc-panel-head i { color: var(--brand); }
.lc-timer-face { font-family: Sora, sans-serif; font-weight: 800; font-size: 76px; text-align: center; font-variant-numeric: tabular-nums; line-height: 1.1; letter-spacing: -.02em; }
.lc-timer-face.is-running { color: var(--brand); }
.lc-timer-face.is-low { color: #d97706; }
.lc-timer-face.is-done { color: var(--bad); animation: lc-pulse 1s infinite; }
@keyframes lc-pulse { 50% { opacity: .35; } }
.lc-timer-label { text-align: center; margin: 0 0 8px; color: var(--muted); min-height: 1.2em; }
.lc-timer-presets { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin-bottom: 10px; }
.lc-timer-presets .lc-chip { min-height: 38px; font-size: 14px; }
.lc-timer-ctrl { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.lc-timer-ctrl .lc-btn { font-size: 15px; }
.lc-picker-tabs { display: flex; gap: 6px; margin-bottom: 10px; }
.lc-picker-face { font-family: Sora, sans-serif; font-weight: 800; font-size: 96px; text-align: center; color: var(--brand); line-height: 1.1; }
.lc-picker-face.is-rolling { color: var(--muted); }
.lc-groups { margin: 10px 0 0; padding-left: 1.4em; max-height: 40vh; overflow: auto; }
.lc-groups li { margin: 4px 0; font-weight: 600; }
.lc-groups li span { display: inline-block; min-width: 2.2em; margin: 2px; padding: 2px 6px; border-radius: 6px; background: var(--card-2); text-align: center; font-variant-numeric: tabular-nums; }
.lc-panel .lc-field { font-size: 14px; margin-bottom: 8px; }

.lc-toast { position: fixed; left: 50%; bottom: 28px; transform: translateX(-50%); z-index: 140; background: var(--navy); color: #fff; padding: 12px 20px; border-radius: 12px; font-weight: 600; box-shadow: 0 10px 30px rgba(0, 0, 0, .35); font-size: 16px; }

/* ---- Sunum Modu ---------------------------------------------------------- */
body.lc-presenting { overflow: hidden; }
:root { --lc-pbar-h: 72px; }
body.lc-presenting .lc-top, body.lc-presenting .lc-toc, body.lc-presenting .lc-foot, body.lc-presenting .lc-weeknav-bottom { display: none !important; }
body.lc-presenting .lc-main { font-size: calc(22px * var(--lc-zoom)); padding: 0; max-width: none; }
body.lc-presenting .lc-week-layout { display: block; }
body.lc-presenting .lc-content { position: fixed; inset: 0; background: var(--bg); overflow: hidden; }
body.lc-presenting [data-slide] { display: none; }
body.lc-presenting [data-slide].is-current {
    display: block; position: absolute; inset: 0; margin: 0; border-radius: 0; border: 0; box-shadow: none;
    bottom: var(--lc-pbar-h); overflow: auto; padding: 3.5vh 5vw 4vh;
    animation: lc-slide-in .35s ease;
}
body.lc-presenting [data-slide].is-current.lc-hero { display: flex; flex-direction: column; justify-content: center; }
body.lc-presenting.lc-hide-notes .lc-teacher { display: none !important; }
body.lc-presenting .lc-teacher-zone.is-current { display: block !important; }
body.lc-presenting [data-stepwise] .lc-step.is-pending { opacity: 0; transform: translateY(.6em); pointer-events: none; }
body.lc-presenting [data-stepwise] .lc-step { transition: opacity .35s ease, transform .35s ease; }
body.lc-presenting .lc-sec-head h2 { font-size: 1.9em; }
body.lc-presenting .lc-hero h1 { font-size: 2.8em; }
@keyframes lc-slide-in { from { opacity: 0; transform: translateX(1.5%); } to { opacity: 1; transform: none; } }

.lc-present-bar {
    /* 🔴 Çubuk ALTA YASLANIR ve slayt alanı onun ÜSTÜNDE biter
       (`--lc-pbar-h`): ortada yüzen bir çubuk, kayan içeriğin üstüne düşüp
       yazıyı okunmaz kılıyordu. Tek satırdır (`nowrap`); başlık uzadığında
       düğmeler alt satıra KAYMAZ, başlık kısalır (`…`). */
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 110; height: var(--lc-pbar-h);
    display: flex; align-items: center; gap: 6px; padding: 0 12px; flex-wrap: nowrap;
    background: rgba(10, 46, 92, .97); color: #fff; box-shadow: 0 -10px 30px -12px rgba(0, 0, 0, .45);
    font-size: 16px;
}
.lc-pbtn { flex: 0 0 auto; min-width: 52px; height: 52px; border-radius: 14px; border: 0; background: rgba(255, 255, 255, .1); color: #fff; cursor: pointer; font-size: 20px; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; gap: 2px; padding: 0 12px; white-space: nowrap; }
.lc-pbtn:hover { background: rgba(255, 255, 255, .22); }
.lc-pbtn-next { background: var(--accent); color: #1f2937; min-width: 84px; }
.lc-pbtn-next:hover { background: #ffd56e; }
.lc-pbtn-exit span { font-size: 15px; margin-left: 4px; }
.lc-pbtn.is-on { background: #7c3aed; }
.lc-pcount { flex: 1 1 auto; min-width: 0; height: 52px; border-radius: 14px; border: 0; background: transparent; color: #fff; cursor: pointer; display: flex; flex-direction: column; align-items: center; justify-content: center; line-height: 1.15; padding: 0 8px; }
.lc-pcount:hover { background: rgba(255, 255, 255, .08); }
.lc-pcount span { font-weight: 800; font-variant-numeric: tabular-nums; }
.lc-pcount small { opacity: .8; font-size: 13px; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lc-psep { flex: 0 0 auto; width: 1px; height: 32px; background: rgba(255, 255, 255, .2); margin: 0 4px; }
.lc-plist { position: absolute; bottom: calc(100% + 10px); left: 50%; transform: translateX(-50%); width: min(460px, 92vw); max-height: 60vh; overflow: auto; background: var(--card); color: var(--ink); border-radius: 16px; padding: 8px; box-shadow: 0 20px 50px rgba(0, 0, 0, .4); }
.lc-plist ol { margin: 0; padding: 0; list-style: none; }
.lc-plist button { width: 100%; text-align: left; border: 0; background: transparent; padding: 10px 12px; border-radius: 10px; cursor: pointer; font-size: 16px; display: flex; gap: 10px; }
.lc-plist button:hover, .lc-plist button.is-current { background: var(--t-soft); }
.lc-plist b { color: var(--muted); min-width: 1.8em; }
@media (max-width: 900px) { .lc-pbtn-exit span { display: none; } .lc-pbtn { min-width: 46px; padding: 0 8px; } }
@media (max-width: 640px) { .lc-pbtn[data-lc-action="picker"], .lc-pbtn[data-lc-action="notes"], .lc-psep { display: none; } .lc-pbtn { min-width: 40px; height: 46px; font-size: 17px; } .lc-pcount small { display: none; } }

/* ---- Ana sayfa + ders takvimi ------------------------------------------- */
.lc-home-hero { text-align: center; padding: 2.5em 1em 1.5em; max-width: 64em; margin: 0 auto; }
.lc-home-hero h1 { font-size: 2.8em; margin: .4em 0 .3em; }
.lc-home-hero h1 span { color: var(--brand); }
.lc-home-hero .lc-lead { margin: 0 auto; }
.lc-home-feats { display: grid; grid-template-columns: repeat(auto-fit, minmax(17em, 1fr)); gap: .6em; list-style: none; padding: 0; margin: 1.8em 0 0; text-align: left; }
.lc-home-feats li { background: var(--card); border: 1px solid var(--line); border-radius: .9em; padding: .7em 1em; display: flex; gap: .6em; align-items: center; font-weight: 600; }
.lc-home-feats i { color: var(--brand); font-size: 1.3em; }
.lc-course-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(22em, 1fr)); gap: 1.4em; max-width: 72em; margin: 1.5em auto; }
.lc-course-card { position: relative; background: var(--card); border: 1px solid var(--line); border-radius: 1.4em; padding: 1.8em; box-shadow: var(--shadow); overflow: hidden; }
.lc-course-card::after { content: ""; position: absolute; right: -4em; top: -4em; width: 12em; height: 12em; border-radius: 50%; background: var(--t-soft); z-index: 0; }
.lc-course-card > * { position: relative; z-index: 1; }
.lc-course-card.g-5 { --t: #0284c7; --t-soft: #e0f2fe; --t-ink: #075985; }
.lc-course-card.g-6 { --t: #7c3aed; --t-soft: #ede9fe; --t-ink: #5b21b6; }
[data-theme="dark"] .lc-course-card.g-5 { --t-soft: #0c2a40; --t-ink: #7dd3fc; }
[data-theme="dark"] .lc-course-card.g-6 { --t-soft: #251a45; --t-ink: #c4b5fd; }
.lc-course-badge { width: 2.6em; height: 2.6em; border-radius: .8em; background: var(--t); color: #fff; font-family: Sora, sans-serif; font-weight: 800; font-size: 1.6em; display: grid; place-items: center; }
.lc-course-card h2 { font-size: 1.5em; margin: .6em 0 .3em; }
.lc-course-card p { color: var(--ink-2); }
.lc-course-themes { list-style: none; padding: 0; margin: 1em 0; display: grid; gap: .35em; }
.lc-course-themes li { display: flex; gap: .6em; align-items: center; font-weight: 600; color: var(--ink-2); }
.lc-course-themes span { flex: 0 0 1.7em; height: 1.7em; border-radius: .5em; display: grid; place-items: center; background: var(--t-soft); color: var(--t-ink); font-weight: 800; font-size: .85em; }
.lc-course-actions { display: flex; flex-wrap: wrap; gap: .6em; margin-top: 1.2em; }
.lc-course-card .lc-btn-primary { background: var(--t); border-color: var(--t); }
.lc-home-note { max-width: 72em; margin: 2em auto; background: var(--card); border: 1px solid var(--line); border-radius: 1.2em; padding: 1.4em 1.8em; }
.lc-home-note h2 { margin-top: 0; font-size: 1.3em; }
.lc-home-note li { margin: .4em 0; }

.lc-course-head { text-align: center; padding: 1.4em 0 1em; }
.lc-course-head h1 { font-size: 2.2em; margin: .4em 0; }
.lc-course-now { display: flex; flex-wrap: wrap; gap: .8em; justify-content: center; align-items: center; margin: .8em 0 1.2em; }
.lc-now-label { font-weight: 800; color: var(--ink-2); }
.lc-now-label i { color: #d97706; }
.lc-theme-legend { display: flex; flex-wrap: wrap; gap: .5em; justify-content: center; }
.lc-theme-chip { padding: .35em .85em; border-radius: 999px; background: var(--t-soft); color: var(--t-ink); font-weight: 700; font-size: .85em; }
.lc-theme-chip b { display: inline-grid; place-items: center; width: 1.5em; height: 1.5em; border-radius: 50%; background: var(--t); color: #fff; font-size: .85em; margin-right: .2em; }
.lc-sem { margin-top: 1.6em; }
.lc-sem-title { font-size: 1.5em; display: flex; align-items: center; gap: .6em; }
.lc-sem-title::after { content: ""; flex: 1; height: 2px; background: var(--line); }
.lc-month { margin: 1em 0 1.6em; }
.lc-month-title { font-size: 1.05em; text-transform: uppercase; letter-spacing: .12em; color: var(--muted); margin: 0 0 .7em; }
.lc-month-weeks { display: grid; grid-template-columns: repeat(auto-fill, minmax(17em, 1fr)); gap: .9em; }
.lc-wcard {
    position: relative; display: flex; flex-direction: column; gap: .4em; padding: 1em 1.1em 1.1em;
    background: var(--card); border: 1px solid var(--line); border-left: .4em solid var(--t); border-radius: 1em;
    text-decoration: none; color: var(--ink); box-shadow: var(--shadow); transition: transform .15s, box-shadow .15s;
}
a.lc-wcard:hover { transform: translateY(-2px); box-shadow: 0 16px 30px -18px rgba(15, 23, 42, .5); }
.lc-wcard-top { display: flex; justify-content: space-between; gap: .5em; font-size: .8em; font-weight: 700; color: var(--muted); }
.lc-wcard-no { color: var(--t-ink); text-transform: uppercase; letter-spacing: .06em; }
.lc-wcard-title { font-family: Sora, sans-serif; font-size: 1.08em; line-height: 1.25; }
.lc-wcard-topics { color: var(--ink-2); font-size: .85em; }
.lc-wcard-tags { display: flex; flex-wrap: wrap; gap: .3em; margin-top: auto; padding-top: .3em; }
.lc-tag { font-size: .72em; font-weight: 700; padding: .2em .6em; border-radius: 999px; background: var(--t-soft); color: var(--t-ink); }
.lc-tag-rich { background: #fef3c7; color: #92400e; }
[data-theme="dark"] .lc-tag-rich { background: #3a2608; color: #fcd34d; }
.lc-tag-day { background: var(--card-2); color: var(--muted); }
.lc-wcard-now { position: absolute; top: -.7em; right: .8em; background: var(--accent); color: #1f2937; font-weight: 800; font-size: .72em; padding: .25em .7em; border-radius: 999px; box-shadow: var(--shadow); }
.lc-wcard.is-now { outline: 3px solid var(--accent); outline-offset: 2px; }
.lc-wcard.is-past { opacity: .72; }
.lc-break { border-left-color: #94a3b8; background: repeating-linear-gradient(135deg, var(--card), var(--card) 12px, var(--card-2) 12px, var(--card-2) 24px); box-shadow: none; }

/* ---- Simülasyonlar: ortak parçalar -------------------------------------- */
.lc-simbar { display: flex; flex-wrap: wrap; gap: .5em; align-items: center; margin-bottom: .8em; }
.lc-simbar .lc-spacer { flex: 1; }
.lc-sim-note { margin: .6em 0 0; padding: .7em 1em; border-radius: .8em; background: var(--card); border-left: .3em solid var(--brand); color: var(--ink-2); min-height: 2.8em; }
.lc-sim-note strong { color: var(--ink); }
.lc-sim-grid2 { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 1em; align-items: start; }
@media (max-width: 860px) { .lc-sim-grid2 { grid-template-columns: minmax(0, 1fr); } }
.lc-range { display: grid; gap: .25em; font-weight: 700; font-size: .92em; }
.lc-range input[type="range"] { width: 100%; accent-color: var(--brand); height: 2em; }
.lc-range output { font-variant-numeric: tabular-nums; color: var(--brand-ink); }
.lc-svg-host svg { width: 100%; height: auto; display: block; }
.lc-hot { cursor: pointer; }
.lc-hot:hover > *, .lc-hot.is-on > * { filter: brightness(1.08); }
.lc-canvas { width: 100%; height: auto; display: block; border-radius: .8em; background: #fff; touch-action: none; }
.lc-badge { display: inline-block; padding: .2em .6em; border-radius: .5em; background: var(--t-soft); color: var(--t-ink); font-weight: 800; font-size: .85em; }
.lc-meter { height: 1.4em; border-radius: 999px; background: var(--card); border: 1px solid var(--line); overflow: hidden; }
.lc-meter > span { display: block; height: 100%; background: linear-gradient(90deg, var(--ok), #84cc16); transition: width .4s ease; }
.lc-meter.is-full > span { background: linear-gradient(90deg, #f59e0b, var(--bad)); }
.lc-kv { display: grid; grid-template-columns: auto 1fr; gap: .3em .8em; margin: 0; }
.lc-kv dt { font-weight: 800; color: var(--ink-2); }
.lc-kv dd { margin: 0; }

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

@media print {
    .lc-top, .lc-toc, .lc-foot, .lc-present-bar, .lc-expand, .lc-video-add, .lc-panel, .lc-viewer { display: none !important; }
    body.lc { background: #fff; }
    .lc-sec { box-shadow: none; break-inside: avoid; }
    .lc-week-layout { display: block; }
}

/* ---- SVG çizimleri: tema değişkenlerini izleyen sınıflar ---------------- */
.fg-bg { fill: var(--card-2); }
.fg-card { fill: var(--card); stroke: var(--line); stroke-width: 2; }
.fg-ink { fill: var(--ink); }
.fg-ink2 { fill: var(--ink-2); }
.fg-muted { fill: var(--muted); }
.fg-line { stroke: var(--line); fill: none; }
.fg-wire { stroke: var(--muted); fill: none; stroke-width: 3; stroke-linecap: round; }
.fg-title { font-family: Sora, Inter, sans-serif; font-weight: 800; }
.fg-t { font-family: Inter, sans-serif; font-weight: 600; }
.fg-small { font-family: Inter, sans-serif; font-weight: 500; font-size: 15px; }
.fg-white { fill: #fff; }
.fg-sky { fill: #0284c7; } .fg-violet { fill: #7c3aed; } .fg-emerald { fill: #059669; }
.fg-rose { fill: #e11d48; } .fg-amber { fill: #d97706; } .fg-indigo { fill: #4f46e5; }
.fg-teal { fill: #0d9488; } .fg-orange { fill: #ea580c; } .fg-slate { fill: #475569; } .fg-pink { fill: #db2777; }
.fg-sky-s { fill: #e0f2fe; } .fg-violet-s { fill: #ede9fe; } .fg-emerald-s { fill: #d1fae5; }
.fg-rose-s { fill: #ffe4e6; } .fg-amber-s { fill: #fef3c7; } .fg-indigo-s { fill: #e0e7ff; } .fg-teal-s { fill: #ccfbf1; }
[data-theme="dark"] .fg-sky-s { fill: #0c2a40; } [data-theme="dark"] .fg-violet-s { fill: #251a45; }
[data-theme="dark"] .fg-emerald-s { fill: #0b3024; } [data-theme="dark"] .fg-rose-s { fill: #3a1220; }
[data-theme="dark"] .fg-amber-s { fill: #3a2608; } [data-theme="dark"] .fg-indigo-s { fill: #1c1d4a; } [data-theme="dark"] .fg-teal-s { fill: #0b2f2c; }

.lc-ask { left: 50%; top: 50%; right: auto; bottom: auto; transform: translate(-50%, -50%); z-index: 135; }
.lc-viewer .lc-ask { position: fixed; }
.lc-hot-hint { animation: lc-hint-pulse 1s ease-in-out infinite; }
@keyframes lc-hint-pulse { 50% { opacity: .35; } }
.lc-miss { animation: lc-miss-fade .7s ease forwards; }
@keyframes lc-miss-fade { to { opacity: 0; } }
body.lc-presenting .lc-panel:not(.lc-ask) { bottom: calc(var(--lc-pbar-h) + 12px); }
body.lc-presenting .lc-toast { bottom: calc(var(--lc-pbar-h) + 14px); }

/* ==========================================================================
   v1.64.0 — EBA karekodları · bilgisayarsız alternatif · defter · kendi içerik
   · Maarif künyesi. Ölçüler yine `em` (büyütme sözleşmesi).
   ========================================================================== */

/* ---- EBA kartları: karekod + etiket, bölümün içinde ----------------------- */
.lc-eba-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(17em, 1fr)); gap: .8em; margin-top: 1.1em; }
.lc-eba-card {
    position: relative; display: flex; gap: .9em; align-items: center;
    padding: .8em; border-radius: 1em; background: var(--card-2); border: 1px solid var(--line);
}
.lc-eba-card .lc-expand { top: .4em; right: .4em; padding: .25em .55em; }
.lc-eba-card .lc-expand span { display: none; }
.lc-eba-qr { flex: 0 0 6.5em; width: 6.5em; display: block; background: #fff; border-radius: .5em; padding: .25em; line-height: 0; }
.lc-eba-qr svg { width: 100%; height: auto; display: block; }
.lc-eba-body { display: flex; flex-direction: column; gap: .35em; min-width: 0; padding-right: 1.6em; }
.lc-eba-body small { color: var(--muted); font-weight: 700; font-size: .78em; text-transform: uppercase; letter-spacing: .04em; }
.lc-eba-body small i { color: var(--brand); }
.lc-eba-body strong { font-size: .95em; line-height: 1.3; }
.lc-eba-body .lc-btn { align-self: flex-start; }
/* Görüntüleyicide (Büyüt) karekod ekranı doldurur: sınıfın arkasından okutulabilir. */
.lc-viewer .lc-eba-card { flex-direction: column; background: #fff; color: #0f172a; width: 30em; padding: 1.4em; }
.lc-viewer .lc-eba-qr { flex-basis: auto; width: 100%; }
.lc-viewer .lc-eba-body { align-items: center; text-align: center; padding: 0; }
.lc-viewer .lc-eba-card .lc-expand { display: none; }
.lc-eba-extra .lc-eba-cards { margin-top: .6em; }

/* ---- Öğrenci bilgisayarı yoksa ------------------------------------------- */
.lc-unplugged { margin-top: 1em; border: 1px dashed #d97706; border-radius: .9em; background: #fffbeb; }
[data-theme="dark"] .lc-unplugged { background: #2a1d07; border-color: #b45309; }
.lc-unplugged summary { cursor: pointer; padding: .7em 1em; font-weight: 800; color: #92400e; list-style: none; display: flex; gap: .5em; align-items: center; }
[data-theme="dark"] .lc-unplugged summary { color: #fcd34d; }
.lc-unplugged summary::-webkit-details-marker { display: none; }
.lc-unplugged summary::after { content: "\F282"; font-family: bootstrap-icons; margin-left: auto; transition: transform .2s; }
.lc-unplugged[open] summary::after { transform: rotate(180deg); }
.lc-unplugged .lc-prose { padding: 0 1em .9em; }

/* ---- Defterime yazıyorum ------------------------------------------------- */
.lc-nb-actions { display: flex; flex-wrap: wrap; gap: .5em; align-items: center; margin-left: auto; }
.lc-nb-tabs { display: flex; gap: .35em; }
.lc-nb-hint { margin: 0 0 .8em; }
.lc-paper {
    position: relative; background-color: #fffef8; color: #1e293b;
    background-image: repeating-linear-gradient(to bottom, transparent 0, transparent calc(1.9em - 1px), #c7d7ee calc(1.9em - 1px), #c7d7ee 1.9em);
    background-position: 0 3.2em;
    border: 1px solid #e5dcc3; border-radius: .9em; padding: 1em 1.4em 1.2em 3.4em;
    line-height: 1.9em; box-shadow: var(--shadow);
}
.lc-paper::before { content: ""; position: absolute; top: 0; bottom: 0; left: 2.4em; border-left: 2px solid #f4a3a3; }
[data-theme="dark"] .lc-paper { background-color: #f8f5ea; }
.lc-paper + .lc-paper { margin-top: 1em; }
.lc-paper-head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .3em 1em; font-family: Sora, Inter, sans-serif; color: #0a2e5c; margin-bottom: .3em; }
.lc-paper-head span { font-family: Inter, sans-serif; color: #64748b; font-size: .85em; }
.lc-paper h3 { margin: .2em 0 0; font-size: 1.05em; line-height: 1.9em; color: #0a2e5c; }
.lc-paper p, .lc-paper ul, .lc-paper ol, .lc-paper dl { margin: 0; }
.lc-nb-terms div { display: block; }
.lc-nb-terms dt { display: inline; font-weight: 800; color: #b91c1c; }
.lc-nb-terms dt::after { content: ": "; }
.lc-nb-terms dd { display: inline; margin: 0; }
.lc-nb-points, .lc-paper-mine ul { padding-left: 1.2em; }
.lc-nb-points li::marker { color: #0284c7; }
.lc-nb-remember { font-weight: 600; }
.lc-nb-remember i { color: #d97706; }
.lc-nb-ask ol { padding-left: 1.4em; }
.lc-nb-ask strong i, .lc-nb-remember strong { color: #0a2e5c; }
.lc-nb-editor { margin-top: 1em; background: var(--card-2); border: 1px solid var(--line); border-radius: .9em; padding: 1em; }
.lc-nb-editor textarea { width: 100%; font: inherit; font-size: .95em; line-height: 1.5; padding: .7em .8em; border-radius: .7em; border: 1px solid var(--line); background: var(--card); color: var(--ink); resize: vertical; }
.lc-nb-print-eba { display: none; }
body.lc-presenting .lc-notebook .lc-paper { font-size: 1.05em; }

/* ---- Kendi görsellerim ---------------------------------------------------- */
.lc-mine-add { margin-top: 1em; border-style: dashed; }
.lc-mine-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(18em, 1fr)); gap: .9em; margin-top: 1em; }
.lc-mine-gallery.is-single { grid-template-columns: 1fr; }
.lc-mine-fig .lc-figure-art img { max-width: 100%; max-height: 32em; height: auto; width: auto; border-radius: .5em; display: block; }
.lc-mine-fig.is-slide .lc-figure-art img { max-height: 70vh; }
.lc-mine-tools { display: flex; flex-wrap: wrap; gap: .35em; justify-content: center; margin-top: .6em; }
body.lc-presenting .lc-mine-tools, body.lc-presenting .lc-mine-add { display: none !important; }
.lc-viewer .lc-mine-tools { display: none; }
.lc-viewer .lc-mine-fig .lc-figure-art img { max-height: none; }
.lc-btn-danger { color: var(--bad); }
.lc-btn-danger:hover { border-color: var(--bad); }
.lc-panel .lc-btn-danger { background: var(--bad); border-color: var(--bad); color: #fff; }
.lc-ask-msg { margin: 0 0 .8em; font-size: 15px; line-height: 1.45; }
.lc-wrap { flex-wrap: wrap; }

/* ---- Maarif künyesi ----------------------------------------------------- */
.lc-maarif-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(20em, 1fr)); gap: .6em 1.2em; margin: .6em 0 0; }
.lc-maarif-grid dt { font-weight: 800; font-size: .82em; color: var(--ink-2); margin-bottom: .25em; }
.lc-maarif-grid dd { margin: 0; display: flex; flex-wrap: wrap; gap: .3em; }
.lc-tag { display: inline-block; padding: .15em .55em; border-radius: .5em; background: var(--card-2); border: 1px solid var(--line); font-size: .78em; line-height: 1.4; }
.lc-maarif-diff { display: grid; grid-template-columns: repeat(auto-fit, minmax(20em, 1fr)); gap: .4em 1.4em; margin-top: .4em; }

/* ---- Yazdır: yalnız defter sayfası ---------------------------------------- */
@media print {
    body.lc-print-nb .lc-content > :not(#defter) { display: none !important; }
    body.lc-print-nb .lc-toc, body.lc-print-nb .lc-top, body.lc-print-nb .lc-crumbs { display: none !important; }
    body.lc-print-nb #defter { border: 0; padding: 0; margin: 0; }
    body.lc-print-nb #defter .lc-nb-actions, body.lc-print-nb #defter .lc-nb-hint, body.lc-print-nb #defter .lc-nb-editor { display: none !important; }
    body.lc-print-nb #defter .lc-step { opacity: 1 !important; transform: none !important; }
    body.lc-print-nb .lc-paper { box-shadow: none; -webkit-print-color-adjust: exact; print-color-adjust: exact; font-size: 12pt; }
    body.lc-print-nb .lc-nb-print-eba { display: block; margin-top: 8mm; font-size: 10pt; }
    body.lc-print-nb .lc-nb-print-eba ul { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 4mm; }
    body.lc-print-nb .lc-nb-print-eba li { display: flex; gap: 2mm; align-items: center; break-inside: avoid; }
    body.lc-print-nb .lc-nb-qr { flex: 0 0 24mm; width: 24mm; line-height: 0; }
    body.lc-print-nb .lc-nb-qr svg { width: 100%; height: auto; }
    .lc-mine-tools, .lc-mine-add, .lc-unplugged summary::after { display: none !important; }
}

/* ---- Defter notu v1.65.0: bölümlü, 2–3 sayfalık not ----------------------- */
.lc-nb-sec { margin: 0 0 .2em; }
.lc-nb-sec + .lc-nb-sec { margin-top: .95em; }
.lc-nb-sec h3 { margin: 0; font-size: 1.08em; line-height: 1.9em; color: #0a2e5c; font-family: Sora, Inter, sans-serif; }
.lc-nb-text p { margin: 0; }
.lc-nb-text p + p { margin-top: .25em; }
.lc-nb-sec .lc-nb-terms div { margin: 0; }
.lc-nb-table { border-collapse: collapse; margin: .35em 0; background: rgba(255, 255, 255, .7); font-size: .95em; line-height: 1.45; }
.lc-nb-table th, .lc-nb-table td { border: 1px solid #c7d7ee; padding: .3em .6em; text-align: left; vertical-align: top; }
.lc-nb-table th { background: #e8f0fb; color: #0a2e5c; }
.lc-nb-example, .lc-nb-note { margin: .3em 0 0; padding: 0 .6em; border-left: .25em solid #0284c7; }
.lc-nb-note { border-left-color: #d97706; }
.lc-nb-example strong { color: #0284c7; }
.lc-nb-note strong { color: #b45309; }
div.lc-nb-remember { margin-top: 1em; padding: .1em .8em .2em; border: 2px dashed #f59e0b; border-radius: .6em; background: rgba(254, 243, 199, .55); }
div.lc-nb-remember strong { color: #b45309; }
div.lc-nb-remember ul { margin: 0; padding-left: 1.2em; }
div.lc-nb-remember p { margin: 0; }
.lc-nb-ask { margin-top: 1em; }
@media (max-width: 640px) { .lc-nb-table { display: block; overflow-x: auto; } }
@media print {
    body.lc-print-nb .lc-nb-sec, body.lc-print-nb .lc-nb-remember, body.lc-print-nb .lc-nb-ask { break-inside: avoid; }
    body.lc-print-nb .lc-nb-table th { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}

/* ---- Oltalama dedektifi (v1.65.0) ------------------------------------------ */
.lc-phish-card { background: var(--card); border: 1px solid var(--line); border-radius: 1em; padding: 1em 1.2em; max-width: 44em; box-shadow: var(--shadow); }
.lc-phish-head { display: flex; gap: .5em; align-items: center; color: var(--ink-2); margin-bottom: .4em; }
.lc-phish-head small { margin-left: auto; color: var(--muted); }
.lc-phish-body { margin: 0; font-size: 1.1em; line-height: 1.6; }
.lc-phish-card.is-revealed [data-clue="urgent"] { background: #fef3c7; color: #92400e; border-radius: .3em; }
.lc-phish-card.is-revealed [data-clue="link"] { background: #fee2e2; color: #b91c1c; text-decoration: underline wavy; }
.lc-phish-card.is-revealed [data-clue="ask"] { background: #fce7f3; color: #9d174d; border-radius: .3em; }
.lc-phish-card.is-revealed [data-clue="prize"] { background: #ede9fe; color: #5b21b6; border-radius: .3em; }
.lc-phish-card.is-revealed [data-clue="sender"] { background: #e0f2fe; color: #075985; border-radius: .3em; }
.lc-phish-clues { list-style: none; padding: 0; margin: .8em 0 0; display: grid; gap: .4em; max-width: 44em; }
.lc-phish-clues li { padding: .45em .8em; border-radius: .6em; background: var(--card-2); border-left: .3em solid var(--muted); }
.lc-phish-clues li.is-urgent { border-color: #d97706; } .lc-phish-clues li.is-link { border-color: #dc2626; }
.lc-phish-clues li.is-ask { border-color: #db2777; } .lc-phish-clues li.is-prize { border-color: #7c3aed; }
.lc-phish-clues li.is-sender { border-color: #0284c7; } .lc-phish-clues li.is-safe { border-color: #16a34a; }

/* ---- Adımları sırala · değişken kutuları · mantık lambaları (v1.65.0) ------ */
.lc-order { list-style: none; padding: 0; margin: 0 0 .6em; display: grid; gap: .45em; max-width: 40em; }
.lc-order-item { display: flex; align-items: center; gap: .7em; padding: .55em .8em; border-radius: .8em; background: var(--card); border: 2px solid var(--line); cursor: pointer; font-weight: 600; }
.lc-order-item.is-picked { border-color: var(--brand); box-shadow: var(--focus); }
.lc-order-item.is-ok { border-color: var(--ok); background: var(--ok-soft); }
.lc-order-item.is-bad { border-color: var(--bad); background: var(--bad-soft); }
.lc-order-no { flex: 0 0 1.9em; height: 1.9em; display: grid; place-items: center; border-radius: .5em; background: var(--t); color: #fff; font-weight: 800; }
.lc-order-text { flex: 1; }
.lc-order-mv { display: flex; gap: .2em; }
.lc-varbox { display: grid; grid-template-columns: minmax(12em, 1fr) 2fr; gap: 1em; align-items: start; }
@media (max-width: 640px) { .lc-varbox { grid-template-columns: 1fr; } }
.lc-varbox-code { margin: 0; padding: .6em .6em .6em 2.2em; background: #0f172a; color: #e2e8f0; border-radius: .8em; font-family: ui-monospace, Menlo, Consolas, monospace; }
.lc-varbox-code li { padding: .2em .4em; border-radius: .3em; opacity: .55; }
.lc-varbox-code li.is-done { opacity: .8; }
.lc-varbox-code li.is-now { opacity: 1; background: #1e3a8a; }
.lc-varbox-code code { color: inherit; font-size: 1em; }
.lc-varbox-boxes { display: flex; flex-wrap: wrap; gap: 1em; }
.lc-varbox-box { width: 7.5em; border: 3px solid #b45309; border-top-width: .9em; border-radius: .4em .4em .8em .8em; background: #fef3c7; text-align: center; padding: .5em .3em; transition: transform .25s; }
.lc-varbox-box.is-changed { transform: scale(1.08); box-shadow: 0 0 0 4px rgba(245, 158, 11, .35); }
.lc-varbox-val { display: block; font-size: 2em; font-weight: 800; color: #0f172a; font-family: Sora, Inter, sans-serif; }
.lc-varbox-name { display: block; font-family: ui-monospace, Menlo, Consolas, monospace; color: #92400e; font-weight: 700; }
.lc-logic-sw { display: flex; flex-wrap: wrap; gap: .8em; margin-bottom: 1em; }
.lc-logic-toggle { display: flex; align-items: center; gap: .6em; padding: .6em 1em; border-radius: 999px; border: 2px solid var(--line); background: var(--card); color: var(--ink); cursor: pointer; font: inherit; font-weight: 600; }
.lc-logic-toggle strong { color: var(--bad); font-size: .85em; }
.lc-logic-toggle.is-on { border-color: var(--ok); }
.lc-logic-toggle.is-on strong { color: var(--ok); }
.lc-logic-knob { width: 2.4em; height: 1.3em; border-radius: 999px; background: var(--line); position: relative; flex: 0 0 auto; }
.lc-logic-knob::after { content: ""; position: absolute; top: .15em; left: .15em; width: 1em; height: 1em; border-radius: 50%; background: #fff; transition: left .2s; }
.lc-logic-toggle.is-on .lc-logic-knob { background: var(--ok); }
.lc-logic-toggle.is-on .lc-logic-knob::after { left: 1.25em; }
.lc-logic-lamps { display: grid; grid-template-columns: repeat(auto-fit, minmax(11em, 1fr)); gap: .8em; }
.lc-logic-lamp { text-align: center; padding: .8em; border-radius: 1em; background: var(--card); border: 2px solid var(--line); }
.lc-logic-lamp small { display: block; color: var(--muted); }
.lc-logic-bulb { display: block; font-size: 2.6em; color: var(--muted); }
.lc-logic-lamp.is-on { border-color: #f59e0b; background: #fffbeb; }
[data-theme="dark"] .lc-logic-lamp.is-on { background: #2a1d07; }
.lc-logic-lamp.is-on .lc-logic-bulb { color: #f59e0b; }

/* aireact — yapay zekâ modülünün çıktısına tepki (v1.65.0) */
.lc-ai-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(14em, 1fr)); gap: .8em; margin: .8em 0; }
.lc-ai-card { border: 2px solid var(--line); border-radius: 1em; background: var(--card); padding: .8em 1em; display: flex; flex-direction: column; gap: .35em; }
.lc-ai-card > small { color: var(--muted); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; font-size: .72em; }
.lc-ai-card p { margin: 0; }
.lc-ai-cam { align-items: center; text-align: center; }
.lc-ai-icon { font-size: 2.6em; color: var(--brand); }
.lc-ai-meter { position: relative; height: .9em; border-radius: 999px; background: var(--line); overflow: visible; }
.lc-ai-fill { position: absolute; inset: 0 auto 0 0; border-radius: 999px; background: var(--ok); transition: width .25s; }
.lc-ai-fill.is-low { background: #f59e0b; }
.lc-ai-thr { position: absolute; top: -.3em; bottom: -.3em; width: 3px; margin-left: -1.5px; background: var(--ink); border-radius: 2px; }
.lc-ai-code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: .85em; }
.lc-ai-line { padding: .3em .5em; border-radius: .5em; border-left: 3px solid transparent; }
.lc-ai-line.is-on { background: #fef9c3; border-left-color: #eab308; color: #1f2937; font-weight: 700; }
.lc-ai-summary { display: flex; flex-wrap: wrap; align-items: center; gap: .5em; margin-top: .6em; }
.lc-ai-summary small { color: var(--muted); }
.lc-ai-pill { padding: .3em .8em; border-radius: 999px; font-weight: 700; font-size: .9em; }
.lc-ai-pill.is-ok { background: var(--ok-soft); color: #166534; }
.lc-ai-pill.is-bad { background: var(--bad-soft); color: #991b1b; }
.lc-ai-pill.is-ask { background: #fef3c7; color: #92400e; }

/* Çevrimdışı (flash bellek) kopyası — v1.66.0 */
.lc-usb-bar { display: flex; flex-wrap: wrap; align-items: center; gap: .4em 1em; padding: .35em 1em; background: #e0f2fe; color: #075985; font-size: .85em; border-bottom: 1px solid #bae6fd; }
.lc-usb-bar .lc-usb-note { color: #0369a1; opacity: .85; }
.lc-usb-bar .lc-usb-state { margin-left: auto; font-weight: 600; }
/* Kaydedilmemiş değişiklik varken şerit sayfayla kaymaz: sağ altta yüzen bir kutu
   olur (üstte kalsaydı öğretmen aşağı kaydırınca uyarıyı hiç görmezdi — ölçüldü). */
.lc-usb-bar.is-dirty { position: fixed; right: 1em; bottom: 5.5em; z-index: 150; max-width: min(34em, calc(100vw - 2em)); border: 2px solid #f59e0b; border-radius: 1em; background: #fef3c7; color: #92400e; box-shadow: 0 10px 30px -10px rgba(15, 23, 42, .45); padding: .6em .9em; }
.lc-usb-bar.is-dirty > span:first-child { display: none; }
.lc-usb-bar.is-dirty .lc-usb-state { margin-left: 0; }
[data-theme="dark"] .lc-usb-bar { background: #0c2a3f; color: #bae6fd; border-bottom-color: #164e63; }
[data-theme="dark"] .lc-usb-bar.is-dirty { background: #3b2a05; color: #fde68a; border-bottom-color: #78350f; }
.lc-usb-checks { list-style: none; padding: 0; margin: .4em 0 .6em; display: grid; gap: .35em; }
.lc-usb-checks li { display: flex; gap: .5em; align-items: baseline; }
.lc-usb-checks li.is-ok i { color: var(--ok); }
.lc-usb-checks li.is-warn i { color: #d97706; }
.lc-usb-checks li.is-bad i { color: var(--bad); }
.lc-presenting .lc-usb-bar { display: none; }
@media print { .lc-usb-bar { display: none !important; } }

/* Öğretmen cevapları — v1.68.0 (yalnız öğretmen notları açıkken, kapalı gelir) */
.lc-q-body { flex: 1; min-width: 0; }
.lc-key { margin-top: .55em; font-size: .78em; font-weight: 400; border: 2px dashed #c4b5fd; border-radius: .7em; background: #faf7ff; color: var(--ink-2); }
.lc-key > summary { cursor: pointer; padding: .4em .8em; font-weight: 700; color: #6d28d9; }
.lc-key[open] > summary { border-bottom: 1px dashed #c4b5fd; }
.lc-key-body { padding: .45em .9em .7em; }
.lc-key-body p { margin: .3em 0; }
[data-theme="dark"] .lc-key { background: var(--card); border-color: #4c3a86; color: var(--ink); }
[data-theme="dark"] .lc-key > summary { color: #c4b5fd; }
.lc-key-sheet { margin-top: 1em; font-size: .95em; }
.lc-key-title { font-weight: 700; color: var(--ink); }
.lc-key-list { padding-left: 1.4em; margin: .4em 0 .8em; }
.lc-key-list li { margin-bottom: .55em; }
.lc-key-q { font-weight: 600; color: var(--ink); margin-bottom: .1em !important; }
.lc-key-a { margin-top: 0 !important; }
.lc-key-printout { display: none; }
@media print {
    /* Cevaplar hiçbir çıktıya girmez — özellikle öğrenciye dağıtılan defter çıktısına. */
    .lc-key { display: none !important; }
    body.lc-print-key > :not(.lc-key-printout) { display: none !important; }
    body.lc-print-key .lc-key-printout { display: block; color: #000; font-size: 11pt; }
    body.lc-print-key .lc-key-list li { break-inside: avoid; }
}
