/* VANFLIRT · vanflirt.com
   Obstoječa temna foto-first lupina, Robeta zlata kot edini poudarek.
   Pravila: brez prelivov, samo ravne barve + hairlines + blur; steklo je pravi element (iOS ne blura pseudo-elementov);
   noben prednik elementa position:fixed nima transform/filter/backdrop-filter. */

/* ---------- pisava Figtree: lastne datoteke (latin za osnovne znake, latin-ext za č, š, ž), enaki obsegi znakov kot jih postreže Google ---------- */
@font-face{font-family:'Figtree';font-style:normal;font-weight:400 800;font-display:swap;src:url(./fonts/figtree-v9-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Figtree';font-style:normal;font-weight:400 800;font-display:swap;src:url(./fonts/figtree-v9-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Figtree';font-style:italic;font-weight:500;font-display:swap;src:url(./fonts/figtree-v9-italic-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Figtree';font-style:italic;font-weight:500;font-display:swap;src:url(./fonts/figtree-v9-italic-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --bg:#0B0C0E; --ink:#141310; --paper:#F4F3F0; --paper-2:#ECEAE8;
  --mute-d:#8f8a83; --mute-p:#605b54;
  --line-d:rgba(255,255,255,.18); --line-p:rgba(20,19,16,.10);
  --gold:#b5a291; --gold-deep:#8d745a; --gold-hover:rgba(181,162,145,.88);
  --shadow:0 18px 44px -14px rgba(11,12,14,.55);
  --ease:cubic-bezier(.2,.8,.2,1);
  --t:260ms;
  --safe-t:env(safe-area-inset-top,0px); --safe-b:env(safe-area-inset-bottom,0px);
  --tabs-h:64px; --tabs-gap:10px; --act-h:64px;
  --acts-bottom:calc(var(--safe-b) + var(--tabs-gap) + var(--tabs-h) + 14px);
  --info-bottom:calc(var(--safe-b) + var(--tabs-gap) + var(--tabs-h) + 12px); /* spodnji rob info panela: 12 px nad spodnjo vrstico */
  --rail-top:calc(var(--safe-t) + 72px); /* navpični pas tik pod števcem n / N */
  --fb:'Figtree',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--bg);color:#fff;font-family:var(--fb);font-size:16px;line-height:1.4;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;overflow:hidden;overscroll-behavior:none}
img{display:block;max-width:100%}
a{color:inherit}
button{appearance:none;-webkit-appearance:none;border:0;background:none;font:inherit;color:inherit;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
button:disabled{cursor:default}
button,a,.tile,.lrow,.chip,.hero{touch-action:manipulation}
h1,h2,h3,p{margin:0}
[hidden]{display:none!important}
svg.i{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
svg.i.fill{fill:currentColor}

/* ---------- steklo ---------- */
.glass{background:rgba(20,19,16,.42);-webkit-backdrop-filter:blur(18px) saturate(1.2);backdrop-filter:blur(18px) saturate(1.2);border:1px solid rgba(255,255,255,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.glass.light{background:rgba(255,255,255,.74);border-color:rgba(20,19,16,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.6);color:var(--ink)}

/* ---------- stanja kontrol ---------- */
.press{transition:transform var(--t) var(--ease),background-color var(--t) var(--ease),color var(--t) var(--ease),opacity var(--t) var(--ease)}
.press:active:not(:disabled){transform:scale(.96)}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.paper :focus-visible,.sheet :focus-visible{outline-color:var(--gold-deep)}
@media (hover:hover){
  .glass.press:hover:not(:disabled){background:rgba(20,19,16,.58)}
  .glass.light.press:hover:not(:disabled){background:rgba(255,255,255,.92)}
  .gold.press:hover:not(:disabled){background:var(--gold-hover)}
  .lnk:hover{color:#fff}
  .mi:hover{background:rgba(255,255,255,.06)}
  .go2:hover{color:var(--ink)}
  .paper .lnk:hover,.sheet .lnk:hover{color:var(--ink)}
  .tabs button:hover:not([aria-current=page]){background:rgba(255,255,255,.12)}
  .chip:hover:not(.on){background:var(--paper-2)}
}

/* ---------- okvir aplikacije ---------- */
.stage{position:relative;z-index:1;height:100%;height:100dvh;display:grid;place-items:center}
.phone{width:100%;height:100%}
.app{position:relative;width:100%;height:100%;height:100dvh;overflow:hidden;background:var(--bg);isolation:isolate}
.view{position:absolute;inset:0}
.backdrop,.side{display:none}

/* ---------- zgornja vrstica ---------- */
.bar{position:absolute;z-index:20;left:0;right:0;top:0;padding:calc(var(--safe-t) + 24px) 16px 0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;pointer-events:none}
.bar>*{pointer-events:auto}
.sq{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;justify-self:start}
.logos{display:flex;align-items:center;gap:8px;height:44px;padding:0 14px;border-radius:999px}
.logos img{height:auto;width:76px}
.logos img.vt{width:62px}
.logos i{font-style:normal;font-weight:500;font-size:14px;color:rgba(255,255,255,.72)}
.count{justify-self:end;height:32px;padding:0 12px;border-radius:999px;display:grid;place-items:center;font-size:12px;font-weight:600;letter-spacing:.02em;white-space:nowrap}
.app:not([data-screen=deck]) .count{display:none}
.app[data-screen=explore] .bar,.app[data-screen=pari] .bar,.app[data-screen=msgs] .bar,.app[data-screen=boot] .bar{display:none}

/* ---------- spodnja vrstica ---------- */
.tabs{position:absolute;z-index:30;left:16px;right:16px;bottom:calc(var(--safe-b) + var(--tabs-gap));height:var(--tabs-h);border-radius:24px;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;justify-items:center;padding:0 6px;background:rgba(20,19,16,.55)}
.app[data-screen=explore] .tabs,.app[data-screen=pari] .tabs,.app[data-screen=msgs] .tabs{background:rgba(20,19,16,.8)}
.app[data-screen=intro] .tabs,.app[data-screen=boot] .tabs{display:none}
.tabs button{position:relative;width:48px;height:48px;border-radius:12px;display:grid;place-items:center;color:rgba(255,255,255,.8);transition:transform var(--t) var(--ease),background-color var(--t) var(--ease),color var(--t) var(--ease)}
.tabs button:active{transform:scale(.96)}
.tabs button[aria-current=page]{background:var(--gold);color:var(--ink)}
.tabs svg.i{width:24px;height:24px}
.tabs b{position:absolute;top:2px;right:0;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--gold);color:var(--ink);font-size:10px;font-weight:800;display:grid;place-items:center}
.tabs button[aria-current=page] b{background:var(--ink);color:var(--gold)}

/* ---------- uvod in vprašanja (ista slika, ravna zatemnitev) ---------- */
.photoscreen{position:absolute;inset:0;overflow:hidden;background:var(--bg)}
.photoscreen .bgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:30% 50%}
.photoscreen .veil{position:absolute;inset:0;background:rgba(11,12,14,.1)}
.photoscreen.q .veil{background:rgba(11,12,14,.18)}
/* steklo na svetlem nebu (zahod): temnejše, da bel napis ostane bralen; zgornja vrstica enako */
.photoscreen .glass,.bar .glass{background:rgba(20,19,16,.55)}
@media (hover:hover){.photoscreen .glass.press:hover:not(:disabled){background:rgba(20,19,16,.7)}}
/* uvod: napis v nebu (zgornjih 40 %), avtodom in oseba ostaneta prosta, gumba spodaj nad travo */
/* napis in logo ležita neposredno na fotografiji, brez plošče; berljivost na bledem nebu samo z mehko senco (brez prelivov). Položaj je enak kot prej, ko je plošča imela odmik 16 + 18 px. */
.intro .head{position:absolute;left:34px;right:34px;top:calc(var(--safe-t) + 108px);display:grid;gap:8px}
.intro .head .lockup{filter:drop-shadow(0 1px 10px rgba(11,12,14,.35)) drop-shadow(0 0 2px rgba(11,12,14,.3))}
.intro .head .ask,.intro .head .sub{text-shadow:0 1px 10px rgba(11,12,14,.4),0 0 3px rgba(11,12,14,.28)}
.intro .pills{position:absolute;left:16px;right:16px;bottom:calc(var(--safe-b) + 16px);display:grid;gap:8px}
.intro .pill{min-height:54px;padding:8px 22px}
/* logo: inline SVG z obrisi (višina iz LOGO.h v em), črke in plamen beli (kot referenca) */
.lockup{display:block;width:auto;max-width:100%;overflow:visible}
.lockup .lw{fill:#fff}
.lockup .lf{fill:#fff}
.hash{line-height:1}
.intro .ask{font-size:22px;font-weight:600;letter-spacing:-.01em;line-height:1.15;text-wrap:balance;margin-top:4px}
.intro .sub{font-size:15px;line-height:1.35;color:rgba(255,255,255,.9);max-width:34ch}
.pill{width:100%;min-height:62px;padding:10px 22px;border-radius:999px;display:grid;justify-items:center;align-content:center;gap:1px;text-align:center}
.pill b{font-size:17px;font-weight:700;letter-spacing:-.01em}
.pill small{font-size:12px;color:rgba(255,255,255,.72)}
.pill.pref{border-color:var(--gold)}
.gold{background:var(--gold);color:var(--ink);border:0}
.btn{min-height:52px;padding:0 24px;border-radius:999px;display:inline-grid;place-items:center;font-size:16px;font-weight:700;text-decoration:none;text-align:center;letter-spacing:-.005em}
.btn.full{width:100%}
a.btn{display:grid}

.q .col{position:absolute;left:16px;right:16px;top:calc(var(--safe-t) + 90px);bottom:calc(var(--acts-bottom) + 6px);display:flex;flex-direction:column}
.q .say{font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--gold);display:flex;align-items:center;gap:8px}
.q .say svg.i{width:20px;height:20px}
.qhead{padding:14px 18px 16px;border-radius:26px;margin-bottom:10px}
.q h2{font-size:32px;font-weight:800;letter-spacing:-.02em;line-height:1;text-wrap:balance;margin:8px 0 0}
.opts{display:grid;gap:8px}
.opts.n4{grid-template-columns:1fr 1fr}
.opt{min-height:50px;padding:0 20px;border-radius:999px;font-size:16px;font-weight:600;text-align:left;display:flex;align-items:center;justify-content:space-between}
.qfoot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;padding-top:14px}
.prog{display:flex;gap:6px}
.prog i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.3);box-shadow:0 0 0 1px rgba(11,12,14,.35)}
.prog i.on{background:var(--gold)}
.lnk{font-size:13px;font-weight:600;color:rgba(255,255,255,.78);text-decoration:underline;text-underline-offset:3px;transition:color var(--t) var(--ease)}

/* ---------- kup kart ---------- */
.deckwrap{position:absolute;inset:0;background:var(--bg)}
.deck{position:absolute;inset:0;z-index:1}
.card{position:absolute;inset:0;overflow:hidden;background:var(--bg);transform-origin:50% 75%;will-change:transform;-webkit-user-select:none;user-select:none}
.card.top{touch-action:none;cursor:grab}
.card.settle{transition:transform .32s var(--ease)}
.card.fly{transition:transform .42s var(--ease),opacity .42s var(--ease)}
.card .ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;-webkit-user-drag:none;-webkit-touch-callout:none}
.noph{position:absolute;inset:0;display:grid;place-items:center;padding:40px;background:var(--paper-2);color:var(--ink);font-size:34px;font-weight:800;letter-spacing:-.02em;text-align:center;text-wrap:balance}
.card .ui{position:absolute;inset:0;pointer-events:none;transition:opacity var(--t) var(--ease)}
.card:not(.top) .ui{opacity:0}
.segs{position:absolute;z-index:3;left:18px;right:18px;top:calc(var(--safe-t) + 10px);display:flex;gap:4px;pointer-events:none}
.segs i{flex:1;height:3px;border-radius:2px;background:rgba(255,255,255,.35);box-shadow:0 0 0 .5px rgba(11,12,14,.28)}
.segs i.on{background:var(--gold)}
.badges{position:absolute;left:16px;right:84px;top:calc(var(--safe-t) + 84px);display:flex;flex-wrap:wrap;gap:6px}
.badge{height:26px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;font-size:12px;font-weight:600;line-height:1}
.badge.g{background:var(--gold);color:var(--ink);border:0}
.stamp{position:absolute;top:30%;padding:2px 16px;border-radius:14px;font-size:46px;font-weight:800;letter-spacing:.02em;line-height:1.1;opacity:0}
.stamp.yes{left:20px;color:var(--gold);border:4px solid var(--gold);transform:rotate(-12deg)}
.stamp.no{right:20px;color:#fff;border:4px solid #fff;transform:rotate(12deg)}
.infowrap{position:absolute;left:16px;right:16px;bottom:var(--info-bottom);display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.info{position:relative;width:100%;padding:14px 16px 14px;border-radius:22px;background:rgba(20,19,16,.56)}
.gbtn{color:#fff;height:34px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:600;line-height:1;white-space:nowrap;pointer-events:auto;display:inline-flex;align-items:center}
.nm{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.nm b{font-size:25px;font-weight:800;letter-spacing:-.02em;line-height:1.02;min-width:0;text-wrap:balance}
.pr{flex:none;text-align:right;color:var(--gold);font-size:19px;font-weight:700;letter-spacing:-.01em;line-height:1.05}
.pr small{display:block;margin-top:2px;font-size:11px;font-weight:500;letter-spacing:0;color:rgba(255,255,255,.74)}
.pr.ask{font-size:13px;font-weight:600}
.meta{margin-top:6px;font-size:12px;line-height:1.4;color:rgba(255,255,255,.8)}
.bio{margin-top:8px;max-width:34ch;font-size:14px;line-height:1.35;font-style:italic;font-weight:500;text-wrap:pretty}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.tags span{padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.14);font-size:11px;font-weight:600;line-height:1.2}
/* NE in JA na robovih ekrana, na sredini kartice (margin namesto transform, da :active scale ne podre položaja) */
.round{border-radius:50%;display:grid;place-items:center}
.round.no{position:absolute;z-index:5;left:16px;top:50%;margin-top:-28px;width:56px;height:56px}
.round.yes{position:absolute;z-index:5;right:16px;top:50%;margin-top:-32px;width:var(--act-h);height:var(--act-h);box-shadow:var(--shadow)}
.round svg.i{width:26px;height:26px}
.round.yes svg.i{width:28px;height:28px}
.rail{position:absolute;z-index:5;right:16px;top:var(--rail-top);width:52px;padding:5px;border-radius:20px;display:grid;gap:4px}
.rbtn{width:40px;height:40px;border-radius:14px;display:grid;place-items:center;color:#fff}
.rbtn svg.i{width:20px;height:20px}
.rbtn:disabled{opacity:.35}
/* nizki zasloni: krajši bio, da info panel in gumb Poglej vse slike ne zaideta do srčka na sredini */
@media (max-height:760px){
  .tags{display:none}
  .bio{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
}

/* ---------- ujemanje ---------- */
.match{position:absolute;inset:0;overflow:hidden;background:var(--bg)}
.match .bgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.match .veil{position:absolute;inset:0;background:rgba(11,12,14,.28)}
.match .wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:calc(var(--safe-t) + 84px) 16px calc(var(--acts-bottom) + 6px)}
.mpanel{width:100%;padding:22px 20px 20px;border-radius:28px;display:grid;gap:8px;text-align:left;max-height:100%;overflow:auto}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--gold)}
.mpanel h1{font-size:46px;font-weight:800;letter-spacing:-.03em;line-height:1}
.mpanel .who{font-size:18px;font-weight:700;letter-spacing:-.01em;margin-top:4px}
.mpanel .mprice{font-size:22px;font-weight:700;color:var(--gold);letter-spacing:-.01em}
.mpanel .mprice small{font-size:12px;font-weight:500;color:rgba(255,255,255,.74);margin-left:6px;letter-spacing:0}
.mpanel .txt{font-size:15px;line-height:1.4;color:rgba(255,255,255,.88);max-width:36ch}
.mpanel .ctas{display:grid;gap:10px;margin-top:10px}
.mpanel .band{margin-top:6px;font-size:12px;color:rgba(255,255,255,.78);text-decoration:none;text-align:center;line-height:1.35}
.mpanel .band b{display:block;font-size:11px;letter-spacing:.08em;font-weight:600;color:var(--mute-d);text-transform:none}
.mpanel .band u{text-underline-offset:3px}

/* ---------- nalaganje, napaka, konec ---------- */
.skel{position:absolute;inset:0;background:var(--bg)}
.sk{position:absolute;background:var(--paper-2);border-radius:24px;opacity:.1;animation:pulse 1.3s ease-in-out infinite alternate}
.sk.a{left:12px;right:12px;top:calc(var(--safe-t) + 80px);bottom:calc(var(--info-bottom) - 18px)}
.sk.b{left:16px;right:16px;bottom:var(--info-bottom);height:176px;opacity:.16;animation-delay:.2s}
.sk.c{left:16px;top:50%;margin-top:-28px;width:56px;height:56px;border-radius:50%;opacity:.16}
.sk.d{right:16px;top:50%;margin-top:-32px;width:64px;height:64px;border-radius:50%;opacity:.16;animation-delay:.3s}
.sk.e{right:16px;top:var(--rail-top);width:52px;height:140px;border-radius:20px;opacity:.16;animation-delay:.1s}
@keyframes pulse{from{opacity:.07}to{opacity:.2}}
.skel .say{position:absolute;left:24px;right:24px;top:calc(var(--safe-t) + 150px);text-align:center;font-size:17px;font-weight:600;line-height:1.3;color:rgba(255,255,255,.9);text-wrap:balance}
.state .wrap{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;padding:calc(var(--safe-t) + 84px) 16px calc(var(--acts-bottom) + 6px)}
.spanel{width:100%;padding:18px 18px 16px;border-radius:26px;display:grid;gap:8px}
.spanel h1{font-size:30px;font-weight:800;letter-spacing:-.02em;line-height:1;text-wrap:balance}
.spanel .txt{font-size:15px;line-height:1.4;color:rgba(255,255,255,.86);max-width:36ch}
.spanel .ctas{display:grid;gap:8px;margin-top:6px}
.spanel .btn{min-height:48px}

/* ---------- papirnati zasloni ---------- */
.paper{position:absolute;inset:0;background:var(--paper);color:var(--ink);overflow-y:auto;overscroll-behavior:contain;padding:calc(var(--safe-t) + 16px) 16px calc(var(--acts-bottom) + 24px)}
.paper .sq.glass{color:var(--ink)}
.erow{display:flex;align-items:center;gap:10px}
.chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 0;margin-right:-16px;padding-right:16px;flex:1;min-width:0}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--line-p);background:#fff;color:var(--ink);font-size:14px;font-weight:600;white-space:nowrap}
.chip.on{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.chip.sm{height:32px;padding:0 13px;font-size:13px}
.srow{display:flex;align-items:center;gap:8px;margin:12px 0 12px}
.srow .n{margin-left:auto;font-size:12px;color:var(--mute-p)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tile{position:relative;aspect-ratio:3/4;border-radius:16px;overflow:hidden;background:var(--paper-2);text-align:left;display:block;color:#fff}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.tile .noph{font-size:20px;padding:16px;color:var(--ink)}
.tl{position:absolute;left:8px;right:8px;bottom:8px;padding:7px 10px;border-radius:12px;display:grid;gap:1px}
.tl .p{font-size:14px;font-weight:700;color:var(--gold);letter-spacing:-.01em;line-height:1.1}
.tl .m{font-size:13px;font-weight:600;line-height:1.15}
.tl .s{font-size:11px;color:rgba(255,255,255,.72);line-height:1.2}
.empty-p{padding:56px 12px;text-align:center;color:var(--mute-p);font-size:15px;line-height:1.4;text-wrap:balance}
.paper h1{font-size:34px;font-weight:800;letter-spacing:-.02em;line-height:1}
.ptitle{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:6px 0 16px;min-height:44px}
.ptitle .sq{flex:none}
.ptitle h1{flex:1}
.avrow{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;margin:0 -16px 20px;padding:0 16px}
.avrow::-webkit-scrollbar{display:none}
.avc{flex:none;width:72px;display:grid;gap:6px;justify-items:center;font-size:12px;font-weight:600;text-align:center}
.avc .av{width:72px;height:72px;border-radius:18px}
.avc span{max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.av{position:relative;overflow:hidden;background:var(--paper-2);flex:none}
.av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.av .noph{font-size:11px;padding:4px;color:var(--mute-p)}
.list{display:grid}
.lrow{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line-p);text-align:left;width:100%}
.lrow.two{grid-template-columns:56px 1fr}
.prow{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line-p)}
.lmain{flex:1;min-width:0;display:grid;grid-template-columns:56px 1fr;gap:12px;align-items:center;padding:10px 0;text-align:left;width:100%}
.lmain b{display:block;font-size:16px;font-weight:700;letter-spacing:-.01em;line-height:1.15}
.lmain small{display:block;margin-top:2px;font-size:13px;color:var(--mute-p);line-height:1.3}
.lmain .av{width:56px;height:56px;border-radius:16px}
.lrow .av{width:56px;height:56px;border-radius:16px}
.lrow b{display:block;font-size:16px;font-weight:700;letter-spacing:-.01em;line-height:1.15}
.lrow small{display:block;margin-top:2px;font-size:13px;color:var(--mute-p);line-height:1.3}
.lrow .prev{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.go2{font-size:14px;font-weight:700;color:var(--gold-deep);text-decoration:none;padding:8px 2px}
.ptlogo{flex:none;width:84px;height:auto}
.pfoot{margin-top:22px;display:flex;justify-content:center}
.paper .lnk{color:var(--mute-p)}

/* ---------- podrobnosti (papirnat list) ---------- */
.sheet{position:absolute;inset:0;z-index:40;background:var(--paper);color:var(--ink);transform:translateY(100%);visibility:hidden;transition:transform .32s var(--ease),visibility 0s linear .32s}
.sheet.open{transform:translateY(0);visibility:visible;transition:transform .32s var(--ease),visibility 0s}
.sheet.drag{transition:none}
.hero .gbtn{position:absolute;z-index:4;right:16px;bottom:44px}

/* galerija vseh slik: temno ozadje, vsaka slika cela (brez obrezovanja) */
.gallery{z-index:60;background:var(--bg);color:#fff}
.ghead{position:absolute;z-index:3;left:0;right:0;top:0;padding:calc(var(--safe-t) + 14px) 16px 12px;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;background:rgba(11,12,14,.82);-webkit-backdrop-filter:blur(18px) saturate(1.2);backdrop-filter:blur(18px) saturate(1.2);border-bottom:1px solid var(--line-d);touch-action:none}
.gtitle{text-align:center;font-size:16px;font-weight:700;letter-spacing:-.01em;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gscroll{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:calc(var(--safe-t) + 72px) 0 calc(var(--safe-b) + 24px)}
.gimg{display:block;width:100%;height:auto;min-height:60vw;object-fit:contain;margin:0 0 8px;background:var(--ink);-webkit-touch-callout:none}
.sheet:focus,.chat:focus{outline:none}
.sbody{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.hero{position:relative;height:min(64dvh,560px);background:var(--paper-2);overflow:hidden;cursor:pointer}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero .noph{font-size:30px}
.grab{position:absolute;z-index:4;left:50%;top:calc(var(--safe-t) + 16px);width:96px;height:36px;margin-left:-48px;display:grid;place-items:center;touch-action:none;cursor:grab}
.grab i{display:block;width:44px;height:5px;border-radius:3px;background:rgba(255,255,255,.78);box-shadow:0 0 0 .5px rgba(11,12,14,.3)}
.scard{position:relative;margin-top:-26px;background:var(--paper);border-radius:26px 26px 0 0;padding:22px 20px calc(var(--safe-b) + 112px)}
.stitle{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.stitle h2{font-size:32px;font-weight:800;letter-spacing:-.02em;line-height:1;text-wrap:balance}
.plate{flex:none;margin-top:3px;padding:5px 9px;border:1px solid var(--line-p);border-radius:8px;font-size:12px;font-weight:700;letter-spacing:.04em;line-height:1.1}
.sprice{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-top:12px}
.sprice b{font-size:30px;font-weight:800;letter-spacing:-.02em;color:var(--gold-deep);line-height:1}
.sprice small{font-size:12px;color:var(--mute-p)}
.snet{margin-top:3px;font-size:13px;color:var(--mute-p)}
.pchips{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.pchips span{padding:5px 10px;border-radius:999px;background:var(--paper-2);font-size:12px;font-weight:600;line-height:1.2}
.pchips span.g{background:var(--gold);color:var(--ink)}
.sbio{margin:16px 0 18px;max-width:34ch;font-size:16px;line-height:1.4;font-style:italic;font-weight:500;text-wrap:pretty}
.mgrid{display:grid;grid-template-columns:1fr 1fr;gap:1px;border:1px solid var(--line-p);border-radius:16px;overflow:hidden;background:var(--line-p)}
.mgrid div{background:var(--paper);padding:11px 14px}
.mgrid small,.eyel{display:block;font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--mute-p)}
.mgrid b{display:block;margin-top:2px;font-size:15px;font-weight:700;line-height:1.25}
.rows{margin-top:18px;border-top:1px solid var(--line-p)}
.rows div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line-p);font-size:14px;line-height:1.3}
.rows dt{color:var(--mute-p);flex:none;max-width:42%}
.rows dd{margin:0;text-align:right;font-weight:600}
.sfoot{margin-top:28px;padding-top:18px;border-top:1px solid var(--line-p)}
.sfoot img{width:96px;height:auto}
.oprema{margin-top:22px}
.oprema ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.oprema li{position:relative;padding-left:18px;font-size:14px;line-height:1.35}
.oprema li::before{content:"";position:absolute;left:2px;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.sact{position:absolute;z-index:6;left:16px;right:16px;bottom:calc(var(--safe-b) + 12px);display:flex;gap:10px}
.sgroup{flex:1;min-width:0;height:60px;border-radius:22px;padding:6px;display:flex;align-items:center;gap:6px}
.sgroup .ib{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;flex:none}
.sgroup .btn{flex:1;min-height:46px;padding:0 12px;font-size:15px;border-radius:16px}
.sact .sq{width:60px;height:60px;border-radius:22px;flex:none}

/* ---------- klepet ---------- */
.chat .sbody{display:flex;flex-direction:column;overflow:hidden}
.chead{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;padding:calc(var(--safe-t) + 14px) 16px 12px}
.chead .mid{text-align:center;min-width:0}
.chead .mid b{display:block;font-size:18px;font-weight:800;letter-spacing:-.01em;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chead .mid small{font-size:12px;color:var(--mute-p)}
.chead .av{width:44px;height:44px;border-radius:14px}
.chead .sq{width:44px;height:44px}
.msgs{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:12px 20px 20px;display:flex;flex-direction:column}
.msg{max-width:84%;margin:0 0 14px;font-size:16px;line-height:1.38}
.msg.me{margin-left:auto;text-align:right;color:var(--gold-deep);font-weight:700}
.address-note{font-size:15px;margin-top:10px;color:rgba(255,255,255,.8)}
.pr.flirt-price{max-width:46%;font-size:14px;line-height:1.22;text-wrap:pretty}
.flirt-match{font-size:20px;line-height:1.25;color:var(--gold);margin:15px 0}
.sprice.flirt-detail{display:block}
.sprice.flirt-detail b{display:block;font-size:24px;line-height:1.15;max-width:24ch}
.sprice.flirt-detail small{display:block;margin-top:8px;line-height:1.4}
.flirt-tile{font-size:13px!important}
.offer-chat .chead{flex:none;border-bottom:1px solid var(--line-p)}
.offer-chat .av{overflow:hidden;display:grid;place-items:center;background:var(--paper-2)}
.offer-chat .av img{width:100%;height:100%;object-fit:cover}
.offer-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 18px calc(var(--safe-b) + 18px)}
.offer-spark{text-align:center;color:var(--gold-deep);font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;margin:4px 0 22px}
.offer-chat .msgs{overflow:visible;padding:0;flex:none}
.offer-chat .msg{background:var(--paper-2);border-radius:16px 16px 16px 3px;padding:13px 15px;max-width:91%;font-size:15px;line-height:1.45}
.offer-chat .msg.me{background:var(--gold);color:var(--ink);border-radius:16px 16px 3px 16px}
.offer-compose{border-top:1px solid var(--line-p);padding-top:18px;margin-top:6px}
.offer-compose label{display:block;font-size:13px;font-weight:700;margin-bottom:9px}
.offer-compose input{display:block;width:100%;min-height:54px;border:1px solid var(--line-p);border-radius:12px;background:#fff;color:var(--ink);font:inherit;font-size:18px;padding:12px 14px}
.offer-compose input:focus{outline:2px solid var(--gold-deep);outline-offset:2px}
.offer-compose input[aria-invalid=true]{border-color:#a23127}
.offer-field{position:relative}
.offer-field input{padding-right:60px;font-weight:700;font-size:24px}
.offer-field>span{position:absolute;right:15px;top:18px;color:var(--mute-p);font-size:13px;font-weight:700}
.offer-help{font-size:12px;line-height:1.5;color:var(--mute-p);margin:11px 0 16px}
.offer-help a{text-decoration:underline;text-underline-offset:3px}
.offer-error{color:#a23127;font-size:14px;line-height:1.4;margin:12px 0 0}
.offer-error:empty{display:none}
.offer-edit{display:block;margin:13px auto 0;background:none;border:0;min-height:40px;padding:6px 12px;color:var(--ink);font:inherit;font-size:13px;text-decoration:underline;cursor:pointer}
.offer-summary{padding:18px;border:1px solid var(--line-p);border-radius:16px;background:#fff}
.offer-summary>span{display:block;font-size:12px;color:var(--mute-p)}
.offer-summary strong{display:block;font-size:36px;letter-spacing:-.035em;line-height:1.2;margin:7px 0 12px}
.offer-summary p{font-size:13px;overflow-wrap:anywhere;margin-top:5px}
.offer-footer{font-size:11px;color:var(--mute-p);line-height:1.4;text-align:center;margin-top:22px}
.offer-honey{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.offer-done{display:flex;align-items:center;flex-direction:column;gap:9px;padding:10px 0 24px}
.offer-done small{font-size:12px;color:var(--mute-p)}
.offer-tick{display:grid;place-items:center;background:var(--gold);color:var(--ink);width:46px;height:46px;border-radius:50%;font-size:25px}
.msg .btn{margin-top:10px;min-height:44px;font-size:15px}
.typing{display:flex;gap:5px;padding:6px 0 14px}
.typing i{width:7px;height:7px;border-radius:50%;background:var(--mute-p);animation:blink .8s ease-in-out infinite alternate}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes blink{from{opacity:.25}to{opacity:1}}
.replies{padding:10px 16px calc(var(--safe-b) + 14px);display:flex;flex-wrap:wrap;gap:8px;min-height:72px;align-content:flex-start}
.reply{min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--line-p);background:#fff;font-size:15px;font-weight:600;color:var(--ink)}
@media (hover:hover){.reply:hover{background:var(--paper-2)}}
.replies .none{font-size:13px;color:var(--mute-p);padding:12px 4px}

/* ---------- stranski meni ---------- */
.scrim{position:absolute;inset:0;z-index:49;background:rgba(11,12,14,.35);opacity:0;pointer-events:none;transition:opacity .28s var(--ease)}
.scrim.on{opacity:1;pointer-events:auto}
.menu{position:absolute;z-index:50;top:0;bottom:0;left:0;width:min(84%,330px);border-radius:0 28px 28px 0;border-left:0;background:rgba(20,19,16,.8);-webkit-backdrop-filter:blur(26px) saturate(1.2);backdrop-filter:blur(26px) saturate(1.2);transform:translateX(-104%);visibility:hidden;transition:transform .32s var(--ease),visibility 0s linear .32s;padding:calc(var(--safe-t) + 20px) 22px calc(var(--safe-b) + 22px);display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain}
.menu>*{flex:none}
.menu.open{transform:none;visibility:visible;transition:transform .32s var(--ease),visibility 0s}
.menu .mtop{display:flex;justify-content:flex-end;margin-bottom:12px}
.menu .mtop .sq{justify-self:end}
.mi{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;padding:15px 0;border-bottom:1px solid var(--line-d);font-size:18px;font-weight:600;letter-spacing:-.01em;text-decoration:none;color:#fff}
.mi small{font-size:12px;font-weight:500;color:var(--mute-d)}
.mhow{padding:6px 0 16px;border-bottom:1px solid var(--line-d)}
.mhow h3{font-size:18px;font-weight:600;letter-spacing:-.01em;padding:9px 0 4px}
.mhow p{font-size:14px;line-height:1.4;color:rgba(255,255,255,.8);margin-top:6px}
.mhow p.mnote{font-size:12px;color:var(--mute-d);margin-top:10px}
.mabout{padding:18px 0 4px}
.mabout h2{font-size:18px;font-weight:600;letter-spacing:-.01em;padding:0 0 4px}
.mabout p{font-size:13px;line-height:1.45;color:rgba(255,255,255,.8);margin-top:6px}
.mabout .mlinks{display:grid;justify-items:start;gap:6px;margin-top:12px}
.mabout .mimprint{font-size:12px;line-height:1.6;color:var(--mute-d);margin-top:14px}
.mabout .mimprint a,.mabout .mimprint button{font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px}
@media (hover:hover){.mabout .mimprint a:hover,.mabout .mimprint button:hover{color:#fff}}
.menu .mlogos{margin-top:auto;display:flex;align-items:center;gap:10px;padding-top:20px}
.menu .mlogos img{height:auto;width:84px}
.menu .mlogos img.vt{width:68px}
.menu .mlogos i{font-style:normal;font-size:13px;color:var(--mute-d)}

/* ---------- namizje ---------- */
@media (min-width:900px) and (min-height:600px){
  .backdrop{display:block;position:fixed;inset:0;z-index:0;overflow:hidden;background:var(--bg)}
  .backdrop img{position:absolute;left:-60px;top:-60px;width:calc(100% + 120px);height:calc(100% + 120px);object-fit:cover;filter:blur(28px) brightness(.45)}
  .bdveil{position:absolute;inset:0;background:rgba(11,12,14,.35)}
  .phone{width:410px;height:min(864px,calc(100dvh - 24px));padding:10px;border-radius:54px;background:var(--ink);box-shadow:0 0 0 1px rgba(255,255,255,.08),0 50px 100px -30px rgba(11,12,14,.85)}
  .app{width:390px;height:100%;border-radius:44px}
}
@media (min-width:1200px) and (min-height:600px){
  .side{display:block;position:fixed;z-index:1;right:calc(50% + 261px);top:50%;transform:translateY(-50%);width:min(380px,calc(50vw - 285px))}
  .side-logo{width:150px;height:auto}
  .side-hash{margin-top:26px;line-height:1;white-space:nowrap}
  .side-line{margin-top:14px;font-size:18px;line-height:1.35;color:rgba(255,255,255,.86);max-width:24ch}
  .side-qr{margin-top:30px;display:grid;gap:10px;justify-items:start}
  .qr{width:152px;height:152px;padding:10px;border-radius:16px;background:var(--paper);display:grid;place-items:center}
  .qr img,.qr canvas{width:132px!important;height:132px!important;display:block}
  .side-qr small{font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--mute-d)}
}

@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){
  .glass{background:rgba(20,19,16,.78)}
  .glass.light{background:rgba(255,255,255,.96)}
  .menu{background:rgba(20,19,16,.92)}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}

/* EUR offer display; percentage bounds remain internal. Native range supports touch and keyboard. */
.offer-slider-card{margin:8px 0 12px;padding:16px 16px 12px;border:1px solid rgba(157,119,53,.24);border-radius:20px;background:#faf7ef;text-align:center}
.offer-slider-card output{display:block;font-size:clamp(28px,9vw,40px);line-height:1.05;font-weight:700;letter-spacing:-.04em;color:#765a2c;font-variant-numeric:tabular-nums}
.offer-baseline{display:block;margin-top:4px;font-size:12px;color:#696050}
.offer-slider-row{display:flex;gap:10px;align-items:center;margin-top:10px}
.offer-nudge{flex:0 0 36px;height:44px;border:0;border-radius:12px;background:#eee4d1;color:#604b2a;font:600 23px Figtree,sans-serif;cursor:pointer}
.offer-nudge:disabled{opacity:.35;cursor:default}
.offer-compose input[type=range]{appearance:none;-webkit-appearance:none;min-width:0;flex:1;width:100%;height:44px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;cursor:pointer;touch-action:pan-y}
.offer-compose input[type=range]::-webkit-slider-runnable-track{height:8px;border-radius:20px;background:#ded8c9}
.offer-compose input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:28px;height:28px;margin-top:-10px;border:3px solid #fff;border-radius:50%;background:#ac8747;box-shadow:0 2px 8px #5f482733}
.offer-compose input[type=range]::-moz-range-track{height:8px;border-radius:20px;background:#ded8c9}
.offer-compose input[type=range]::-moz-range-progress{height:8px;border-radius:20px;background:#ac8747}
.offer-compose input[type=range]::-moz-range-thumb{width:22px;height:22px;border:3px solid #fff;border-radius:50%;background:#ac8747}
.offer-compose input[type=range]:focus-visible{outline:2px solid #765a2c;outline-offset:4px;border-radius:8px}
.offer-range-labels{display:flex;justify-content:space-between;margin:0 46px;font-size:12px;color:#696050;font-variant-numeric:tabular-nums}
.offer-mood{font-size:13px;line-height:1.35;min-height:36px;margin-top:12px;color:#544934}
