/* KoFol — besplatni alati (/alati). Isti brutalistički stil kao ostatak sajta. */
:root{--a-ink:#09090b;--a-muted:#71717a;--a-line:#000;--a-soft:#e4e4e7;--a-card:#fff;--a-bg:#fafafa;--a-acc:#16a34a;--a-warn:#d97706;--a-err:#dc2626}
.dark{--a-ink:#fafafa;--a-muted:#a1a1aa;--a-line:#fff;--a-soft:#27272a;--a-card:#18181b;--a-bg:#09090b}
body{font-family:'Inter',sans-serif}
.font-mono,.al-mono{font-family:'JetBrains Mono',monospace}
.al-main{max-width:72rem;margin:0 auto;padding:40px 20px 80px}
@media (min-width:768px){.al-main{padding:64px 32px 96px}}
.al-mrvice{font-family:'JetBrains Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--a-muted);margin-bottom:18px}
.al-mrvice a{color:inherit}.al-mrvice a:hover{color:var(--a-ink)}
.al-h1{font-weight:900;text-transform:uppercase;letter-spacing:-.04em;line-height:.95;font-size:clamp(2.3rem,6vw,4.4rem);margin:0 0 18px}
.al-lead{font-family:'JetBrains Mono',monospace;font-size:15px;line-height:1.7;color:var(--a-muted);max-width:44rem;margin:0 0 18px}
.al-znacke{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px}
.al-znacke span{font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;border:2px solid var(--a-line);padding:4px 8px}
.al-znacke span:first-child{background:var(--a-acc);border-color:var(--a-acc);color:#fff}

/* kartica alata */
.al-alat{border:2px solid var(--a-line);background:var(--a-card);box-shadow:10px 10px 0 0 var(--a-line);padding:20px;margin-bottom:56px}
.dark .al-alat{box-shadow:10px 10px 0 0 rgba(255,255,255,.12)}
@media (min-width:768px){.al-alat{padding:28px}}
.al-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:220px;border:2px dashed var(--a-line);padding:28px 16px;text-align:center;cursor:pointer;transition:background-color .15s}
.al-drop:hover,.al-drop.preko{background:rgba(22,163,74,.08);border-color:var(--a-acc)}
.al-drop b{font-weight:900;text-transform:uppercase;font-size:18px}
.al-drop small{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--a-muted)}
.al-drop svg{width:40px;height:40px}
.al-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border:2px solid var(--a-line);background:var(--a-card);color:var(--a-ink);font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;text-decoration:none;transition:transform .12s,box-shadow .12s,background-color .12s}
.al-btn:hover{background:var(--a-bg)}
.al-btn.prim{background:var(--a-ink);color:var(--a-card);box-shadow:4px 4px 0 0 var(--a-acc)}
.al-btn.prim:hover{transform:translate(2px,2px);box-shadow:none}
.al-btn.zeleno{background:var(--a-acc);border-color:var(--a-acc);color:#fff}
.al-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}
.al-btn.mali{min-height:34px;padding:0 10px;font-size:10.5px}
.al-akc{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.al-polje{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.al-polje>label,.al-lbl{font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--a-muted);display:flex;justify-content:space-between;gap:10px}
.al-in{width:100%;min-height:44px;padding:9px 12px;border:2px solid var(--a-line);background:var(--a-card);color:var(--a-ink);font-family:'JetBrains Mono',monospace;font-size:14px}
.al-in:focus{outline:none;border-color:var(--a-acc)}
textarea.al-in{resize:vertical;line-height:1.5}
.al-seg{display:inline-flex;flex-wrap:wrap;border:2px solid var(--a-line)}
.al-seg button{min-height:40px;padding:0 13px;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;text-transform:uppercase;background:var(--a-card);color:var(--a-ink);border:0;cursor:pointer}
.al-seg button+button{border-left:2px solid var(--a-line)}
.al-seg button[aria-pressed="true"]{background:var(--a-ink);color:var(--a-card)}
.al-dva{display:grid;grid-template-columns:1fr;gap:24px}
@media (min-width:900px){.al-dva{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.al-sakriveno{display:none!important}
:focus-visible{outline:2px solid var(--a-acc);outline-offset:2px}

/* rezultat provjere */
.al-ocjena{display:flex;align-items:center;gap:18px;margin-bottom:16px}
.al-ocjena-br{font-weight:900;font-size:64px;line-height:1;letter-spacing:-.04em}
.al-ocjena-br small{font-size:20px;color:var(--a-muted)}
.al-ocjena-t b{display:block;font-weight:900;text-transform:uppercase;font-size:18px}
.al-ocjena-t span{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--a-muted)}
.al-traka{height:10px;border:2px solid var(--a-line);margin:0 0 18px;background:var(--a-bg)}
.al-traka i{display:block;height:100%;background:var(--a-acc);transition:width .4s}
.al-provjere{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.al-provjere li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;padding:10px 12px;border:2px solid var(--a-soft)}
.al-provjere li::before{content:"✓";width:22px;height:22px;display:grid;place-items:center;font-weight:900;font-size:12px;background:var(--a-acc);color:#fff}
.al-provjere li.pola::before{content:"!";background:var(--a-warn)}
.al-provjere li.ne::before{content:"✕";background:var(--a-err)}
.al-provjere b{display:block;font-size:14px}
.al-provjere span{display:block;font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--a-muted);line-height:1.5;margin-top:2px}
.al-slika{position:relative;border:2px solid var(--a-line);background:repeating-conic-gradient(var(--a-soft) 0 25%,transparent 0 50%) 50%/20px 20px}
.al-slika canvas{display:block;width:100%;height:auto}

/* tabela fajlova (slike za web) */
.al-fajlovi{border:2px solid var(--a-line);margin-top:16px}
.al-fajl{display:grid;grid-template-columns:56px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:8px 10px;border-top:2px solid var(--a-soft);font-family:'JetBrains Mono',monospace;font-size:12px}
.al-fajl:first-child{border-top:0}
.al-fajl img{width:56px;height:56px;object-fit:cover;border:1px solid var(--a-soft);background:var(--a-bg)}
.al-fajl b{display:block;font-family:'Inter',sans-serif;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.al-fajl .ustedjeno{color:var(--a-acc);font-weight:700}
.al-fajl .greska{color:var(--a-err)}
.al-fajl .vece{color:var(--a-warn);font-weight:700;cursor:help}
@media (max-width:600px){.al-fajl{grid-template-columns:44px minmax(0,1fr) auto}.al-fajl img{width:44px;height:44px}.al-fajl .al-vel{display:none}}
.al-zbir{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:center;margin-top:14px;font-family:'JetBrains Mono',monospace;font-size:12px}
.al-raspon{width:100%;accent-color:var(--a-acc)}

/* formati */
.al-formati{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;margin-top:16px;align-items:start}
.al-format{border:2px solid var(--a-line);background:var(--a-card);display:flex;flex-direction:column}
.al-format canvas{display:block;width:100%;height:auto;background:var(--a-bg);border-bottom:2px solid var(--a-line)}
.al-format div{padding:8px 10px;display:flex;flex-direction:column;gap:6px}
.al-format b{font-size:13px}
.al-format small{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--a-muted)}
.al-format.iskljucen{opacity:.35}
.al-fokus{position:relative;cursor:crosshair;border:2px solid var(--a-line);user-select:none;-webkit-user-select:none;touch-action:none}
.al-fokus canvas{display:block;width:100%;height:auto}
.al-fokus i{position:absolute;width:30px;height:30px;margin:-15px 0 0 -15px;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 2px #000,inset 0 0 0 2px #000;pointer-events:none}
.al-kvacice{display:grid;gap:6px;font-family:'JetBrains Mono',monospace;font-size:12px}
.al-kvacice label{display:flex;gap:8px;align-items:center;cursor:pointer}
.al-kvacice input{width:18px;height:18px;accent-color:var(--a-acc)}

/* QR */
.al-qr-prev{display:flex;align-items:center;justify-content:center;border:2px solid var(--a-line);background:#fff;padding:18px;min-height:280px}
.al-qr-prev canvas{max-width:100%;height:auto;image-rendering:pixelated}
.al-boje{display:flex;gap:10px;align-items:center}
.al-boje input[type=color]{width:48px;height:40px;border:2px solid var(--a-line);padding:0;background:none;cursor:pointer}

/* termini */
.al-kal{border-top:2px solid var(--a-line);border-left:2px solid var(--a-line);display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.al-kal-gl{font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:700;text-transform:uppercase;padding:6px;border-right:2px solid var(--a-line);border-bottom:2px solid var(--a-line);background:var(--a-bg)}
.al-dan{min-height:64px;padding:6px;border-right:2px solid var(--a-line);border-bottom:2px solid var(--a-line);background:var(--a-card);color:var(--a-ink);text-align:left;font-family:'JetBrains Mono',monospace;display:flex;flex-direction:column;justify-content:space-between;gap:4px;border-top:0;border-left:0;cursor:pointer;transition:background-color .12s}
.al-dan b{font-size:14px}.al-dan small{font-size:9px;text-transform:uppercase;letter-spacing:.06em;font-weight:700}
.al-dan.slobodno small{color:var(--a-acc)}
.al-dan.slobodno:hover{background:rgba(22,163,74,.12)}
.al-dan.pola{background:repeating-linear-gradient(135deg,transparent 0 8px,rgba(217,119,6,.12) 8px 16px)}.al-dan.pola small{color:var(--a-warn)}
.al-dan.vikend small,.al-dan.nepoznato small{color:var(--a-muted)}
.al-dan.zauzeto{background:var(--a-bg);cursor:not-allowed}.al-dan.zauzeto b{text-decoration:line-through;opacity:.5}.al-dan.zauzeto small{color:var(--a-err)}
.al-dan.proslo,.al-dan.prazno{background:var(--a-bg);cursor:default;opacity:.45}
.al-dan.danas{box-shadow:inset 0 0 0 3px var(--a-acc)}
.al-dan.mj b::after{content:attr(data-mj);font-size:9px;margin-left:4px;color:var(--a-muted);font-weight:700;text-transform:uppercase}
.al-leg{display:flex;flex-wrap:wrap;gap:14px;font-family:'JetBrains Mono',monospace;font-size:11px;margin:12px 0}
.al-leg span::before{content:"";display:inline-block;width:12px;height:12px;border:2px solid var(--a-line);margin-right:6px;vertical-align:-2px}
.al-leg .l-s::before{background:rgba(22,163,74,.35)}.al-leg .l-p::before{background:rgba(217,119,6,.35)}.al-leg .l-z::before{background:var(--a-bg);border-color:var(--a-err)}
.al-uzivo{display:inline-flex;align-items:center;gap:8px;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--a-acc)}
.al-uzivo::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--a-acc);box-shadow:0 0 0 0 rgba(22,163,74,.6);animation:al-puls 1.8s infinite}
@keyframes al-puls{70%{box-shadow:0 0 0 8px rgba(22,163,74,0)}100%{box-shadow:0 0 0 0 rgba(22,163,74,0)}}
@media (max-width:600px){.al-dan{min-height:52px;padding:4px}.al-dan small{font-size:8px}.al-dan b{font-size:12px}}
@media (max-width:600px){.al-dan small{overflow-wrap:anywhere;line-height:1.15}.al-dan.vikend small{font-size:0}.al-dan.vikend small::after{content:"po dog.";font-size:8px}html[lang="en"] .al-dan.vikend small::after{content:"ask"}}

/* sadržaj ispod alata */
.al-sekcija{margin:0 0 56px}
.al-h2{font-weight:900;text-transform:uppercase;letter-spacing:-.02em;font-size:clamp(1.5rem,3vw,2.2rem);line-height:1;margin:0 0 18px;padding-top:18px;border-top:2px solid var(--a-line)}
.al-koraci{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;list-style:none;padding:0;margin:0;counter-reset:k}
.al-koraci li{border:2px solid var(--a-line);padding:16px;font-family:'JetBrains Mono',monospace;font-size:13px;line-height:1.6;counter-increment:k}
.al-koraci li::before{content:counter(k,decimal-leading-zero);display:block;font-family:'Inter',sans-serif;font-weight:900;font-size:24px;margin-bottom:6px;color:var(--a-acc)}
.al-faq details{border:2px solid var(--a-line);margin-bottom:8px;background:var(--a-card)}
.al-faq summary{cursor:pointer;padding:14px 16px;font-weight:800;list-style:none}
.al-faq summary::-webkit-details-marker{display:none}
.al-faq summary::after{content:"+";float:right;font-weight:900}
.al-faq details[open] summary::after{content:"−"}
.al-faq p{margin:0;padding:0 16px 16px;font-family:'JetBrains Mono',monospace;font-size:13px;line-height:1.7;color:var(--a-muted)}
.al-mreza{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.al-karta{display:flex;flex-direction:column;gap:10px;border:2px solid var(--a-line);background:var(--a-card);padding:18px;text-decoration:none;color:var(--a-ink);box-shadow:5px 5px 0 0 var(--a-line);transition:transform .15s,box-shadow .15s}
.dark .al-karta{box-shadow:5px 5px 0 0 rgba(255,255,255,.12)}
.al-karta:hover{transform:translate(3px,3px);box-shadow:none}
.al-karta svg{width:34px;height:34px}
.al-karta b{font-weight:900;text-transform:uppercase;font-size:17px;line-height:1.1}
.al-karta span{font-family:'JetBrains Mono',monospace;font-size:12px;line-height:1.55;color:var(--a-muted)}
.al-karta em{font-style:normal;font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:700;text-transform:uppercase;margin-top:auto}
.al-poziv{background:#000;color:#fff;padding:28px;border:2px solid #000;border-top:5px solid var(--a-acc);display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.dark .al-poziv{background:#18181b;border-color:#3f3f46;border-top-color:var(--a-acc)}
.al-poziv p{margin:0;font-family:'JetBrains Mono',monospace;font-size:13px;color:#a1a1aa;max-width:36rem;line-height:1.6}
.al-poziv b{display:block;font-weight:900;text-transform:uppercase;font-size:22px;color:#fff;margin-bottom:6px}
.al-poziv .al-btn{background:#fff;color:#000;border-color:#fff}

/* prozor za upit */
.al-dlg{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.6);display:grid;place-items:center;padding:16px;overflow-y:auto}
.al-dlg-k{width:min(560px,100%);background:var(--a-card);color:var(--a-ink);border:3px solid var(--a-line);box-shadow:8px 8px 0 0 var(--a-acc);padding:22px;max-height:94vh;overflow:auto}
.al-dlg-k h3{font-weight:900;text-transform:uppercase;font-size:22px;margin:0 0 6px}
.al-dlg-k>p{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--a-muted);margin:0 0 14px;line-height:1.6}
.al-sazetak{font-family:'JetBrains Mono',monospace;font-size:12px;background:var(--a-bg);border:2px solid var(--a-soft);padding:10px 12px;margin-bottom:14px;white-space:pre-wrap;line-height:1.5}
.al-dlg-d{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:6px}
.al-skriveno{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.al-hvala{text-align:center;padding:10px 0}
.al-hvala b{display:block;font-weight:900;font-size:26px;text-transform:uppercase;margin-bottom:8px}
.al-tost{position:fixed;left:50%;bottom:24px;transform:translate(-50%,16px);opacity:0;z-index:10001;padding:12px 18px;background:#000;color:#fff;border:2px solid #000;box-shadow:4px 4px 0 0 var(--a-acc);font-family:'JetBrains Mono',monospace;font-weight:700;font-size:12px;transition:opacity .25s,transform .3s;pointer-events:none;max-width:92vw}
.al-tost.vid{opacity:1;transform:translate(-50%,0)}
.al-tost.greska{background:var(--a-err)}

/* tabela i lista u sadržaju */
.al-tabela-om{overflow-x:auto;border:2px solid var(--a-line)}
.al-tabela{width:100%;border-collapse:collapse;font-family:'JetBrains Mono',monospace;font-size:12.5px;background:var(--a-card)}
.al-tabela th,.al-tabela td{text-align:left;padding:10px 12px;border-bottom:2px solid var(--a-soft);vertical-align:top}
.al-tabela th{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--a-muted);background:var(--a-bg);border-bottom:2px solid var(--a-line)}
.al-tabela tr:last-child td{border-bottom:0}
.al-tabela td:first-child{font-family:'Inter',sans-serif;font-weight:800;font-size:13.5px;white-space:nowrap}
.al-lista{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.al-lista li{border:2px solid var(--a-soft);padding:14px 16px;font-family:'JetBrains Mono',monospace;font-size:12.5px;line-height:1.6;color:var(--a-muted)}
.al-lista li b{display:block;font-family:'Inter',sans-serif;font-size:15px;font-weight:800;color:var(--a-ink);margin-bottom:4px}
.al-tekst{font-family:'JetBrains Mono',monospace;font-size:13.5px;line-height:1.75;color:var(--a-muted);max-width:46rem}
.al-tekst p{margin:0 0 12px}
.al-karta .uzivo{color:var(--a-acc)}
.al-nos{font-family:'JetBrains Mono',monospace;font-size:13px;padding:18px;border:2px dashed var(--a-err)}

/* stranica „Alati": 3 + (1 + široka) — kalendar uživo dobija dvije kolone */
@media (min-width:560px){.al-mreza.hub{grid-template-columns:repeat(2,minmax(0,1fr))}.al-mreza.hub .siroka{grid-column:span 2}}
@media (min-width:900px){.al-mreza.hub{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* izbor dana u kalendaru (jedan dan ili raspon) */
.al-dan.sel{background:var(--a-acc)!important;color:#fff}
.al-dan.sel small{color:#fff!important}
.al-dan.sel.pola{background:repeating-linear-gradient(135deg,var(--a-acc) 0 8px,#15803d 8px 16px)!important}
.al-dan.sel:not(.sel-p):not(.sel-k){background:#22c55e!important}
.al-izbor{position:sticky;bottom:12px;z-index:20;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:10px 0;padding:12px 14px;background:var(--a-ink);color:var(--a-card);border:2px solid var(--a-line);box-shadow:5px 5px 0 0 var(--a-acc)}
.al-izbor b{display:block;font-weight:900;text-transform:uppercase;font-size:15px}
.al-izbor small{font-family:'JetBrains Mono',monospace;font-size:11px;opacity:.75}
.al-izbor .al-btn{border-color:var(--a-card)}
.al-izbor .al-btn.prim{background:var(--a-acc);border-color:var(--a-acc);color:#fff;box-shadow:none}
