/* ============================================================
   FAB VOICE — Asistent plošče (assets/asistent.css)
   Samo izbirniki .fva-* in #fvaRoot. Barve iz :root spremenljivk plošče
   (--bg3, --line2, --txt, --mut, --blu, --cyn, --grad, --amb).
   Sloji (r1-17): gumb + nudge + panel 905 — NAD navadnimi modali plošče (.ov 900), da Jurij ob odprtem modalu
   (podrobnosti klica, testni klic, obrazec podjetja) asistenta doseže in kontekst .ov.on (odsek_id) živi;
   NAD njimi ostaneta SAMO skupni potrditveni modal #fvConfirmMod (910) in živa podpora #supPanel (911);
   osvetlitev .fva-hl-okvir 950, kompaktna vrstica .fva-panel--kompakt 951 (r2-16: nad zatemnitvijo okvirja, med fvConfirm spet 905),
   oblaček .fva-tip 952 (nad vsem tem, pod .toast-wrap 2000).
   Brez utripanja: nobena animacija hitrejša od 1 s, brez skokov svetlosti.
   ============================================================ */
#fvaRoot{font-family:inherit;color:var(--txt,#EAF0FF);}
#fvaRoot[hidden]{display:none;}
.fva-skrij-sup{display:none !important;}

/* ---------- plavajoči gumb (na mestu #supFab) ---------- */
.fva-fab{position:fixed;right:18px;bottom:18px;z-index:905;width:56px;height:56px;border-radius:50%;
  border:1px solid var(--line2,#2C3158);background:var(--bg3,#12142A);cursor:pointer;padding:0;display:grid;place-items:center;
  filter:drop-shadow(0 0 16px var(--fva-senca,rgba(46,140,255,.75)));transition:transform .18s ease;}   /* white-label: sij sledi --fva-senca (asistent.js), privzeto moder kot SVG */
.fva-fab:hover{transform:scale(1.06);}
.fva-fab:focus-visible{outline:2px solid var(--cyn,#22E0E0);outline-offset:3px;}
.fva-fab .fva-av{width:44px;height:44px;filter:none;}   /* r1-11: sij nosi SAMO gumb; SVG .fva-av ima lasten drop-shadow (alfa .75) -> dva sloja = .94, mocnejsi od welcome-orb */
.fva-fab--skrit{display:none;}
body.fva-odprt-poln .fva-fab,body.fva-kompakt-aktiv .fva-fab{display:none;}   /* odprt panel / kompaktna vrstica: gumb ne prekriva osvetljenega elementa */
.fva-nudge{position:fixed;right:84px;bottom:26px;z-index:905;max-width:240px;background:var(--bg3,#12142A);border:1px solid var(--line2,#2C3158);
  border-radius:12px;padding:10px 12px;font-size:12.5px;line-height:1.4;color:var(--txt,#EAF0FF);box-shadow:0 8px 24px rgba(0,0,0,.35);}
.fva-nudge::after{content:'';position:absolute;right:-6px;bottom:16px;width:10px;height:10px;background:inherit;border-right:1px solid var(--line2,#2C3158);border-top:1px solid var(--line2,#2C3158);transform:rotate(45deg);}
/* f-avatar-ux_besedila-r2-t3-1: gumb X je meril 21,8 x 18 px (UA padding 1px 6px) -> pod WCAG 2.5.8 (24 x 24), na telefonu se ga zgresi.
   min 28 x 28 + inline-grid, da ostane v vrstici z besedilom; test: tests/test_asistent_ui_r2_css_sloji.py + _playwright.js (rect po IZIDU). */
.fva-nudge button{margin-left:8px;background:none;border:none;color:var(--mut,#9AA3CC);cursor:pointer;font-size:12px;
  min-width:28px;min-height:28px;padding:4px 6px;display:inline-grid;place-items:center;border-radius:8px;vertical-align:middle;}
.fva-nudge button:focus-visible{outline:2px solid var(--cyn,#22E0E0);outline-offset:1px;}

/* ---------- panel: trije načini ---------- */
.fva-panel{position:fixed;top:0;right:0;bottom:0;width:400px;max-width:100vw;z-index:905;display:none;flex-direction:column;
  background:var(--bg2,#0C0D1A);border-left:1px solid var(--line2,#2C3158);box-shadow:-12px 0 40px rgba(0,0,0,.45);}
.fva-panel--odprt{display:flex;}
/* r1-17: EDINI dve izjemi zunaj imenskega prostora .fva-: plošča daje #fvConfirmMod (.ov) na 900 in #supPanel na 901 (inline <style>
   (r2-3/r2-6: odmik .ov spodaj NI izjema — nosi predpono body.fva- in stoji v @media, kot .toast-wrap)
   pred to datoteko, isti ID selektor) — brez dviga bi ju panel 905 prekril (potrditev „Naredi zame“, zavihek Živa podpora).
   Specifičnost (1,1,0) > (1,0,0)/(0,1,0), zato vrstni red nalaganja ni pomemben. Samo z-index, nič drugega (test_asistent_ui.py). */
#fvConfirmMod.ov{z-index:910;}
#supPanel[role="dialog"]{z-index:911;}
@media (min-width:1200px){
  body.fva-odprt-poln #app{margin-right:400px;transition:margin-right .25s ease;}
  body.fva-odprt-poln .toast-wrap{right:424px;}
}
/* r2-3 / r2-6: panel 905 leži NAD modali plošče (.ov 900, fixed inset:0, centriran čez CEL zaslon) -> pri 1280–1536 px je bil gumb X
   (.xbtn) in desnih 63–299 px širokih modalov (#infoMailMod/#emailSummaryMod 1100, #trMod 862) POD panelom (izmerjeno: elementFromPoint
   sredine X = .fva-zav/.fva-telo). Odmik right = širina panela (.fva-panel width) -> modal se centrira v vidnem delu. Od 921 px, ker je pod
   920 px panel celozaslonski (odmik brez pomena). #fvConfirmMod (910, NAD panelom) ostane čez cel zaslon. Kompaktni način (Naredi zame,
   body.fva-kompakt-aktiv, fva-odprt-poln OSTANE) odmik povrne — pravilo iste specifičnosti (1,2,1) MORA stati za blokom.
   Test: tests/test_asistent_ui_r1_kompakt_toast.py (r2 del) + _playwright.js. */
@media (min-width:921px){
  body.fva-odprt-poln .ov:not(#fvConfirmMod){right:400px;transition:right .25s ease;}
}
body.fva-kompakt-aktiv .ov:not(#fvConfirmMod){right:0;}
@media (max-width:920px){
  .fva-panel{width:100vw;inset:0;border-left:none;}
  .fva-fab{bottom:calc(79px + env(safe-area-inset-bottom));}
  .fva-nudge{bottom:calc(87px + env(safe-area-inset-bottom));}
}
/* f-avatar-zmogljivost-r2-5: pod 920 px polni panel (100vw, inset 0) pokrije CELO plosco, a njenih 33 neskoncnih animacij (tbslide, ripple,
   floaty, pulse, eqd, live-dot ...) tece naprej: izmerjeno 63 % izpuscenih okvirjev pri drsenju po pogovoru (390x844, DPR 3, CPU 4x), s pavzo 9 %;
   glavna nit v mirovanju 2750 -> 1680 ms/3 s. Pavza (ne visibility) - tranzicij in JS ne prizadene, enkratne animacije se po zapri() dokoncajo.
   Psevdoelementa ::before/::after posebej: tbslide tece na .tb::after, `#app *` ga ne zajame (izmerjeno: 1/34 tece).
   Kompaktni nacin (Pokazi mi / Naredi zame) IZVZET - plosca je tam vidna. #fvConfirmMod (910, nad panelom) je v voice-dashboard.html ZUNAJ #app
   (izmerjeno: #app 1334-2112, modal 2154), izvzetje spodaj je varovalo za primer premika. Test: tests/test_asistent_ui_r2_css_sloji.py + _playwright.js. */
@media (max-width:920px){
  body.fva-odprt-poln:not(.fva-kompakt-aktiv) #app *,body.fva-odprt-poln:not(.fva-kompakt-aktiv) #app *::before,body.fva-odprt-poln:not(.fva-kompakt-aktiv) #app *::after{animation-play-state:paused !important;}
  body.fva-odprt-poln:not(.fva-kompakt-aktiv) #fvConfirmMod .modal{animation-play-state:running !important;}
}
/* kompaktni način: 64 px vrstica spodaj, da je osvetljeni element viden */
/* f-plosca-ui-ux_besedila-r2-16: zatemnitev osvetlitve (.fva-hl-okvir 950, box-shadow 0 0 0 9999px) je lezala NAD vrstico (905) -> avatar,
   „Korak i/n“ in gumbi Naprej/Ustavi zatemnjeni za 28 %, videti onemogoceni. Vrstica 951 (nad zatemnitvijo), oblacek .fva-tip 952 (nad vrstico,
   ko ga JS pripne na spodnji rob). Med fvConfirm (#fvConfirmMod.on, 910) se vrstica vrne pod modalno zaveso (905) kot prej - :has pravilo spodaj.
   Test: tests/test_asistent_ui_r2_css_sloji.py + _playwright.js. */
.fva-panel--kompakt{top:auto;height:64px;width:100vw;left:0;right:0;border-left:none;border-top:1px solid var(--line2,#2C3158);box-shadow:0 -8px 30px rgba(0,0,0,.4);z-index:951;}
body.fva-kompakt-aktiv:has(#fvConfirmMod.on) .fva-panel--kompakt{z-index:905;}
/* r1-9: tudi .fva-zavihki (neposreden otrok panela, ne glave) — sicer zasedeta 41 px in vrstico s koraki stisneta pod rob zaslona */
.fva-panel--kompakt .fva-glava,.fva-panel--kompakt .fva-zavihki,.fva-panel--kompakt .fva-telo,.fva-panel--kompakt .fva-noga,.fva-panel--kompakt .fva-zgodovina{display:none;}
.fva-panel--kompakt .fva-kompakt{display:flex;}
body.fva-odprt-poln.fva-kompakt-aktiv #app{margin-right:0;}
/* r1-9 (testi): kompaktno() preklaplja le fva-kompakt-aktiv, body.fva-odprt-poln OSTANE — brez tega pravila bi .toast-wrap pri
   >= 1200 px obdržal right:424px (odmik za desni stolpec, ki ga ni več) in z bottom:24px sekal 64 px vrstico (izmerjeno: toast 733–776,
   vrstica od 736). Toasti nosijo napake shranjevanja med koraki -> stojijo NAD kompaktno vrstico (višina vrstice 64 + 12 px zraka).
   Ista specifičnost (0,2,1) kot pravilo v @media 1200 -> MORA stati za njim. Test: tests/test_asistent_ui_r1_kompakt_toast.py */
body.fva-kompakt-aktiv .toast-wrap{right:24px;bottom:calc(64px + 12px);}
/* r1-10: pod 920 px kompaktna vrstica (z 890) ne sme ležati čez spodnjo navigacijo plošče (.mobile-nav, z 60, bottom:0):
   višina navigacije = border-top 1 + padding 6 + .mn-item min-height 50 + padding-bottom 6 = 63 px (+ safe-area, box-sizing border-box).
   Blok stoji ZA .fva-panel--kompakt, da `bottom` ne more preglasiti nobena poznejša vrstica iste specifičnosti. Test: tests/test_asistent_ui_r1_10_kompakt_nav.py */
@media (max-width:920px){
  .fva-panel--kompakt{bottom:calc(63px + env(safe-area-inset-bottom));}
}
/* r1-9 (testi) pod 920 px: toast nad kompaktno vrstico, ki stoji nad .mobile-nav: nav 63 + vrstica 64 + zrak 12; right 16 kot .toast-wrap plosce pod 920.
   Lasten blok, ker tests/test_asistent_ui_r1_10_kompakt_nav.py sidra mutante na blok zgoraj z NATANKO enim pravilom. */
@media (max-width:920px){
  body.fva-kompakt-aktiv .toast-wrap{right:16px;bottom:calc(63px + 64px + 12px + env(safe-area-inset-bottom));}
}
/* ---------- glava panela ---------- */
.fva-glava{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line,#20243F);background:var(--bg3,#12142A);}
.fva-glava .fva-av{width:36px;height:36px;flex-shrink:0;}
.fva-glava-ime{font-weight:700;font-size:14px;line-height:1.2;}
.fva-glava-verzija{font-size:11px;color:var(--mut,#9AA3CC);line-height:1.3;}
.fva-glava-gumbi{margin-left:auto;display:flex;gap:4px;}
.fva-ikona{width:32px;height:32px;border-radius:9px;border:1px solid transparent;background:none;color:var(--mut,#9AA3CC);cursor:pointer;font-size:15px;display:grid;place-items:center;font-family:inherit;}
.fva-ikona:hover{background:var(--bg4,#1A1E3C);color:var(--txt,#EAF0FF);}
.fva-ikona:focus-visible,.fva-gumb:focus-visible,.fva-zav:focus-visible,.fva-predlog:focus-visible{outline:2px solid var(--cyn,#22E0E0);outline-offset:2px;}
.fva-zavihki{display:flex;gap:4px;padding:8px 14px 0;background:var(--bg3,#12142A);border-bottom:1px solid var(--line,#20243F);}
.fva-zav{flex:1;padding:8px 10px;border:none;background:none;color:var(--mut,#9AA3CC);font-family:inherit;font-size:12.5px;font-weight:600;border-radius:9px 9px 0 0;cursor:pointer;position:relative;}
.fva-zav.on{color:var(--txt,#EAF0FF);box-shadow:inset 0 -2px 0 var(--cyn,#22E0E0);}
.fva-zav-znacka{position:absolute;top:2px;right:6px;min-width:18px;height:18px;border-radius:9px;background:var(--mag,#FF5DA2);color:#fff;font-size:11px;line-height:18px;text-align:center;padding:0 5px;}
.fva-zav-znacka[hidden]{display:none;}

/* ---------- telo pogovora ---------- */
.fva-telo{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth;}
.fva-msg{display:flex;gap:8px;max-width:100%;}
.fva-msg--jaz{justify-content:flex-end;}
.fva-msg .fva-av{width:20px;height:20px;flex-shrink:0;margin-top:2px;}
.fva-balon{max-width:88%;padding:10px 12px;border-radius:14px;font-size:13.5px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word;}
.fva-msg--jaz .fva-balon{background:var(--grad,linear-gradient(120deg,#6D5EF8,#2E8CFF 52%,#22E0E0));color:#fff;border-bottom-right-radius:4px;}
.fva-msg--as .fva-balon{background:var(--bg3,#12142A);border:1px solid var(--line,#20243F);border-bottom-left-radius:4px;}
.fva-msg--sistem .fva-balon{background:none;border:1px dashed var(--line2,#2C3158);color:var(--mut,#9AA3CC);font-size:12.5px;}
.fva-msg--napaka .fva-balon{border-color:var(--amb,#FBBF24);}
.fva-koraki{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px;}
.fva-korak{display:flex;gap:8px;align-items:flex-start;font-size:13px;line-height:1.45;}
.fva-korak-st{flex-shrink:0;width:20px;height:20px;border-radius:50%;background:var(--bg4,#1A1E3C);border:1px solid var(--line2,#2C3158);font-size:11px;font-weight:700;display:grid;place-items:center;color:var(--lblu,#7FB6FF);}
.fva-korak-tx{flex:1;}
.fva-korak.fva-korak--ok .fva-korak-st{background:rgba(52,224,161,.18);border-color:var(--grn,#34E0A1);color:var(--grn,#34E0A1);}
.fva-korak.fva-korak--zaklenjen{opacity:.7;}
.fva-gumb{border:1px solid var(--line2,#2C3158);background:var(--bg4,#1A1E3C);color:var(--txt,#EAF0FF);font-family:inherit;font-size:12px;font-weight:600;padding:5px 10px;border-radius:9px;cursor:pointer;white-space:nowrap;transition:background .15s;}
.fva-gumb:hover:not(:disabled){background:var(--line2,#2C3158);}
.fva-gumb:disabled{opacity:.5;cursor:not-allowed;}
.fva-gumb--glavni{background:var(--grad,linear-gradient(120deg,#6D5EF8,#2E8CFF 52%,#22E0E0));border-color:transparent;color:#fff;}
.fva-gumb--glavni:hover:not(:disabled){filter:brightness(1.08);background:var(--grad,linear-gradient(120deg,#6D5EF8,#2E8CFF 52%,#22E0E0));}
.fva-gumb--opoz{border-color:var(--amb,#FBBF24);color:var(--amb,#FBBF24);background:none;}
/* f-plosca-ui-varnost-r1-23: ime dejanja iz paketa do 72 zn. (fv-mail2-mode, open-info-mail-mod-partner) v nowrap gumbu je steklo iz balona
   in bilo odrezano na robu panela (izmerjeno 360 in 1280 px: balon 290/358 px) -> hitri predlogi se lomijo v vec vrstic, ostali gumbi ostanejo nowrap. */
.fva-gumb--predlog{white-space:normal;text-align:left;max-width:100%;overflow-wrap:anywhere;}
.fva-gumbi{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;}
.fva-opomba{font-size:11.5px;color:var(--mut,#9AA3CC);margin-top:6px;}
.fva-ocena{display:inline-flex;gap:2px;margin-top:6px;}
.fva-ocena button{background:none;border:none;color:var(--mut,#9AA3CC);cursor:pointer;font-size:13px;padding:2px 5px;border-radius:6px;}
.fva-ocena button.on,.fva-ocena button:hover{color:var(--cyn,#22E0E0);background:var(--bg4,#1A1E3C);}
/* ---------- predlogi, izbira, noga (vnos) ---------- */
.fva-predlogi{display:flex;flex-direction:column;gap:6px;}
.fva-predlogi-naslov{font-size:12px;color:var(--mut,#9AA3CC);margin-bottom:2px;}
.fva-predlog{text-align:left;border:1px solid var(--line,#20243F);background:var(--bg3,#12142A);color:var(--txt,#EAF0FF);font-family:inherit;font-size:13px;padding:9px 12px;border-radius:11px;cursor:pointer;}
.fva-predlog:hover{border-color:var(--blu,#2E8CFF);}
.fva-izbira{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.fva-noga{border-top:1px solid var(--line,#20243F);padding:10px 14px 12px;background:var(--bg3,#12142A);}
.fva-vnos{display:flex;gap:8px;align-items:flex-end;}
.fva-vnos textarea{flex:1;min-height:40px;max-height:120px;resize:none;border:1px solid var(--line2,#2C3158);background:var(--bg2,#0C0D1A);color:var(--txt,#EAF0FF);
  border-radius:11px;padding:9px 11px;font-family:inherit;font-size:13.5px;line-height:1.4;}
.fva-vnos textarea:focus{outline:none;border-color:var(--blu,#2E8CFF);}
.fva-poslji{width:40px;height:40px;border-radius:11px;border:none;background:var(--grad,linear-gradient(120deg,#6D5EF8,#2E8CFF 52%,#22E0E0));color:#fff;cursor:pointer;font-size:16px;display:grid;place-items:center;flex-shrink:0;}
.fva-poslji:disabled{opacity:.45;cursor:not-allowed;}
.fva-varnost{font-size:11.5px;color:var(--mut,#9AA3CC);margin-top:6px;display:flex;justify-content:space-between;gap:8px;}
.fva-kvota{white-space:nowrap;}
.fva-kvota--polna{color:var(--amb,#FBBF24);}

/* ---------- zgodovina ---------- */
.fva-zgodovina{display:none;flex:1;overflow-y:auto;padding:14px;flex-direction:column;gap:6px;}
.fva-panel--zgodovina .fva-zgodovina{display:flex;}
.fva-panel--zgodovina .fva-telo,.fva-panel--zgodovina .fva-noga{display:none;}
.fva-zg-vrstica{display:flex;gap:8px;align-items:center;border:1px solid var(--line,#20243F);border-radius:11px;padding:9px 12px;background:var(--bg3,#12142A);}
.fva-zg-vrstica button.fva-zg-odpri{flex:1;text-align:left;background:none;border:none;color:var(--txt,#EAF0FF);font-family:inherit;font-size:13px;cursor:pointer;}
.fva-zg-meta{font-size:11px;color:var(--mut,#9AA3CC);}

/* ---------- kompaktna vrstica (med izvajanjem) ---------- */
/* r1-9: flex 1 0 auto + min-height — vrstica se v stolpcu panela (64 px border-box, 1 px border-top -> 63 px vsebine) ne sme stisniti,
   gumbi morajo ostati nad robom zaslona; fiksna height:64px je prej za 1 px stekla čez rob */
.fva-kompakt{display:none;align-items:center;gap:10px;padding:0 14px;min-height:63px;flex:1 0 auto;background:var(--bg3,#12142A);}
.fva-kompakt .fva-av{width:36px;height:36px;flex-shrink:0;}
.fva-kompakt-tx{flex:1 1 40%;min-width:0;font-size:13px;line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
/* r1-11 (robni): pod 520 px trije nowrap gumbi (Naprej/Ustavi/Nazaj v klepet ~ 52+50+90 px) + avatar pustijo besedilu koraka
   le 114 px (izmerjeno 360 px, chromium) in dolg korak je odrezan. Zato dve vrstici v isti 64 px vrstici: 1. avatar 28 + besedilo (flex-basis 100 % - avatar
   -> gumbi se prelomijo), 2. gumbi desno. Proračun višine (vsebina panela 63 px): besedilo 2 x 12.5 x 1.25 = 31.25 + gumb 11.5 x 1.2 + 10 + 2 = 25.8
   + row-gap 4 = 61.05 <= 63. Test: tests/test_asistent_ui_r1_kompakt_toast.py (statično) + tests/test_asistent_ui_r1_kompakt_toast_playwright.js (360 px). */
@media (max-width:520px){
  .fva-kompakt{flex-wrap:wrap;align-content:center;justify-content:flex-end;column-gap:6px;row-gap:4px;padding:0 10px;}
  .fva-kompakt .fva-av{width:28px;height:28px;}
  .fva-kompakt-tx{flex:1 1 calc(100% - 34px);min-width:140px;font-size:12.5px;line-height:1.25;}   /* 34 = avatar 28 + column-gap 6: 1. vrstica je polna, gumbi se prelomijo (basis 100 % bi prelomil tudi avatar -> 3 vrstice, 93 px) */
  .fva-kompakt .fva-gumb{padding:5px 7px;font-size:11.5px;line-height:1.2;}
}
.fva-kompakt-tx b{color:var(--lblu,#7FB6FF);font-weight:700;margin-right:6px;}

/* ---------- stanje „razmišlja" ---------- */
.fva-razmislja{display:inline-flex;gap:4px;align-items:center;padding:4px 2px;}
.fva-razmislja i{width:6px;height:6px;border-radius:50%;background:var(--mut,#9AA3CC);display:inline-block;animation:fvaPika 1.2s ease-in-out infinite;}
.fva-razmislja i:nth-child(2){animation-delay:.2s;}
.fva-razmislja i:nth-child(3){animation-delay:.4s;}
@keyframes fvaPika{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.fva-vizualno-skrito{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
/* ---------- osvetlitev (sloj 950): obroba + mehak sij, ena tranzicija, brez utripanja ---------- */
/* r1-18: brez border-radius in transition — razred se lepi na TUJE elemente plošče (meni .sbi 11 px, okrogli gumbi); prepis
   zaobljenja je preoblikoval element med „Pokaži mi“ in ob koncu skočil nazaj. Zaobljenje/prehod nosi .fva-hl-okvir. */
.fva-hl{outline:2px solid var(--cyn,#22E0E0) !important;outline-offset:3px;box-shadow:0 0 0 6px rgba(34,224,224,.18),0 0 24px rgba(34,224,224,.35) !important;}
.fva-hl-okvir{position:fixed;z-index:950;pointer-events:none;border:2px solid var(--cyn,#22E0E0);border-radius:10px;box-shadow:0 0 0 9999px rgba(5,6,12,.28);transition:top .3s ease,left .3s ease,width .3s ease,height .3s ease;}
.fva-hl-okvir--tih{box-shadow:none;}   /* med fvConfirm brez zatemnitve: modal mora biti jasno viden */
.fva-tip{position:fixed;z-index:952;max-width:300px;background:var(--bg3,#12142A);border:1px solid var(--cyn,#22E0E0);border-radius:12px;padding:10px 12px;
  font-size:13px;line-height:1.45;color:var(--txt,#EAF0FF);box-shadow:0 10px 30px rgba(0,0,0,.45);}
.fva-tip-tx{margin-bottom:8px;}
.fva-tip .fva-gumbi{margin-top:0;}
.fva-tip-puscica{position:absolute;width:10px;height:10px;background:var(--bg3,#12142A);border-left:1px solid var(--cyn,#22E0E0);border-top:1px solid var(--cyn,#22E0E0);transform:rotate(45deg);top:-6px;left:20px;}
.fva-tip--spodaj .fva-tip-puscica{top:auto;bottom:-6px;transform:rotate(225deg);}

/* ---------- avatar ---------- */
/* Stanja (--miren/--poslusa/--razmislja/--govori/--opozorilo/--mini), barve znamke in animacije (vse >= 1 s) nosi
   <style> kanonicnega assets/asistent-avatar.svg, ki ga asistent.js vgradi ENKRAT v <head> (tools/vgradi_avatar_asistenta.py).
   White-label: --asistent-barva. Tu le postavitev nadomestka brez DOMParser. */
.fva-av{display:block;overflow:visible;transform-origin:50% 50%;}
.fva-av-nadomestek{border-radius:50%;background:var(--grad,linear-gradient(120deg,#6D5EF8,#2E8CFF 52%,#22E0E0));width:36px;height:36px;}

/* ---------- dostopnost: brez gibanja ---------- */
@media (prefers-reduced-motion:reduce){
  .fva-telo{scroll-behavior:auto;}   /* f-plosca-ui-testi-r1-22: vsak nov balon skrola telo (scrollTop=scrollHeight); pod reduce brez gladkega drsenja (osvetli() to ze dela v JS) */
  .fva-av,.fva-av *,.fva-razmislja i,.fva-hl,.fva-hl-okvir,.fva-fab,.fva-tip{animation:none !important;transition:none !important;}
  body.fva-odprt-poln #app{transition:none;}
}
