/* İşlevsel iskelet: yerleşim + baskı kuralları. Görsel dil Goldy'nin (tasarim/GOLDY-IS-EMRI.md). */
:root {
  --zemin: #faf8f5; --yuzey: #ffffff; --yazi: #2b2523; --soluk: #6e6460; --cizgi: #e6dfd9;
  --vurgu: #8a5a44; --vurgu-yazi: #ffffff; --iyi: #2f7a4f; --kotu: #a33a3a;
  color-scheme: light dark;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) { --zemin: #1b1817; --yuzey: #252120; --yazi: #f2ece8; --soluk: #b3a8a2; --cizgi: #3a3431; --vurgu: #d9a58c; --vurgu-yazi: #1b1817; }
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--zemin); color: var(--yazi); font: 16px/1.5 system-ui, -apple-system, "Segoe UI", sans-serif; }
.sayfa { max-width: 1040px; margin: 0 auto; padding: 16px; }
.sayfa.dar { max-width: 620px; }
a { color: var(--vurgu); }
h1 { font-size: 1.7rem; line-height: 1.2; margin: .3em 0; }
h2 { font-size: 1.2rem; margin: .2em 0 .6em; }
.ust p { color: var(--soluk); margin: 0; }
.blok { background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: 12px; padding: 16px; margin: 16px 0; }
.not, .kucuk-not, .ust-bilgi { color: var(--soluk); font-size: .92rem; }
.kucuk-not { font-size: .8rem; text-align: center; }
.hata { color: var(--kotu); }
button, .dugme { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 16px; border-radius: 10px; border: 1px solid var(--cizgi); background: var(--yuzey); color: var(--yazi); font: inherit; text-decoration: none; cursor: pointer; }
button.ana, .dugme.ana { background: var(--vurgu); color: var(--vurgu-yazi); border-color: var(--vurgu); }
button.sessiz { border: 0; background: none; color: var(--soluk); text-decoration: underline; }
:focus-visible { outline: 3px solid var(--vurgu); outline-offset: 2px; }
input, select, textarea { font: inherit; color: inherit; background: var(--zemin); border: 1px solid var(--cizgi); border-radius: 8px; padding: 10px; width: 100%; min-height: 44px; }
.form, .secim { display: grid; gap: 12px; }
.form label, .secim label { display: grid; gap: 4px; font-size: .92rem; }
label.satir { display: flex; gap: 8px; align-items: center; }
label.satir input { width: auto; min-height: 0; }
@media (min-width: 720px) { .secim { grid-template-columns: repeat(4, 1fr); } }
.izgara { display: grid; gap: 16px; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); margin-top: 16px; }
.izgara.kucuk { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.kart { background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: 12px; overflow: hidden; }
.kart-baglanti { display: block; padding: 12px; color: inherit; text-decoration: none; }
.uclu { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 8px; align-items: center; }
.uclu.buyuk { gap: 16px; }
@media (max-width: 600px) { .uclu.buyuk { grid-template-columns: 1fr; } }
figure { margin: 0; }
figure svg { display: block; width: 100%; height: auto; border-radius: 6px; }
figcaption { font-size: .85rem; color: var(--soluk); margin-top: 4px; }
.renk { border: 0; padding: 0; margin: 0 0 12px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.renk legend { font-size: .92rem; margin-bottom: 6px; }
.ornek { width: 36px; height: 36px; min-height: 0; padding: 0; border-radius: 50%; background: var(--renk); border: 2px solid var(--cizgi); display: inline-block; }
.ornek.secili { border-color: var(--yazi); box-shadow: 0 0 0 2px var(--zemin) inset; }
.renkler { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 12px; }
.renkler li { display: flex; gap: 6px; align-items: center; }
.renkler .ornek { width: 20px; height: 20px; }
.istek { display: grid; gap: 8px; margin-top: 8px; }
.ozet { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 12px; }
.ozet b { display: block; font-size: 1.8rem; }
.ozet span { color: var(--soluk); font-size: .88rem; }
.geri-sayim { font-size: 1.15rem; font-weight: 600; color: var(--vurgu); margin: 0; }
.gorevler, .misafirler, .baskilar, .kalemler, .kimler { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.gorevler li { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.gorevler select { width: auto; }
.misafirler li { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 10px 0; border-top: 1px solid var(--cizgi); }
.misafirler .ad { font-weight: 600; flex: 1 1 160px; }
.misafirler select { width: auto; }
.lcv-geliyor { color: var(--iyi); } .lcv-gelmiyor { color: var(--kotu); } .lcv-bekliyor { color: var(--soluk); }
.masa { border: 1px solid var(--cizgi); border-radius: 10px; padding: 10px; }
.masa.fazla { border-color: var(--kotu); }
.masa h3 { margin: 0; font-size: 1rem; } .masa ul { padding-left: 18px; margin: 6px 0 0; }
.kalemler > li { border-top: 1px solid var(--cizgi); padding-top: 10px; }
.ikili { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.davetiye svg { box-shadow: 0 2px 12px rgb(0 0 0 / .08); }
.bugun-kutu { border-color: var(--vurgu); }
.bildirim { position: fixed; left: 50%; bottom: 16px; transform: translateX(-50%); background: var(--yazi); color: var(--zemin); padding: 10px 16px; border-radius: 10px; margin: 0; max-width: calc(100% - 32px); }
.yukleniyor { color: var(--soluk); }
/* Baskı sayfası: ekranda önizleme, baskıda yalnız sayfalar */
.baski-govde .arac { max-width: 620px; margin: 0 auto; padding: 16px; }
.baski-sayfa { margin: 16px auto; background: #fff; box-shadow: 0 2px 12px rgb(0 0 0 / .12); overflow: hidden; break-after: page; }
.baski-sayfa > svg, .kesim svg { width: 100%; height: 100%; display: block; }
.dizilim { display: grid; }
.kesim { outline: .2mm dashed #bbb; }
#sayfalar { overflow-x: auto; padding: 0 16px; }
@media print {
  .arac { display: none; }
  body { background: #fff; }
  #sayfalar { padding: 0; overflow: visible; }
  .baski-sayfa { margin: 0; box-shadow: none; }
}
