/* Galeri modülü — liquid glass. Renkler değişkenlerle; başka projede :root üzerinden değiştirilebilir. Siyah kullanılmaz. */
:root{
  --gl-ink:#343d2e;--gl-muted:#5d6155;--gl-gold:#b08f55;--gl-gold-2:#e6d3a3;--gl-deep:#39432f;
  --gl-glass:linear-gradient(135deg,rgb(255 255 255/.62),rgb(255 255 255/.22));
  --gl-glass-dark:linear-gradient(135deg,rgb(248 246 240/.2),rgb(248 246 240/.06));
  --gl-edge:rgb(255 255 255/.6);--gl-r:18px;--gl-gap:14px;
}
.gl-glass{background:var(--gl-glass);-webkit-backdrop-filter:blur(22px) saturate(1.7);backdrop-filter:blur(22px) saturate(1.7);border:1px solid var(--gl-edge);box-shadow:inset 0 1px 0 rgb(255 255 255/.75),inset 0 -1px 0 rgb(176 143 85/.14),0 10px 30px -14px rgb(52 61 46/.4)}

/* Süzgeç çubuğu */
.gl-filters{position:sticky;top:12px;z-index:5;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:6px;border-radius:40px;margin:0 auto 22px;width:max-content;max-width:100%}
.gl-filters::-webkit-scrollbar{display:none}
.gl-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:8px 16px;border:0;border-radius:30px;background:none;color:var(--gl-ink);font:600 14px/1 inherit;cursor:pointer;transition:background .25s,color .25s,box-shadow .25s}
.gl-chip b{font-size:11px;font-weight:700;opacity:.55;font-variant-numeric:tabular-nums}
.gl-chip:hover{background:rgb(255 255 255/.5)}
.gl-chip.on{background:linear-gradient(135deg,var(--gl-gold-2),#c9ab6d 50%,var(--gl-gold));box-shadow:0 6px 16px -8px rgb(124 98 50/.8),inset 0 1px 0 rgb(255 255 255/.6)}
.gl-chip.on b{opacity:.8}

/* Karışık duvar: 4 / 3 / 2 sütun, oranlar korunur (yerleşim kayması yok) */
.gl-grid{columns:4;column-gap:var(--gl-gap)}
@media(max-width:1100px){.gl-grid{columns:3;--gl-cols:3}}
@media(max-width:700px){.gl-grid{columns:2;--gl-cols:2;--gl-gap:10px}}
.gl-tile{position:relative;display:block;width:100%;margin:0 0 var(--gl-gap);padding:0;border:0;border-radius:var(--gl-r);overflow:hidden;background:#ece5d3;aspect-ratio:var(--gl-ar);break-inside:avoid;cursor:zoom-in;transform:translateZ(0);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s;box-shadow:0 1px 0 rgb(255 255 255/.6) inset,0 12px 30px -20px rgb(52 61 46/.5)}
.gl-tile.gl-video{cursor:pointer}
.gl-tile:hover{transform:translateY(-3px);box-shadow:0 22px 40px -22px rgb(52 61 46/.6)}
.gl-tile:focus-visible{outline:2px solid var(--gl-gold);outline-offset:3px}
.gl-tile img,.gl-tile video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.8,.2,1),opacity .4s}
.gl-tile:hover img,.gl-tile:hover video{transform:scale(1.04)}
.gl-tile img{opacity:0}.gl-tile img.gl-in{opacity:1}
.gl-tile[hidden]{display:none}
/* JS varsa: soldan sağa okunan masonry (grid satır aralığı). JS yoksa yukarıdaki sütun düzeni kalır. */
.gl-grid.gl-js{columns:auto;display:grid;grid-template-columns:repeat(var(--gl-cols,4),minmax(0,1fr));grid-auto-rows:4px;column-gap:var(--gl-gap);grid-auto-flow:dense}
.gl-grid.gl-js .gl-tile{margin:0;align-self:start}
.gl-cap{position:absolute;left:10px;right:10px;bottom:10px;padding:8px 12px;border-radius:12px;color:var(--gl-ink);background:linear-gradient(135deg,rgb(255 250 238/.8),rgb(255 248 232/.5))!important;font:600 13px/1.3 inherit;text-align:left;opacity:0;transform:translateY(6px);transition:opacity .3s,transform .3s}
.gl-tile:hover .gl-cap,.gl-tile:focus-visible .gl-cap{opacity:1;transform:none}
@media(hover:none){.gl-cap{opacity:1;transform:none;font-size:12px;padding:6px 10px}}
.gl-badge{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;transition:opacity .3s}
.gl-badge svg{width:15px;height:15px;fill:var(--gl-ink);margin-left:2px}
.gl-tile.gl-playing .gl-badge{opacity:.55}
.gl-tile::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 0 1px rgb(255 255 255/.35)}

/* Tam ekran görüntüleyici */
.gl-lb{border:0;padding:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;background:transparent;color:#f4eedd;overflow:hidden}
.gl-lb::backdrop{background:rgb(44 51 36/.72);-webkit-backdrop-filter:blur(26px) saturate(1.3);backdrop-filter:blur(26px) saturate(1.3)}
.gl-lb[open]{display:grid;grid-template-rows:auto 1fr auto;animation:gl-in .35s cubic-bezier(.2,.8,.2,1)}
@keyframes gl-in{from{opacity:0;transform:scale(.98)}}
.gl-lb-top,.gl-lb-bot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;padding-top:max(14px,env(safe-area-inset-top))}
.gl-lb-bot{justify-content:center;padding-bottom:max(16px,env(safe-area-inset-bottom))}
.gl-lb .gl-glass{background:var(--gl-glass-dark);border-color:rgb(248 246 240/.28);box-shadow:inset 0 1px 0 rgb(255 255 255/.25),0 10px 30px -14px rgb(30 36 24/.6)}
.gl-lb-count{padding:8px 14px;border-radius:30px;font:700 13px/1 inherit;letter-spacing:1px;font-variant-numeric:tabular-nums}
.gl-lb-btn{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:#f4eedd;cursor:pointer;font:400 22px/1 inherit}
.gl-lb-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.gl-lb-stage{position:relative;display:grid;place-items:center;min-height:0;padding:0 64px;touch-action:pan-y}
.gl-lb-stage img,.gl-lb-stage video{max-width:100%;max-height:100%;border-radius:14px;box-shadow:0 30px 70px -30px rgb(20 24 16/.8);background:#3c462f;transition:opacity .25s,transform .35s cubic-bezier(.2,.8,.2,1)}
.gl-lb-stage .gl-out{opacity:0;transform:scale(.97)}
.gl-lb-prev,.gl-lb-next{position:absolute;top:50%;transform:translateY(-50%);z-index:2}
.gl-lb-prev{left:12px}.gl-lb-next{right:12px}
.gl-lb-cap{max-width:min(640px,100%);padding:10px 18px;border-radius:30px;font:500 15px/1.4 inherit;text-align:center}
.gl-lb-cap:empty{display:none}
@media(max-width:700px){.gl-lb-stage{padding:0 8px}.gl-lb-prev,.gl-lb-next{top:auto;bottom:-62px;transform:none}.gl-lb-prev{left:16px}.gl-lb-next{right:16px}}
@media(prefers-reduced-motion:reduce){.gl-tile,.gl-tile img,.gl-tile video,.gl-lb[open],.gl-lb-stage img,.gl-lb-stage video{transition:none;animation:none}}

/* ——— Yönetim arayüzü ——— */
.gla{display:grid;gap:14px}
.gla-zone{display:flex;flex-direction:column;align-items:center;gap:6px;padding:30px 16px;border:1.5px dashed #cdbf98;border-radius:18px;background:#fbf8f0;text-align:center;cursor:pointer;transition:background .2s,border-color .2s}
.gla-zone input{position:absolute;opacity:0;width:1px;height:1px}
.gla-zone strong{font-size:16px;color:var(--gl-ink)}.gla-zone span{font-size:13px;color:var(--gl-muted)}
.gla-zone.over,.gla-zone:hover{background:#f6efdd;border-color:var(--gl-gold)}
.gla-zone.busy{opacity:.6;pointer-events:none}
.gla-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-top:10px}
.gla-meta label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:700}
.gla-check{flex-direction:row!important;align-items:center;gap:8px!important;font-weight:600!important;min-height:44px}
.gla-queue{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px}
.gla-queue li{display:grid;grid-template-columns:1fr 120px 110px;gap:10px;align-items:center;font-size:13px}
.gla-queue li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gla-queue i{height:6px;border-radius:6px;background:#ece6d6;overflow:hidden}.gla-queue b{display:block;height:100%;width:0;background:linear-gradient(90deg,#e6d3a3,#b08f55);transition:width .2s}
.gla-queue li.ok em{color:#3f5a32}.gla-queue li.err em{color:#8a4a36}
.gla-count{margin:4px 0 0;font-size:13px;color:var(--gl-muted)}
.gla-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.gla-list li{display:grid;grid-template-columns:96px 1fr auto;gap:12px;align-items:start;padding:10px;border:1px solid #e2dccb;border-radius:16px;background:#fffdf8}
.gla-list li.off{opacity:.55}
.gla-thumb{position:relative;width:96px;height:96px;border-radius:12px;overflow:hidden;background:#ece5d3}
.gla-thumb img{width:100%;height:100%;object-fit:cover}
.gla-thumb i{position:absolute;left:6px;bottom:6px;padding:2px 6px;border-radius:6px;background:rgb(57 67 47/.8);color:#f4eedd;font:700 9px/1.4 system-ui;letter-spacing:1px;font-style:normal}
.gla-edit{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.gla-edit input:not([type=checkbox]){min-height:38px;padding:6px 10px;border:1px solid #e2dccb;border-radius:10px;font:inherit;font-size:14px;background:#fff}
.gla-edit input[name=alt]{grid-column:1/-1}
.gla-flags{display:flex;flex-wrap:wrap;gap:12px;font-size:13px;align-items:center}.gla-flags label{display:flex;gap:5px;align-items:center}
.gla-save{justify-self:start;min-height:36px;padding:6px 16px;border:0;border-radius:10px;background:linear-gradient(135deg,#e6d3a3,#c9ab6d 45%,#b08f55);font-weight:700;cursor:pointer}
.gla-ops{display:flex;flex-direction:column;gap:6px}
.gla-op{width:36px;height:36px;border-radius:10px;border:1px solid #e2dccb;background:#fff;cursor:pointer;font-size:16px}
.gla-op.danger{color:#8a4a36}
@media(max-width:640px){.gla-list li{grid-template-columns:72px 1fr}.gla-thumb{width:72px;height:72px}.gla-ops{grid-column:1/-1;flex-direction:row}.gla-edit{grid-template-columns:1fr}.gla-queue li{grid-template-columns:1fr 80px}.gla-queue em{grid-column:1/-1}}
