/* ═══════════════════════════════════════════════════════════
   Fajl: a11y.css · Verzija: 1.3.4 · Datum: 17.10.2026
   Autor: Damir Radulić — RiNET <damir@rinet.one>
   Lokacija: /var/www/legalizacija.rinet.one/a11y.css (FRONT)
   Svrha: Pristupačnost za starije referente — svijetla tema visokog
          kontrasta (zadana), tamna tema, 4 razine veličine teksta.
   Zavisi od: a11y.js (data-theme, data-fs na <html>) · index.html
   Utječe na: samo izgled (ne dira logiku/API)
   ROLLBACK: ukloni <link>/<script> a11y iz index.html (backup u
             /root/webroot-bak/legalizacija.rinet.one/)
   ═══════════════════════════════════════════════════════════ */

/* ---- VELIČINA TEKSTA (zoom skalira i sitne mono oznake) ---- */
html[data-fs="1"]{zoom:1.15}
html[data-fs="2"]{zoom:1.30}
html[data-fs="3"]{zoom:1.50}

/* ---- KONTROLE U ZAGLAVLJU ---- */
.a11y{display:inline-flex;align-items:center;gap:6px;margin:0 10px 0 6px;flex-wrap:nowrap}
.a11y button{font:700 15px/1 var(--sans);min-width:44px;height:40px;padding:0 12px;border-radius:10px;cursor:pointer;
  background:var(--panel);color:var(--txt);border:2px solid var(--teal)}
.a11y button:hover{filter:brightness(1.12)}
.a11y button:focus-visible{outline:3px solid var(--amber);outline-offset:2px}
.a11y .sep{width:1px;height:26px;background:var(--line);margin:0 4px}
.a11y button[aria-pressed="true"]{background:var(--teal);color:#04201c}
@media(max-width:900px){.a11y{margin:6px 0;flex-wrap:wrap}}

/* ---- JASAN FOKUS ZA TIPKOVNICU ---- */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #f0a830;outline-offset:2px}

/* ═════════════ SVIJETLA TEMA (visoki kontrast) ═════════════ */
html[data-theme="light"]{
  --bg:#ffffff;--panel:#f2f5f9;--panel2:#e9eef4;--line:#8796a8;
  --txt:#0a1220;--dim:#26364a;--faint:#3b4b5f;
  --teal:#00695c;--amber:#8a4b00;--red:#b00020;--green:#0a6e28;--blue:#0a47ad;--purple:#5a2bb0;
  color-scheme:light;
}
html[data-theme="light"] body{background:#ffffff;color:var(--txt)}
html[data-theme="light"] header,
html[data-theme="light"] .hdr{background:#ffffff}
html[data-theme="light"] header{border-bottom:2px solid var(--line);box-shadow:0 2px 8px rgba(10,18,32,.12)}
html[data-theme="light"] nav a{color:#0a1220}
html[data-theme="light"] nav a:hover,html[data-theme="light"] nav a.on,html[data-theme="light"] nav a.active{background:#dfe8f1;color:#000}
html[data-theme="light"] a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}
html[data-theme="light"] nav a,html[data-theme="light"] .btn,html[data-theme="light"] .cert-btn,html[data-theme="light"] .logo,html[data-theme="light"] .a11y button{text-decoration:none}
/* gumbi sa svijetlim pozadinom teal → bijeli tekst */
html[data-theme="light"] .btn,
html[data-theme="light"] .cert-btn,
html[data-theme="light"] .step .num{background:var(--teal);color:#ffffff}
html[data-theme="light"] .a11y button[aria-pressed="true"]{background:var(--teal);color:#fff}
/* kartice, polja, tablice */
html[data-theme="light"] .card,html[data-theme="light"] .stat,html[data-theme="light"] .step,
html[data-theme="light"] .zcard,html[data-theme="light"] .art,html[data-theme="light"] .drop{background:var(--panel);border-color:var(--line)}
html[data-theme="light"] input,html[data-theme="light"] select,html[data-theme="light"] textarea,
html[data-theme="light"] .askbar input,html[data-theme="light"] .li-form input,html[data-theme="light"] .li-form select{
  background:#ffffff;color:#0a1220;border:2px solid var(--line)}
html[data-theme="light"] ::placeholder{color:#44546a;opacity:1}
html[data-theme="light"] .chip,html[data-theme="light"] .badge,html[data-theme="light"] .btn-icon{background:#ffffff;color:var(--dim);border-color:var(--line)}
html[data-theme="light"] th{color:var(--dim)}
html[data-theme="light"] td,html[data-theme="light"] th{border-color:#c3ccd7}
html[data-theme="light"] .tag{background:#fff3dc;border-color:#d6b270;color:#6b3a00}
html[data-theme="light"] .legal-flag{background:#e4f5ea;border-color:#7cc592;color:#0a6e28}
html[data-theme="light"] .tip,html[data-theme="light"] .navi[data-tip]:hover::after{background:#0a1220;color:#fff}
html[data-theme="light"] .art .body{color:var(--dim)}
html[data-theme="light"] hr{border-color:var(--line)}
html[data-theme="light"] footer{color:var(--faint);border-top-color:var(--line)}
html[data-theme="light"] #gate{background:#f2f5f9;color:var(--txt)}
html[data-theme="light"] ::selection{background:#ffd54a;color:#000}

/* ═════════════ TAMNA TEMA (postojeća, ali čitljivija) ═════════════ */
html[data-theme="dark"]{--dim:#b4c0cd;--faint:#93a1b1;--line:#34465a;color-scheme:dark}
html[data-theme="dark"] .a11y button{background:#11161f;color:#e6edf3}

/* ---- v1.1.0: plutajući prekidač na prijavnom ekranu (gate) ---- */
.a11y.a11y-float{position:fixed;top:12px;right:14px;z-index:1100;margin:0;padding:8px;border-radius:14px;
  background:var(--panel);border:2px solid var(--line);box-shadow:0 6px 22px rgba(0,0,0,.25)}
@media(max-width:700px){.a11y.a11y-float{left:8px;right:8px;top:8px;justify-content:center;flex-wrap:wrap}}

/* ═════════ v1.2.0 — SVIJETLA TEMA: KONTRAST TVRDO KODIRANIH BOJA (WCAG AA >= 4.5:1) ═════════
   Revizija 17.10.2026: izvorni CSS/inline stilovi nose boje za TAMNU pozadinu (#f0a830 kontrast 2,0 na bijeloj,
   #ff5d5d 3,0, #46d369 1,9, #8b97a6 3,0) i tamne pozadine kartica. Ovdje se preslikavaju — widget #rfb_* ostaje tamni. */

/* -- tekst: INLINE stilovi (osim feedback widgeta) -- */
html[data-theme="light"] [style*="color:#8b97a6"] [style*="#8b97a6"]:not(#rfb_panel *):not(#rfb_btn),html[data-theme="light"] [style*="color: #8b97a6"] [style*="#8b97a6"]:not(#rfb_panel *):not(#rfb_btn),
html[data-theme="light"] [style*="color:#8b98a5"] [style*="#8b98a5"]:not(#rfb_panel *),html[data-theme="light"] [style*="color: #8b98a5"] [style*="#8b98a5"]:not(#rfb_panel *),
html[data-theme="light"] [style*="color:#999"] [style*="#999"]:not(#rfb_panel *),html[data-theme="light"] [style*="color: #999"] [style*="#999"]:not(#rfb_panel *),
html[data-theme="light"] [style*="color:#8892a4"] [style*="#8892a4"]:not(#rfb_panel *),html[data-theme="light"] [style*="color: #8892a4"] [style*="#8892a4"]:not(#rfb_panel *){color:#3b4b5f !important}
html[data-theme="light"] [style*="color:#f0a830"] [style*="#f0a830"]:not(#rfb_panel *),html[data-theme="light"] [style*="color: #f0a830"] [style*="#f0a830"]:not(#rfb_panel *),
html[data-theme="light"] [style*="color:#f0c040"] [style*="#f0c040"]:not(#rfb_panel *),html[data-theme="light"] [style*="color: #f0c040"] [style*="#f0c040"]:not(#rfb_panel *),
html[data-theme="light"] [style*="color:#b26a00"] [style*="#b26a00"]:not(#rfb_panel *),html[data-theme="light"] [style*="color: #b26a00"] [style*="#b26a00"]:not(#rfb_panel *){color:#7a4300 !important}
html[data-theme="light"] [style*="color:#ff5d5d"] [style*="#ff5d5d"]:not(#rfb_panel *),html[data-theme="light"] [style*="color: #ff5d5d"] [style*="#ff5d5d"]:not(#rfb_panel *),
html[data-theme="light"] [style*="color:#ff6b6b"] [style*="#ff6b6b"]:not(#rfb_panel *),html[data-theme="light"] [style*="color: #ff6b6b"] [style*="#ff6b6b"]:not(#rfb_panel *){color:#b00020 !important}
html[data-theme="light"] [style*="color:#46d369"] [style*="#46d369"]:not(#rfb_panel *),html[data-theme="light"] [style*="color: #46d369"] [style*="#46d369"]:not(#rfb_panel *){color:#0a6e28 !important}
html[data-theme="light"] [style*="color:#5aa3ff"] [style*="#5aa3ff"]:not(#rfb_panel *),html[data-theme="light"] [style*="color: #5aa3ff"] [style*="#5aa3ff"]:not(#rfb_panel *),
html[data-theme="light"] [style*="color:#5aa9ff"] [style*="#5aa9ff"]:not(#rfb_panel *),html[data-theme="light"] [style*="color: #5aa9ff"] [style*="#5aa9ff"]:not(#rfb_panel *){color:#0a47ad !important}
html[data-theme="light"] [style*="color:#cdd6e0"] [style*="#cdd6e0"]:not(#rfb_panel *),html[data-theme="light"] [style*="color: #cdd6e0"] [style*="#cdd6e0"]:not(#rfb_panel *),
html[data-theme="light"] [style*="color:#e6edf3"] [style*="#e6edf3"]:not(#rfb_panel *),html[data-theme="light"] [style*="color: #e6edf3"] [style*="#e6edf3"]:not(#rfb_panel *){color:#0a1220 !important}
/* inline tamne pozadine → svijetle */
html[data-theme="light"] [style*="background:#0c1117"],
html[data-theme="light"] [style*="background: #0c1117"]{background:#ffffff !important;color:#0a1220 !important}
html[data-theme="light"] [style*="#173a5e"]{background:#e3eefc !important;color:#0a2f66 !important}
html[data-theme="light"] [style*="#173a5e"] *{color:#0a2f66 !important}

/* -- tekst: KLASE s tvrdim bojama -- */
html[data-theme="light"] nav a,html[data-theme="light"] .navi{color:#0a1220}
html[data-theme="light"] .navi.key:hover{color:#00504a}
html[data-theme="light"] .who{color:var(--faint)}
html[data-theme="light"] .praksa-h,html[data-theme="light"] .ptag{color:#7a4300}
html[data-theme="light"] .psrc{color:#0a47ad}
html[data-theme="light"] .btn-icon.rec{color:#b00020}
html[data-theme="light"] #predmet .pr-ans,html[data-theme="light"] #predmet .pr-ck-opis,
html[data-theme="light"] #generator .gen-nak-r,html[data-theme="light"] #ozakonjivost .oz-chk,
html[data-theme="light"] #ozakonjivost .oz-item,html[data-theme="light"] #pohrana .lzv-q,
html[data-theme="light"] #naknada .nak-chk,html[data-theme="light"] #naknada .nak-obr{color:#0a1220}
html[data-theme="light"] #ozakonjivost .oz-verdikt.moze,html[data-theme="light"] #naknada .nak-tag{color:#0a6e28}
html[data-theme="light"] #ozakonjivost .oz-verdikt.ne,html[data-theme="light"] #naknada .nak-err{color:#b00020}
html[data-theme="light"] #pohrana .lzp-msg.ok{color:#0a5a22;background:#e1f4e6}
html[data-theme="light"] #pohrana .lzp-msg.err{color:#8c0019;background:#fde6ea}
html[data-theme="light"] #pohrana .lzp-pill.warn,html[data-theme="light"] .lzp-sem.warn,
html[data-theme="light"] #pohrana .lzv-grp.pro{color:#6b3a00}
html[data-theme="light"] .lzp-sem.warn{background:#fff0d1}
html[data-theme="light"] .lzp-sem.ok{background:#e1f4e6}
html[data-theme="light"] .lzp-sem.er{background:#fde6ea}
html[data-theme="light"] #lipOut .lip-warn{color:#6b3a00;background:#fff3dc;border-color:#d6b270}
html[data-theme="light"] #lipOut .odr-bad{color:#8c1d00}
html[data-theme="light"] #naknada .nak-steps{color:#26364a}
html[data-theme="light"] #pilotRest>summary small{color:var(--faint)}
html[data-theme="light"] .navi[data-tip]:hover::before{background:#0a1220}

/* -- tamne pozadine klasa → svijetle tonove -- */
html[data-theme="light"] .badge.teal,html[data-theme="light"] .drop:hover,html[data-theme="light"] .drop.over,
html[data-theme="light"] .st.ing{background:#dcf3ef;color:#00504a}
html[data-theme="light"] .badge.green,html[data-theme="light"] .st.in{background:#e1f4e6;color:#0a5a22}
html[data-theme="light"] .st.pr{background:#fff0d1;color:#6b3a00}
html[data-theme="light"] .btn-icon,html[data-theme="light"] .gate-inp,html[data-theme="light"] .gen-text,
html[data-theme="light"] #generator .gen-nak-grid input,html[data-theme="light"] #generator .gen-nak-grid select,
html[data-theme="light"] #generator .gen-nak-out,html[data-theme="light"] .lzp-modal-card{background:#ffffff;color:#0a1220}
html[data-theme="light"] .law-link:hover{background:#e8eef5}
html[data-theme="light"] .law-nn{background:#eef2f7;color:#26364a}
html[data-theme="light"] #naknada .nak-obr{background:#eef2fa}
html[data-theme="light"] .art summary,html[data-theme="light"] .li-doc h4,html[data-theme="light"] .kicker,
html[data-theme="light"] .stat .n,html[data-theme="light"] .card h3,html[data-theme="light"] h2{color:var(--teal)}
html[data-theme="light"] h2,html[data-theme="light"] .card h3{color:#7a4300}

/* v1.3.0 — ostatak s mjerenja kontrasta u živom Chromeu (17.10.2026) */
html[data-theme="light"] .pr-bar{background:#f2f5f9;border-color:#8796a8}
html[data-theme="light"] .pr-pid,html[data-theme="light"] .pr-pid i,html[data-theme="light"] [style*="color:#36e0c8"],html[data-theme="light"] [style*="color: #36e0c8"]{color:#00695c !important;border-color:#00695c}
html[data-theme="light"] select option,html[data-theme="light"] select optgroup{background:#ffffff;color:#0a1220}
html[data-theme="light"] .pilot-badge{color:#ffffff}
html[data-theme="light"] button[style*="8b98a5"],html[data-theme="light"] button[style*="8b97a6"]{color:#3b4b5f !important}
html[data-theme="light"] button:disabled,html[data-theme="light"] .cta:disabled{opacity:1;color:#4a5a6e !important;background:#e3e9f0 !important;border-color:#8796a8 !important;cursor:not-allowed}
html[data-theme="light"] .pr-bar button,html[data-theme="light"] .pr-bar select{color:#0a1220}

/* v1.3.1 — ostatak s mjerenja: ikone „oko” uz polja lozinke + .pr-bar (jače pravilo u izvorniku) */
html[data-theme="light"] input + button:not(.btn):not(.cta):not(.pr-btn):not(.chip):not([class]),html[data-theme="light"] input ~ button.eye,html[data-theme="light"] .pw-eye{color:#26364a !important}
html[data-theme="light"] #predmet .pr-bar,html[data-theme="light"] .pr-bar{background:#f2f5f9 !important;border-color:#8796a8 !important;color:#0a1220 !important}
html[data-theme="light"] .pr-bar span,html[data-theme="light"] .pr-bar small{color:#26364a !important}

/* v1.3.3 — zadnji ostatak s mjerenja */
html[data-theme="light"] label:not(.btn){color:#26364a}
html[data-theme="light"] .pr-btn,html[data-theme="light"] .pr-btn.ghost{color:#00695c !important;border-color:#00695c !important;background:#ffffff}

/* v1.3.4 — zadnji ostatak (labele u .pr-bar, puni .pr-btn) + tamna tema: gumb "Nijedno" */
html[data-theme="light"] #predmet .pr-bar label,html[data-theme="light"] .pr-bar label{color:#26364a !important}
html[data-theme="light"] .pr-btn:not(.ghost):not(.amber){background:#00695c !important;color:#ffffff !important;border-color:#00695c !important}
html[data-theme="dark"] .btn[style*="var(--line)"]{color:#e6edf3 !important}
