/* Belgeye özgü yerleşim. Bütün seçiciler #main / #modal-body altında kapsamlıdır.
   Ortak header, footer, düğme, kart, dialog, gezinme ve form temeli yeniden tanımlanmaz. */

#main .source-note{color:#4e5f5d}
#main .section-block{margin:0 0 26px}

/* ---- Şiir ve koşuk blokları ---- */
#main .poem-frame{border:2px solid #7bc1b4;border-radius:14px;padding:22px 20px;background:#fff;margin:0 0 24px}
#main .poem-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
#main .poem h3{text-align:center;margin:0 0 16px;font-size:17px;letter-spacing:.14em}
#main .poem-frame>h3{text-align:center;margin:0 0 16px;font-size:17px;letter-spacing:.1em}
#main .poem p{line-height:1.85;margin:0 0 14px}
#main .poem-frame>p{line-height:1.9;margin:0 0 14px}
#main .poem-author{text-align:right;font-style:italic;margin:12px 0 0}
#main .centered{text-align:center}
#main .dortluk{margin:0 0 18px}
#main .dortluk:last-child{margin-bottom:0}
#main .dortluk h3{font-size:16px;text-align:center;margin:0 0 8px;letter-spacing:.12em}
#main .dortluk p{text-align:center;line-height:1.9;margin:0}

/* ---- Görseller ---- */
#main .figure-block{margin:0 0 22px}
#main .figure-block img{display:block;width:100%;max-width:640px;height:auto;border:0;margin:0 auto}
#main .figure-block figcaption{font-size:14px;color:#4e5f5d;margin-top:8px;text-align:center}
#main .kosma-figure{background:#fff;border:1px solid #dbe7e5;border-radius:10px;padding:14px}

/* ---- Kaynak tablo yapısı ---- */
#main .mark-table,#main .kosuk-table{width:100%;border-collapse:collapse;margin:0 0 12px}
#main .mark-table th,#main .kosuk-table th{background:#7bc1b1;color:#12312e;text-align:left;font-weight:700}
#main .mark-table th,#main .mark-table td,#main .kosuk-table th,#main .kosuk-table td{border:1px solid #b9c9c6;padding:10px 11px;vertical-align:middle}
#main .mark-table tbody tr:nth-child(odd),#main .kosuk-table tbody tr:nth-child(odd){background:#ecebed}
#main .mark-table td.mark-cell{text-align:center;width:17%}
#main .mark-table td.num-cell{width:44px;text-align:center;font-weight:700}
#main .mark-table .cell-label{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;cursor:pointer;margin:0}
#main .mark-table .cell-label input{width:22px;height:22px;accent-color:var(--rust);margin:0}
#main .kosuk-table td{line-height:1.65;font-size:16px}
#main .kosuk-table tr.gap-row td{border-left:1px solid #b9c9c6;border-right:1px solid #b9c9c6;background:#fff;height:14px;padding:0}
#main .kosuk-table tbody tr.gap-row:nth-child(odd){background:#fff}
#main .kosuk-table u{text-decoration-thickness:2px;text-underline-offset:3px}

#main .row-tools{margin-top:8px}
#main .row-tools .example-toggle{font-size:12px;padding:5px 10px;min-height:36px;margin-top:0}
#main .fb-row>td{background:#eef4f3!important;padding:0 11px 12px}
#main .fb-row .feedback{margin-top:0}
#main .dual-table td.mark-cell{width:15%}

/* ---- Çoklu seçim ve görsel seçim ---- */
#main .choice-list{display:grid;gap:9px;margin:0 0 16px}
#main .choice-list label{display:flex;gap:11px;align-items:flex-start;padding:11px 13px;border:1px solid #cfdedb;background:#fff;border-radius:5px;cursor:pointer;min-height:44px;line-height:1.45}
#main .choice-list label:has(input:checked){border-color:#6fb3ab;background:#eaf6f4}
#main .choice-list input{width:20px;height:20px;accent-color:var(--rust);flex-shrink:0;margin-top:2px}
#main .image-choice{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 16px}
#main .image-choice label{display:flex;flex-direction:column;gap:8px;padding:8px;border:1px solid #cfdedb;background:#fff;border-radius:6px;cursor:pointer}
#main .image-choice label:has(input:checked){border-color:#0d9c92;box-shadow:0 0 0 2px #0d9c9233}
#main .image-choice img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
#main .image-choice .pick{display:flex;align-items:center;gap:9px;font-weight:700}
#main .image-choice input{width:20px;height:20px;accent-color:var(--rust);margin:0}

/* ---- Doldurma alanları ---- */
#main .fill-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 18px}
#main .fill-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
#main .fill-field{display:flex;flex-direction:column;gap:6px;min-width:0}
#main .fill-field>span{font-weight:600;font-size:15px}
#main .fill-field input,#main .fill-field textarea{width:100%;border:1px solid #a9beb9;border-radius:5px;padding:10px 12px;background:#fffefa;color:var(--ink);min-height:46px}
#main .fill-field textarea{min-height:96px;line-height:1.6;resize:vertical}
#main .fill-note{font-size:13px;color:#4e5f5d;margin:0 0 14px}
#main .question-lede{font-size:19px;line-height:1.5;color:#221f1f;margin:0 0 18px}

/* ---- Eşleştirme ---- */
#main .match-block{margin:0 0 8px}
#main .match-block h3{font-size:16px;margin:0 0 8px;color:#12312e}
#main .match-block h3+*{margin-top:0}
#main .match-row{display:grid;grid-template-columns:1fr 110px;gap:12px;align-items:start;padding:12px 0;border-bottom:1px solid #dde7e5}
#main .match-row .verse{font-size:15px;line-height:1.5}
#main .match-row .verse strong{color:var(--rust)}
#main .match-row label{display:flex;flex-direction:column;gap:5px;font-size:14px;font-weight:600}
#main .match-row select{width:100%;border:1px solid #a9beb9;border-radius:5px;background:#fffefa;padding:9px;min-height:44px}
#main .functions{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:9px}
#main .functions li{display:grid;grid-template-columns:30px 1fr;gap:10px;background:#fff;border:1px solid #d5e3e1;border-left:4px solid #7bc1b1;padding:11px 13px;font-size:15px;line-height:1.5}
#main .functions b{color:var(--rust)}

/* ---- Geri bildirim ve bilgi kutuları ---- */
#main .answer-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:10px}
#main .locked-note{font-size:13px;color:#765f54}
#main .feedback[hidden]+.locked-note{display:none}
#main .feedback h4{margin:0 0 8px;color:#046b63;font-size:15px}
#main .feedback .fb-answer{font-weight:700;margin:0 0 10px}
#main .feedback .fb-section{margin:0 0 8px;color:#12312e}
#main .feedback .fb-title{margin:0 0 6px}
#main .feedback .fb-item{margin:0 0 10px}
#main .feedback .fb-item:last-child{margin-bottom:0}
#main .info-box{background:#f09032;color:#241d16;padding:20px 22px;border-radius:8px;margin:0 0 22px}
#main .info-box p:last-child{margin:0}

/* ---- Öğrendiklerim ---- */
#main .library-cards .card{min-height:120px}
#main .completion{margin:24px 0 0;padding:20px;background:var(--cream);border:1px solid #dfe8e6}
#main .completion-status{margin:0 0 12px}
#main .done-banner{background:#eaf5ec;border-left:5px solid #3c7b45;padding:16px 18px;margin-top:14px}

#main .visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(max-width:760px){
  #main .poem-grid{grid-template-columns:1fr;gap:24px}
  #main .image-choice{grid-template-columns:repeat(2,minmax(0,1fr))}
  #main .fill-grid,#main .fill-grid.three{grid-template-columns:1fr}
  #main .mark-table th,#main .mark-table td,#main .kosuk-table th,#main .kosuk-table td{padding:8px 7px;font-size:14px}
  #main .mark-table td.mark-cell{width:21%}
  #main .match-row{grid-template-columns:1fr}
}

/* ---- Modal içeriği ---- */
#modal-body .topic-detail ul{padding-left:22px;margin:0 0 12px}
#modal-body .topic-detail li{margin:0 0 7px;line-height:1.5}
#modal-body .topic-detail .info-box{background:#f09032;color:#241d16;padding:16px 18px;border-radius:8px;margin:0}
#modal-body .topic-detail p:last-child{margin-bottom:0}
