/* Düzen: herbaryum dolabı + dokuma. Renkler Anadolu ile Amazon/And geleneklerinin ortak boyalarından:
   kök boya / kırmız / koşnil / achiote kırmızısı · çivit / huito laciverti · safran / aşı boyası sarısı · doğal yün zemini.
   Motif: kilimdeki göz-baklava ile Shipibo kené ve And dokumalarının basamaklı baklavası. */
:root{
  --paper:#F1EADD; --sheet:#FBF6EC; --ink:#1C2140; --muted:#5D5866; --rule:#DCCFBA;
  --accent:#A3271B; --accent-soft:#EAD9C6; --ochre:#B9801A; --indigo:#2A3A6E;
  --r-anadolu:#A3271B; --r-asya:#2A3A6E; --r-and:#B9801A; --r-amazon:#2E6A45; --r-kamerika:#7A4A6E;
  --s-dusuk:#3A7449; --s-orta:#A0660E; --s-yuksek:#B02A2A;
  --f-display:"Alegreya", "Iowan Old Style", Georgia, serif;
  --f-body:"Alegreya Sans", "Gill Sans", "Segoe UI", system-ui, sans-serif;
  --f-mono:"Courier Prime", "Courier New", ui-monospace, monospace;
  --t-xs:.78rem; --t-sm:.9rem; --t-md:1.05rem; --t-lg:1.3rem; --t-xl:1.75rem; --t-xxl:clamp(2.6rem, 7vw, 4.6rem);
  --motif:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='16' viewBox='0 0 48 16'%3E%3Cpath d='M12 1l7 7-7 7-7-7z M12 5l3 3-3 3-3-3z' fill='none' stroke='black' stroke-width='1.6'/%3E%3Cpath d='M24 8h3v-3h3v-3h3v3h3v3h3v3h-3v3h-3v-3h-3v-3h-3z' fill='black'/%3E%3C/svg%3E");
  color-scheme:light;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --paper:#15131E; --sheet:#1E1A29; --ink:#F0E7D8; --muted:#A9A0B0; --rule:#3A3247;
  --accent:#E3654F; --accent-soft:#2C2232; --ochre:#E2AE4C; --indigo:#93A4DE;
  --r-anadolu:#E3654F; --r-asya:#93A4DE; --r-and:#E2AE4C; --r-amazon:#6CC08E; --r-kamerika:#C995BE;
  --s-dusuk:#76C48A; --s-orta:#E3AE4D; --s-yuksek:#F07D7D; color-scheme:dark;
}}
:root[data-theme="dark"]{
  --paper:#15131E; --sheet:#1E1A29; --ink:#F0E7D8; --muted:#A9A0B0; --rule:#3A3247;
  --accent:#E3654F; --accent-soft:#2C2232; --ochre:#E2AE4C; --indigo:#93A4DE;
  --r-anadolu:#E3654F; --r-asya:#93A4DE; --r-and:#E2AE4C; --r-amazon:#6CC08E; --r-kamerika:#C995BE;
  --s-dusuk:#76C48A; --s-orta:#E3AE4D; --s-yuksek:#F07D7D; color-scheme:dark;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:var(--t-md);line-height:1.55}
img{max-width:100%;display:block}
[hidden]{display:none!important}
a{color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding-left:max(16px, env(safe-area-inset-left, 0px));padding-right:max(16px, env(safe-area-inset-right, 0px));padding-block:20px 56px;display:flex;flex-direction:column;gap:28px}
.narrow{max-width:820px}
h1,h2,h3{font-family:var(--f-display);text-wrap:balance;margin:0;line-height:1.1}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.latin{font-family:var(--f-display);font-style:italic}
.eyebrow{font-family:var(--f-mono);font-size:var(--t-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}

/* Üst menü */
.site-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--rule);padding-bottom:12px}
.logo{font-family:var(--f-display);font-weight:800;font-size:1.35rem;text-decoration:none}
.logo em{font-weight:500;color:var(--accent)}
.site-nav nav{display:flex;gap:18px;font-family:var(--f-mono);font-size:var(--t-sm)}
.site-nav nav a{text-decoration:none;color:var(--muted)}
.site-nav nav a:hover,.site-nav nav a[aria-current="page"]{color:var(--ink);text-decoration:underline;text-underline-offset:4px}

/* Ana sayfa başlığı */
header.top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 32px;align-items:end;border-bottom:1.5px solid var(--ink);padding-bottom:20px}
.brand{display:flex;flex-direction:column;gap:6px;min-width:0}
.wordmark{font-size:var(--t-xxl);font-weight:800;letter-spacing:-.015em}
.wordmark em{font-weight:500;color:var(--accent)}
.lede{color:var(--muted);max-width:60ch;margin:0}
.today{display:flex;flex-direction:column;gap:4px;align-items:flex-start;border:1px dashed var(--rule);padding:12px 14px;background:var(--sheet);max-width:280px;text-decoration:none}
.today:hover{border-color:var(--accent)}
.today b{font-family:var(--f-display);font-size:var(--t-lg)}
.today i{font-family:var(--f-display);color:var(--muted)}
@media (max-width:640px){header.top{grid-template-columns:1fr}.today{max-width:none;width:100%}}
.stats{display:flex;flex-wrap:wrap;gap:6px 22px;font-family:var(--f-mono);font-size:var(--t-sm);color:var(--muted)}
.stats strong{color:var(--ink);font-weight:700}

/* Filtreler */
.controls{display:flex;flex-direction:column;gap:14px}
.search{display:flex;align-items:center;gap:10px;border:1.5px solid var(--ink);background:var(--sheet);padding:10px 14px}
.search input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:var(--t-lg);color:var(--ink);outline:none}
.search input::placeholder{color:var(--muted)}
.search svg{flex:none;color:var(--muted)}
.fgroups{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px 24px}
.fgroup{display:flex;flex-direction:column;gap:6px;min-width:0}
.fgroup > span{font-family:var(--f-mono);font-size:var(--t-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--rule);background:var(--sheet);padding:4px 10px;border-radius:999px;cursor:pointer;font-size:var(--t-sm);text-decoration:none}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.chip:hover{border-color:var(--ink)}
.dot{width:9px;height:9px;border-radius:50%;flex:none;display:inline-block}
.resultbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-family:var(--f-mono);font-size:var(--t-sm);color:var(--muted)}
.linkbtn{background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px;color:var(--accent);font-family:var(--f-mono);font-size:var(--t-sm)}

/* Fotoğraf alanı */
.ph{position:relative;background:var(--accent-soft);overflow:hidden;display:flex;align-items:center;justify-content:center}
.ph img{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s ease}
.ph img.on{opacity:1}
.ph .ph-mark{position:absolute;font-family:var(--f-display);font-style:italic;font-size:1.05rem;color:var(--accent);opacity:.7;padding:12px;text-align:center}
.ph.loaded .ph-mark{display:none}

/* Etiket kartları */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:16px}
.card{position:relative;display:flex;flex-direction:column;text-align:left;background:var(--sheet);border:1px solid var(--rule);text-decoration:none;min-width:0;transition:transform .15s ease,border-color .15s ease}
.card:hover{border-color:var(--ink);transform:translateY(-2px)}
.card .ph{aspect-ratio:3/4;max-width:100%;border-bottom:1px solid var(--rule)}
.card .body{display:flex;flex-direction:column;gap:8px;padding:12px 16px 12px;flex:1}
.card .row{display:flex;justify-content:space-between;align-items:center;gap:8px}
.acc{font-family:var(--f-mono);font-size:var(--t-xs);color:var(--muted);letter-spacing:.06em}
.regs{display:flex;gap:4px}
.card h2{font-size:var(--t-xl);font-weight:700}
.card .latin{font-size:var(--t-md);color:var(--muted);margin-top:-4px}
.card .fam{font-family:var(--f-mono);font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.card .foot{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px dashed var(--rule);padding-top:9px;margin-top:auto}
.ev{display:inline-flex;align-items:center;gap:6px;font-size:var(--t-xs);font-family:var(--f-mono);color:var(--muted)}
.pips{display:inline-flex;gap:2px}
.pips i{width:7px;height:7px;border-radius:50%;border:1.2px solid var(--accent);display:block}
.pips i.on{background:var(--accent)}
.sf{display:inline-flex;align-items:center;gap:5px;font-size:var(--t-xs);font-family:var(--f-mono);padding:2px 8px;border-radius:3px;border:1px solid currentColor;white-space:nowrap}
.sf.dusuk{color:var(--s-dusuk)} .sf.orta{color:var(--s-orta)} .sf.yuksek{color:var(--s-yuksek)}
.learned-mark{position:absolute;top:8px;right:8px;z-index:2;background:var(--accent);color:var(--paper);font-family:var(--f-mono);font-size:.7rem;padding:2px 7px;letter-spacing:.06em}
.empty{border:1px dashed var(--rule);padding:32px;text-align:center;color:var(--muted)}

/* Köprüler */
.page-head{display:flex;flex-direction:column;gap:8px;border-bottom:1.5px solid var(--ink);padding-bottom:16px}
.page-head h1{font-size:clamp(2.2rem,6vw,3.4rem);font-weight:800}
.page-head p{margin:0;color:var(--muted);max-width:62ch}
.bridges{display:flex;flex-direction:column;gap:16px}
.bridge{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:14px;align-items:stretch;background:var(--sheet);border:1px solid var(--rule);padding:18px}
.bridge.single{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
.bridge .txt{grid-column:1/-1;display:flex;flex-direction:column;gap:4px;border-top:1px dashed var(--rule);padding-top:12px}
.bridge .txt h2{font-size:var(--t-lg)}
.bridge .txt p{margin:0;color:var(--muted);max-width:70ch}
.mini{display:flex;flex-direction:column;gap:2px;text-align:left;border:1px solid var(--rule);padding:10px 12px;text-decoration:none;min-width:0}
.mini:hover{border-color:var(--ink)}
.mini b{font-family:var(--f-display);font-size:var(--t-lg)}
.mini .latin{color:var(--muted);font-size:var(--t-sm)}
.mini .where{display:flex;gap:6px;align-items:center;font-size:var(--t-xs);font-family:var(--f-mono);color:var(--muted)}
.arrow{align-self:center;font-family:var(--f-display);font-size:1.6rem;color:var(--accent)}
.bridge.single .note{align-self:center;color:var(--muted);font-size:var(--t-sm);font-family:var(--f-mono)}
@media (max-width:560px){.bridge{grid-template-columns:1fr}.arrow{transform:rotate(90deg);justify-self:center}.bridge.single{grid-template-columns:1fr}}

/* Bitki sayfası (föy) */
.crumbs{font-family:var(--f-mono);font-size:var(--t-sm);color:var(--muted);display:flex;gap:8px;flex-wrap:wrap}
.crumbs a{color:var(--muted)}
.sheet{display:flex;flex-direction:column;gap:26px}
.sheet-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px;align-items:end;border-bottom:1.5px solid var(--ink);padding-bottom:20px}
.sheet-head .titles{display:flex;flex-direction:column;gap:8px;min-width:0}
.sheet-head h1{font-size:clamp(2.4rem,7vw,3.8rem);font-weight:800}
.sheet-head .latin{font-size:var(--t-lg);color:var(--muted)}
.sheet-head .badges{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:6px}
figure.photo{margin:0;display:flex;flex-direction:column;gap:6px;min-width:0}
figure.photo .ph{aspect-ratio:3/4;max-width:100%;border:1px solid var(--rule)}
figure.photo figcaption{font-family:var(--f-mono);font-size:.72rem;color:var(--muted);line-height:1.4;min-height:1.4em}
figure.photo figcaption a{color:var(--muted)}
@media (max-width:720px){.sheet-head{grid-template-columns:1fr}figure.photo{order:-1}}
.meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:10px 20px;margin:0}
.meta div{display:flex;flex-direction:column;gap:2px;min-width:0}
.meta dt{font-family:var(--f-mono);font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.meta dd{margin:0}
.sec{display:flex;flex-direction:column;gap:10px}
.sec h2{margin:0;font-family:var(--f-mono);font-size:var(--t-xs);font-weight:400;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);display:flex;align-items:center;gap:10px}
.sec h2::after{content:"";flex:1;border-top:1px solid var(--rule)}
.sec p{margin:0;max-width:68ch}
.uses{display:flex;flex-direction:column;gap:14px}
.use{display:grid;grid-template-columns:140px minmax(0,1fr);gap:14px}
.use .who{font-family:var(--f-display);font-weight:700}
@media (max-width:560px){.use{grid-template-columns:1fr;gap:2px}}
.callout{border-left:4px solid var(--s-yuksek);padding:12px 16px;background:var(--sheet)}
.callout.dusuk{border-left-color:var(--s-dusuk)} .callout.orta{border-left-color:var(--s-orta)}
.callout .lvl{font-family:var(--f-mono);font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px}
.callout.dusuk .lvl{color:var(--s-dusuk)} .callout.orta .lvl{color:var(--s-orta)} .callout.yuksek .lvl{color:var(--s-yuksek)}
.fact{font-family:var(--f-display);font-style:italic;font-size:var(--t-lg);line-height:1.4;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:16px 0;margin:0;max-width:60ch}
.related{display:flex;flex-wrap:wrap;gap:8px}
.refs{margin:0;padding-left:1.3em;display:flex;flex-direction:column;gap:6px;font-size:var(--t-sm)}
.refs a{color:var(--accent);text-underline-offset:3px;overflow-wrap:anywhere}
.refs .kind{font-family:var(--f-mono);font-size:var(--t-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-right:6px}
.sheet-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px dashed var(--rule);padding-top:16px}
.learn{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--accent);background:none;color:var(--accent);padding:8px 14px;cursor:pointer;font-weight:700}
.learn[aria-pressed="true"]{background:var(--accent);color:var(--paper)}
.pager{display:flex;gap:8px;flex-wrap:wrap}
.pager a{border:1px solid var(--rule);padding:8px 12px;font-family:var(--f-mono);font-size:var(--t-sm);text-decoration:none}
.pager a:hover{border-color:var(--ink)}

footer.site{border-top:1.5px solid var(--ink);padding-top:18px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px 36px;color:var(--muted);font-size:var(--t-sm)}
footer.site h3{margin:0 0 6px;font-family:var(--f-mono);font-size:var(--t-xs);font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}
footer.site p{margin:0 0 6px}
.legend{display:flex;flex-direction:column;gap:5px}
.legend div{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
@media (prefers-reduced-motion: reduce){.card{transition:none}.card:hover{transform:none}.ph img{transition:none}}

/* Fotoğraf seçim sayfası */
.pick-row{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--rule);padding-top:16px}
.pick-row h2{font-size:var(--t-lg)}
.pick-row .latin{color:var(--muted)}
.cands{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,140px),1fr));gap:10px}
.cand{padding:0;border:3px solid transparent;background:none;cursor:pointer}
.cand .ph{aspect-ratio:3/4;max-width:100%}
.cand[aria-pressed="true"]{border-color:var(--accent)}
.cand:hover{border-color:var(--rule)}
.cand[aria-pressed="true"]:hover{border-color:var(--accent)}
.muted{color:var(--muted);margin:0}
.result-box{position:sticky;bottom:0;background:var(--sheet);border:1.5px solid var(--ink);padding:12px;display:flex;flex-direction:column;gap:8px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}
.result-box textarea{width:100%;height:5.5em;font-family:var(--f-mono);font-size:var(--t-xs);background:var(--paper);color:var(--ink);border:1px solid var(--rule)}
.result-box .row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-family:var(--f-mono);font-size:var(--t-sm)}
.result-box button{border:1.5px solid var(--accent);background:var(--accent);color:var(--paper);padding:6px 14px;cursor:pointer;font-weight:700}

/* Dokuma motifi: kilim göz-baklavası + basamaklı baklava */
.motif{height:16px;background:var(--accent);-webkit-mask:var(--motif) repeat-x left center/48px 16px;mask:var(--motif) repeat-x left center/48px 16px}
.motif.ochre{background:var(--ochre)}
.motif.indigo{background:var(--indigo)}
.sec h2::before{content:"";width:9px;height:9px;background:var(--accent);transform:rotate(45deg);flex:none}
.sec h2::after{border-top:1px dashed var(--rule)}
.wordmark em,.logo em{color:var(--accent)}
.card:hover{border-color:var(--accent)}
.card .ph{border-bottom:3px solid var(--accent)}
.fact{border-top:2px solid var(--ochre);border-bottom:2px solid var(--ochre)}
.today{border:1px solid var(--rule);border-left:4px solid var(--ochre)}
.today:hover{border-color:var(--accent)}
header.top,.page-head,.sheet-head{border-bottom:2px solid var(--ink)}
.palette{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:12px}
.swatch{display:flex;flex-direction:column;gap:6px;border:1px solid var(--rule);background:var(--sheet);padding:10px}
.swatch i{display:block;height:44px}
.swatch b{font-family:var(--f-display);font-size:var(--t-lg)}
.swatch span{font-size:var(--t-sm);color:var(--muted)}
