:root {
  --paper: #ECE6D8; --sheet: #FBF9F3; --ink: #161616; --muted: #5d5a54;
  --bordo: #7A1F2B; --sage: #3F5A4C; --kraft: #B8976A; --hi: rgba(240, 210, 60, .55);
  --head: "Oswald", "Arial Narrow", sans-serif; --doc: "Courier Prime", "Courier New", monospace;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 17px/1.6 Georgia, "Times New Roman", serif; }
a { color: var(--bordo); }
a:hover { text-decoration-thickness: 2px; }
img { max-width: 100%; height: auto; }

.top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 20px;
  padding: 12px 16px; background: var(--bordo); color: var(--sheet); border-bottom: 4px solid var(--ink); }
.brand { display: flex; align-items: center; gap: 10px; color: var(--sheet); text-decoration: none;
  font: 700 26px/1 var(--head); letter-spacing: .5px; }
.brand img { border-radius: 50%; background: var(--sheet); }
.top nav { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.top nav a { color: var(--sheet); font: 500 16px/1.2 var(--head); text-decoration: none; text-transform: uppercase; letter-spacing: .5px; }
.top nav a:hover { text-decoration: underline; }

main { max-width: 860px; margin: 0 auto; padding: 24px 16px 40px; }
h1, h2 { font-family: var(--head); font-weight: 700; line-height: 1.2; }
h1 { font-size: clamp(28px, 6vw, 42px); margin: .2em 0 .4em; }
h2 { font-size: 22px; margin: 1.6em 0 .4em; color: var(--bordo); text-transform: uppercase; letter-spacing: .3px; }

.hero { background: var(--sheet); border: 3px solid var(--ink); border-left: 12px solid var(--bordo); padding: 20px 22px; margin-bottom: 24px; }
.hero h1 { margin-top: 0; }

.dosya { background: var(--sheet); border: 3px solid var(--ink); padding: 22px; box-shadow: 8px 10px 0 rgba(0, 0, 0, .18); }
.crumb { font: 14px/1.4 var(--doc); color: var(--muted); margin: 0 0 8px; }
.crumb a { color: var(--muted); }
.stamp { display: inline-block; font: 700 14px/1 var(--doc); color: var(--bordo); border: 2px solid var(--bordo); padding: 6px 10px; transform: rotate(-1.5deg); margin: 4px 0 6px; }
.lead { font-size: 19px; background: linear-gradient(transparent 58%, var(--hi) 58%); display: inline; }
.player { max-width: 340px; margin: 22px auto 10px; aspect-ratio: 9 / 16; border: 3px solid var(--ink); background: #000; }
.player iframe { width: 100%; height: 100%; border: 0; display: block; }
.meta { font: 14px/1.5 var(--doc); color: var(--muted); text-align: center; }
.dosya section p { margin: .3em 0 0; }
.sources ul { padding-left: 20px; font: 14px/1.55 var(--doc); word-break: break-word; }
.sources li { margin: .35em 0; }
.transcript { margin-top: 24px; border-top: 2px dashed var(--kraft); padding-top: 12px; }
.transcript summary { cursor: pointer; font: 700 18px/1.3 var(--head); color: var(--sage); text-transform: uppercase; }
.transcript p { font-size: 16px; }
.warn { margin-top: 26px; background: #FFF4E0; border: 2px solid var(--ink); border-left: 10px solid var(--bordo); padding: 12px 16px; font-size: 15px; }

.more { margin-top: 34px; }
.grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 16px; }
.card { display: flex; flex-direction: column; background: var(--sheet); border: 3px solid var(--ink); text-decoration: none; color: var(--ink); }
.card img { aspect-ratio: 9 / 16; object-fit: cover; border-bottom: 3px solid var(--ink); }
.card .no { font: 700 12px/1 var(--doc); color: var(--bordo); padding: 8px 10px 0; }
.card .t { font: 500 16px/1.25 var(--head); padding: 4px 10px 10px; }
.card:hover { transform: translate(-2px, -2px); box-shadow: 4px 4px 0 var(--ink); }

footer { border-top: 4px solid var(--ink); background: var(--sage); color: var(--sheet); padding: 16px; font-size: 14px; text-align: center; }
footer a { color: var(--sheet); }

@media (max-width: 520px) {
  body { font-size: 16px; }
  .dosya { padding: 16px; box-shadow: none; }
  .brand { font-size: 22px; }
}

.player .play { position: relative; display: block; width: 100%; height: 100%; padding: 0; border: 0; cursor: pointer; background: #000; }
.player .play img { width: 100%; height: 100%; object-fit: cover; display: block; }
.player .btn { position: absolute; left: 50%; top: 80%; transform: translate(-50%, -50%); background: var(--bordo); color: var(--sheet);
  font: 700 22px/1 var(--head); padding: 14px 22px; border: 3px solid var(--sheet); box-shadow: 4px 4px 0 var(--ink); }
.player .play:hover .btn, .player .play:focus-visible .btn { background: var(--ink); }
.consent { font-size: 13px; color: var(--muted); text-align: center; margin: 0 0 8px; }

.notice { background: #FFF4E0; border-bottom: 3px solid var(--ink); padding: 10px 16px; font-size: 14px; line-height: 1.5; }
.notice strong { color: var(--bordo); }
.sheet { position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; max-height: 45vh; overflow-y: auto;
  background: var(--sheet); border-top: 6px solid var(--bordo); box-shadow: 0 -6px 18px rgba(0, 0, 0, .25);
  padding: 14px 16px 16px; font-size: 15px; }
.sheet[hidden] { display: none; }
.sheet p { margin: .4em auto; max-width: 820px; }
.sheet-title { font: 700 20px/1.2 var(--head); color: var(--bordo); text-transform: uppercase; }
.sheet button { display: block; margin: 10px auto 0; background: var(--bordo); color: var(--sheet); border: 3px solid var(--ink);
  font: 700 18px/1 var(--head); padding: 12px 22px; cursor: pointer; }
.sheet button:focus-visible { outline: 3px solid var(--kraft); outline-offset: 2px; }
@media (max-width: 520px) { .sheet { font-size: 14px; max-height: 50vh; padding: 10px 14px 12px; } .sheet-title { font-size: 18px; } .notice { font-size: 13px; } }

.dates { font: 14px/1.5 var(--doc); color: var(--muted); margin: 14px 0 4px; }
.how { font-size: 14px; color: var(--muted); border-left: 4px solid var(--sage); padding: 2px 0 2px 10px; margin: 6px 0 0; }
.sources ul.refs { margin: 4px 0 4px; }
.sources small { color: var(--muted); }

.contact { display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; margin: 12px 0; }
.contact dt { font: 700 15px/1.5 var(--head); text-transform: uppercase; color: var(--sage); }
.contact dd { margin: 0; }
@media (max-width: 520px) { .contact { grid-template-columns: 1fr; } .contact dd { margin-bottom: 8px; } }

/* site.json blocks (SEO content, legally audited) */
.short { border: 2px solid var(--ink, #161616); background: #fff; padding: 12px 16px; margin: 16px 0; }
.short h2 { margin-top: 0; }
.tablewrap { overflow-x: auto; }
table.sureler { border-collapse: collapse; width: 100%; font-size: 15px; }
table.sureler th, table.sureler td { border: 1px solid rgba(22,22,22,.25); padding: 6px 8px; text-align: left; vertical-align: top; }
table.sureler th { background: rgba(22,22,22,.06); }
ul.yanlis { padding-left: 18px; } ul.yanlis li { margin-bottom: 10px; } ul.yanlis p { margin: 2px 0; }
.qa h3 { font-size: 18px; margin: 16px 0 4px; }
.shortnote { font-size: 13px; color: var(--muted); margin: 6px 0 0; }
@media (max-width: 600px) {  /* durations table becomes stacked cards on phones: no hidden column */
  table.sureler thead { display: none; }
  table.sureler tr { display: block; border: 1px solid rgba(22,22,22,.25); margin-bottom: 10px; background: #fff; }
  table.sureler td { display: block; border: 0; border-bottom: 1px dashed rgba(22,22,22,.15); padding: 6px 10px; }
  table.sureler td:last-child { border-bottom: 0; }
  table.sureler td::before { content: attr(data-l); display: block; font-size: 12px; font-weight: 700; color: var(--muted); text-transform: uppercase; letter-spacing: .03em; }
}
.toc { font-size: 14px; line-height: 1.8; }
.introwarn { margin-top: 14px; font-size: 16px; }

/* 29.09: header strip, top notice and footer share the main column's left/right edge (860px column, 16px gutter) */
.top, footer { padding-left: max(16px, calc((100% - 860px) / 2 + 16px)); padding-right: max(16px, calc((100% - 860px) / 2 + 16px)); }
footer { text-align: left; }
footer p { margin: .4em 0; }
/* 29.09: top notice as a box like the page-bottom .warn box, inside the main column */
.notice { box-sizing: border-box; width: min(828px, calc(100% - 32px)); margin: 16px auto 0; padding: 12px 16px;
  background: #FFF4E0; border: 2px solid var(--ink); border-left: 10px solid var(--bordo); font-size: 15px; line-height: 1.55; }
@media (max-width: 520px) { .notice { font-size: 14px; } }
/* guide page: jump links + collapsible rule cards (29.09, readability) */
.jump { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 4px; }
.jump a { font: 500 15px/1 var(--head); text-transform: uppercase; letter-spacing: .4px; color: var(--bordo); background: var(--sheet);
  border: 2px solid var(--ink); padding: 8px 12px; text-decoration: none; }
.jump a:hover { background: #FFF4E0; }
details.rule { background: var(--sheet); border: 2px solid var(--ink); border-left: 8px solid var(--bordo); margin: 10px 0; }
details.rule summary { cursor: pointer; list-style: none; display: flex; gap: 12px; align-items: center; padding: 12px 14px;
  font: 700 18px/1.3 var(--head); }
details.rule summary::-webkit-details-marker { display: none; }
details.rule summary::after { content: "＋"; margin-left: auto; font-size: 20px; color: var(--bordo); }
details.rule[open] summary::after { content: "－"; }
details.rule .num { flex: none; width: 30px; height: 30px; border-radius: 50%; background: var(--bordo); color: var(--sheet);
  display: grid; place-items: center; font-size: 16px; }
details.rule p { margin: 0; padding: 0 16px 14px 56px; }
@media (max-width: 520px) { details.rule p { padding-left: 16px; } details.rule summary { font-size: 17px; } }
details.more summary { cursor: pointer; display: inline-block; font: 700 15px/1 var(--head); text-transform: uppercase; color: var(--sheet);
  background: var(--bordo); border: 2px solid var(--ink); padding: 10px 14px; margin-bottom: 10px; }
/* jump links: one row, five equal buttons filling the column (29.09) */
.jump { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; }
.jump a { display: flex; align-items: center; justify-content: center; text-align: center; padding: 10px 6px; line-height: 1.15; }
@media (max-width: 520px) { .jump { gap: 5px; } .jump a { font-size: 12px; padding: 8px 3px; letter-spacing: 0; } }
/* guide durations: per-file cards (29.09) */
details.rule.dur summary small { display: block; font: 500 13px/1.2 Georgia, serif; color: var(--muted); margin-top: 3px; text-transform: none; }
ul.durlist { list-style: none; margin: 0; padding: 0 14px 6px; }
ul.durlist li { display: grid; grid-template-columns: 112px 1fr; gap: 12px; padding: 10px 0; border-top: 1px dashed rgba(22,22,22,.2); }
ul.durlist .sure { font: 700 17px/1.2 var(--head); color: var(--bordo); background: #FFF4E0; border: 2px solid var(--ink); padding: 6px 8px; align-self: start; text-align: center; }
ul.durlist .dtext { display: flex; flex-direction: column; gap: 2px; font-size: 15px; line-height: 1.45; }
ul.durlist .ref { font: 13px/1.3 var(--doc, monospace); color: var(--sage); }
.durintro { margin: 0 0 6px; color: var(--muted); font-size: 15px; }
.durlink { margin: 4px 16px 14px; font-size: 15px; }
@media (max-width: 520px) { ul.durlist li { grid-template-columns: 1fr; gap: 6px; } ul.durlist .sure { justify-self: start; } }
/* sticky page navigation on the guide (29.09): phones = sticky strip, wide screens = fixed left rail */
html { scroll-behavior: smooth; }
[id] { scroll-margin-top: 70px; }
.jump { position: sticky; top: 0; z-index: 20; background: var(--paper); padding: 8px 0; grid-template-columns: repeat(5, 1fr) auto; }
.jump a.totop { padding: 8px 12px; font-size: 18px; }
@media (min-width: 1320px) {
  .jump { position: static; grid-template-columns: repeat(5, 1fr); } .jump a.totop { display: none; }
}
.jump a.totop svg { width: 18px; height: 18px; fill: var(--bordo); display: block; }
/* durations: period label on top (full text, no narrow column), details below (29.09) */
ul.durlist li { grid-template-columns: 1fr; gap: 6px; padding: 12px 0; }
ul.durlist .sure { justify-self: start; text-align: left; font-size: 16px; padding: 5px 10px; max-width: 100%; }
ul.durlist .dtext strong { font-size: 16px; }

/* ===== 29.09 unified look: section headings = folder tabs (same logic as the side menu) ===== */
main section > h2, main article > section > h2, main .more > h2, main .term-head > h2 { display: inline-flex; align-items: center; position: relative;
  margin: 38px 0 14px; padding: 8px 14px 8px 46px; background: var(--sheet) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 18'%3E%3Cpath d='M1 2h8l2 2.5h12V17H1z' fill='%23F4EFE4' stroke='%237A1F2B' stroke-width='1.6' stroke-linejoin='round'/%3E%3Cpath d='M4 8h9M4 11h7M4 14h5' fill='none' stroke='%237A1F2B' stroke-width='1.4'/%3E%3C/svg%3E") no-repeat 12px center / 24px 18px;
  border: 2px solid var(--ink); color: var(--bordo); font-size: 20px; line-height: 1.2; }
main section > h2::before, main article > section > h2::before, main .more > h2::before, main .term-head > h2::before { content: ""; position: absolute; top: -10px; left: -2px;
  width: 64px; height: 10px; background: var(--bordo); border: 2px solid var(--ink); border-bottom: 0; clip-path: polygon(0 0, 78% 0, 100% 100%, 0 100%); }
main section.short > h2 { display: block; margin: 0 0 6px; padding: 0; background: none; border: 0; }
main section.short > h2::before { display: none; }
details.rule summary h3 { margin: 0; font: inherit; }
details.rule.term summary { padding-left: 16px; }
details.rule.qa p, details.rule.term p { padding-left: 16px; }
@media (min-width: 521px) { details.rule.qa p { padding-left: 56px; } }

/* ===== 29.09 mobile pass: tap targets, tiny text, floating-button clearance ===== */
.top nav a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 2px; }
.sources small, main small { font-size: 13px; }
.contact dd a { display: inline-block; padding: 8px 0; }
.notice a { display: inline-block; padding: 4px 0; }
@media (max-width: 1319px) { body { padding-bottom: 76px; } }
@media (max-width: 360px) { .top nav { gap: 2px 14px; } .top nav a { font-size: 15px; } .brand { font-size: 23px; } }
/* 29.09: headings in black (user); bordo stays on folder icon + tab */
main section > h2, main article > section > h2, main .more > h2, main .term-head > h2 { color: var(--ink); }
/* dosya page: one "Dosya" section; Kısa cevap / Vaka / Kanun ne diyor? / İstisnalar / Ne yapabilirsiniz? are sub-headings (29.09) */
.dosya-body .part h3, .dosya-body .short h3 { font: 700 20px/1.25 var(--head); text-transform: uppercase; letter-spacing: .3px; color: var(--ink);
  margin: 26px 0 8px; padding-left: 10px; border-left: 6px solid var(--bordo); }
.dosya-body .short h3 { margin-top: 0; }
.dosya-body .short { margin-top: 6px; }
/* 29.09: the frame itself is the folder (tab joined to the body outline, no icon inside) — headings */
main section > h2, main article > section > h2, main .more > h2, main .term-head > h2 { padding: 8px 16px; background: var(--sheet); margin-top: 42px; }
main section > h2::before, main article > section > h2::before, main .more > h2::before, main .term-head > h2::before { top: -12px; left: -2px; width: 80px; height: 12px;
  border: 0; clip-path: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 12'%3E%3Cpath d='M0 12V0h60l10 10v2z' fill='%23FBF9F3'/%3E%3Cpath d='M1 12V1h59.6l10 10' fill='none' stroke='%23161616' stroke-width='2' stroke-linecap='square'/%3E%3C/svg%3E") no-repeat 0 0 / 80px 12px; }
main section.short > h2 { padding: 0; background: none; margin-top: 0; }
/* 29.09: heading text back to bordo (brand colour) now that the folder icon is gone; frame stays ink */
main section > h2, main article > section > h2, main .more > h2, main .term-head > h2 { color: var(--bordo); }
/* header dropdown (29.09): series name opens its guide + files */
.top nav { align-items: center; }
.top nav details.dd { position: relative; }
.top nav details.dd > summary { list-style: none; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 2px;
  color: var(--sheet); font: 500 16px/1.2 var(--head); text-transform: uppercase; letter-spacing: .5px; }
.top nav details.dd > summary::-webkit-details-marker { display: none; }
.top nav details.dd > summary::after { content: ""; width: 0; height: 0; border-left: 5px solid transparent; border-right: 5px solid transparent;
  border-top: 6px solid currentColor; transition: transform .15s; }
.top nav details.dd[open] > summary::after { transform: rotate(180deg); }
.top nav details.dd > summary:hover { text-decoration: underline; }
.dd-menu { position: absolute; top: 100%; left: 0; z-index: 70; width: 340px; max-width: calc(100vw - 24px); margin-top: 6px;
  background: var(--sheet); border: 2px solid var(--ink); box-shadow: 4px 4px 0 var(--ink); padding: 6px 0; display: flex; flex-direction: column; }
.top nav .dd-menu a { display: block; min-height: 0; color: var(--ink); font: 15px/1.35 Georgia, serif; text-transform: none; letter-spacing: 0;
  padding: 9px 14px; border-left: 4px solid transparent; }
.top nav .dd-menu a:hover { background: #FFF4E0; border-left-color: var(--bordo); text-decoration: none; }
.top nav .dd-menu a .no { display: block; font: 700 12px/1.2 var(--head); text-transform: uppercase; letter-spacing: .4px; color: var(--bordo); }
.top nav .dd-menu a.guide { font: 700 15px/1.2 var(--head); text-transform: uppercase; letter-spacing: .3px; color: var(--bordo);
  border-bottom: 1px dashed rgba(22,22,22,.25); margin-bottom: 4px; padding-bottom: 11px; }
@media (min-width: 700px) { .dd-menu { left: auto; right: -120px; } }
.top nav .dd-menu a[aria-current="page"] { background: #FFF4E0; border-left-color: var(--bordo); }
/* user 29.09: dropdown opens right-aligned under the arrow, a bit smaller */
.dd-menu { width: 280px; padding: 4px 0; }
.top nav .dd-menu a { font-size: 14px; padding: 7px 12px; }
.top nav .dd-menu a .no { font-size: 12px; }
.top nav .dd-menu a.guide { font-size: 14px; padding-bottom: 9px; }
@media (min-width: 700px) { .dd-menu { left: auto; right: 0; } }
/* footer with icons (user 29.09) */
footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 28px; padding-top: 20px; padding-bottom: 20px; }
footer .fbrand { display: inline-flex; align-items: center; gap: 10px; font: 700 20px/1 var(--head); letter-spacing: .4px; text-decoration: none; color: var(--sheet); }
footer .fbrand img { border-radius: 50%; background: var(--sheet); }
footer .flinks { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 20px; }
footer .flinks a { display: inline-flex; align-items: center; gap: 7px; min-height: 36px; color: var(--sheet); text-decoration: none;
  font: 500 15px/1.2 var(--head); text-transform: uppercase; letter-spacing: .4px; }
footer .flinks a:hover { text-decoration: underline; text-underline-offset: 3px; }
footer .flinks svg { width: 20px; height: 20px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; opacity: .95; }
@media (max-width: 520px) { footer .flinks { display: grid; grid-template-columns: 1fr 1fr; gap: 2px 14px; width: 100%; } }
footer .fbrand { display: block; margin: 0; font: 16px/1.4 Georgia, "Times New Roman", serif; letter-spacing: 0; }
/* 29.09 (user): make "click to open" obvious — labelled open/close pill on collapsible cards, action line on file cards */
details.rule summary::after { content: "Aç ＋"; flex: none; margin-left: auto; font: 700 13px/1 var(--head); text-transform: uppercase; letter-spacing: .4px;
  color: var(--bordo); border: 2px solid var(--bordo); padding: 6px 8px; background: var(--sheet); white-space: nowrap; }
details.rule[open] summary::after { content: "Kapat －"; color: var(--sheet); background: var(--bordo); }
details.rule summary:hover { background: #FFF4E0; }
details.rule summary:hover::after { background: var(--bordo); color: var(--sheet); }
.card .t { flex: 1; }
.card .go { font: 700 13px/1 var(--head); text-transform: uppercase; letter-spacing: .4px; color: var(--sheet); background: var(--bordo);
  padding: 8px 10px; border-top: 3px solid var(--ink); }
.card:hover .go { background: var(--ink); }
/* 30.09 (user): guide entry reads as a button; file list scrolls after ~6 items */
.top nav .dd-menu a.guide { display: block; margin: 4px 8px 6px; padding: 10px 12px; background: var(--bordo); color: var(--sheet);
  border: 2px solid var(--ink); border-left: 2px solid var(--ink); box-shadow: 3px 3px 0 var(--ink); text-transform: none; }
.top nav .dd-menu a.guide:hover, .top nav .dd-menu a.guide[aria-current="page"] { background: #5f1621; border-left-color: var(--ink); }
.top nav .dd-menu a.guide .g-t { display: block; font: 700 15px/1.2 var(--head); text-transform: uppercase; letter-spacing: .3px; }
.top nav .dd-menu a.guide .g-s { display: block; margin-top: 3px; font: 13px/1.3 Georgia, serif; opacity: .9; }
.dd-label { margin: 4px 12px 2px; font: 700 12px/1.2 var(--head); text-transform: uppercase; letter-spacing: .5px; color: var(--muted); }
.dd-list { max-height: 312px; overflow-y: auto; overscroll-behavior: contain; border-top: 1px dashed rgba(22,22,22,.25);
  background: linear-gradient(var(--sheet) 30%, rgba(251,249,243,0)) center top, linear-gradient(rgba(251,249,243,0), var(--sheet) 70%) center bottom,
    radial-gradient(farthest-side at 50% 100%, rgba(0,0,0,.18), transparent) center bottom;
  background-repeat: no-repeat; background-size: 100% 24px, 100% 24px, 100% 10px; background-attachment: local, local, scroll; }
@media (max-width: 699px) { .dd-list { max-height: 45vh; } }
/* 30.09 (user): video transcript lives on the player — corner button opens a scrollable panel over the video */
.player { position: relative; }
.player details.tr { position: absolute; inset: 0; pointer-events: none; }
.player details.tr > summary { pointer-events: auto; position: absolute; top: 8px; right: 8px; z-index: 3; list-style: none; cursor: pointer;
  font: 700 13px/1 var(--head); text-transform: uppercase; letter-spacing: .4px; color: var(--ink); background: var(--sheet);
  border: 2px solid var(--ink); box-shadow: 2px 2px 0 var(--ink); padding: 8px 10px; }
.player details.tr > summary::-webkit-details-marker { display: none; }
.player details.tr .tr-close, .player details.tr[open] .tr-open { display: none; }
.player details.tr[open] .tr-close { display: inline; }
.player details.tr[open] { pointer-events: auto; }
.player .tr-body { position: absolute; inset: 0; z-index: 2; overflow-y: auto; overscroll-behavior: contain; background: var(--sheet);
  padding: 52px 16px 16px; font-size: 15px; line-height: 1.55; }
.player .tr-body p { margin: 0 0 .7em; }
/* 30.09 v2 (user: button looked off + extra gap): guide = first row of the menu, full width, arrow on the right */
.dd-menu { padding: 0; }
.top nav .dd-menu a.guide { position: relative; margin: 0; padding: 12px 40px 12px 14px; background: #F3E6D6; color: var(--ink); box-shadow: none;
  border: 0; border-left: 4px solid var(--bordo); border-bottom: 2px solid var(--ink); }
.top nav .dd-menu a.guide::after { content: "›"; position: absolute; right: 14px; top: 50%; transform: translateY(-50%);
  font: 700 26px/1 var(--head); color: var(--bordo); transition: transform .15s; }
.top nav .dd-menu a.guide:hover, .top nav .dd-menu a.guide[aria-current="page"] { background: #FFF4E0; border-left-color: var(--bordo); }
.top nav .dd-menu a.guide:hover::after { transform: translate(3px, -50%); }
.top nav .dd-menu a.guide .g-t { color: var(--bordo); }
.top nav .dd-menu a.guide .g-s { color: var(--muted); opacity: 1; }
.dd-label { margin: 8px 14px 4px; }
/* ===== header menu v3 (30.09, user: "tasarımcı kafası") — split link + caret, numbered rows, footer link ===== */
.top nav .dd { position: relative; display: inline-flex; align-items: center; }
.top nav .dd-link { padding-right: 0; }
.top nav .dd-toggle { display: inline-flex; align-items: center; justify-content: center; width: 30px; min-height: 40px; margin-left: 2px; padding: 0;
  background: none; border: 0; cursor: pointer; color: var(--sheet); }
.top nav .dd-toggle::before { content: ""; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 6px solid currentColor; transition: transform .15s; }
.top nav .dd.open .dd-toggle::before { transform: rotate(180deg); }
.top nav .dd .dd-menu { display: none; flex-direction: column; position: absolute; top: 100%; right: 0; left: auto; z-index: 70; width: 320px;
  max-width: calc(100vw - 24px); margin-top: 8px; padding: 0; background: var(--sheet); border: 2px solid var(--ink); box-shadow: 5px 5px 0 var(--ink); }
.top nav .dd.open .dd-menu { display: flex; }
@media (hover: hover) and (min-width: 700px) {
  .top nav .dd:hover .dd-menu, .top nav .dd:focus-within .dd-menu { display: flex; }
  .top nav .dd .dd-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -10px; height: 10px; } /* hover bridge */
}
@media (max-width: 699px) { .top nav .dd .dd-menu { left: 0; right: auto; } }
.top nav .dd-list { max-height: 330px; overflow-y: auto; overscroll-behavior: contain; padding: 4px 0; border: 0; background: none; }
.top nav .dd-list a { display: grid; grid-template-columns: 46px 1fr; align-items: start; gap: 0; min-height: 0; padding: 9px 14px 9px 0;
  color: var(--ink); text-decoration: none; text-transform: none; letter-spacing: 0; border-left: 4px solid transparent; }
.top nav .dd-list a .no { font: 700 13px/1.5 var(--doc); color: var(--bordo); text-align: right; padding-right: 12px; }
.top nav .dd-list a .t { font: 15px/1.35 Georgia, serif; }
.top nav .dd-list a:hover { background: #FFF4E0; border-left-color: var(--bordo); text-decoration: none; }
.top nav .dd-list a[aria-current="page"] { background: #F3E6D6; border-left-color: var(--bordo); }
.top nav .dd-list a[aria-current="page"] .t { font-weight: 700; }
.top nav .dd-all { display: flex; justify-content: space-between; align-items: center; min-height: 0; padding: 12px 16px; border-top: 2px solid var(--ink);
  background: var(--bordo); color: var(--sheet); font: 700 15px/1 var(--head); text-transform: uppercase; letter-spacing: .4px; text-decoration: none; }
.top nav .dd-all:hover { background: var(--ink); text-decoration: none; }
.top nav .dd-all span { font-size: 18px; transition: transform .15s; }
.top nav .dd-all:hover span { transform: translateX(3px); }
@media (max-width: 699px) { .top nav .dd-list { max-height: 45vh; } }
.top nav .dd-menu a.dd-all { display: flex; justify-content: space-between; align-items: center; padding: 13px 16px; border-left: 0; border-top: 2px solid var(--ink);
  background: var(--bordo); color: var(--sheet); font: 700 15px/1 var(--head); text-transform: uppercase; letter-spacing: .5px; }
.top nav .dd-menu a.dd-all:hover { background: var(--ink); border-left: 0; }
/* ===== 30.09 UI/UX pass (site/audit/UIUX-inceleme-2026-09-30.md P1 1-3,5-8 · P2 9,10,12,13) ===== */
/* P1-1 first-visit sheet: button always reachable */
.sheet { padding-bottom: 0; }
.sheet-actions { position: sticky; bottom: 0; padding: 14px 0 12px; background: linear-gradient(rgba(251,249,243,0), var(--sheet) 35%); }
/* P1-2 phone header: two rows (YouTube stays in the footer) */
@media (max-width: 520px) { .top nav a[href*="youtube"] { display: none; } .top { padding-top: 8px; padding-bottom: 6px; row-gap: 2px; } }
/* P1-3 dosya head on phones: content sooner */
@media (max-width: 520px) { .dosya .lead { font-size: 16px; background: none; display: block; } }
.dosya-body > h2 { margin-top: 18px; }
/* P1-5 hero jump links */
.hero-jumps { display: flex; flex-wrap: wrap; gap: 10px; margin: 14px 0 0; }
.hero-jumps a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 14px; background: var(--sheet); border: 2px solid var(--ink);
  box-shadow: 3px 3px 0 var(--ink); color: var(--bordo); font: 700 15px/1.2 var(--head); text-transform: uppercase; letter-spacing: .3px; text-decoration: none; }
.hero-jumps a:hover { background: #FFF4E0; }
.hero-jumps:empty { display: none; }
/* P1-6 guide decision table: situation = card title, file = button */
#durum td[data-l="Dosya"] a { white-space: nowrap; }
@media (max-width: 640px) {
  #durum td[data-l="Durumunuz"]::before { display: none; }
  #durum td[data-l="Durumunuz"] { font: 700 17px/1.35 Georgia, serif; }
  #durum td[data-l="Dosya"] a { display: flex; justify-content: space-between; align-items: center; min-height: 44px; padding: 10px 12px; background: var(--bordo);
    color: var(--sheet); font: 700 15px/1 var(--head); text-transform: uppercase; text-decoration: none; border: 2px solid var(--ink); }
  #durum td[data-l="Dosya"] a::after { content: "→"; }
}
/* P1-7 dosya durations table: period as the badge used in the guide */
table.sureler td[data-l="Süre"] { font: 700 16px/1.25 var(--head); color: var(--bordo); }
@media (max-width: 640px) {
  table.sureler td[data-l="Durum"]::before { display: none; }
  table.sureler td[data-l="Durum"] { font: 700 16px/1.35 Georgia, serif; }
  table.sureler td[data-l="Süre"] { display: inline-block; background: #FFF4E0; border: 2px solid var(--ink); padding: 4px 10px; margin: 4px 0; }
  table.sureler td[data-l="Süre"]::before { display: none; }
}
/* P1-8 touch targets ≥ 44px */
.top nav .dd-toggle { width: 44px; min-height: 44px; }
.crumb a, .consent a { display: inline-block; padding: 10px 0; }
footer .flinks a { min-height: 44px; }
/* P2-9 focus rings */
:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }
.top :focus-visible, footer :focus-visible, .card .go:focus-visible, .dd-all:focus-visible { outline-color: var(--sheet); }
details.rule summary:focus-visible { outline-offset: -3px; }
/* P2-10 skip link; keyboard opens the menu only with the caret */
.skip { position: absolute; left: 8px; top: -60px; z-index: 100; background: var(--sheet); color: var(--ink); border: 2px solid var(--ink); padding: 10px 14px; font: 700 15px/1 var(--head); }
.skip:focus { top: 8px; }
@media (hover: hover) and (min-width: 700px) { .top nav .dd:focus-within:not(.open):not(:hover) .dd-menu { display: none; } .top nav .dd:hover .dd-menu { display: flex; } }
/* P2-12 line length */
@media (min-width: 900px) { .dosya-body p, .dosya-body li, .qa p, details.rule p { max-width: 68ch; } }
/* P2-13 short answer = the key card */
.short { border-left: 8px solid var(--bordo); background: var(--sheet); }
.short p { font-size: 18px; }
@media (max-width: 520px) { .dosya { padding: 14px 12px; } .short { padding: 10px 12px; } .short p { font-size: 17px; } }
/* ===== 30.09 dosya konsepti (user: "önerilen paket" H1 · H2 · O1 · O2 · O3 · O4 · G2 — G1 cover-opening animation deliberately NOT done) =====
   Rule: on kraft only ink-coloured text (ink/kraft 6.6:1; bordo/kraft and muted/kraft fail AA). Ornaments are pseudo-elements or aria-hidden. */
:root { --manila: #F1E4CC; --manila-hi: #F7EEDC; --paper-w: #FFFEFA;
  --kraft-tex: repeating-linear-gradient(135deg, rgba(0,0,0,.04) 0 2px, transparent 2px 7px); }

/* H1 · collapsible card = manila folder with a tab; opened = clipped white sheet slides out */
details.rule { position: relative; margin: 22px 0 10px; background: var(--manila); }
details.rule::before { content: ""; position: absolute; top: -12px; left: -8px; width: 86px; height: 12px; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 86 12'%3E%3Cpath d='M0 12V0h66l10 10v2z' fill='%23F1E4CC'/%3E%3Cpath d='M1 12V1h65.6l10 10' fill='none' stroke='%23161616' stroke-width='2' stroke-linecap='square'/%3E%3C/svg%3E") no-repeat 0 0 / 86px 12px; }
details.rule summary:hover { background: var(--manila-hi); }
details.rule > .paper { position: relative; margin: 0 14px 14px; padding: 22px 18px 14px; background: var(--paper-w);
  border: 1px solid rgba(22,22,22,.35); box-shadow: 3px 4px 0 rgba(22,22,22,.14); }
details.rule[open] > .paper { animation: paper-out .22s ease-out; }
details.rule > .paper::before { content: ""; position: absolute; top: -9px; right: 22px; width: 12px; height: 28px; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 34'%3E%3Cpath d='M4 8v17a3 3 0 0 0 6 0V5a4 4 0 0 0-8 0v21a5 5 0 0 0 10 0V10' fill='none' stroke='%235d5a54' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center / contain; }
details.rule > .paper p, details.rule.qa > .paper p, details.rule.term > .paper p { padding: 0; }
details.rule > .paper > p + p { margin-top: .6em; }
details.rule > .paper ul.durlist { padding: 0; }
details.rule > .paper ul.durlist li:first-child { border-top: 0; padding-top: 0; }
details.rule > .paper .durlink { margin: 8px 0 0; }
@keyframes paper-out { from { transform: translateY(-10px); opacity: 0; } to { transform: none; opacity: 1; } }
@media (max-width: 520px) {
  details.rule::before { width: 64px; background-size: 64px 12px; }
  details.rule > .paper { margin: 0 8px 10px; padding: 20px 12px 10px; }
}

/* H2 · dosya page head = kraft file cover: white label window (Nº + title), dates as form fields, series seal */
.cover { position: relative; margin: -22px -22px 18px; padding: 16px 22px 14px; border-bottom: 3px solid var(--ink);
  background: var(--kraft-tex), var(--kraft); color: var(--ink); }
.cover .crumb, .cover .crumb a { color: var(--ink); }
.cover .crumb { margin: 0 0 10px; }
.cover .crumb a { margin: -10px 0; }  /* keeps the 44px tap padding without growing the line */
.cover .label { position: relative; background: var(--sheet); border: 2px solid var(--ink); border-left: 10px solid var(--bordo);
  padding: 12px 16px 10px; box-shadow: 4px 4px 0 rgba(22,22,22,.25); }
.cover .label .stamp { margin: 0 0 6px; }
.cover .label h1 { margin: 0; }
.cover .dates { display: flex; flex-wrap: wrap; gap: 4px 18px; margin: 10px 0 0; font: 700 13px/1.4 var(--doc); color: var(--ink);
  text-transform: uppercase; letter-spacing: .3px; }
.cover .dates .sep { display: none; }
.cover .dates .f { border-bottom: 1px dashed rgba(22,22,22,.6); padding: 0 2px 1px; }
.cover .seal { position: absolute; right: 18px; bottom: -14px; transform: rotate(-6deg); font: 700 13px/1 var(--doc); letter-spacing: 1.5px;
  text-transform: uppercase; color: var(--bordo); border: 2px solid var(--bordo); padding: 5px 8px; background: rgba(251,249,243,.92); }
@media (max-width: 699px) { .cover .seal { display: none; } }
@media (max-width: 520px) {
  .cover { margin: -14px -12px 12px; padding: 8px 8px 10px; }
  .cover .crumb { font-size: 12px; margin: 0 0 6px; }
  .cover .label { padding: 8px 10px; border-left-width: 6px; box-shadow: 3px 3px 0 rgba(22,22,22,.25); }
  .cover .label .stamp { margin: 0 0 4px; font-size: 12px; padding: 4px 8px; }
  .cover .label h1 { font-size: 26px; }
  .cover .dates { margin-top: 6px; gap: 2px 10px; font-size: 12px; letter-spacing: 0; }
  .cover .dates .f { padding: 0; }
}

/* O2 · file lists = file-cabinet spines (Nº box · title · bordo arrow); whole row is the link */
.spines { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 14px; }
.spines li { display: flex; padding-top: 9px; }
.spine { position: relative; flex: 1; display: grid; grid-template-columns: 62px 1fr 48px; min-height: 64px; background: var(--sheet);
  border: 2px solid var(--ink); color: var(--ink); text-decoration: none; transition: transform .12s, box-shadow .12s; }
.spine::before { content: ""; position: absolute; top: -11px; left: 62px; width: 54px; height: 9px; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 54 9'%3E%3Cpath d='M0 9V0h38l8 8v1z' fill='%23FBF9F3'/%3E%3Cpath d='M1 9V1h37.6l8 8' fill='none' stroke='%23161616' stroke-width='2' stroke-linecap='square'/%3E%3C/svg%3E") no-repeat 0 0 / 54px 9px; }
.spine .no { display: grid; place-content: center; gap: 2px; text-align: center; background: var(--kraft-tex), var(--kraft);
  border-right: 3px solid var(--ink); font: 700 12px/1.1 var(--doc); color: var(--ink); }
.spine .no b { display: block; font-size: 14px; }
.spine .t { align-self: center; padding: 8px 12px; font: 500 16px/1.25 var(--head); }
.spine .go { display: grid; place-items: center; background: var(--bordo); color: var(--sheet); border-left: 2px solid var(--ink); font: 700 20px/1 var(--head); }
.spine:hover { transform: translateX(3px); box-shadow: -3px 0 0 var(--bordo); }
.spine:hover .go { background: var(--ink); }
@media (max-width: 699px) { .spines { grid-template-columns: 1fr; gap: 8px; } }
@media (max-width: 360px) { .spine { grid-template-columns: 54px 1fr 44px; } .spine::before { left: 54px; } .spine .t { padding: 8px 10px; font-size: 15px; } }

/* O4 · guide "Dosyalar" = cabinet drawer: label plate + spines inside a frame */
.drawer { padding: 14px 16px 18px; background: #DDD6C8; border: 3px solid var(--ink); box-shadow: 6px 6px 0 rgba(0,0,0,.18); }
.drawer-label { position: relative; display: table; margin: 0 auto 8px; padding: 7px 26px; font: 700 13px/1.2 var(--doc); letter-spacing: .6px;
  text-transform: uppercase; color: var(--ink); background: linear-gradient(#F6F3EC, #D9D3C6); border: 2px solid var(--ink); border-radius: 3px;
  box-shadow: inset 0 1px 0 #fff, 0 2px 0 rgba(22,22,22,.3); }
.drawer-label::before, .drawer-label::after { content: ""; position: absolute; top: 50%; width: 6px; height: 6px; margin-top: -3px; border-radius: 50%;
  background: #6b665c; box-shadow: inset 0 1px 0 rgba(255,255,255,.4); }
.drawer-label::before { left: 9px; } .drawer-label::after { right: 9px; }
@media (max-width: 520px) { .drawer { padding: 10px 8px 12px; box-shadow: none; } .drawer-label { font-size: 12px; padding: 6px 22px; } }

/* O3 · header dropdown rows speak the spine language; the current file is "pulled out" */
.top nav .dd-list { padding: 8px 0 4px 10px; }
.top nav .dd-list a { grid-template-columns: 50px 1fr; align-items: stretch; min-height: 44px; margin: 0 14px 6px 0; padding: 0;
  background: var(--sheet); border: 2px solid var(--ink); transition: transform .12s; }
.top nav .dd-list a .no { display: grid; place-items: center; padding: 0; text-align: center; font: 700 13px/1 var(--doc); color: var(--ink);
  background: var(--kraft-tex), var(--kraft); border-right: 2px solid var(--ink); }
.top nav .dd-list a .t { align-self: center; padding: 6px 10px; }
.top nav .dd-list a:hover { background: #FFF4E0; border-color: var(--ink); transform: translateX(4px); }
.top nav .dd-list a[aria-current="page"] { background: #F3E6D6; border-color: var(--ink); transform: translateX(10px); box-shadow: -4px 0 0 var(--bordo); }

/* G2 · "open the file": cross-document View Transition, spine/cover morph. No JS; unsupported browsers navigate normally. */
@view-transition { navigation: auto; }
::view-transition-group(*) { animation-duration: .25s; }
.spine, .cover { view-transition-name: var(--vt); }
.more .spine { view-transition-name: none; }  /* dosya page: only the clicked row pairs, so the previous cover never flies to a far-away row */
.more .spine:is(:hover, :focus-visible, :active) { view-transition-name: var(--vt); }

@media (prefers-reduced-motion: reduce) {
  @view-transition { navigation: none; }
  details.rule[open] > .paper { animation: none; }
  .spine, .top nav .dd-list a { transition: none; }
}

/* ===== 30.09 page index = "Dizin kartı" (user-approved; the only definition of the page menu — built by player.js) ===== One index card: kraft header, optional featured video row,
   numbered rows (numbers = EVRAK N on dosya pages) on a kraft margin, ruled lines, sub-items open in place,
   current section "pulled out" with a bordo edge (same language as the header dropdown, O3).
   Contrast: ink/kraft 6.6:1 · ink/sheet 17:1 · bordo/sheet 9.6:1 · sheet/bordo 9.6:1 · muted/sheet 6.5:1. */
.dizin { display: none; --dz-w: 210px; --dz-no: 30px; --dz-pull: 8px; }
.dz-card { display: flex; flex-direction: column; max-height: inherit; background: var(--sheet); border: 2px solid var(--ink);
  box-shadow: 5px 6px 0 rgba(0, 0, 0, .18); }

/* visually hidden helper (screen readers only) */
.dz-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

/* header label: kraft, ink text only */
.dz-head { display: flex; align-items: baseline; justify-content: space-between; gap: 4px 10px; flex-wrap: wrap; margin: 0;
  padding: 8px 10px 7px; background: var(--kraft-tex), var(--kraft); border-bottom: 2px solid var(--ink); color: var(--ink); }
.dz-head .dz-name { font: 700 13px/1.25 var(--doc); letter-spacing: .4px; text-transform: uppercase; }
.dz-head .dz-kind { font: 700 14px/1 var(--head); letter-spacing: 1.2px; text-transform: uppercase; }

/* featured video row (dosya pages only) */
.dz-video { display: grid; grid-template-columns: 22px 1fr auto; align-items: center; gap: 8px; min-height: 44px; padding: 8px 10px;
  background: var(--bordo); color: var(--sheet); border-bottom: 2px solid var(--ink); text-decoration: none; }
.dz-video .dz-play { display: grid; place-items: center; width: 22px; height: 22px; border: 2px solid var(--sheet); border-radius: 50%;
  font-size: 9px; line-height: 1; padding-left: 2px; }
.dz-video .dz-vt { font: 700 16px/1.1 var(--head); letter-spacing: .4px; text-transform: uppercase; }
.dz-video .dz-dur { font: 700 13px/1 var(--doc); letter-spacing: .3px; padding: 3px 5px; border: 1px solid rgba(251, 249, 243, .7); }
.dz-video:focus-visible { outline: 3px solid var(--sheet); outline-offset: -6px; }

/* rows: kraft margin with Courier numerals, ruled lines */
.dz-list, .dz-sub { list-style: none; margin: 0; padding: 0; }
.dz-list { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 0 var(--dz-pull) 0 0;
  background: linear-gradient(to right, transparent 0 var(--dz-no), var(--ink) var(--dz-no) calc(var(--dz-no) + 2px), transparent 0),
    var(--kraft-tex) 0 0 / var(--dz-no) 100% no-repeat, linear-gradient(var(--kraft), var(--kraft)) 0 0 / var(--dz-no) 100% no-repeat; }
.dz-row { border-bottom: 1px solid rgba(22, 22, 22, .16); }
.dz-row:last-child { border-bottom: 0; }
.dz-line { position: relative; display: flex; align-items: stretch; min-height: 38px; transition: transform .14s ease-out; }
.dz-link { flex: 1; display: grid; grid-template-columns: calc(var(--dz-no) + 2px) 1fr; align-items: center; color: var(--ink); text-decoration: none;
  font: 500 15px/1.2 var(--head); letter-spacing: .3px; text-transform: uppercase; }
.dz-link .dz-no { align-self: stretch; display: grid; place-items: center; font: 700 14px/1 var(--doc); color: var(--ink);
  background: var(--kraft-tex), var(--kraft); border-right: 2px solid var(--ink); }
.dz-link .dz-t { padding: 7px 8px 7px 9px; }
.dz-link:focus-visible, .dz-tog:focus-visible, .dz-sub a:focus-visible, .dz-up:focus-visible { outline: 3px solid var(--ink); outline-offset: -3px; }

/* sub-items toggle: count + ＋/－ (the site's "Aç ＋ / Kapat －" language, sized for the rail) */
.dz-tog { flex: none; align-self: center; display: inline-flex; align-items: center; gap: 3px; height: 26px; margin: 0 6px 0 2px; padding: 0 5px;
  background: var(--sheet); color: var(--bordo); border: 2px solid var(--bordo); cursor: pointer; font: 700 12px/1 var(--doc); }
.dz-tog .dz-pm { font: 700 14px/1 var(--head); }
.dz-tog[aria-expanded="true"] { background: var(--bordo); color: var(--sheet); }

/* a section outside this file (e.g. "diğer dosyalar"): no EVRAK number, set apart by a dashed rule */
.dz-row.dz-extra { border-top: 2px dashed rgba(22, 22, 22, .45); }

/* current section: pulled out, bordo edge (O3) */
.dz-row.is-active > .dz-line { transform: translateX(var(--dz-pull)); background: #F3E6D6; box-shadow: -5px 0 0 var(--bordo), inset 0 0 0 2px var(--ink); }
.dz-row.is-active > .dz-line .dz-link { color: var(--bordo); text-shadow: .5px 0 0 currentColor, -.3px 0 0 currentColor; }  /* faux bold: real 700 widens the title, it wraps and the rows below jump (dizin_click_check 18 px) */

/* sub-items: open in place, decimal numbering (3.2) */
.dz-sub { padding: 2px 0 6px; }
.dz-sub[hidden] { display: none; }
.dz-sub a { display: grid; grid-template-columns: calc(var(--dz-no) + 2px) 1fr; align-items: baseline; padding: 5px 8px 5px 0; min-height: 30px;
  color: var(--ink); text-decoration: none; font: 14px/1.3 Georgia, "Times New Roman", serif; }
.dz-sub a .dz-no { justify-self: center; font: 700 12px/1 var(--doc); color: var(--ink); }
.dz-sub a .dz-t { padding-left: 9px; border-left: 3px solid transparent; }
.dz-sub a[aria-current] .dz-t { border-left-color: var(--bordo); text-shadow: .5px 0 0 currentColor, -.3px 0 0 currentColor; }

/* footer: back to top */
.dz-up { display: flex; align-items: center; gap: 8px; min-height: 40px; padding: 6px 10px; border-top: 2px solid var(--ink); color: var(--ink);
  text-decoration: none; font: 500 14px/1 var(--head); letter-spacing: .3px; text-transform: uppercase; }
.dz-up svg { width: 18px; height: 18px; fill: var(--bordo); flex: none; }

/* list longer than the card: fade the last lines so "more below" is visible (data-more set by the script) */
.dz-list[data-more] { -webkit-mask-image: linear-gradient(#000 calc(100% - 28px), rgba(0,0,0,.15)); mask-image: linear-gradient(#000 calc(100% - 28px), rgba(0,0,0,.15)); }

/* hover only where a pointer can hover: no sticky highlight after a tap (audit #11) */
@media (hover: hover) {
  .dz-line:hover, .dz-sub a:hover, .dz-up:hover { background: #FFF4E0; }
  .dz-sub a:hover .dz-t { text-decoration: underline; }
  .dz-tog:hover { background: var(--bordo); color: var(--sheet); }
  .dz-fab > *:hover { background: #FFF4E0; }
  .dz-fab .dz-fab-video:hover, .dz-video:hover { background: var(--ink); color: var(--sheet); }
}

/* wide screens: fixed rail in the left gutter */
@media (min-width: 1320px) {
  .dizin { --dz-w: clamp(210px, calc((100vw - 860px) / 2 - 44px), 250px); display: block; position: fixed; z-index: 20; top: 88px; /* = top edge of the first box (warn) under the header */
    width: var(--dz-w); left: calc((100% - 860px) / 2 - var(--dz-w) - 22px); max-height: calc(100vh - 108px); }
  .dz-fab, .dz-scrim { display: none !important; }
}

/* phones / narrow windows: floating buttons + the same card as a bottom panel over a scrim */
.dz-fab { position: fixed; right: 14px; bottom: calc(14px + var(--foot-in, 0px)); z-index: 60; display: flex; gap: 8px; transition: opacity .15s, visibility .15s; }
/* first screen stays clear (audit #19): the buttons appear once the page is scrolled ~400px (player.js adds .on) */
.dz-fab:not(.on) { opacity: 0; visibility: hidden; pointer-events: none; }
.dz-fab > * { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 44px; min-height: 44px; padding: 0 12px;
  background: var(--sheet); color: var(--bordo); border: 2px solid var(--ink); box-shadow: 3px 3px 0 var(--ink); cursor: pointer; text-decoration: none;
  font: 500 15px/1 var(--head); letter-spacing: .3px; text-transform: uppercase; }
.dz-fab svg { width: 18px; height: 18px; fill: var(--bordo); flex: none; }
.dz-fab .dz-fab-video { background: var(--bordo); color: var(--sheet); font-weight: 700; }
.dz-fab .dz-fab-video .dz-play { font-size: 11px; }
.dz-fab .dz-fab-top { padding: 0; }
.dz-fab .dz-menu-btn .dz-bars { display: grid; gap: 3px; width: 16px; }
.dz-fab .dz-menu-btn .dz-bars i { display: block; height: 2px; background: var(--bordo); }
.dz-fab > *:focus-visible { outline: 3px solid var(--ink); outline-offset: 3px; }
.sheet:not([hidden]) ~ .dz-fab { display: none; }
.dz-scrim { position: fixed; inset: 0; z-index: 58; background: rgba(22, 22, 22, .5); }
.dz-scrim[hidden] { display: none; }
@media (max-width: 1319px) {
  .dizin.open { display: block; position: fixed; z-index: 59; left: 12px; right: 12px; bottom: 72px; max-width: 520px; margin: 0 auto;
    max-height: min(72vh, calc(100vh - 96px)); }
  .dizin.open .dz-card { box-shadow: 4px 4px 0 var(--ink); }
  .dizin.open .dz-up { display: none; }
  .dizin .dz-line, .dizin .dz-video { min-height: 48px; }
  .dizin .dz-tog { height: 44px; min-width: 44px; justify-content: center; margin: 2px 4px 2px 2px; }
  .dizin .dz-sub a { min-height: 44px; align-items: center; padding: 8px 8px 8px 0; }
}
@media (max-width: 520px) {
  .dz-fab { right: 10px; bottom: calc(10px + var(--foot-in, 0px)); gap: 6px; }
  .dz-fab > * { padding: 0 10px; font-size: 14px; box-shadow: 2px 2px 0 var(--ink); }
  .dz-fab .dz-fab-top { padding: 0; }
  .dizin.open { left: 8px; right: 8px; bottom: 66px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .dz-line, .dz-fab { transition: none; }
}

/* ===== 30.09 correction report link (dosya pages, end of Kaynaklar) ===== */
.report { margin: 18px 0 0; padding-top: 12px; border-top: 1px dashed rgba(22, 22, 22, .3); font-size: 15px; }
.report a { display: inline-block; padding: 10px 0; font-weight: 700; color: var(--bordo); }
.report span { color: var(--muted); font-size: 13px; }

/* ===== 30.09 glossary search (right of the "Terimler" heading, same line) ===== */
.term-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.term-head { margin-top: 42px; }
main .term-head > h2 { margin: 0; }  /* the heading's top margin moves to the row, so the search box centres on the heading */
.term-search { position: relative; margin-left: auto; flex: 0 1 240px; min-width: 0; }
.term-search svg { position: absolute; left: 12px; top: 50%; width: 18px; height: 18px; transform: translateY(-50%);
  fill: none; stroke: var(--bordo); stroke-width: 2.4; stroke-linecap: round; pointer-events: none; }
.term-search input { width: 100%; box-sizing: border-box; min-height: 44px; padding: 8px 12px 8px 38px; border: 2px solid var(--ink);
  background: var(--sheet); color: var(--ink); font: 16px/1.2 Georgia, serif; box-shadow: 3px 3px 0 var(--ink); border-radius: 0; }
.term-search input:focus-visible { outline: 3px solid var(--bordo); outline-offset: 2px; }
.term-empty { margin: 16px 0; color: var(--muted); font-style: italic; }
details.term[hidden] { display: none; }
@media (max-width: 520px) { .term-search { flex-basis: 170px; } .term-search input { padding-left: 34px; } .term-search svg { left: 10px; } }

/* ===== 01.10 site search: header magnifier + centred dialog ===== */
.top nav .srch-btn { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0;
  background: none; border: 0; color: inherit; cursor: pointer; }
.srch-btn svg, .srch-field svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; }
.top nav .srch-btn:hover svg { transform: scale(1.1); }
.srch[hidden] { display: none; }
.srch { position: fixed; inset: 0; z-index: 200; }
.srch-scrim { position: absolute; inset: 0; background: rgba(22, 22, 22, .55); }
.srch-panel { position: relative; display: flex; flex-direction: column; margin: 10vh auto 0; width: min(680px, calc(100vw - 24px));
  max-height: 78vh; background: var(--sheet); border: 2px solid var(--ink); box-shadow: 6px 6px 0 var(--ink); }
.srch-head { display: flex; justify-content: space-between; align-items: center; margin: 0; padding: 4px 4px 4px 14px;
  background: var(--kraft-tex), var(--kraft); border-bottom: 2px solid var(--ink); color: var(--ink);
  font: 700 14px/1 var(--head); letter-spacing: 1.2px; text-transform: uppercase; }
.srch-close { width: 44px; height: 44px; background: none; border: 0; color: var(--ink); font-size: 20px; cursor: pointer; }
.srch-field { position: relative; display: block; margin: 14px 14px 4px; }
.srch-field svg { position: absolute; left: 13px; top: 50%; transform: translateY(-50%); color: var(--bordo); pointer-events: none; }
.srch-field input { width: 100%; box-sizing: border-box; min-height: 52px; padding: 10px 12px 10px 46px; border: 2px solid var(--ink);
  border-radius: 0; background: #fff; color: var(--ink); font: 18px/1.2 Georgia, serif; }
.srch-field input:focus-visible { outline: 3px solid var(--bordo); outline-offset: 2px; }
.srch-status { min-height: 1em; margin: 6px 16px 8px; font: 12px/1.3 var(--doc); color: var(--muted); }
.srch-list { list-style: none; margin: 0; padding: 0 0 6px; overflow-y: auto; overscroll-behavior: contain; border-top: 1px dashed rgba(22, 22, 22, .3); }
.srch-list a { display: block; padding: 10px 16px; border-left: 5px solid transparent; border-bottom: 1px solid rgba(22, 22, 22, .12);
  color: var(--ink); text-decoration: none; }
.srch-list a:hover, .srch-list a.on, .srch-list a:focus-visible { background: #FFF4E0; border-left-color: var(--bordo); outline: none; }
.srch-c { display: block; font: 700 11px/1.3 var(--doc); letter-spacing: .4px; text-transform: uppercase; color: var(--muted); }
.srch-t { display: block; margin-top: 2px; font: 500 17px/1.25 var(--head); color: var(--bordo); }
.srch-s { display: block; margin-top: 3px; font: 14px/1.45 Georgia, serif; color: var(--ink); }
.srch mark { background: #F6E27A; color: inherit; padding: 0 1px; }
html.srch-on { overflow: hidden; }
@media (max-width: 520px) { .srch-panel { margin-top: 12px; max-height: calc(100vh - 24px); } }
/* phones: the magnifier sits on the brand row (right), so the header keeps two rows */
@media (max-width: 699px) {
  header.top { position: relative; }
  .top nav .srch-btn { position: absolute; top: 8px; right: 6px; }
  .top .brand { padding-right: 52px; }
}

/* ===== 01.10 16:9 long cut: full-width landscape player (vertical Shorts keep the 9:16 box) ===== */
.player.wide { max-width: none; width: 100%; aspect-ratio: 16 / 9; }
.player.wide .btn { top: 50%; }

/* ===== 01.10 "video yakında": old vertical hidden, 16:9 cut not public yet ===== */
.player-soon { margin: 22px 0 10px; padding: 22px 24px; border: 3px solid var(--ink); background: var(--kraft-tex), var(--kraft); text-align: center; }
.player-soon .ps-t { margin: 0; font: 700 26px/1.2 var(--head); letter-spacing: .4px; color: var(--ink); }
.player-soon .ps-d { margin: 6px 0 8px; font: 700 15px/1.3 var(--doc); color: var(--bordo); }
.player-soon p:last-child { margin: 0; font-size: 15px; }

/* ===== 03.10 (rev.) the reading column stays centred on the screen; the index card sits in the left gutter and the
   header spans symmetrically around the centre: brand = index card's left edge, search mirrors it on the right ===== */
@media (min-width: 1320px) {
  body { --dz-w: clamp(210px, calc((100vw - 828px) / 2 - 60px), 250px); --dz-r: calc(var(--dz-w) + 24px); }
  /* left edge = index card, right edge = reading column: nothing in the header/footer sticks out past the text */
  .top, footer { padding-left: max(8px, calc((100% - 828px) / 2 - var(--dz-r))); padding-right: calc((100% - 828px) / 2); }
  .dizin { --dz-w: clamp(210px, calc((100vw - 828px) / 2 - 60px), 250px); left: calc((100% - 828px) / 2 - var(--dz-w) - 24px); }
}

/* ===== 04.10 header YouTube icon + index card "one level up" link ===== */
.top nav .yt-link { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; }
.top nav .yt-link svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 2; }
.top nav .yt-link svg path { fill: currentColor; stroke: none; }
.top nav .yt-link:hover svg { transform: scale(1.08); }
.dz-back { display: flex; align-items: center; gap: 8px; min-height: 40px; padding: 6px 10px; border-top: 2px solid var(--ink); color: var(--bordo);
  text-decoration: none; font: 500 14px/1.2 var(--head); letter-spacing: .3px; text-transform: uppercase; }
.dz-back span { font-size: 16px; }
@media (hover: hover) { .dz-back:hover { background: #FFF4E0; } }
.dz-back:focus-visible { outline: 3px solid var(--ink); outline-offset: -3px; }
.dz-back + .dz-up { border-top-width: 1px; border-top-color: rgba(22, 22, 22, .2); }
@media (max-width: 520px) { .top nav a.yt-link { display: inline-flex; } }  /* icon is small enough to keep on phones now that "Yöntem" left the bar */
@media (max-width: 1319px) { .dizin .dz-back { min-height: 48px; } }  /* phone/narrow panel: touch target */
/* 04.10 footer on the same two columns as the page: brand under the index card, links spread across the reading column */
@media (min-width: 1320px) {
  footer { display: grid; grid-template-columns: var(--dz-w) 1fr; column-gap: 24px; align-items: center; }
  footer .flinks { justify-content: space-between; }
}

/* 04.10 footer brand → small copyright line */
footer .fbrand { font: 14px/1.4 Georgia, "Times New Roman", serif; letter-spacing: .2px; opacity: .85; }

/* /kira-artis-orani/ — calculator first, prominent (user 04.10) */
.kalc-wrap { margin-top: 8px; }
.kalc { border: 3px solid var(--ink); background: #fff; box-shadow: 6px 6px 0 var(--kraft); padding: 18px; margin: 12px 0 8px; display: grid; gap: 18px; }
@media (min-width: 760px) { .kalc { grid-template-columns: 1.1fr 1fr; align-items: start; } }
.kin { display: grid; gap: 14px; }
.kalc .kf label { display: block; font-family: var(--head); font-size: 1.05rem; letter-spacing: .02em; margin-bottom: 4px; }
.kalc input:not([type=checkbox]), .kalc select { width: 100%; min-height: 48px; font: inherit; font-size: 1.1rem; padding: 8px 12px; border: 2px solid var(--ink); background: var(--sheet); box-sizing: border-box; }
.kalc input:focus-visible, .kalc select:focus-visible { outline: 3px solid var(--hi); outline-offset: 2px; }
.kh { font-size: .88rem; color: var(--muted); margin: 4px 0 0; }
.konay { display: flex; gap: 10px; align-items: flex-start; font-size: .92rem; background: var(--sheet); border: 1px dashed var(--ink); padding: 10px; }
.konay input { width: 22px; height: 22px; flex: none; margin-top: 2px; accent-color: var(--bordo); }
.ksonuc { background: var(--manila, #F1E4CC); border: 2px solid var(--ink); padding: 16px; }
@media (min-width: 760px) { .ksonuc { position: sticky; top: 96px; } }
.ksonuc .kt { font-family: var(--head); margin: 0; text-transform: uppercase; letter-spacing: .04em; font-size: .9rem; }
.ksonuc .kv { font-family: var(--head); font-size: clamp(2.2rem, 7vw, 3rem); line-height: 1.1; color: var(--muted); margin: 6px 0; }
.ksonuc.ready .kv { color: var(--bordo); }
.ksonuc .km { font-size: 1rem; margin: 0 0 10px; }
.knot { margin-top: 10px; border-top: 1px dashed var(--ink); padding-top: 8px; }
.knot summary { cursor: pointer; font-family: var(--head); font-size: .95rem; color: var(--bordo); min-height: 32px; display: flex; align-items: center; }
.dosya details.rule .paper a { overflow-wrap: anywhere; }
/* month picker (kira.js) — replaces the native select popup */
.kdd { position: relative; }
.kalc select.kdd-native { position: absolute; width: 1px; height: 1px; min-height: 0; padding: 0; border: 0; opacity: 0; pointer-events: none; }
.kdd-btn { width: 100%; min-height: 48px; display: flex; align-items: center; gap: 10px; padding: 8px 40px 8px 12px; border: 2px solid var(--ink); background: var(--sheet); font: inherit; font-size: 1.1rem; text-align: left; cursor: pointer; position: relative; color: var(--ink); }
.kdd-btn::after { content: ""; position: absolute; right: 14px; top: 50%; width: 9px; height: 9px; border-right: 2.5px solid var(--bordo); border-bottom: 2.5px solid var(--bordo); transform: translateY(-70%) rotate(45deg); transition: transform .15s; }
.kdd.open .kdd-btn::after { transform: translateY(-30%) rotate(-135deg); }
.kdd-btn:focus-visible { outline: 3px solid var(--hi); outline-offset: 2px; }
.kdd-btn .ph { color: var(--muted); font-size: .98rem; }
.kdd-btn .r, .kdd-list .r { margin-left: auto; font-family: var(--doc); font-weight: 700; color: var(--bordo); }
.kdd-list { position: absolute; z-index: 30; left: 0; right: 0; top: calc(100% + 6px); max-height: min(360px, 60vh); overflow-y: auto; margin: 0; padding: 0 0 6px; list-style: none;
  background: var(--paper-w, #FFFEFA); border: 2px solid var(--ink); box-shadow: 6px 6px 0 var(--kraft); outline: none; overscroll-behavior: contain; }
.kdd-note { padding: 10px 12px; font-size: .85rem; color: var(--muted); border-bottom: 1px dashed var(--ink); background: var(--sheet); }
.kdd-year { position: sticky; top: 0; z-index: 1; padding: 4px 12px; font-family: var(--head); font-size: .85rem; letter-spacing: .08em; color: #fff; background: var(--bordo); }
.kdd-list [role="option"] { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 6px 12px; cursor: pointer; border-bottom: 1px solid rgba(0,0,0,.06); }
.kdd-list [role="option"] .m { font-family: var(--head); letter-spacing: .02em; }
.kdd-list [role="option"].active { background: var(--manila, #F1E4CC); }
.kdd-list [role="option"][aria-selected="true"] { box-shadow: inset 4px 0 0 var(--bordo); background: var(--manila-hi, #F7EEDC); }

/* ===== 05.10 Hakkı assistant (hakki.js; design SORU_KUTUSU_TASARIM.md). Header seal next to YouTube, own window. ===== */
  background: none; border: 0; cursor: pointer; }
.hk[hidden] { display: none; }
.hk { position: fixed; inset: 0; z-index: 210; }
.hk-scrim { position: absolute; inset: 0; background: rgba(22, 22, 22, .25); }
/* opens on the right where the side seal sits, full height (user 06.10; was centred 780×820) */
.hk-panel { position: absolute; top: 16px; bottom: 16px; right: 24px; display: flex; flex-direction: column;
  width: min(560px, calc(100vw - 48px)); background: var(--sheet); border: 2px solid var(--ink); box-shadow: 6px 6px 0 var(--ink);
  animation: hk-in .18s ease-out; }
@keyframes hk-in { from { transform: translateX(24px); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .hk-panel { animation: none; } }
.hk-head { display: flex; align-items: center; gap: 10px; padding: 8px 6px 8px 12px; background: var(--ink); color: var(--sheet); }
.hk-head img { width: 40px; height: 40px; flex: none; }
.hk-head p { margin: 0; flex: 1; line-height: 1.15; }
.hk-head span { display: block; font: 600 20px/1.1 var(--head); letter-spacing: .6px; text-transform: uppercase; }
.hk-head small { font: 12px/1.3 var(--doc); color: #d9d2c3; }
.hk-close { width: 44px; height: 44px; background: none; border: 0; color: var(--sheet); font-size: 20px; cursor: pointer; }
.hk-log { flex: 1; overflow-y: auto; overscroll-behavior: contain; padding: 14px 12px 6px; background: var(--paper); }
.hk-msg { margin: 0 0 12px; font: 15px/1.45 Georgia, serif; color: var(--ink); }
.hk-msg p { margin: 0 0 6px; }
.hk-user { margin-left: auto; max-width: 75%; width: fit-content; padding: 8px 12px; background: var(--ink); color: var(--sheet); border-radius: 12px 12px 2px 12px; }
.hk-user p { margin: 0; }
.hk-bot { display: flex; gap: 8px; align-items: flex-start; }
.hk-av img { width: 30px; height: 30px; }
.hk-body { flex: 1; min-width: 0; padding: 9px 12px; background: var(--sheet); border: 1.5px solid var(--ink); border-radius: 2px 12px 12px 12px; }
.hk-small { font-size: 13px; color: var(--muted); }
.hk-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.hk-chip { min-height: 36px; padding: 6px 10px; background: #F1E4CC; border: 1.5px solid var(--ink); border-radius: 18px;
  font: 13px/1.2 var(--doc); color: var(--ink); cursor: pointer; text-align: left; }
.hk-chip:hover { background: #FFF4E0; }
.hk-card { margin: 8px 0; padding: 8px 10px; background: #fff; border: 1px solid rgba(22, 22, 22, .35); border-left: 5px solid var(--bordo); }
.hk-c { margin: 0; font: 700 11px/1.3 var(--doc); letter-spacing: .4px; text-transform: uppercase; color: var(--muted); }
.hk-t { margin: 2px 0 4px; font: 500 17px/1.25 var(--head); color: var(--bordo); }
.hk-x { font-size: 14px; }
.hk-go { display: inline-block; margin-top: 6px; padding: 6px 0; font: 700 13px/1.2 var(--doc); color: var(--bordo); }
.hk-vote { margin: 4px 0 0; font: 12px/1.3 var(--doc); color: var(--muted); }
.hk-vote button { min-width: 36px; min-height: 32px; margin-left: 4px; background: none; border: 1px solid rgba(22, 22, 22, .3); cursor: pointer; }
.hk-ilet { min-height: 44px; padding: 8px 14px; background: var(--bordo); color: #fff; border: 2px solid var(--ink);
  font: 600 14px/1.2 var(--head); letter-spacing: .4px; text-transform: uppercase; cursor: pointer; }
.hk-form { display: flex; gap: 6px; padding: 10px 10px 4px; border-top: 2px solid var(--ink); background: var(--sheet); }
.hk-field { flex: 1; }
.hk-field input { width: 100%; box-sizing: border-box; min-height: 48px; padding: 10px 12px; border: 2px solid var(--ink); background: #fff;
  font: 16px/1.3 Georgia, serif; color: var(--ink); }
.hk-field input:focus-visible, .hk-send:focus-visible, .hk-chip:focus-visible { outline: 3px solid var(--bordo); outline-offset: 2px; }
.hk-send { width: 52px; min-height: 48px; background: var(--bordo); color: #fff; border: 2px solid var(--ink); font-size: 20px; cursor: pointer; }
.hk-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.hk-note { margin: 0; padding: 4px 12px 10px; background: var(--sheet); font: 12px/1.35 var(--doc); color: var(--muted); }
.hk-note a { color: var(--bordo); }
html.hk-on { overflow: hidden; }
@media (max-width: 520px) { .hk-panel { inset: 0; width: auto; border: 0; box-shadow: none; animation: none; } }
.hk-rows { margin: 0; }
.hk-rows dt { margin-top: 4px; font: 700 11px/1.3 var(--doc); text-transform: uppercase; color: var(--muted); }
.hk-rows dd { margin: 0; }
.hk-consent textarea { width: 100%; box-sizing: border-box; padding: 8px; border: 2px solid var(--ink); font: 15px/1.4 Georgia, serif; }
.hk-consent-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.hk-cancel { min-height: 44px; padding: 8px 14px; background: none; border: 2px solid var(--ink); font: 600 14px/1.2 var(--head); text-transform: uppercase; cursor: pointer; }

/* Hakkı side launcher (user 05.10): wide screens = seal + label in the right gutter; narrow = round seal above the page buttons */
.hk-fab { position: fixed; z-index: 61; right: 24px; bottom: calc(24px + var(--foot-in, 0px)); display: inline-flex; align-items: center; gap: 10px; padding: 6px 18px 6px 6px;
  background: var(--sheet); border: 2px solid var(--ink); border-radius: 44px; box-shadow: 4px 4px 0 var(--ink); cursor: pointer; }
.hk-fab img, .hk-fab svg { width: 64px; height: 64px; display: block; }
.hk-fab-lbl { font: 600 17px/1 var(--head); letter-spacing: .6px; text-transform: uppercase; color: var(--bordo); }
.hk-fab:focus-visible { outline: 3px solid var(--bordo); outline-offset: 3px; }
html.hk-on .hk-fab, .sheet:not([hidden]) ~ .hk-fab { display: none; }
@media (hover: hover) { .hk-fab:hover { background: #FFF4E0; } }
@media (max-width: 1319px) {
  .hk-fab { right: 14px; bottom: calc(72px + var(--foot-in, 0px)); padding: 0; border-radius: 50%; box-shadow: 3px 3px 0 var(--ink); }
  .hk-fab img, .hk-fab svg { width: 60px; height: 60px; }
  .hk-fab-lbl { display: none; }
}
@media (min-width: 1320px) and (max-width: 1439px) { .hk-fab { padding: 4px; border-radius: 50%; } .hk-fab-lbl { display: none; } }
@media (max-width: 520px) { .hk-fab { right: 10px; bottom: calc(64px + var(--foot-in, 0px)); } .hk-fab img, .hk-fab svg { width: 56px; height: 56px; } }
@media (prefers-reduced-motion: reduce) { .hk-fab:hover img { transform: none; } }

/* no elastic bounce at the page edges (user 05.10): header, footer and the fixed buttons stay put */
html, body { overscroll-behavior-y: none; }

/* top menu news link: full label on wide screens, first word on phones (05.10) */
@media (max-width: 520px) { .top nav .nav-long { display: none; } }

/* "Düzeltme bildirin" web-mail fallback (player.js, 05.10) */
.report-alt { margin: 6px 0 0; padding: 10px 12px; background: #FFF4E0; border: 1px solid rgba(22, 22, 22, .25); font-size: 14px; }
.report-alt p { margin: 0 0 6px; }
.report-btns { display: flex; flex-wrap: wrap; gap: 8px; }
.report-btns > * { display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px; background: var(--sheet); border: 2px solid var(--ink);
  color: var(--bordo); font: 600 14px/1 var(--head); letter-spacing: .3px; text-transform: uppercase; text-decoration: none; cursor: pointer; }
@media (max-width: 520px) { .top nav { column-gap: 10px; } }  /* 390 px: Kiracı Hakları · Gündem · İletişim · YouTube on one row */

/* news notes: the news item comes first (05.10) */
.source-box { margin: 0 0 16px; padding: 10px 14px; background: #FFF4E0; border: 2px solid var(--ink); border-left: 8px solid var(--bordo); font-size: 15px; }
.source-box p { margin: 0 0 6px; } .source-box p:last-child { margin: 0; }
.source-box a { color: var(--bordo); overflow-wrap: anywhere; }

/* Hakkı side seal comes alive (user 05.10): blink, look left/right, antenna wobble; hover = quick wave. Off for reduced motion. */
.hk-bot-anim .hk-head, .hk-bot-anim .hk-face, .hk-bot-anim .hk-eyes, .hk-bot-anim .hk-ant { transform-box: fill-box; transform-origin: center; }
.hk-bot-anim .hk-ant { transform-origin: 50% 100%; animation: hk-ant 3.2s ease-in-out infinite; }
.hk-bot-anim .hk-eyes { animation: hk-blink 5s infinite; }
.hk-bot-anim .hk-face { animation: hk-look 9s ease-in-out infinite; }
.hk-bot-anim .hk-head { animation: hk-tilt 9s ease-in-out infinite; }
.hk-fab:hover .hk-bot-anim .hk-head, .hk-fab:focus-visible .hk-bot-anim .hk-head { animation: hk-wave .7s ease-in-out 2; }
@keyframes hk-blink { 0%, 92%, 100% { transform: scaleY(1); } 95% { transform: scaleY(.1); } }
@keyframes hk-look { 0%, 30%, 100% { transform: translateX(0); } 38%, 50% { transform: translateX(-3px); } 58%, 70% { transform: translateX(3px); } 78% { transform: translateX(0); } }
@keyframes hk-tilt { 0%, 30%, 100% { transform: rotate(0); } 38%, 50% { transform: rotate(-7deg); } 58%, 70% { transform: rotate(7deg); } 78% { transform: rotate(0); } }
@keyframes hk-ant { 0%, 100% { transform: rotate(0); } 25% { transform: rotate(-14deg); } 75% { transform: rotate(14deg); } }
@keyframes hk-wave { 0%, 100% { transform: rotate(0); } 25% { transform: rotate(-12deg); } 75% { transform: rotate(12deg); } }
@media (prefers-reduced-motion: reduce) { .hk-bot-anim * { animation: none !important; } }

/* share bar (05.10, v2 after user review): icon pills; WhatsApp in a pastel of the site's sage (user 06.10), dark sage text (contrast ≥ 9:1) */
.share { margin: 12px 0 18px; }
.share-btns { display: flex; flex-wrap: wrap; gap: 10px; }
.share-btns > a, .share-btns > button { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 18px 0 14px;
  border: 2px solid var(--ink); border-radius: 999px; background: var(--sheet); color: var(--ink); font: 500 16px/1 var(--head);
  letter-spacing: .2px; text-decoration: none; cursor: pointer; transition: transform .12s, box-shadow .12s; }
.share-btns > [hidden] { display: none; }
.share-btns .ico { width: 20px; height: 20px; flex: none; }
.share-btns .share-wa { background: #C5D6C0; border-color: var(--sage); color: #1E2B24; }
.share-btns .share-wa .ico { width: 22px; height: 22px; }
.share-btns .share-native { background: var(--bordo); border-color: var(--bordo); color: #fff; }
.share-btns .share-copy.done { background: #E3F1E7; border-color: var(--sage); color: var(--sage); }
@media (hover: hover) { .share-btns > a:hover, .share-btns > button:hover { transform: translateY(-1px); box-shadow: 0 3px 0 var(--ink); } }
@media (prefers-reduced-motion: reduce) { .share-btns > a, .share-btns > button { transition: none; } }
/* 10.10: three series menus (kiracı · ev sahibi · işçi) must keep the header on one row from 1320 px, because the fixed
   index rail (.dizin, top: 88px) assumes a one-row header; slightly tighter nav instead of a second row */
@media (min-width: 1320px) {
  .top nav { column-gap: 12px; }
  .top nav a, .top nav details.dd > summary { font-size: 15px; letter-spacing: .3px; }
}
/* the first series menu sits at the left edge when the nav wraps: open it to the right so it never leaves the screen */
@media (min-width: 700px) { .top nav details.dd:first-of-type .dd-menu { left: 0; right: auto; } }

/* ===== 13.10 audit pass (site/audit/iyilestirme-2026-10-13/PLAN.md, Faz 1) ===== */
.sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
main:focus { outline: none; }
.sheet:focus { outline: 3px solid var(--bordo); outline-offset: -3px; }
/* GOR-2: mid widths keep the header to two rows (menu + magnifier on one line) */
@media (min-width: 521px) and (max-width: 1100px) { .top nav { gap: 4px 14px; } .top nav a, .top nav details.dd > summary { font-size: 15px; } }
/* home "Durumunuz nedir?" (UX-1/ERS-6) */
.sit-ask { margin: 6px 0 18px; }
.sit-ask label { display: block; font: 700 15px/1.3 var(--head); text-transform: uppercase; letter-spacing: .3px; margin-bottom: 6px; }
.sit-row { display: flex; gap: 8px; }
.sit-row input { flex: 1; min-width: 0; min-height: 48px; padding: 8px 12px; font: 17px/1.3 Georgia, serif; border: 3px solid var(--ink); background: var(--sheet); }
.sit-row input:focus-visible { outline: 3px solid var(--bordo); outline-offset: 2px; }
.sit-row button { min-height: 48px; padding: 0 18px; border: 3px solid var(--ink); background: var(--bordo); color: var(--sheet); cursor: pointer;
  font: 700 16px/1 var(--head); text-transform: uppercase; letter-spacing: .4px; box-shadow: 3px 3px 0 var(--ink); }
.sit { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 14px; }
.sit-g { background: var(--sheet); border: 3px solid var(--ink); box-shadow: 4px 4px 0 var(--ink); padding: 12px 14px; }
.sit-g h3 { margin: 0 0 6px; font: 700 17px/1.2 var(--head); text-transform: uppercase; letter-spacing: .4px; color: var(--bordo); }
.sit-g ul { list-style: none; margin: 0; padding: 0; }
.sit-g li a { display: block; padding: 9px 0; border-bottom: 1px dashed rgba(22,22,22,.2); color: var(--ink); font: 16px/1.35 Georgia, serif; }
.sit-g li a:hover { color: var(--bordo); }
.sit-all { margin: 8px 0 0; }
.sit-all a, .shelf-more a { font: 700 14px/1.2 var(--head); text-transform: uppercase; letter-spacing: .3px; color: var(--bordo); display: inline-block; padding: 8px 0; }
.shelf-more { margin: 6px 0 0; }
@media (max-width: 520px) { .sit-row { flex-direction: column; } .sit-row button { width: 100%; } }
/* Hakkı handoff buttons (search / glossary / table filter empty states) */
.hk-open-btn { margin-left: 6px; min-height: 40px; padding: 0 12px; border: 2px solid var(--ink); background: var(--sheet); color: var(--bordo); cursor: pointer;
  font: 700 14px/1 var(--head); text-transform: uppercase; letter-spacing: .3px; }
.hk-open-btn:hover { background: #FFF4E0; }
.srch-hakki { margin: 0 16px 10px; font-size: 15px; }
/* guide table filter (UX-5) + paper card (GOR-6) */
.tfilter { display: flex; align-items: center; gap: 8px; max-width: 420px; margin: 4px 0 12px; padding: 0 12px; background: var(--sheet); border: 3px solid var(--ink); }
.tfilter svg { width: 20px; height: 20px; flex: none; fill: none; stroke: var(--ink); stroke-width: 2.2; }
.tfilter input { flex: 1; min-width: 0; min-height: 44px; border: 0; background: transparent; font: 16px/1.3 Georgia, serif; }
.tfilter input:focus-visible { outline: none; }
.tfilter:focus-within { outline: 3px solid var(--bordo); outline-offset: 2px; }
.tfilter-empty { font-size: 15px; }
@media (min-width: 641px) {
  #durum .tablewrap { background: var(--sheet); border: 3px solid var(--ink); box-shadow: 4px 4px 0 var(--ink); }
  #durum table.sureler tbody tr:nth-child(even) { background: rgba(22,22,22,.035); }
  #durum td[data-l="Durumunuz"] { font-weight: 600; }
}
/* durations (GOR-3/UX-10): only the period before the first ";" stands out */
table.sureler td[data-l="Süre"] { font: 400 15.5px/1.45 Georgia, serif; color: var(--ink); }
table.sureler td[data-l="Süre"] strong { font: 700 16px/1.3 var(--head); color: var(--bordo); }
@media (max-width: 640px) { table.sureler td[data-l="Süre"] { display: block; } }
/* bullet lists in dosya text (GOR-4) */
.dosya-body ul.bul { margin: .4em 0 .9em; padding-left: 1.25em; }
.dosya-body ul.bul li { margin: .45em 0; }
/* phones: share buttons on one row (UX-7) */
@media (max-width: 520px) { .share-btns > a, .share-btns > button { flex: 1 1 auto; justify-content: center; padding: 0 10px; font-size: 14px; } }
@media (min-width: 361px) and (max-width: 520px) { .share-btns { flex-wrap: nowrap; } .share-btns > a, .share-btns > button { min-width: 0; } }
/* Hakkı seal on phones: smaller, hidden while the page index panel is open (GOR-1/UX-6/ERS-17); animation stops (ERS-13) */
@media (max-width: 1319px) { .hk-fab img, .hk-fab svg { width: 50px; height: 50px; } .hk-fab { right: 10px; } }
.dizin.open ~ .hk-fab { display: none; }
.hk-bot-anim .hk-ant, .hk-bot-anim .hk-eyes, .hk-bot-anim .hk-face, .hk-bot-anim .hk-head { animation-iteration-count: 2; }
/* search results: focus ring distinct from arrow-key selection (ERS-11) */
.srch-list a:focus-visible { outline: 3px solid var(--bordo); outline-offset: -3px; }
/* polish: footer at the bottom of short pages (GOR-10), contact grid (GOR-11), sources (GOR-14), muted text (GOR-17) */
:root { --muted: #4f4c46; }
body { min-height: 100vh; display: flex; flex-direction: column; }
body > main { flex: 1 0 auto; width: 100%; box-sizing: border-box; }
.contact { grid-template-columns: 9.5em 1fr; align-items: baseline; row-gap: 10px; }
.contact dt { font-size: 14px; }
@media (max-width: 520px) { .contact { grid-template-columns: 1fr; } }
.sources ul { font: 15.5px/1.55 Georgia, serif; overflow-wrap: anywhere; }
.sources li { margin: 6px 0; }
@media (min-width: 900px) { footer .flinks { gap: 4px 16px; } footer .flinks a { font-size: 15px; } }
/* glossary: search box on the jump-link row (GOR-16/UX-13) */
.dosya > .hero-jumps + .term-head { margin-top: 14px; }
.term-head { justify-content: flex-start; }
@media (max-width: 520px) { .term-head .term-search { width: 100%; } }
@media (forced-colors: active) { .dz-row.is-active .dz-link, .srch-list a.on { outline: 2px solid CanvasText; } }
.hero-jumps a, .sit-all a, .shelf-more a { gap: 6px; } .sit-all a, .shelf-more a { display: inline-flex; align-items: center; }
@media (max-width: 520px) { .top nav a.yt-link { display: none; } }
.sit-note { display: block; margin-top: 6px; font-size: 14px; color: var(--muted); }

/* 14.10 · glossary terms in file text (audit SEO-3/ERS-8): same text colour, dotted bordo underline */
main a.term { color: inherit; text-decoration: underline dotted var(--bordo); text-decoration-thickness: 2px; text-underline-offset: 3px; }
main a.term:hover, main a.term:focus-visible { color: var(--bordo); text-decoration-style: solid; }

/* 14.10 · glossary term pages (/sozluk/<capa>/): example box = short-answer look, related terms as chips, card → page link */
.ornek { border: 2px solid var(--ink); border-left: 8px solid var(--bordo); background: var(--sheet); padding: 12px 16px; margin: 6px 0 0; }
.ornek p { font-size: 18px; margin: 0; }
.ornek p.ornek-t { font: 700 13px/1 var(--doc); letter-spacing: 1px; text-transform: uppercase; color: var(--muted); margin: 0 0 8px; }
ul.term-rel { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 10px; }
ul.term-rel a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px; border: 2px solid var(--ink); background: var(--sheet);
  color: var(--ink); text-decoration: none; font-weight: 600; }
ul.term-rel a:hover, ul.term-rel a:focus-visible { border-color: var(--bordo); color: var(--bordo); }
table.sureler a.src { font-size: 14px; white-space: nowrap; }
.term-page .term-back { margin: 34px 0 0; }
.term-page .term-back a, p.term-more a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; color: var(--bordo); }
p.term-more { margin: 4px 0 0; }
@media (max-width: 520px) { .ornek { padding: 10px 12px; } .ornek p { font-size: 17px; } }
/* 14.10 term pages: a one-file "Bu terimin geçtiği dosyalar" section is shorter than the scroll-spy line (30% / 260 px), so the next
   heading was already past it and the index pointer jumped one row ahead; a floor height keeps one section per spy line */
.term-page > section { min-height: 200px; }
.term-page > section:last-of-type { min-height: 0; }
/* 26.10: four series menus (+ işveren) — the menu shows the short series name, so the header keeps one row from 1320 px
   (fixed index rail, top: 88px), two rows at mid widths (GOR-2) and on phones; "Hakları" stays for screen readers */
.top nav .nm-x { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
