/* URUNMODUL v2 — visbody.tr ürün kartı: 9:16 galeri (en çok 8 görsel) + açıklama + ekler (PDF · Video · Görseller). Önek .um- */
.um,.um *{box-sizing:border-box}
.um{--um-cyan:#3ee6ff;--um-blue:#1f6bff;--um-soft:#d5deea;--um-mist:#a9b7c9;--um-line:rgba(169,183,201,.22);--um-glass:rgba(6,12,30,.62);color:#fff;font-family:inherit;margin-top:clamp(1.5rem,3vw,2.5rem)}
.um-filtre{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.6rem;padding:0;list-style:none}
.um-filtre button{min-height:2.5rem;padding:0 1.1rem;border-radius:999px;border:1px solid var(--um-line);background:rgba(255,255,255,.03);color:var(--um-soft);font:600 .88rem/1 inherit;font-family:inherit;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.um-filtre button:hover{border-color:rgba(169,183,201,.45);color:#fff}
.um-filtre button[aria-pressed=true]{background:linear-gradient(135deg,var(--um-cyan),var(--um-blue));border-color:transparent;color:#02040a}
.um-filtre small{opacity:.7;font-weight:500;margin-left:.35rem}
.um-liste{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.75rem);align-items:start}
.um-kart{--tn:#3ee6ff;position:relative;display:flex;flex-direction:column;border:1px solid var(--um-line);border-radius:24px;background:var(--um-glass);overflow:hidden;scroll-margin-top:96px;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .35s}
.um-kart:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--tn) 45%,transparent);box-shadow:0 30px 70px -40px color-mix(in srgb,var(--tn) 70%,transparent)}
.um-kart[hidden]{display:none}
/* galeri */
.um-gal{position:relative;aspect-ratio:9/16;background:#02040a;overflow:hidden}
.um-track{display:flex;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.um-track::-webkit-scrollbar{display:none}
.um-sl{flex:0 0 100%;height:100%;scroll-snap-align:start;position:relative;margin:0}
.um-sl button{all:unset;display:block;width:100%;height:100%;cursor:zoom-in}
.um-sl img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.um-sl.kap{overflow:hidden;background:#02040a}
.um-sl.kap:before{content:"";position:absolute;inset:-10%;background:var(--bg) center/cover no-repeat;filter:blur(26px) saturate(1.1) brightness(.42);transform:scale(1.08)}
.um-sl.kap:after{content:"";position:absolute;inset:0;background:radial-gradient(120% 70% at 50% 50%,transparent 40%,rgba(2,4,10,.55));pointer-events:none}
.um-sl.kap img{object-fit:contain;filter:drop-shadow(0 18px 40px rgba(0,0,0,.55))}
.um-kart:hover .um-sl img{transform:scale(1.03)}
.um-gal:after{content:"";position:absolute;inset:auto 0 0;height:38%;background:linear-gradient(transparent,rgba(2,4,10,.86));pointer-events:none}
.um-ust{position:absolute;z-index:2;top:.9rem;left:.9rem;right:.9rem;display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.um-logo{height:14px;width:auto;opacity:.95}
.um-say{font-size:.75rem;font-weight:600;letter-spacing:.04em;padding:.25rem .6rem;border-radius:999px;background:rgba(4,7,15,.6);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(6px)}
.um-alt{position:absolute;z-index:2;left:1rem;right:1rem;bottom:1rem;pointer-events:none}
.um-slogan{margin:0 0 .7rem;font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:clamp(1.15rem,1rem + .5vw,1.45rem);line-height:1.15;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.um-nok{display:flex;gap:.35rem;pointer-events:auto}
.um-nok button{width:.5rem;height:.5rem;padding:0;border-radius:999px;border:0;background:rgba(255,255,255,.4);cursor:pointer;transition:width .25s,background .25s}
.um-nok button[aria-current=true]{width:1.4rem;background:var(--tn)}
.um-ok{position:absolute;z-index:3;top:50%;width:2.75rem;height:2.75rem;margin-top:-1.375rem;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(4,7,15,.55);color:#fff;display:grid;place-items:center;cursor:pointer;opacity:0;transition:opacity .25s,background .2s;backdrop-filter:blur(6px)}
.um-ok svg{width:1.1rem;height:1.1rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.um-ok.g{left:.7rem}.um-ok.i{right:.7rem}
.um-gal:hover .um-ok,.um-ok:focus-visible{opacity:1}
.um-ok:hover{background:rgba(31,107,255,.7)}
.um-ok[disabled]{opacity:0!important;pointer-events:none}
.um-tek .um-ok,.um-tek .um-nok,.um-tek .um-say{display:none}
/* gövde */
.um-govde{display:flex;flex-direction:column;gap:.85rem;padding:1.3rem 1.3rem 1.4rem}
.um-kat{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--tn)}
.um-ad{margin:0;font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-size:clamp(1.7rem,1.3rem + 1vw,2.2rem);line-height:1.05}
.um-ad a{color:#fff;text-decoration:none}.um-ad a:hover{color:var(--tn)}
.um-acik p{margin:0;color:var(--um-soft);font-size:.98rem;line-height:1.55}
.um-acik .uzun{margin-top:.55rem;color:var(--um-mist);display:none}
.um-acik.acik .uzun{display:block}
.um-devam{align-self:flex-start;padding:0;border:0;background:none;color:var(--tn);font:600 .86rem/1.4 inherit;font-family:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.um-ekler{display:grid;gap:.7rem;margin-top:.2rem;padding-top:1rem;border-top:1px solid var(--um-line)}
.um-grup h4{margin:0 0 .45rem;font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--um-mist)}
.um-ciple{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0}
.um-cip{display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;padding:.35rem .9rem .35rem .4rem;border-radius:14px;border:1px solid var(--um-line);background:rgba(255,255,255,.035);color:#fff;text-decoration:none;font:600 .85rem/1.2 inherit;font-family:inherit;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.um-cip:hover{background:rgba(255,255,255,.08);border-color:rgba(169,183,201,.45);transform:translateY(-1px)}
.um-cip i{width:2rem;height:2rem;border-radius:10px;display:grid;place-items:center;flex:none}
.um-cip i svg{width:1rem;height:1rem;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.um-cip small{display:block;font-weight:500;font-size:.72rem;color:var(--um-mist)}
.um-cip.pdf i{background:linear-gradient(135deg,#4fc3f7,#1f6bff)}
.um-cip.video i{background:linear-gradient(135deg,#3ee6ff,#00897b)}
.um-cip.gorsel i{background:linear-gradient(135deg,#f2b866,#c77d2a)}
.um-cip.kayit i{background:linear-gradient(135deg,#9ccc65,#558b2f)}
.um-git{display:flex;gap:.6rem;margin-top:.3rem}
.um-git a{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:3rem;border-radius:14px;font-weight:600;font-size:.95rem;text-decoration:none}
.um-git .pri{background:var(--um-blue);color:#fff;box-shadow:0 14px 40px -16px rgba(31,107,255,.95)}
.um-git .pri:hover{background:#3a7dff}
.um-git .ikn{border:1px solid var(--um-line);color:#fff;background:rgba(255,255,255,.03)}
.um-git .ikn:hover{background:rgba(255,255,255,.08)}
.um :focus-visible{outline:2px solid var(--um-cyan);outline-offset:2px}
/* lightbox */
.um-lb{width:min(96vw,1100px);max-height:94vh;padding:0;border:1px solid var(--um-line,rgba(169,183,201,.22));border-radius:20px;background:#04070f;color:#fff;overflow:hidden}
.um-lb::backdrop{background:rgba(2,4,10,.88);backdrop-filter:blur(6px)}
.um-lb-bas{display:flex;align-items:center;gap:.8rem;padding:.7rem .8rem .7rem 1.2rem;border-bottom:1px solid rgba(169,183,201,.18)}
.um-lb-t{flex:1;margin:0;font-weight:600;font-size:.95rem}
.um-lb-s{font-size:.8rem;color:#a9b7c9}
.um-lb-x,.um-lb-ok{width:2.75rem;height:2.75rem;border-radius:50%;border:1px solid rgba(169,183,201,.3);background:rgba(255,255,255,.04);color:#fff;font-size:1.2rem;cursor:pointer;display:grid;place-items:center}
.um-lb-ok svg{width:1.1rem;height:1.1rem;fill:none;stroke:currentColor;stroke-width:2}
.um-lb-gov{position:relative;display:flex;align-items:center;justify-content:center;background:#000;height:min(80vh,860px)}
.um-lb-gov img,.um-lb-gov video{max-width:100%;max-height:100%;object-fit:contain;display:block}
.um-lb-gov .um-lb-ok{position:absolute;top:50%;margin-top:-1.375rem;background:rgba(4,7,15,.6)}
.um-lb-gov .um-lb-ok.g{left:.8rem}.um-lb-gov .um-lb-ok.i{right:.8rem}
.um-lb-ayak{display:flex;justify-content:flex-end;padding:.6rem .8rem}
.um-lb-ayak a{color:#3ee6ff;font-weight:600;font-size:.88rem}
@media (max-width:1099px){.um-liste{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:699px){
 .um-liste{grid-template-columns:1fr;gap:1.1rem}
 .um-ok{display:none}
 .um-govde{padding:1.1rem 1.05rem 1.2rem}
 .um-filtre{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-right:-1rem;padding-right:1rem}
 .um-filtre button{flex:none}
 .um-cip{flex:1 1 calc(50% - .45rem)}
 .um-lb{width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;border-radius:0;border:0}
 .um-lb-gov{height:calc(100dvh - 8.5rem)}
}
@media (prefers-reduced-motion:reduce){.um *{transition:none!important}.um-track{scroll-behavior:auto}}

/* v2: ÜTS grubu, e-kitap çipi */
.um-cip.kitap i{background:linear-gradient(135deg,#f3c87a,#d08a2c)}
