/* Paylaşılan yapı — "eşleştirme" bulmaca ailesi (kur, asi).
   Bu dosya HİÇBİR renk tanımlamaz; her oyun kendi <style> bloğunda
   şu değişkenleri tanımlamalı (hem :root hem [data-tema="gece"] için):
   --kagit --kagit-2 --kart --murekkep --soluk --cizgi
   --yesil --yesil-koyu --yesil-soft --toprak --vurgu --etiket
   --golge --golge-sert --dogru --dogru-bg --yanlis --yanlis-bg
   Her oyun ayrıca kendi havuz/thumb seçicilerini (ör. .kus-havuz/.kthumb,
   .bitki-havuz/.bthumb) yerel <style> bloğunda tutar — bu dosyada değil,
   çünkü JS bu sınıf adlarını üretip sorguluyor.
*/
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--kagit);color:var(--murekkep);font-family:Georgia,'Times New Roman',serif;font-size:17px;line-height:1.55;min-height:100vh;-webkit-tap-highlight-color:transparent;transition:background .4s,color .4s}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:url(../gorsel/doku.jpg) center/cover;opacity:.10;mix-blend-mode:soft-light}
[data-tema="gece"] body::before{opacity:.16}
a{color:var(--yesil-koyu)}
i,em,.la{font-style:italic}
button{font:inherit;cursor:pointer;color:inherit}
img{display:block}

.sarmal{width:min(1680px,96vw);margin:0 auto;padding:18px 0 90px}
.ust{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-top:6px}
.eve-don{display:inline-flex;align-items:center;gap:7px;background:var(--vurgu);color:#f6efe0;text-decoration:none;font-size:14px;padding:7px 15px 7px 12px;border-radius:20px;box-shadow:2px 3px 0 var(--golge)}
.eve-don:hover{transform:translateY(-1px)}
.eve-don::before{content:"";width:11px;height:11px;border-radius:50%;background:#f6efe0;flex:none}
.ust-sag{margin-left:auto;display:flex;gap:8px;align-items:center}
.ikonbtn{background:var(--kart);border:1px solid var(--cizgi);border-radius:18px;padding:6px 14px;font-size:13.5px;color:var(--soluk);text-decoration:none}
.ikonbtn:hover{border-color:var(--yesil);color:var(--yesil)}
.gizli-rast{opacity:0;transition:opacity .2s;padding:6px 10px;border-color:transparent;background:none}
.gizli-rast:hover,.gizli-rast:focus{opacity:.85;border-color:var(--cizgi)}

.marka{margin:22px 0 6px;display:flex;align-items:flex-end;gap:15px;flex-wrap:wrap}
.marka .amblem{width:50px;height:50px;flex:none}
.marka h1{font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:clamp(30px,4.4vw,46px);line-height:1;letter-spacing:-.5px;color:var(--yesil-koyu)}
.marka .tag{color:var(--soluk);font-style:italic;font-family:'Libre Baskerville',Georgia,serif;font-size:15px;padding-bottom:5px}
.gun-no{margin-left:auto;text-align:right;font-family:'Libre Baskerville',serif;color:var(--soluk);font-size:13px;padding-bottom:4px}
.gun-no b{display:block;font-family:'Playfair Display',serif;font-size:22px;color:var(--yesil-koyu)}

.oyun-bas{margin:18px 0 8px;font-family:'Libre Baskerville',serif;font-style:italic;color:var(--soluk);font-size:15.5px;max-width:74ch}
.oyun-bas b{color:var(--murekkep)}

.duzen{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:34px;align-items:start;margin-top:18px}
@media(max-width:960px){.duzen{grid-template-columns:1fr}}

.havuz-bas{font-family:'Libre Baskerville',serif;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--soluk);margin:0 0 14px;display:flex;align-items:center;gap:8px}
.havuz-bas .sc{margin-left:auto;font-style:italic;text-transform:none;letter-spacing:0;font-size:13px}

/* orta nokta — eşleştirme masası */
.masa{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap;background:var(--kart);
  border:2px solid var(--cizgi);border-radius:22px;padding:26px;margin:24px 0;box-shadow:3px 5px 0 var(--golge);transition:border-color .2s,box-shadow .3s}
.masa.iyi{border-color:var(--dogru);animation:parla .6s}
.masa.kotu{border-color:var(--yanlis);animation:sars-masa .5s}
.masa.telegraf{border-color:var(--dogru);animation:telegraf 1.9s ease}
@keyframes parla{0%{box-shadow:0 0 0 0 var(--dogru-bg)}50%{box-shadow:0 0 0 16px var(--dogru-bg)}100%{box-shadow:3px 5px 0 var(--golge)}}
@keyframes sars-masa{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-7px)}40%,80%{transform:translateX(7px)}}
@keyframes telegraf{0%,100%{box-shadow:3px 5px 0 var(--golge)}30%,70%{box-shadow:0 0 0 12px var(--dogru-bg)}}
.masa.telegraf .myuva{border-style:solid;border-color:var(--dogru)}
@keyframes titre-kirmizi{0%,100%{transform:translateX(0)}12%{transform:translateX(-9px)}26%{transform:translateX(9px)}40%{transform:translateX(-7px)}54%{transform:translateX(7px)}68%{transform:translateX(-4px)}82%{transform:translateX(4px)}}
.myuva{width:252px;height:252px;border:2px dashed var(--cizgi);border-radius:17px;display:flex;align-items:center;justify-content:center;
  text-align:center;color:var(--soluk);font-style:italic;overflow:hidden;position:relative;cursor:pointer;background:var(--kagit-2);flex:none;
  transition:transform .55s cubic-bezier(.4,.75,.3,1),opacity .55s,border-color .2s,box-shadow .2s}
.myuva.dolu{border-style:solid;border-color:var(--yesil)}
.myuva img{width:100%;height:100%;object-fit:cover}
.myuva.ad{font-family:'Playfair Display',serif;font-size:24px;color:var(--soluk)}
.myuva.ad.dolu{font-style:normal;color:var(--yesil-koyu);padding:14px}
.esit{font-size:38px;color:var(--soluk);font-family:'Playfair Display',serif;transition:transform .4s,color .4s}
.tamam{background:var(--yesil);color:#f6efe0;border:none;border-radius:28px;padding:17px 40px;font-size:18px;box-shadow:2px 3px 0 var(--golge);font-family:'Playfair Display',serif;align-self:center}
.tamam:hover:not(:disabled){transform:translateY(-1px)}
.tamam:disabled{opacity:.4;cursor:default}

.ad-havuz{display:flex;gap:12px;flex-wrap:wrap;min-height:52px}
.ad-cip{background:var(--kart);border:1.5px solid var(--cizgi);border-radius:26px;padding:13px 26px;font-size:17px;color:var(--murekkep);font-family:'Playfair Display',serif;transition:transform .1s,border-color .12s,background .12s}
.ad-cip:hover{border-color:var(--yesil);color:var(--yesil);transform:translateY(-1px)}

/* adlar kenarda — dikey liste, kaydırmadan tek bakışta okunur */
.yan .ad-havuz{flex-direction:column;flex-wrap:nowrap;gap:8px;margin-bottom:18px}
.yan .ad-cip{width:100%;text-align:left;padding:10px 16px;font-size:15.5px;border-radius:11px}

/* uçan foto (birleşme → kenar) */
.ucus{position:fixed;width:96px;height:96px;border-radius:16px;object-fit:cover;z-index:200;
  box-shadow:0 8px 26px rgba(0,0,0,.4);border:3px solid var(--dogru);
  transition:transform .72s cubic-bezier(.3,.85,.35,1),opacity .72s;pointer-events:none}

/* kenar — eşlenenler */
.yan{background:var(--kart);border:1px solid var(--cizgi);border-radius:14px;padding:18px 19px;box-shadow:3px 4px 0 var(--golge);position:sticky;top:16px}
.eslenen-liste{display:flex;flex-direction:column;gap:10px;min-height:48px}
.esl{display:flex;align-items:center;gap:12px;background:var(--dogru-bg);border-radius:11px;padding:8px 11px;animation:pop .4s ease}
@keyframes pop{0%{opacity:0;transform:translateX(24px) scale(.9)}60%{transform:translateX(-3px) scale(1.03)}100%{opacity:1;transform:none}}
.esl img{width:56px;height:56px;border-radius:9px;object-fit:cover;flex:none}
.esl b{font-family:'Libre Baskerville',serif;font-size:15.5px;color:var(--dogru);line-height:1.15}
.esl .ok{margin-left:auto;color:var(--dogru);font-size:18px}
.bos-yan{color:var(--soluk);font-style:italic;font-size:13.5px;padding:6px 0}
.hata-not{margin-top:16px;border-top:1px dashed var(--cizgi);padding-top:13px;font-size:14px;color:var(--soluk)}
.hata-not .hnk{display:inline-block;width:16px;height:16px;border-radius:50%;background:var(--vurgu);margin:0 4px 0 2px;vertical-align:middle;box-shadow:1px 1px 0 var(--golge)}
.hata-not .hnk.bos{background:none;border:1.5px solid var(--cizgi);box-shadow:none}
.hata-not a{color:var(--vurgu);border-bottom:1px solid currentColor;text-decoration:none}
.puan-yok{color:var(--vurgu);font-family:'Playfair Display',serif}

.sonuc{margin-top:28px;background:var(--kart);border:1px solid var(--cizgi);border-radius:14px;padding:24px 26px;box-shadow:4px 6px 0 var(--golge);display:none;animation:belir .35s ease}
.sonuc.ac{display:block}
@keyframes belir{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.sonuc h2{font-family:'Playfair Display',serif;font-size:26px;color:var(--yesil-koyu);margin-bottom:4px}
.sonuc .ozet{color:var(--soluk);font-style:italic;margin-bottom:18px}
.reveal{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.rv{display:flex;gap:13px;background:var(--kagit-2);border-radius:12px;padding:12px;border:1px solid var(--cizgi)}
.rv img{width:88px;height:88px;border-radius:10px;object-fit:cover;flex:none}
.rv .yz b{font-family:'Playfair Display',serif;font-size:16.5px;color:var(--yesil-koyu);display:block;line-height:1.1}
.rv .yz .la{color:var(--toprak);font-size:12px}
.rv .yz p{font-size:12.5px;margin-top:4px;line-height:1.4}
.rv.tuzak{border-color:var(--vurgu)}
.rv.tuzak .rozet{display:inline-block;font-size:10.5px;background:var(--vurgu);color:#f6efe0;border-radius:9px;padding:1px 7px;margin-bottom:3px}
.sonuc-alt{display:flex;gap:14px;margin-top:20px;align-items:center;flex-wrap:wrap}
.paylas{background:var(--vurgu);color:#f6efe0;border:none;border-radius:22px;padding:11px 24px;font-size:15px;box-shadow:2px 3px 0 var(--golge)}
.paylas:hover{transform:translateY(-1px)}
.paylas.yesil{background:var(--yesil)}
.link-btn{color:var(--yesil-koyu);text-decoration:none;font-size:14.5px;border-bottom:1px solid currentColor;padding-bottom:1px}

footer{margin-top:56px;border-top:1px solid var(--cizgi);padding-top:16px;color:var(--soluk);font-size:12.5px;text-align:center;line-height:1.7}
footer a{color:var(--soluk)}
#toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);z-index:100;background:#244635;color:#f6efe0;padding:12px 24px;border-radius:24px;font-size:15.5px;font-family:'Playfair Display',serif;box-shadow:3px 5px 0 var(--golge-sert);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;max-width:90vw;text-align:center}
#toast.goster{opacity:1;transform:translateX(-50%) translateY(0)}
#toast.kotu{background:#6d2a1c}
