/* ===== Eşlik · tasarım değişkenleri ===== */
:root {
    --kagit: #faf7f0;
    --kagit-2: #f3eee3;
    --kart: #fffdf8;
    --murekkep: #1c2433;
    --soluk: #5d6574;
    --cizgi: #e3dbcc;
    --bordo: #7a2733;
    --bordo-koyu: #5e1c26;
    --bordo-acik: #f4e6e6;
    --yesil: #2f6b4f;
    --sari: #8a6a12;
    --dongu-dolgu: rgba(122, 39, 51, .13);
    --dongu-pasif: rgba(93, 101, 116, .10);
    --dalga-soluk: #d5ccbb;
    --serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;
    --sans: Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    --golge: 0 1px 2px rgba(28, 36, 51, .05), 0 4px 16px rgba(28, 36, 51, .05);
    --yaricap: 10px;
    color-scheme: light;
}

@media (prefers-color-scheme: dark) {
    :root {
        --kagit: #12161f;
        --kagit-2: #1a1f2b;
        --kart: #181d28;
        --murekkep: #ece6da;
        --soluk: #9aa1ad;
        --cizgi: #2b3240;
        --bordo: #d0707c;
        --bordo-koyu: #e08a95;
        --bordo-acik: #2c1d22;
        --yesil: #6fbf96;
        --sari: #d6b45a;
        --dongu-dolgu: rgba(208, 112, 124, .18);
        --dongu-pasif: rgba(154, 161, 173, .12);
        --dalga-soluk: #3a4252;
        --golge: none;
        color-scheme: dark;
    }
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { -webkit-text-size-adjust: 100%; }
body {
    margin: 0;
    background: var(--kagit);
    color: var(--murekkep);
    font: 16px/1.6 var(--sans);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}
a { color: var(--bordo); text-decoration: none; }
a:hover { text-decoration: underline; text-underline-offset: 3px; }
h1, h2, h3 { font-family: var(--serif); font-weight: 600; line-height: 1.15; margin: 0 0 .5em; letter-spacing: .005em; }
h1 { font-size: clamp(2rem, 4.5vw, 2.9rem); }
h2 { font-size: 1.75rem; }
h3 { font-size: 1.3rem; }
p { margin: 0 0 1em; }
img, svg { max-width: 100%; }
code { font-size: .85em; background: var(--kagit-2); padding: .1em .4em; border-radius: 4px; word-break: break-all; }
kbd { font: 600 .78em var(--sans); border: 1px solid var(--cizgi); border-bottom-width: 2px; border-radius: 4px; padding: .05em .4em; background: var(--kart); }

.kap { width: 100%; max-width: 1120px; margin: 0 auto; padding: 0 20px; }
.ana { flex: 1; padding-top: 32px; padding-bottom: 64px; }
.soluk { color: var(--soluk); }
.kucuk { font-size: .875rem; }
.sag { text-align: right; white-space: nowrap; }
.ust-bosluk { margin-top: 12px; }
.ust-baslik { text-transform: uppercase; letter-spacing: .14em; font-size: .72rem; font-weight: 600; color: var(--soluk); margin-bottom: .4em; }
.ust-baslik a { color: inherit; }
.giris { font-size: 1.1rem; color: var(--soluk); max-width: 38em; }

/* ===== Üst menü ===== */
.ust { border-bottom: 1px solid var(--cizgi); background: color-mix(in srgb, var(--kagit) 88%, transparent); backdrop-filter: blur(8px); position: sticky; top: 0; z-index: 20; }
.ust-ic { display: flex; align-items: center; gap: 24px; height: 64px; }
.logo { display: flex; align-items: center; gap: 10px; color: var(--murekkep); font: 700 1.6rem var(--serif); }
.logo:hover { text-decoration: none; }
.logo svg { width: 30px; height: 30px; color: var(--bordo); }
.menu { display: flex; align-items: center; gap: 18px; margin-left: auto; font-size: .92rem; white-space: nowrap; }
.menu a:not(.dugme) { color: var(--murekkep); }
.profil-link { max-width: 160px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.menu-ac, .menu-dugme { display: none; }
.satir-ici { display: inline; margin: 0; }
.link-dugme { background: none; border: 0; padding: 0; font: inherit; color: var(--soluk); cursor: pointer; }
.link-dugme:hover { color: var(--bordo); }
.link-dugme.tehlike { color: var(--bordo); }

@media (max-width: 1100px) {
    .menu-dugme { display: block; margin-left: auto; width: 40px; height: 40px; cursor: pointer; position: relative; }
    .menu-dugme span, .menu-dugme span::before, .menu-dugme span::after { position: absolute; left: 9px; right: 9px; height: 1.5px; background: var(--murekkep); content: ""; }
    .menu-dugme span { top: 19px; }
    .menu-dugme span::before { top: -7px; left: 0; right: 0; }
    .menu-dugme span::after { top: 7px; left: 0; right: 0; }
    .menu { display: none; position: absolute; top: 64px; left: 0; right: 0; background: var(--kagit); border-bottom: 1px solid var(--cizgi); flex-direction: column; align-items: stretch; gap: 0; padding: 8px 20px 16px; }
    .menu > * { padding: 10px 0; border-bottom: 1px solid var(--cizgi); }
    .menu .dugme { margin-top: 8px; text-align: center; }
    .menu-ac:checked ~ .menu { display: flex; }
}

/* ===== Düğmeler ===== */
.dugme {
    display: inline-flex; align-items: center; justify-content: center; gap: 6px;
    background: var(--bordo); color: #fff; border: 1px solid var(--bordo);
    padding: 10px 20px; border-radius: 999px; font: 600 .93rem var(--sans);
    cursor: pointer; transition: background .15s, transform .05s; text-decoration: none !important;
}
@media (prefers-color-scheme: dark) { .dugme { color: #12161f; } }
.dugme:hover { background: var(--bordo-koyu); }
.dugme:active { transform: translateY(1px); }
.dugme:disabled { opacity: .55; cursor: wait; }
.dugme-kucuk { padding: 6px 14px; font-size: .85rem; }
.dugme-cizgi { background: transparent; color: var(--bordo); }
.dugme-cizgi:hover { background: var(--bordo-acik); }
.dugme.tehlike { border-color: var(--bordo); }
.genis { width: 100%; }

/* ===== Uyarılar ===== */
.uyari { padding: 12px 16px; border-radius: var(--yaricap); margin-bottom: 20px; border: 1px solid; }
.uyari-bilgi { background: color-mix(in srgb, var(--yesil) 9%, var(--kagit)); border-color: color-mix(in srgb, var(--yesil) 30%, transparent); }
.uyari-hata { background: var(--bordo-acik); border-color: color-mix(in srgb, var(--bordo) 35%, transparent); }
.form-hata ul { margin: 0 0 16px; padding: 12px 16px 12px 32px; background: var(--bordo-acik); border-radius: var(--yaricap); color: var(--bordo); }
.form-hata.validation-summary-valid { display: none; }
.alan-hata { color: var(--bordo); font-size: .82rem; }

/* ===== Formlar ===== */
.form-kart { background: var(--kart); border: 1px solid var(--cizgi); border-radius: 14px; padding: clamp(20px, 4vw, 40px); max-width: 760px; margin: 0 auto; box-shadow: var(--golge); }
.form-kart.dar { max-width: 460px; }
.form-kart.duz { margin: 0; box-shadow: none; }
.form-alt { margin-top: 20px; text-align: center; font-size: .9rem; color: var(--soluk); }
fieldset { border: 0; border-top: 1px solid var(--cizgi); margin: 24px 0 8px; padding: 16px 0 0; }
legend { font: 600 1.15rem var(--serif); padding-right: 12px; }
.alan { display: block; margin-bottom: 14px; }
.alan > span:first-child { display: block; font-size: .84rem; font-weight: 500; margin-bottom: 5px; }
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]), select, textarea {
    width: 100%; padding: 10px 12px; font: inherit; font-size: .95rem; color: var(--murekkep);
    background: var(--kagit); border: 1px solid var(--cizgi); border-radius: 8px; transition: border-color .15s, box-shadow .15s;
}
input:focus, select:focus, textarea:focus { outline: none; border-color: var(--bordo); box-shadow: 0 0 0 3px var(--dongu-dolgu); }
input[type=file] { font-size: .88rem; width: 100%; padding: 10px; border: 1px dashed var(--cizgi); border-radius: 8px; background: var(--kagit); }
.kod-girdi { text-transform: uppercase; letter-spacing: .15em; font-weight: 600; }
.onay { display: flex; align-items: flex-start; gap: 10px; margin: 10px 0; font-size: .9rem; cursor: pointer; }
.onay input { margin-top: 4px; accent-color: var(--bordo); width: 16px; height: 16px; flex: none; }
.iki-kolon { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
.uc-alan { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 0 16px; }
.genis-bosluk { gap: 24px; align-items: start; }
.satir-form { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.satir-form input { flex: 1; min-width: 160px; }
.form-dugmeler { display: flex; gap: 12px; margin-top: 24px; }
@media (max-width: 640px) { .iki-kolon, .uc-alan { grid-template-columns: 1fr; } }

.dalga-onizleme { margin: -4px 0 14px; padding: 10px; background: var(--kagit-2); border-radius: 8px; }
.dalga-onizleme canvas { width: 100%; height: 60px; display: block; }
.yukleme-ilerleme { margin-top: 16px; }
.ilerleme-cubuk { height: 6px; background: var(--kagit-2); border-radius: 3px; overflow: hidden; margin-bottom: 6px; }
.ilerleme-cubuk span { display: block; height: 100%; width: 0; background: var(--bordo); transition: width .2s; }

/* ===== Ana sayfa ===== */
.kahraman { display: grid; grid-template-columns: 1.2fr 1fr; gap: 40px; align-items: center; padding: 24px 0 56px; border-bottom: 1px solid var(--cizgi); }
.kahraman h1 { font-size: clamp(2.4rem, 6vw, 3.8rem); margin-bottom: .35em; }
.kahraman-gorsel { color: var(--murekkep); }
.arama-kutusu { display: flex; gap: 8px; margin: 24px 0 10px; max-width: 520px; }
.arama-kutusu input { border-radius: 999px !important; padding-left: 18px !important; }
.uc-kolon { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; padding: 40px 0; border-bottom: 1px solid var(--cizgi); margin-bottom: 40px; }
.uc-kolon p { color: var(--soluk); margin: 0; }
.cagri { display: flex; justify-content: space-between; align-items: center; gap: 24px; margin-top: 56px; padding: 32px; background: var(--kagit-2); border-radius: 14px; }
.cagri p { margin: 0; color: var(--soluk); }
@media (max-width: 760px) {
    .kahraman { grid-template-columns: 1fr; padding-bottom: 32px; }
    .kahraman-gorsel { display: none; }
    .uc-kolon { grid-template-columns: 1fr; gap: 20px; }
    .cagri { flex-direction: column; align-items: flex-start; }
}

/* ===== Sayfa başlıkları, kartlar, tablolar ===== */
.sayfa-baslik { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; margin-bottom: 24px; }
.sayfa-baslik h1 { margin-bottom: 0; }
.bolum-baslik { display: flex; justify-content: space-between; align-items: baseline; margin: 32px 0 12px; }
.bolum-baslik h2 { margin: 0; }
.kart-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; margin-bottom: 32px; }
.kart { background: var(--kart); border: 1px solid var(--cizgi); border-radius: var(--yaricap); padding: 20px; box-shadow: var(--golge); }
.kurum-kart { color: var(--murekkep); display: block; transition: border-color .15s; }
.kurum-kart:hover { border-color: var(--bordo); text-decoration: none; }
.kod-goster { font: 700 1.6rem/1 ui-monospace, Consolas, monospace; letter-spacing: .14em; color: var(--bordo); margin: 8px 0 12px; }
.kopyala { cursor: pointer; }
.kopyala.kopyalandi { background: var(--dongu-dolgu); }
.buyuk-sayi { font: 600 2.6rem/1 var(--serif); margin: 8px 0; }
.buyuk-sayi span { font-size: 1rem; color: var(--soluk); font-family: var(--sans); }
.tablo-kap { overflow-x: auto; border: 1px solid var(--cizgi); border-radius: var(--yaricap); background: var(--kart); margin-bottom: 24px; }
.tablo { width: 100%; border-collapse: collapse; font-size: .92rem; }
.tablo th { text-align: left; font-weight: 600; font-size: .78rem; text-transform: uppercase; letter-spacing: .06em; color: var(--soluk); padding: 12px 14px; border-bottom: 1px solid var(--cizgi); white-space: nowrap; }
.tablo td { padding: 12px 14px; border-bottom: 1px solid var(--cizgi); vertical-align: top; }
.tablo tr:last-child td { border-bottom: 0; }
.tablo td .satir-ici { margin-left: 12px; }
.bilgi-liste { display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; margin: 0 0 20px; }
.bilgi-liste dt { color: var(--soluk); font-size: .88rem; }
.bilgi-liste dd { margin: 0; }
.sade-liste { list-style: none; padding: 0; margin: 0 0 16px; }
.sade-liste li { padding: 6px 0; border-bottom: 1px solid var(--cizgi); }
.rozet { display: inline-block; padding: 3px 10px; border-radius: 999px; font-size: .75rem; font-weight: 600; letter-spacing: .03em; border: 1px solid; }
.rozet-beklemede { color: var(--sari); border-color: color-mix(in srgb, var(--sari) 40%, transparent); }
.rozet-onayli, .rozet-incelendi { color: var(--yesil); border-color: color-mix(in srgb, var(--yesil) 40%, transparent); }
.rozet-gonderildi { color: var(--sari); border-color: color-mix(in srgb, var(--sari) 40%, transparent); }
.rozet-taslak { color: var(--soluk); border-color: color-mix(in srgb, currentColor 40%, transparent); border-style: dashed; }
.rozet-reddedildi, .rozet-askida { color: var(--bordo); border-color: color-mix(in srgb, var(--bordo) 40%, transparent); }
.sekmeler { display: flex; gap: 4px; border-bottom: 1px solid var(--cizgi); margin-bottom: 20px; overflow-x: auto; }
.sekmeler a { padding: 10px 14px; color: var(--soluk); border-bottom: 2px solid transparent; white-space: nowrap; }
.sekmeler a.aktif { color: var(--murekkep); border-bottom-color: var(--bordo); }
.sekmeler a:hover { text-decoration: none; color: var(--murekkep); }
.sayac { font-size: .75rem; background: var(--kagit-2); padding: 1px 7px; border-radius: 999px; margin-left: 4px; }
.bos-durum { text-align: center; padding: 56px 20px; color: var(--soluk); }
.bos-durum h1, .bos-durum h3 { color: var(--murekkep); }
.metin-sayfa { max-width: 720px; margin: 0 auto; }
.sayfalama { display: flex; justify-content: center; gap: 20px; margin-top: 24px; }

/* ===== Parça listesi ===== */
.filtre { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr auto; gap: 8px; margin-bottom: 12px; }
@media (max-width: 860px) { .filtre { grid-template-columns: 1fr 1fr; } .filtre-arama { grid-column: 1 / -1; } }
.parca-liste { border-top: 1px solid var(--cizgi); }
.parca-satir { display: grid; grid-template-columns: 44px 1fr auto; gap: 16px; align-items: center; padding: 14px 8px; border-bottom: 1px solid var(--cizgi); color: var(--murekkep); transition: background .12s; }
.parca-satir:hover { background: var(--kagit-2); text-decoration: none; }
.oynat-ikon { width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--cizgi); display: grid; place-items: center; color: var(--bordo); background: var(--kart); }
.oynat-ikon svg { width: 18px; height: 18px; margin-left: 2px; }
.parca-satir:hover .oynat-ikon { background: var(--bordo); color: var(--kart); border-color: var(--bordo); }
.parca-bilgi { min-width: 0; }
.parca-baslik { display: block; font: 600 1.18rem/1.3 var(--serif); }
.parca-alt { display: block; font-size: .87rem; color: var(--soluk); }
.parca-meta { text-align: right; font-size: .82rem; }
.parca-meta > span { display: block; }
.kurum-etiket { font-weight: 500; }
@media (max-width: 640px) { .parca-satir { grid-template-columns: 40px 1fr; } .parca-meta { grid-column: 2; text-align: left; } .parca-meta > span { display: inline; margin-right: 8px; } }

/* ===== Çalar ===== */
.calar-sayfa { max-width: 920px; margin: 0 auto; }
.calar-baslik { margin-bottom: 20px; }
.calar-baslik h1 { margin-bottom: .1em; }
.calar-baslik .bolum { font: italic 500 1.35rem var(--serif); margin-bottom: .4em; }
.etiketler { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.etiket { display: inline-block; padding: 3px 10px; border-radius: 999px; background: var(--kagit-2); font-size: .8rem; color: var(--murekkep); }
.etiket-vurgu { background: var(--bordo-acik); color: var(--bordo); }
.etiket-link:hover { background: var(--bordo-acik); text-decoration: none; }

.calar { background: var(--kart); border: 1px solid var(--cizgi); border-radius: 16px; padding: clamp(16px, 3vw, 28px); box-shadow: var(--golge); outline: none; }
.dalga-kap { position: relative; }
#dalga { width: 100%; height: 110px; display: block; cursor: pointer; touch-action: none; border-radius: 8px; }
.dalga-zaman { display: flex; justify-content: space-between; font: 500 .82rem var(--sans); font-variant-numeric: tabular-nums; color: var(--soluk); margin-top: 6px; }
.isaretler { display: flex; flex-wrap: wrap; gap: 6px; min-height: 8px; margin: 10px 0 6px; }
.isaret { display: inline-flex; border: 1px solid var(--cizgi); border-radius: 999px; overflow: hidden; background: var(--kagit); }
.isaret button { border: 0; background: none; padding: 4px 12px; font: 600 .82rem var(--sans); color: var(--murekkep); cursor: pointer; }
.isaret button:hover { background: var(--bordo-acik); color: var(--bordo); }
.isaret .isaret-sil { padding: 4px 8px 4px 2px; color: var(--soluk); }

.ana-kontroller { display: flex; justify-content: center; align-items: center; gap: clamp(8px, 3vw, 20px); margin: 18px 0 24px; }
.kontrol { width: 48px; height: 48px; border-radius: 50%; border: 1px solid var(--cizgi); background: var(--kagit); color: var(--murekkep); display: grid; place-items: center; cursor: pointer; transition: background .12s, border-color .12s; }
.kontrol:hover { border-color: var(--bordo); color: var(--bordo); }
.kontrol svg { width: 22px; height: 22px; }
.kontrol.oynat { width: 76px; height: 76px; background: var(--bordo); border-color: var(--bordo); color: var(--kart); position: relative; }
.kontrol.oynat:hover { background: var(--bordo-koyu); color: var(--kart); }
.kontrol.oynat svg { width: 32px; height: 32px; }
.kontrol.oynat .ikon-oynat { margin-left: 4px; }
.kontrol.oynat .ikon-durdur, .caliyor .kontrol.oynat .ikon-oynat { display: none; }
.caliyor .kontrol.oynat .ikon-durdur { display: block; }
.kontrol.oynat[data-sayim] svg { display: none !important; }
.kontrol.oynat[data-sayim]::after { content: attr(data-sayim); font: 700 2rem var(--serif); }

.panel-izgara { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
@media (max-width: 760px) { .panel-izgara { grid-template-columns: 1fr; } }
.panel { background: var(--kagit); border: 1px solid var(--cizgi); border-radius: 12px; padding: 14px 16px; }
.panel-baslik { display: flex; justify-content: space-between; align-items: baseline; }
.panel-baslik h3 { font-size: 1.15rem; margin: 0 0 8px; }
.panel-baslik output { font: 600 1.05rem var(--sans); font-variant-numeric: tabular-nums; }
.tempo-satir { display: flex; align-items: center; gap: 8px; }
.tempo-satir input { flex: 1; accent-color: var(--bordo); height: 28px; }
.kucuk-dugme { min-width: 38px; height: 38px; padding: 0 10px; border-radius: 8px; border: 1px solid var(--cizgi); background: var(--kart); color: var(--murekkep); font: 600 1rem var(--sans); cursor: pointer; }
.kucuk-dugme:hover { border-color: var(--bordo); color: var(--bordo); }
.kucuk-dugme.aktif { background: var(--bordo); border-color: var(--bordo); color: var(--kart); }
.kucuk-dugme:disabled { opacity: .45; cursor: not-allowed; }
.kucuk-dugme.genis { flex: 1; width: auto; }
.hazir-tempolar { display: grid; grid-template-columns: repeat(6, 1fr); gap: 4px; margin-top: 10px; }
.hazir-tempolar button { border: 1px solid var(--cizgi); background: var(--kart); border-radius: 6px; padding: 5px 0; font: 500 .76rem var(--sans); color: var(--soluk); cursor: pointer; }
.hazir-tempolar button.aktif { border-color: var(--bordo); color: var(--bordo); font-weight: 700; }
.dongu-dugmeler { display: flex; gap: 6px; margin-bottom: 4px; }
.yonetim-serit { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 20px; padding-top: 16px; border-top: 1px dashed var(--cizgi); }
.kisayollar { margin-top: 18px; font-size: .88rem; }
.kisayollar summary { cursor: pointer; color: var(--soluk); }
.kisayollar ul { padding-left: 18px; margin: 10px 0; line-height: 2; }
.not-kutusu { margin-top: 24px; padding: 18px 22px; border-left: 3px solid var(--bordo); background: var(--kagit-2); border-radius: 0 10px 10px 0; }
.not-kutusu h3 { font-size: 1.1rem; }
.not-kutusu p { margin: 0; white-space: pre-line; }

/* ===== Alt bilgi ===== */
.alt { border-top: 1px solid var(--cizgi); padding: 24px 0; font-size: .84rem; color: var(--soluk); }
.alt-ic { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.alt a { color: var(--soluk); }

/* ===== Faz 2: sınıflar, ödevler, kayıtlar ===== */
.satir-arasi { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.liste-kartlar { display: grid; gap: 12px; }
.liste-kartlar .kart p { margin: 4px 0 8px; }
.odev-kart { color: var(--murekkep); display: block; transition: border-color .15s; }
.odev-kart:hover { border-color: var(--bordo); text-decoration: none; }
.odev-kart h3 { margin: 6px 0 2px; }
.secim-listesi { max-height: 320px; overflow-y: auto; border: 1px solid var(--cizgi); border-radius: 8px; padding: 4px 12px; background: var(--kart); }
.secim-listesi .onay { margin: 8px 0; }
.acilir { position: relative; }
.acilir > summary { list-style: none; }
.acilir > summary::-webkit-details-marker { display: none; }
.acilir-icerik { position: absolute; right: 0; top: calc(100% + 8px); z-index: 10; width: min(340px, 90vw); background: var(--kart); border: 1px solid var(--cizgi); border-radius: var(--yaricap); padding: 16px; box-shadow: var(--golge); }
.sekmeler-satir { border-bottom: 0; margin: 0; }

.odev-serit { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 14px 18px; margin-bottom: 16px; border: 1px solid color-mix(in srgb, var(--bordo) 30%, transparent); background: var(--bordo-acik); border-radius: 12px; }
.odev-serit p { margin: 2px 0 0; }
@media (max-width: 640px) { .odev-serit { flex-direction: column; align-items: flex-start; } }

.kayit-paneli { margin-top: 20px; }
.kayit-paneli p { margin: 4px 0 12px; }
.kayit-dugmeler { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 8px; }
.mik-seviye { display: flex; align-items: center; gap: 10px; margin-top: 10px; }
.mik-cubuk { flex: 1; height: 8px; border-radius: 4px; background: var(--kagit-2); overflow: hidden; }
.mik-cubuk span { display: block; height: 100%; width: 0; background: var(--yesil); transition: width .08s linear; }
.mik-cubuk span.yuksek { background: var(--bordo); }
#mik-uyari { min-width: 9em; text-align: right; }
.taslak-paneli { margin-bottom: 20px; border-style: dashed; }
.kayit-nokta { width: 10px; height: 10px; border-radius: 50%; background: currentColor; display: inline-block; }
#kayit-ses { width: 100%; margin: 4px 0 8px; }
#kayit-not { margin-bottom: 4px; }
.kayitta { border-color: var(--bordo); box-shadow: 0 0 0 3px var(--dongu-dolgu); }
.kayitta #kayit-durum { color: var(--bordo); font-weight: 600; }
.cevrimdisi-serit { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 16px; }

.kayit-ilerleme input[type=range] { width: 100%; accent-color: var(--bordo); }
#kayit-calar .panel { margin-top: 8px; }
.yorumlar { max-width: 920px; margin: 32px auto 0; }
.yorum-listesi { list-style: none; padding: 0; margin: 0 0 20px; }
.yorum { padding: 12px 16px; border: 1px solid var(--cizgi); border-radius: var(--yaricap); background: var(--kart); margin-bottom: 10px; }
.yorum-ogrenci { background: var(--kagit-2); }
.yorum p { margin: 6px 0 0; white-space: pre-line; }
.yorum-ust { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.zaman-damga { border: 1px solid var(--bordo); color: var(--bordo); background: var(--bordo-acik); border-radius: 999px; padding: 1px 10px; font: 600 .8rem var(--sans); font-variant-numeric: tabular-nums; cursor: pointer; }
.zaman-damga:hover { background: var(--bordo); color: var(--kart); }
.yorum-formu textarea { margin-top: 6px; }

/* ===== Faz 3: akort/ton, istatistik ===== */
.perde-paneli { margin-top: 16px; }
.perde-satirlar { display: grid; grid-template-columns: auto 1fr; gap: 10px 16px; align-items: center; margin: 4px 0 8px; }
.perde-satirlar select { max-width: 200px; padding: 6px 10px !important; }
.ton-satir { display: flex; align-items: center; gap: 10px; }
.ton-satir output { min-width: 28px; text-align: center; font: 600 1.05rem var(--sans); font-variant-numeric: tabular-nums; }
output.vurgulu { color: var(--bordo); }
.istatistik-ozet { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; margin-bottom: 28px; }
.istatistik-ozet .kart p { margin: 0; }
.gun-grafik { display: flex; align-items: flex-end; gap: 3px; height: 140px; padding: 12px 0 0; border-bottom: 1px solid var(--cizgi); }
.gun-grafik span { flex: 1; background: var(--bordo); border-radius: 3px 3px 0 0; min-height: 2px; opacity: .85; }
.gun-grafik span.bos { background: var(--cizgi); }
.gun-etiket { display: flex; justify-content: space-between; font-size: .75rem; color: var(--soluk); margin: 4px 0 24px; }
.tempo-cubuk { position: relative; height: 8px; background: var(--kagit-2); border-radius: 4px; min-width: 120px; }
.tempo-cubuk span { position: absolute; left: 0; top: 0; bottom: 0; background: var(--bordo); border-radius: 4px; }
.tempo-cubuk i { position: absolute; top: -4px; bottom: -4px; width: 2px; background: var(--murekkep); }
.ogrenci-ilerleme { margin-top: 10px; }
.ogrenci-ilerleme summary { cursor: pointer; font-size: .85rem; color: var(--soluk); }
.ogrenci-ilerleme table { margin-top: 8px; }
.alt-bosluk { margin-bottom: 28px; }

/* ===== Güvenlik ===== */
.bal-kupu { position: absolute !important; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.kurtarma-kodlari { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 6px; margin-top: 10px; }
.kurtarma-kodlari code { font-size: .95rem; text-align: center; padding: 6px; }
.qr-kutu { width: 220px; max-width: 100%; margin: 12px 0 6px; background: #fff; padding: 6px; border-radius: 8px; }
.qr-kutu svg { width: 100%; height: auto; display: block; }
.adim-listesi { padding-left: 20px; }
.adim-listesi li { margin-bottom: 18px; }
.hata-yazi { color: var(--bordo); }
.giris-listesi li { align-items: flex-start; }
.bildirim-oneri { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; padding: 12px 16px; margin-bottom: 16px; border: 1px dashed var(--bordo); border-radius: 12px; background: var(--bordo-acik); }
.bildirim-oneri p { margin: 0; }
