/* =========================================
   GLOBAL VARIABLES - CHANGE SETTINGS HERE
   ========================================= */

/* Skip-link (a11y): vidno samo ob focus prek tipkovnice (Tab) */
.skip-link {
    position: absolute;
    left: -9999px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    z-index: 100000;
    background: #fff;
    color: #000;
    padding: 8px 14px;
    text-decoration: none;
    font-weight: 600;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.18);
}
.skip-link:focus {
    left: 8px;
    top: 8px;
    width: auto;
    height: auto;
    overflow: visible;
    outline: 3px solid #18B9E8;
    outline-offset: 2px;
}

:root {
    /* --- PISAVE (FONTS) --- */
    --font-main: 'Raleway', sans-serif;
    --font-condensed: 'Roboto Condensed', sans-serif;
    --font-serif: 'Noto Serif', "Times New Roman", Times, serif;
    --font-icon-pro: 'Font Awesome 7 Pro';
    --font-icon-brands: 'Font Awesome 7 Brands';
    --font-helvetica: "HelveticaNeue-Light","Helvetica Neue",Helvetica,Arial,sans-serif; /* Shadowbox */
    --font-lucida: "Lucida Sans Unicode", "Lucida Grande", sans-serif; /* AddEvent */
    --font-tahoma: Tahoma; /* Datepicker */
    --font-arial: Arial, Helvetica, sans-serif; /* Izbornik */
    --font-simple: sans-serif; /* Slide counter */    
    /* --- FONT SIZES --- */
    --font-urakraj: 1em;
    --font-xs: 9px;     /* Extra small text (footers, etc) */
    --font-sm: 11px;    /* Small text (mobile body, meta info) */
    --font-base: 12px;  /* Standard text size */
    --font-md: 13px;    /* Slightly larger (inputs, details) */
    --font-lg: 14px;    /* Large text (dates, headers) */
    --font-xl: 16px;    /* Menu items, days */
    --font-2xl: 18px;   /* Sub-headings (h2) */
    --font-3xl: 20px;   /* Headings (h1) */
    --font-4xl: 24px;   /* Big titles */
    
    /* --- THEME COLORS --- */
    --col-blue: #18B9E8;        /* Dogodki */
    --col-pink: #E1007A;        /* Novice */
    --col-green: #A1C201;       /* Koledar / Galerija */
    --col-orange: #F39200;      /* Katalog */
    --col-blue-dark: #0D7AA0;
    --col-pink-dark: #94004F;
    --col-green-dark: #6B7F00;
    --col-orange-dark: #A36100;
    --col-white: #FFF;
    --col-grey: #666;

    /* Dim base (privzeto) — body.tema-* overridajo z lahko tinto v barvi strani */
    --col-dim: rgb(40, 40, 40);

    /* --- BORDER RADIUS --- */
    --radius-sm: 5px;
    --radius-md: 8px;
    --radius-lg: 12px;

    /* --- BARVNA PALETA ZVRSTNIH KATEGORIJ (dostopna povsod) --- */
    --nas-glasba:        #0D97BF;
    --nas-gledalisce:    #79A22D;
    --nas-razstave:      #e9118c;
    --nas-za-otroke:     #0066CC;
    --nas-izobrazevanje: #EC8904;
    --nas-drugo:         #782d8e;
    --nas-novice:        #e91e63;

    /* ===== Semantic theme variables (8.2 Dark mode) ===== */
    --theme-bg:          #ffffff;
    --theme-bg-soft:     #f7f7f7;       /* za podtemne sekcije v svetli temi */
    --theme-text:        #222222;
    --theme-text-muted:  #666666;
    --theme-card:        #ffffff;
    --theme-card-elev:   #ffffff;       /* poudarjeni kontejnerji */
    --theme-border:      #dddddd;
    --theme-border-soft: #eeeeee;
    --theme-shadow:      rgba(0, 0, 0, 0.10);
    --theme-shadow-lg:   rgba(0, 0, 0, 0.18);
    --theme-link:        #C2007E;
    --theme-input-bg:    #ffffff;
    --theme-overlay:     rgba(0, 0, 0, 0.5);
    color-scheme: light;
}

/* Dark mode overrides — aktivirajo se prek data-theme="dark" na <html>. */
html[data-theme="dark"] {
    --theme-bg:          #181818;
    --theme-bg-soft:     #222222;
    --theme-text:        #e6e6e6;
    --theme-text-muted:  #a0a0a0;
    --theme-card:        #232323;
    --theme-card-elev:   #2a2a2a;
    --theme-border:      #3a3a3a;
    --theme-border-soft: #2e2e2e;
    --theme-shadow:      rgba(0, 0, 0, 0.4);
    --theme-shadow-lg:   rgba(0, 0, 0, 0.6);
    --theme-link:        #ff5ba8;
    --theme-input-bg:    #1f1f1f;
    --theme-overlay:     rgba(0, 0, 0, 0.7);
    color-scheme: dark;
}
html[data-theme="dark"] body { background: var(--theme-bg); color: var(--theme-text); }
html[data-theme="dark"] .moje-sekcija { background: var(--theme-card); border-color: var(--theme-border); color: var(--theme-text); }
html[data-theme="dark"] .moje-sekcija h2 { color: var(--theme-text); }
html[data-theme="dark"] .moje-sekcija p,
html[data-theme="dark"] .moje-sekcija li { color: var(--theme-text); }
html[data-theme="dark"] .welcome-modal-panel,
html[data-theme="dark"] .push-pre-modal .welcome-modal-panel {
    background: var(--theme-card);
    color: var(--theme-text);
}
html[data-theme="dark"] .welcome-modal-body h2 { color: var(--theme-link); }
html[data-theme="dark"] .welcome-modal-body p,
html[data-theme="dark"] .welcome-kanali li { color: var(--theme-text); }
html[data-theme="dark"] .welcome-namig { color: var(--theme-text-muted); }
html[data-theme="dark"] .welcome-modal-x { color: var(--theme-text-muted); }
html[data-theme="dark"] .welcome-modal-x:hover,
html[data-theme="dark"] .welcome-modal-x:focus-visible { color: var(--theme-text); }
html[data-theme="dark"] .narocnina-toast {
    background: var(--theme-card-elev);
    color: var(--theme-text);
    box-shadow: 0 10px 30px var(--theme-shadow-lg);
}
html[data-theme="dark"] .filter-empty-state { color: var(--theme-text-muted); }
html[data-theme="dark"] .filter-empty-naslov { color: var(--theme-text); }
html[data-theme="dark"] .filter-empty-state p { color: var(--theme-text); }
html[data-theme="dark"] .filter-empty-ilustracija {
    background: linear-gradient(135deg, rgba(255,91,168,0.15), rgba(24,185,232,0.10));
}
html[data-theme="dark"] .filter-empty-sek {
    background: var(--theme-card-elev);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .filter-empty-sek:hover,
html[data-theme="dark"] .filter-empty-sek:focus-visible {
    background: var(--theme-bg-soft);
    color: var(--theme-link);
}
html[data-theme="dark"] .snooze-banner {
    background: linear-gradient(135deg, rgba(255,91,168,0.12), rgba(24,185,232,0.08));
    color: var(--theme-text);
}
html[data-theme="dark"] .snooze-gumb {
    background: var(--theme-card-elev);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .snooze-gumb:hover:not(:disabled),
html[data-theme="dark"] .snooze-gumb:focus-visible {
    background: var(--theme-bg-soft);
    color: var(--theme-link);
    border-color: var(--theme-link);
}
html[data-theme="dark"] .narocnina-modal-panel {
    background: var(--theme-card);
    color: var(--theme-text);
}
html[data-theme="dark"] .dogodek_card,
html[data-theme="dark"] .ponudba_card,
html[data-theme="dark"] .novica_card {
    background: var(--theme-card);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea {
    background: var(--theme-input-bg);
    color: var(--theme-text);
    border-color: var(--theme-border);
}

/* Theme toggle gumb (mobile in tablet — v #header_actions) */
#btn_theme {
    background: transparent;
    border: 0;
    color: inherit;
    cursor: pointer;
    padding: 6px 8px;
    font-size: 18px;
    line-height: 1;
}
#btn_theme:hover, #btn_theme:focus-visible { color: var(--theme-link); }

/* Theme toggle gumb desktop — tik desno od jezikovnega chip-a (#container ima
   relative pozicijo + 1028px center; isti absolutni layout kot .jezik-preklop-desktop). */
.btn-theme-desktop {
    position: absolute;
    top: 12px;
    left: 96px;
    z-index: 100;
    background: rgba(255,255,255,0.85);
    border: 1px solid rgba(0,0,0,0.06);
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
    color: #333;
    cursor: pointer;
    padding: 6px 10px;
    font-size: 18px;
    line-height: 1;
    height: 32px;
    min-width: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.btn-theme-desktop:hover, .btn-theme-desktop:focus-visible {
    background: #fff;
    color: var(--theme-link);
}
@media (max-width: 816px) {
    .btn-theme-desktop { display: none; }
}
html[data-theme="dark"] .btn-theme-desktop {
    background: rgba(40,40,40,0.85);
    color: #e6e6e6;
    border-color: rgba(255,255,255,0.10);
}
html[data-theme="dark"] .btn-theme-desktop:hover,
html[data-theme="dark"] .btn-theme-desktop:focus-visible {
    background: #2a2a2a;
    color: var(--theme-link);
}

/* Theme toggle ikone: vidnost na podlagi izbire uporabnika (data-theme-izbira)
   — ne dejansko aplicirane teme — da je jasno vidno, ali si v auto modu. */
.theme-icon { display: none; }
html[data-theme-izbira="light"] .theme-icon-light { display: inline; }
html[data-theme-izbira="dark"]  .theme-icon-dark  { display: inline; }
html[data-theme-izbira="auto"]  .theme-icon-auto  { display: inline; }
/* Fallback: če JS še ni postavil data-theme-izbira atributa (pre-FOUC ali brez JS),
   prikaži ikono v auto stanju (◐), ker je auto privzeti način. */
html:not([data-theme-izbira]) .theme-icon-auto { display: inline; }
body.tema-dogodki { --col-dim: color-mix(in srgb, var(--col-blue) 14%, rgb(40, 40, 40)); }
body.tema-koledar { --col-dim: color-mix(in srgb, var(--col-green) 14%, rgb(40, 40, 40)); }
body.tema-katalog { --col-dim: color-mix(in srgb, var(--col-orange) 14%, rgb(40, 40, 40)); }
body.tema-novice  { --col-dim: color-mix(in srgb, var(--col-pink) 14%, rgb(40, 40, 40)); }

/* box-sizing: border-box samo za nove elemente (stari float-based layout računa s content-box) */
#siteheader, #siteheader *,
#bottom_nav, #bottom_nav *,
#top_nav, #top_nav *,
#brand, #brand *,
#header_actions, #header_actions *,
#iskanje_bar, #iskanje_bar *,
#filter_drawer, #filter_drawer * {
    box-sizing: border-box;
}

/* A11y: vidna fokusna obroba samo pri tipkovniški navigaciji (Faza I) */
:focus { outline: none; }
:focus-visible {
    outline: 2px solid var(--col-blue, #00aeef);
    outline-offset: 2px;
    border-radius: 2px;
}

/* Respektiraj uporabnikovo nastavitev za zmanjšane animacije */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        scroll-behavior: auto !important;
    }
    /* Izjema: cssmenu kolaps/razpiranje prenaša UX informacijo (kje so meniji),
       zato ohrani tranzicijo tudi pri reduce-motion. */
    #cssmenu, #cssmenu li {
        transition-duration: 0.32s !important;
    }
}

/* roboto-condensed-300 - latin */
@font-face {
	font-family: 'Roboto Condensed';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url('fonts/roboto-condensed-v16-latin-300.eot'); /* IE9 Compat Modes */
	src: local('Roboto Condensed Light'), local('RobotoCondensed-Light'),  url('fonts/roboto-condensed-v16-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */  url('fonts/roboto-condensed-v16-latin-300.woff2') format('woff2'), /* Super Modern Browsers */  url('fonts/roboto-condensed-v16-latin-300.woff') format('woff'), /* Modern Browsers */  url('fonts/roboto-condensed-v16-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */  url('fonts/roboto-condensed-v16-latin-300.svg#RobotoCondensed') format('svg'); /* Legacy iOS */
}
/* roboto-condensed-regular - latin */
@font-face {
	font-family: 'Roboto Condensed';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('fonts/roboto-condensed-v16-latin-regular.eot'); /* IE9 Compat Modes */
	src: local('Roboto Condensed'), local('RobotoCondensed-Regular'),  url('fonts/roboto-condensed-v16-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */  url('fonts/roboto-condensed-v16-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */  url('fonts/roboto-condensed-v16-latin-regular.woff') format('woff'), /* Modern Browsers */  url('fonts/roboto-condensed-v16-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */  url('fonts/roboto-condensed-v16-latin-regular.svg#RobotoCondensed') format('svg'); /* Legacy iOS */
}
/* roboto-condensed-italic - latin */
@font-face {
	font-family: 'Roboto Condensed';
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url('fonts/roboto-condensed-v16-latin-italic.eot'); /* IE9 Compat Modes */
	src: local('Roboto Condensed Italic'), local('RobotoCondensed-Italic'),  url('fonts/roboto-condensed-v16-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */  url('fonts/roboto-condensed-v16-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */  url('fonts/roboto-condensed-v16-latin-italic.woff') format('woff'), /* Modern Browsers */  url('fonts/roboto-condensed-v16-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */  url('fonts/roboto-condensed-v16-latin-italic.svg#RobotoCondensed') format('svg'); /* Legacy iOS */
}
.fotka_mobilna {
        display: none;
        width: 100%;
        max-width: 100%; /* Prepreči, da bi element bil širši od starša */
        box-sizing: border-box; /* Zagotovi, da padding ne poveča širine */
        overflow: hidden; /* Skrije morebitno vsebino, ki bi "ušla" ven */
        margin: 0 auto; /* Centriranje, če je slučajno ožja */
        margin-top: 10px;    
        margin-bottom: -16px !important; 
    }
    .fotka_mobilna img {
        display: block; /* Odpravi prazen prostor (ghost space) pod sliko */
        width: 100%;
        max-width: 100%; /* Slika ne sme biti širša od kontejnerja */
        height: auto; /* Ohrani pravilno razmerje stranic (da slika ni razpotegnjena) */
        box-sizing: border-box;
        border-radius: var(--radius-lg);
        
    }
.mobilno_skrij {
    display: inline;
}
li {
    font-size: 1.2em;
}
body {
	background-image: url(slike/podlaga1.jpg);
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-position: 0 top;
	margin: 0;
	padding: 0;
	font-size: var(--font-base); /* 12px */

}
*, p {
	font-family: var(--font-main);
	line-height: 1.5em;
}
::placeholder {
  color: darkred;
}
input:focus::placeholder {
  color: transparent;
}
.mobile_video {
	display:none;
}
.mobile_kontakt	{
		display:none;
}
.sam_video {
	display: block;
	width: 100%;
	max-width: 100%;
	aspect-ratio: 16 / 9;
	height: auto;
	padding-top: 12px;
	margin-bottom: 16px;
	border: 0;
}
.dogode-vsebina {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}
.dogode-vsebina .opis {
	flex: 1 1 0;
	min-width: 0;
	font-size: 1.2em;
	text-align: justify;
}
.dogode-vsebina .dogodek_fotka_link {
	flex: 0 0 auto;
}
.sam_video_dogodki {
	display:block;
     width:574px; 
	 height:300px;
	 
    padding-top: 0;
}
#map_canvas {
	 width:574px; 
	 height:300px;
}
.zafotko {
	min-height:110px;
	font-size: var(--font-md); /* 13px */
}
#container { 
	position: relative;
	width: 1028px;
	margin: 0 auto;
}
#glava {
	height:100px;
}
#glava_levo {
	width:686px;
	height:100px;
	float:left;
}
#glava_desno {

	width:342px;	
	float:left;
}
#vsebina {
	width:1028px;
}
#centralni_stolpec {
	width:814px;
	float:left;
}
#desni_stolpec {
	position: fixed;
	margin-left: 814px;
	margin-top: -8px;
	width: 214px;
}
.socialink {
    float: left;
    width: 42px;
    text-align: center;
    cursor: pointer;
    opacity: 0.6;
}
.socialink:hover {
    opacity: 1;
}

/* Brand barve social share ikon v #desni_linki — prej inline `style="color:..."`
   na <i> elementih (index.php). Preneseno v CSS, da lahko dodamo dark mode. */
#desni_linki .socialink i.fa-facebook       { color: #4267B2; }
#desni_linki .socialink i.fa-x-twitter      { color: #000; }
#desni_linki .socialink i.fa-reddit         { color: #FF4500; }
#desni_linki .socialink i.fa-threads        { color: #000; }
#desni_linki .socialink i.fa-viber          { color: #7360f2; }
#desni_linki .socialink i.fa-whatsapp       { color: #075e54; }
#desni_linki .socialink i.fa-telegram       { color: #24A1DE; }
#desni_linki .socialink i.fa-circle-envelope { color: #000; }



.socialink_m {
    display: inline-block;
    width: 10.5%;
    text-align: center;
    cursor: pointer;
    opacity: 0.8;
}
.socialink:hover {
    opacity: 1;
}

#mobilni_linki {
    font-size: 2.5em;
    display: none;

}

#desni_linki {
	margin-top: 8px;
	margin-left: 6px;
	width: 210px;
	height: 46px;
	font-size: 2.8em;
}
#desni, #desni1, #desni2 {
	display:block;
	float:left;
	width:32px;
	height:33px;
}
#desni span, #desni1 span, #desni2 span {
	display:none;
}
.tw, .go, .em {
	margin-left:14px;	
}
#noga {
	width:1028px;
}
#noga_levo p {
	margin:0;
	width:200px;
	padding:14px;
	float:left;
}
#noga_levo #boreoslikca {
	margin-left:50px;
	margin-top:12px;
	font-size: var(--font-4xl); /* 24px */
	width:86px;
	height:98px;
	float:left;
	background-image:url(slike/naslovne_ikone.png);
	background-repeat:no-repeat;
	background-position:0px -158px;
}
#noga_desno p {

	font-size: var(--font-xs); /* 9px */
	margin:0;
	width:190px;
	padding-top:14px;
	float:left;
}
#noga_desno #slikce {
	margin-left:0px;
	margin-top:16px;
	float:left;
}
#noga_desno #ess{
	width:173px;
	height:39px;
	background-image:url(slike/naslovne_ikone.png);
	background-repeat:no-repeat;
	background-position:0px -262px;	

}
#noga_desno #mnz{
	margin-top:26px;
	width:173px;
	height:39px;	
	background-image:url(slike/naslovne_ikone.png);
	background-repeat:no-repeat;
	background-position:-87px -163px;	
}

/* CSS MENU */

/* CSS MENU — pure CSS krogi (zamenjano za bitmap sprite zaradi i18n).
   Krogi se z negativnim top zamikom dvignejo nad zgornji rob strani (kot
   v originalnem bitmap dizajnu). */
#cssmenu {
	position: fixed;
	top: -64px;                  /* dvignjeno: ~polovica kroga čez zgornji rob strani */
	z-index: 200;
	border: none;
	width: 360px;
	height: 170px;
	color: var(--col-white);
	background: none;
	pointer-events: none;        /* prazni prostor med krogi naj prepušča klike */
}
#cssmenu ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: flex-start;
	height: 170px;
}
#cssmenu li {
	width: 130px;
	height: 130px;
	margin: 0;
	padding: 0;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: filter 0.18s, transform 0.18s;
	box-shadow: 0 3px 8px rgba(0,0,0,0.14);
	box-sizing: border-box;
	flex: 0 0 auto;
	pointer-events: auto;        /* krogi so klikabilni */
}
#cssmenu li:hover { filter: brightness(1.08); transform: translateY(-3px); }
#cssmenu li + li { margin-left: -22px; }   /* prekrivanje krogov */
/* Za WCAG kontrast: bele črke na svetlih barvah (cyan #18B9E8, lime #A1C201)
   ne dosežejo 4.5 razmerja; uporabljamo dark variante samo za #cssmenu krogi.
   Pink #E1007A je dovolj temen, da beli tekst pasira. */
#cssmenu li.novice   { background: var(--col-pink);       margin-top: 4px; }
#cssmenu li.dogodki  { background: var(--col-blue-dark);  margin-top: 28px; }
#cssmenu li.dogodki a { padding-top: 70px; }   /* dvignjen napis za 8px (vidno višje v vidnem delu kroga) */
#cssmenu li.galerija { background: var(--col-green-dark); margin-top: 6px; }
#cssmenu li.koledar  { display: none; }
/* Besedilo: centrirano znotraj VIDNE polovice kroga.
   Krog je 130px, ~64px ga je čez zgornji rob (top: -64px + margin-top).
   Center vidne polovice ≈ y 93px znotraj kroga → padding-top: 64px in
   align-items: flex-start postavi besedilo v ta sredinski razpon. */
#cssmenu li a {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 78px 12px 0;
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	font-weight: 500;
	text-align: center;
	line-height: 1.15;
	word-break: break-word;
	hyphens: auto;
	overflow: hidden;
	box-sizing: border-box;
}
#cssmenu li a:hover { color: #fff; text-decoration: none; }

/* Active state (trenutna stran) — PHP doda .novicehover/.dogodkihover/.galerijahover
   class na #cssmenu glede na $menustil[$id]. Označi aktivni krog z inset robom. */
#cssmenu.novicehover    .novice   { box-shadow: 0 0 0 3px rgba(255,255,255,0.85) inset, 0 3px 8px rgba(0,0,0,0.18); }
#cssmenu.dogodkihover   .dogodki  { box-shadow: 0 0 0 3px rgba(255,255,255,0.85) inset, 0 3px 8px rgba(0,0,0,0.18); }
#cssmenu.galerijahover  .galerija { box-shadow: 0 0 0 3px rgba(255,255,255,0.85) inset, 0 3px 8px rgba(0,0,0,0.18); }

/* Scroll collapse: ko user skrola, vsi krogi se vsujejo v DESNI položaj
   (kjer je galerija). Aktivni krog dobi z-index 10 → ostane na vrhu in
   pokrije ostale. Uporabnik vidi samo en krog (z barvo aktualne strani).
   Hover na cssmenu razpre nazaj.
   JS doda body.cssmenu-zlozen pri scrollY > 80.
   margin-left: -22px med li-ji pomeni center-to-center 130-22 = 108px.
   Vrstni red v HTML: novice, dogodki, galerija (leva → desna). */
/* Cel #cssmenu se premakne horizontalno tako, da je collapsed krog poravnan
   s centrom koledarja v #desni_stolpec (calendar center ~921px, galerija
   center default ~967px → premik -46px). Tune po potrebi.
   POMEMBNO za Chrome: eksplicitno definiramo inicijalne vrednosti
   transform/opacity v base selektorju — Chrome ne sproži animacije iz
   'none' v 'translateX(0)' brez izrecno postavljenega začetnega stanja. */
#cssmenu {
    transform: translateX(0);
    transition: transform 0.32s cubic-bezier(.4,.2,.4,1);
    will-change: transform;
}
#cssmenu li {
    opacity: 1;
    transition: transform 0.32s cubic-bezier(.4,.2,.4,1), opacity 0.32s;
    will-change: transform, opacity;
}
body.cssmenu-zlozen #cssmenu {
    transform: translateX(-46px);
}
body.cssmenu-zlozen #cssmenu li {
    z-index: 1;
    opacity: 0;          /* privzeto skrij vse — aktivni dobi opacity 1 spodaj */
    pointer-events: none; /* prepreči, da bi skrit krog ujel klik */
}
/* Vsi se premaknejo na desni položaj (galerija stays put, ostali translate desno) */
body.cssmenu-zlozen #cssmenu .novice   { transform: translateX(216px); }
body.cssmenu-zlozen #cssmenu .dogodki  { transform: translateX(108px); }
body.cssmenu-zlozen #cssmenu .galerija { transform: translateX(0); }

/* Aktivni krog na vrhu in vidni. Ostali so skriti (opacity 0). */
body.cssmenu-zlozen #cssmenu.novicehover    .novice,
body.cssmenu-zlozen #cssmenu.dogodkihover   .dogodki,
body.cssmenu-zlozen #cssmenu.galerijahover  .galerija {
    z-index: 10;
    opacity: 1;
    pointer-events: auto;
}

/* Fallback za strani brez aktivnega razreda (npr. / = 0.php): pokaži
   .dogodki kot privzeti viden krog, da menu po kolapsu ne izgine. */
body.cssmenu-zlozen #cssmenu:not(.novicehover):not(.dogodkihover):not(.galerijahover) .dogodki {
    z-index: 10;
    opacity: 1;
    pointer-events: auto;
}

/* Hover na cssmenu razpre vse nazaj na privzeti položaj + opacity 1
   in vrne cssmenu na originalno X pozicijo (brez -46px premika).
   Kljub pointer-events:none na #cssmenu se hover iz li (pointer-events:auto)
   prenese (bubble) na starša — zato navaden :hover deluje in se izognemo
   Chrome bugu z :has() + transform. */
body.cssmenu-zlozen #cssmenu:hover {
    transform: translateX(0);
}
body.cssmenu-zlozen #cssmenu:hover li {
    opacity: 1;
    pointer-events: auto;
}
body.cssmenu-zlozen #cssmenu:hover li.novice,
body.cssmenu-zlozen #cssmenu:hover li.dogodki,
body.cssmenu-zlozen #cssmenu:hover li.galerija {
    transform: translateX(0);
}
body.cssmenu-zlozen #cssmenu:hover li.novice:hover,
body.cssmenu-zlozen #cssmenu:hover li.dogodki:hover,
body.cssmenu-zlozen #cssmenu:hover li.galerija:hover {
    transform: translateY(-3px);
}
/* Touch device: na mobilnem/tabletu je #cssmenu sploh skrit, problema ni. */

/* CSS MENU KONEC */
/* NASLOVNICA */
#naslovna_dogodki, #naslovna_novice, #noga_levo, #noga_desno {
	width:400px;
	float:left;
	padding-left:14px;
}
#naslovna_novice {
	padding:0;
}

#naslovna_ikona, #naslovna_ikona_novice {
	position:absolute;
	margin-left:243px;
	margin-top:-30px;
	width:128px;
	height:128px;
	background-image:url(slike/naslovne_ikone.png);
	background-repeat:no-repeat;

}
.novice_ikona {
	background-position:-130px 0;
	
}
.galerija_ikona {
	background-position:-262px -255px;	
}
#naslovna_ikona.podstran {
	margin-left:630px;
}

#naslovna_dogodki_krogec {
	position:absolute;
	margin-left:-10px;
	margin-top:-10px;
	width:28px;
	height:28px;
	background-image:url(slike/naslovne_ikone.png);
	background-repeat:no-repeat;
	background-position:0px -129px;
}


#naslovna_seznam_dogodkov, #naslovna_seznam_novic {
	
	width:388px;
    -webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);
    -webkit-box-shadow: 0px 0px 32px 0px rgba(50, 50, 50, 0.4);
	-moz-box-shadow:    0px 0px 32px 0px rgba(50, 50, 50, 0.4);
	box-shadow:         0px 0px 32px 0px rgba(50, 50, 50, 0.4);
	background-color:#FFF;
	min-height:350px;
				
	
}

#naslovna_novice_head, #naslovna_dogodki_head {
	height:69px;
    -webkit-border-radius:  12px  12px 0px 12px;
	-moz-border-radius: 12px  12px 0px 12px;
	border-radius: 12px 12px  0px 12px;
			

}
#naslovna_dogodki_head {
	background-color: var(--col-blue);
}
#naslovna_novice_head {
	background-color: var(--col-pink);
}
.naslov_dve {

	font-size: var(--font-4xl); /* 24px */
	font-family:'Noto Serif', "Times New Roman", Times, serif;
	font-weight:bold;
	color: var(--col-white);
}
.naslov_ostalo {
	font-weight:normal;
	font-size: var(--font-4xl); /* 24px */
	font-family:'Noto Serif', "Times New Roman", Times, serif;
	font-style:italic;
	color: var(--col-white);	
}

.naslovna_naslov {
	font-weight:normal;
	margin:0;
	padding-top:30px;
	padding-left:14px;
}
.organizator {
	font-size: var(--font-sm); /* 11px */
}
.naslovna_vec {
	color: var(--col-white);
	font-size: var(--font-base); /* 12px */

	text-align: center;
	float: right;
	margin-right: 30px;
	padding-top:2px;
	background-image: url(slike/naslovne_ikone.png);
	background-repeat: no-repeat;
	background-position: -29px -129px;
	-webkit-border-radius: 0px  0px 5px 5px;
	-moz-border-radius: 0px  0px 5px 5px;
	border-radius: 0px  0px 5px 5px;
	height: 19px;
	width: 139px;

	border-right-width: 1px;
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-top-style: none;
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-right-color: #FFF;
	border-bottom-color: #FFF;
	border-left-color: #FFF;

}
.naslovna_vec a {
	text-decoration:none;
	color: var(--col-white);
}
.naslovna_vec a:hover {
	text-decoration:none;
	color:#444	;
}
.naslovna_vsi_dogodki {
	padding:14px;
}




.kjekaj {
	
	clear:both;
	

}
.kjekaj_naslovka {
	padding-top:8px;
	clear:both;

}
.datum {
	float:left;
	width:42px;
	text-align:center;
	color:white;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
}
.vmesdatum {
	float:left;
	width:24px;
	padding-top:6px;
	text-align:center;
	font-size: var(--font-4xl); /* 24px */
	color:black;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
}
.kondatum {
	float:left;
	width:42px;
	text-align:center;
	color:white;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
}
.mesec {
	background-color: black;
	padding-bottom:1px;
	line-height:22px;
	-webkit-border-radius: 5px 5px 0px  0px;
	-moz-border-radius: 5px 5px 0px  0px;
	border-radius: 5px 5px 0px  0px;
		font-weight:bold;
	font-size: var(--font-lg); /* 14px */
	
}
.dan {
	background-color: var(--col-blue);
	line-height:22px;
	height:22px;
		padding-bottom:1px;
	-webkit-border-radius: 0px  0px 5px 5px;
	-moz-border-radius: 0px  0px 5px 5px;
	border-radius: 0px  0px 5px 5px;
	
	font-weight:bold;
	font-size: var(--font-lg); /* 14px */
}
.adddan {
	background-color: #D50000;
	padding-bottom:1px;
	line-height:22px;
	-webkit-border-radius: 5px 5px 0px  0px;
	-moz-border-radius: 5px 5px 0px  0px;
	border-radius: 5px 5px 0px  0px;
		font-weight:bold;
	font-size: var(--font-lg); /* 14px */
}
.urakraj_vstopna {
	float:left;
	padding-left:14px;
	margin-top:0;
	width:300px;
	line-height: 1em;
    font-size: var(--font-urakraj);
}
.urakraj {
	margin-top:0;
	float:left;
	padding-left:48px;
	position:absolute;
	line-height: 1em;
    max-width:50%;
    font-size: var(--font-urakraj);

}

/* Novice — pravila za naslov in urakraj (kosi/1.php seznam + kosi/5.php detail) */
.novica_urakraj {
    margin-top: 0;
}
.novica_naslov {
    float: left;
    width: 500px;
    max-width: 100%;
    padding-top: 0;
    padding-bottom: 12px;
    word-wrap: break-word;
    overflow-wrap: break-word;
}
.novica_kartica {
    padding-bottom: 16px;
    margin-bottom: 12px;
    border-bottom: 1px solid #eee;
}
.urakraj_vecdni {
	float:left;
	padding-left:115px;
	position:absolute;
	line-height: 1em;
    font-size: var(--font-urakraj);

}

.kajzakaj {
	clear:both;
	color:#555;
	font-size: var(--font-base); /* 12px */
}
.kajzakaj p span {
    font-size: 1.1em;
}
.kajzakaj a{
	text-decoration:none;
	color:inherit;
}
.kajzakaj a:hover{
	text-decoration: none;
	color: #000;	
}
h1, h2, h1 a, h2 a {
	margin:0;
	font-weight:bold;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
	text-decoration:none;
    
}
h1 {
	
	font-size: var(--font-3xl); /* 20px */
	padding-top:12px;

}
h2 {
	padding:0;
	padding-top:8px;
	font-size: var(--font-2xl); /* 18px */
    padding-bottom:0;
	
}
.kajzakaj p {
	margin-top: 4px;
	padding: 0;
	text-align: justify;
	font-size: 1.1em;
}
.podnaslov {
	color: #222;
	padding: 0;
	line-height: 1.5;
	font-size: var(--font-md);
	margin: 0 0 12px 0;
}
.dogodki_vmes {
	width: auto; 
	height: 1px;
	border-top-width: 1px;
	border-top-style: dashed;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	border-top-color: #B6C9D3;
	margin-top:12px;
	margin-bottom:14px;
}
#naslovna_seznam_novic .dan {
	background-color: var(--col-pink);	
}
ul {
    list-style: square;
}


/* NASLOVNICA KONEC */
/* NOVICE */
#vsebina {
	margin-left:14px;
	width:788px;
    -webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);
    -webkit-box-shadow: 0px 0px 32px 0px rgba(50, 50, 50, 0.4);
	-moz-box-shadow:    0px 0px 32px 0px rgba(50, 50, 50, 0.4);
	box-shadow:         0px 0px 32px 0px rgba(50, 50, 50, 0.4);
	background-color:#FFF;
	min-height:300px;
	
	

		
	
}

#vsebina_head {
	height:69px;
	width:788px;
    -webkit-border-radius:  12px  12px 0px 0px;
	-moz-border-radius: 12px  12px 0px 0px;
	border-radius: 12px 12px  0px 0px;
		
}

.podlaga_prijava {	background-color:#C32E31; }



.podlaga_dogodki {	background-color: var(--col-blue); }
.podlaga_novice { 	background-color: var(--col-pink); }
.podlaga_galerija {	background-color: var(--col-green); }

/* A11y: --col-blue (#18B9E8) ima na belem ozadju kontrast 2.29:1 (FAIL).
   --col-blue-dark (#0D7AA0) doseže ~5.4:1 (WCAG AA). Brand barva (--col-blue)
   ostaja za ozadja in dekoracije, dark variant je za besedilo na belem. */
.pisava_dogodki, .pisava_dogodki a {	color: var(--col-blue-dark); }
.pisava_dogodki a:hover {
	color: #0B697D;
}
.pisava_doglevo, .pisava_doglevo a {
	color: var(--col-pink);
	
}
.pisava_doglevo a:hover {
	color: #A4005A;	
}
.pisava_novice, .pisava_novice a { 	color: var(--col-pink); }
.pisava_novice a:hover {
	color: #B90066;
}

.pisava_galerija, .pisava_galerija a {	color: var(--col-green-dark); } /* a11y: cf. ostali pisava_* */
.pisava_galerija a:hover {
	color: #809A01;
}

.pisava_sivo, .pisava_sivo a  { 
	color: var(--col-grey);
	text-decoration:none;
}
.pisava_sivo a:hover  {
	color: #000000;
}
.vsebina_naslov {
	margin:0;
	padding-top:20px;
	padding-left:30px;

}
.vsebina_naslov a{
		text-decoration:none;
}
#vsebina_spodaj, .vsebina_spodaj {
	position: relative; /* containing block za absolutno pozicioniran #vsebina_menu_abs */
	padding-left: 14px;
	padding-right: 14px;
	margin-top: 24px;
	width: 760px;
	clear: both;
}
#vsebina_menu, .vsebina_menu  {
	width:186px;
	float:left;
	min-height:1px;
    height: 1px !important;



}
/* Detail dogodka ima v .vsebina_menu pravo vsebino (info-akcije, kontakt …),
   ne le placeholder za #vsebina_menu_abs. Privzeti `.vsebina_menu { float:
   left; height: 1px !important }` (zasnovan za listing strani) povzroči
   da vsebina sidebar-ja overflowa iz 1px škatla in jo naslednji
   .vsebina_spodaj sibling vizualno prekrije — gumb "Dodaj v koledar"
   (zadnji v sidebar-u) postane ne-klikabilen, ker intercepts pointer
   events. Naivni fix (height: auto) pa povzroči, da naslednji
   .vsebina_spodaj s `clear: both` čaka, dokler ni konec daljšega
   sidebar-ja, kar pusti prazen prostor med kratkim opisom in opis/
   zemljevid bloki.

   Pravi fix: sidebar postavimo `position: absolute` (out-of-flow), tako
   da naslednji bloki ne čakajo nanj. `z-index` zagotovi, da sidebar
   ostane klikabilen, tudi če overflowa v naslednji blok. Pravilo ujema
   samo sidebar z dejansko vsebino (info-blok ali info-akcije), tako da
   ne ruši praznih placeholderjev v opis/zemljevid blokih. */
body.detail-stran .vsebina_spodaj > .vsebina_menu:has(.info-blok, .info-akcije) {
    position: absolute;
    left: 14px;       /* poravnano z .vsebina_spodaj padding-left */
    top: 0;
    width: 186px;
    height: auto !important;
    min-height: 0;
    float: none;
    z-index: 5;       /* nad morebitnim overflowom v naslednje .vsebina_spodaj */
}
/* Levi zvrstni/občinski menu je absolutno pozicioniran, da dogodki, ki bi se
   sicer prelili pod njim (float wrap), ne uidejo na levi rob. */
#vsebina_menu_abs {
	position: absolute;
	left: 14px; /* poravnano z .vsebina_spodaj padding-left */
	top: 0;
	width: 186px;
}
#vsebina_vsebina, .vsebina_vsebina {
	width: 574px;
	margin-left: 186px; /* rezerviran prostor za absolutno pozicioniran #vsebina_menu_abs */
	float: left;
	padding-bottom: 12px;
}
.srednji {
	width:574px;
	
	float:none;

}
.srdanes {
   
  background: none; /* For browsers that do not support gradients */
  background: -webkit-linear-gradient(left,rgba(255,0,0,0),rgba(255,0,0,0),rgba(255,0,0,0.06),rgba(255,0,0,0)); /*Safari 5.1-6*/
  background: -o-linear-gradient(left,rgba(255,0,0,0),rgba(255,0,0,0),rgba(255,0,0,0.06),rgba(255,0,0,0)); /*Opera 11.1-12*/
  background: -moz-linear-gradient(left,rgba(255,0,0,0),rgba(255,0,0,0)),rgba(255,0,0,0.06,rgba(255,0,0,0)); /*Fx 3.6-15*/
  background: linear-gradient(to left, rgba(255,0,0,0),rgba(255,0,0,0),rgba(255,0,0,0.06),rgba(255,0,0,0));
  }
.o_dogodku {
	float:left;
	width:574px;
}
.o_dogodku_brezvidea {
	float:left;
	width:574px;

}
.nastopajoci p {
	padding-right:4px;
	font-size: 1.1em;
}
.fotka_desno, .fotka_levo {
	display:block;
	margin-left:14px;

	float:left;
	width:172px;
    -webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
    -webkit-box-shadow: 0px 0px 6px 0px rgba(50, 50, 50, 0.7);
	-moz-box-shadow:    0px 0px 6px 0px rgba(50, 50, 50, 0.7);
	box-shadow:         0px 0px 6px 0px rgba(50, 50, 50, 0.7);	
}
.fotka_levo {
	margin-left:0px;	
	padding-left:0;
}
.hspacer {
	height:12px;
}
.hspacer1 {
	height:28px;
}
.splosni_linki, .splosni_linki_off {
	list-style: none;
	margin: 0;
	margin-top: 22px;
	padding: 0;


}
.splosni_linki li{
	height:32px; 
    margin-left:0;
        
}



.splosni_linki li span {
	display:block;
	float:left;
	width:340px;
	border-bottom-width: thin;
	border-bottom-style: dashed;
	border-bottom-color: #CCC;

	
}
.splosni_linki li span a {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: lighter;
}
/* Ikone v .splosni_linki — prej narejene prek `::before` pseudo-elementa z
   `font-family: 'Font Awesome 7 Brands'`. To je odpovedalo, ko se je preklopilo
   na FA subset (uporablja družini "FA" / "FAB", in ne vključi codepoint-ov,
   ki jih source code ne uporablja kot `<i class="fa-brands fa-X">`).
   Sedaj se `<i class="fa-brands fa-X">` inseta v markup prek helperja
   `fa_ikona_za_link_class()` (dbin.php). Tukaj samo barve in velikost. */
.splosni_linki li a i {
    margin-right: 6px;
    font-size: 21px;
    vertical-align: middle;
}
.splosni_link a i      { color: #629EFF; }
.fb_link a i           { color: #4267B2; }
.imdb_link a i         { color: #000000; font-size: 26px; }
.twitter_link a i      { color: #0089FD; }
.youtube_link a i      { color: red; }
.soundcloud_link a i   { color: #ff7700; }
.instagram_link a i    { color: #e1306c; }
.bandcamp_link a i     { color: #629aa9; }
.tiktok_link a i       { color: #000; }
.weebly_link a i       { color: #000; }
.vimeo_link a i        { color: #000; }










.seznam {
	/* background-image: url(slike/locnica.png); */
	/* background-repeat: no-repeat; */
	/* background-position: center bottom; */
	/* border-bottom-width: thin; */
	/* border-bottom-style: dashed; */
	/* border-bottom-color: #DFDFDF; */
	/* -webkit-border-radius: var(--radius-lg); */
	/* -moz-border-radius: var(--radius-lg); */
	/* border-radius: var(--radius-lg); */

}
.seznam_vsebine {
	background-image: url(slike/locnica.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	border-bottom-width: thin;
	border-bottom-style: dashed; 
	border-bottom-color: #DFDFDF;
    -webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);	
	min-height:200px;
}

/* NOVICE KONEC */
/* KOMENTAR */
#komentar {

	width: 788px;

    -webkit-box-shadow: 0px 0px 6px 0px rgba(50, 50, 50, 0.9);
	-moz-box-shadow:    0px 0px 6px 0px rgba(50, 50, 50, 0.9);
	box-shadow:         0px 0px 6px 0px rgba(50, 50, 50, 0.8);
		
	-webkit-border-radius: var(--radius-md);
	-moz-border-radius: var(--radius-md);
	border-radius: var(--radius-md);
	clear: both;	
}
#prijava {
    scroll-margin-top: 70px;
    width: 100%;
    margin-top: 48px;
    clear: both;
    border-radius: var(--radius-md);
    box-shadow: 0 4px 24px rgba(0,0,0,0.18);
    overflow: hidden;
}
@media screen and (min-width: 998px) {
    #siteheader {
        display: none;
    }
    #prijava {
        margin-top: 32px;
        width: 572px;
        float: right;
        margin-right: 16px;
    }
}

/* =====================================================
   Prijavnica — prij-* razredna shema (kosi/prijava.php)
   ===================================================== */
.prij-glava {
    padding: 20px 24px 16px;
    background: rgba(0,0,0,0.18);
}
.prij-naslov {
    margin: 0 0 10px;
    font-size: 1.4em;
    font-weight: 700;
    color: #fff;
    line-height: 1.2;
}
.prij-tip {
    font-weight: 400;
    font-size: 0.72em;
    opacity: 0.85;
}
.prij-dogodek-info {
    display: flex;
    flex-direction: column;
    gap: 3px;
    color: rgba(255,255,255,0.92);
    font-size: 0.9em;
}
.prij-naziv { font-weight: 600; }
.prij-kdaj, .prij-kje { opacity: 0.85; }

.prij-telo { padding: 20px 24px 24px; }

/* Polja */
.prij-form { display: flex; flex-direction: column; gap: 0; }
.prij-polja {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px 16px;
    margin-bottom: 20px;
}
.prij-polje-cela { grid-column: 1 / -1; }
.prij-polje {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.prij-polje label {
    font-size: 0.9em;
    font-weight: 600;
    color: rgba(255,255,255,0.9);
}
.prij-obvezno { color: #FFB3B3; }
.prij-polje input[type=text],
.prij-polje input[type=email],
.prij-polje input[type=tel] {
    padding: 9px 12px;
    border: 1.5px solid rgba(255,255,255,0.3);
    border-radius: var(--radius-sm);
    background: rgba(255,255,255,0.22);
    color: #fff;
    font: inherit;
    font-size: var(--font-base);
    width: 100%;
    box-sizing: border-box;
    transition: border-color 0.15s, background 0.15s;
    -webkit-appearance: none;
}
.prij-polje input::placeholder { color: rgba(255,255,255,0.38); }
.prij-polje input:focus {
    outline: none;
    border-color: rgba(255,255,255,0.75);
    background: rgba(255,255,255,0.3);
}
.prij-polje input:invalid:not(:placeholder-shown) {
    border-color: #FFB3B3;
}

/* Naročnina checkbox */
.prij-narocnina {
    margin-bottom: 18px;
    padding: 12px 14px;
    background: rgba(255,255,255,0.18);
    border-radius: var(--radius-sm);
    border: 1px solid rgba(255,255,255,0.2);
}
.prij-check-label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: rgba(255,255,255,0.92);
    font-size: var(--font-base);
    cursor: pointer;
    line-height: 1.45;
}
.prij-check {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin-top: 2px;
    cursor: pointer;
    accent-color: #fff;
}

/* Izjave */
.prij-izjava {
    margin-bottom: 14px;
    padding: 13px 16px;
    background: rgba(0,0,0,0.15);
    border-radius: var(--radius-sm);
    border-left: 3px solid rgba(255,255,255,0.25);
    color: rgba(255,255,255,0.88);
    font-size: 0.88em;
    line-height: 1.55;
}
.prij-izjava-naslov {
    font-weight: 700;
    font-size: 1.05em;
    color: #fff;
    margin: 0 0 7px;
}
.prij-izjava p { margin: 0 0 5px; }
.prij-izjava p:last-child { margin: 0; }
.prij-izjava-ul {
    margin: 5px 0 0 16px;
    padding: 0;
}
.prij-izjava-ul li { margin-bottom: 3px; }
.prij-link { color: #FFD0D0; font-weight: 600; }
.prij-link:hover { color: #fff; }

/* Gumb za oddajo */
.prij-submit { margin-top: 20px; }
.prij-gumb {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 13px 24px;
    background: rgba(0,0,0,0.3);
    color: #fff;
    border: 2px solid rgba(255,255,255,0.5);
    border-radius: var(--radius-sm);
    font: inherit;
    font-size: var(--font-lg);
    font-weight: 700;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
    letter-spacing: 0.01em;
}
.prij-gumb:hover, .prij-gumb:focus-visible {
    background: rgba(0,0,0,0.45);
    border-color: #fff;
}
.prij-gumb:active { opacity: 0.85; }

/* Status sporočila */
.prij-status {
    color: rgba(255,255,255,0.92);
    font-size: 1.05em;
    line-height: 1.55;
    padding: 4px 0;
}
.prij-hvala { margin-top: 10px; opacity: 0.7; }

/* Mobilni in tabletni odziv */
@media screen and (max-width: 816px) {
    .prij-glava { padding: 16px; }
    .prij-telo  { padding: 14px 16px 20px; }
    .prij-polja { grid-template-columns: 1fr; }
    .prij-polje-cela { grid-column: 1; }
}
@media screen and (max-width: 480px) {
    .prij-glava { padding: 12px; }
    .prij-telo  { padding: 10px 12px 16px; }
}

.komentar_naslov {
	padding-top:16px;
}
fieldset, .komentar_vsebina{
	margin: 0 auto 0;
	border:none;

}
.komentar_vsebina ul, fieldset ul, fieldset li{
border:0; margin:0; padding:0; list-style:none;
}
.komentar_vsebina li, fieldset li{
	clear:both;
	list-style:none;
	
}
.izjave {
	margin-left:200px; 
	padding-top: 5px; 
	color:white;
}
fieldset input[type=text]{
	-webkit-border-radius: var(--radius-sm);
	-moz-border-radius: var(--radius-sm);
	border-radius: var(--radius-sm);	
	border-color:#B1B3B4;
	border-style:solid;
	border-width:thin;
	color:#888;
	width:200px;
	height:20px;
}
fieldset textarea{
	-webkit-border-radius: var(--radius-sm);
	-moz-border-radius: var(--radius-sm);
	border-radius: var(--radius-sm);	
	border-color:#B1B3B4;
	border-style:solid;
	border-width:thin;
	color:#888;
	width:370px;
	min-height:99px;
	overflow: hidden;
}
fieldset label{
	width:186px;
	float:left;
	text-align:right;
	padding-right:10px;
	color: var(--col-white);
	padding-top:4px;
}
fieldset input[type=submit]{
	color: var(--col-white);
	-webkit-border-radius: 0 0 5px  5px;
	-moz-border-radius: 0 0 5px  5px; 
	border-radius: 0 0 5px  5px;	
	border-color: var(--col-white);
	border-style:solid;
	border-width:thin;
	width:160px;
	height:30px;
	padding-top:0;
	margin-top:-2px;
	cursor: pointer;
	
}

.prijava_gumb {
	margin-left:0;
	background-color:#710000;
	cursor: pointer;
}
.prijava_gumb:hover {
	margin-left:0;
	background-color:#420000;
}



.komentar_gumb_novice {
		background-color:#EF97CB;
}
.komentar_gumb_novice:hover {
		background-color:#E551A3;
}
.komentar_gumb_dogodki:hover {
		background-color:#63D0EA;
}
.komentar_gumb_dogodki {
		background-color:#7CE0F7;
}
.komentar_gumb_galerija:hover {
		background-color:#B8C93D;
}
.komentar_gumb_galerija {
		background-color:#C5D839;
}
#vsebina_menu_abs ul {
	width:172px;
	list-style: none;
	margin: 0;
	padding: 0;
	padding-top:3px;
	background-image: url(/slike/izbornik-top.png);
	background-repeat: no-repeat;
}
#vsebina_menu_abs ul li {
	border-bottom-width: thin;
	border-bottom-style: dashed;
	line-height:32px;
	border-bottom-color: #CCC;
}
#vsebina_menu_abs ul a {
	font-size: var(--font-base); /* 12px */
	color: var(--col-grey);
	font-size: var(--font-lg); /* 14px */
	text-decoration:none;	
	padding-left:4px;
	
}

					
#vsebina_menu_abs ul  a:hover {
	color:#222;
	

}
#vsebina_menu_abs ul ul
{
	background-image: none;
	display: none;
	list-style: none;
	position: absolute;
	margin-top: -33px;
	left: 200px;
	background-color: inherit;
	padding: 0;
	width: 150px;
	z-index: 100;
	border-top-width: thin;
	border-top-style: dashed;
	border-top-color: #CCC;
	border-right-width: thin;
	border-right-style:inset;
	border-right-color: #CCC;	
}
#vsebina_menu_abs ul ul li
{
	float:none;
	
	padding-left:6px;
	color:#888;
	
}
#vsebina_menu_abs ul li:hover > ul
{
	display:block;
	

}

.p_glasba, .p_glasba a:hover {
	color: #0D97BF;
}
.p_gledalisce, .p_gledalisce  a:hover {
	color: #79A22D;

}
.p_razstave, .p_razstave  a:hover {
	color:#e9118c;


}
.p_drugo, .p_drugo  a:hover {
	color:#782d8e;

}
.p_za-otroke, .p_za-otroke  a:hover {
	color: #0066CC;
}
.p_izobrazevanje, .p_izobrazevanje  a:hover {
	color: #EC8904;
}
 


#vsebina_menu_abs ul li.kl_glasba {
	background-color: #E6FBFF;

}
#vsebina_menu_abs li.kl_gledalisce {
	background-color: #F2FFE6;
}
#vsebina_menu_abs li.kl_razstave {
	background-color: #FFF4FF;
}
#vsebina_menu_abs li.kl_za-otroke {
	background-color: #E6F2FF;
}

#vsebina_menu_abs li.kl_drugo {
	background-color: #FFFEE6;
}
#vsebina_menu_abs li.kl_izobrazevanje {
	background-color: #FFEFD9;
}


.komentator{
	width:186px;
	float:left;
	text-align:right;
	padding-right:10px;
	font-weight:bold;
	padding-top:14px;
}
.vsebina_komentarja{
	float:left;
	padding-top:14px;
	width:370px;
	color: var(--col-grey);
	padding-bottom:14px;
	border-bottom:thin;
	border-bottom-style:dashed;
	border-bottom-color:#999;
}
.o_prispevku {
	padding-top:84px;
}
.gal_fotka {
	float:left;

}
a {
   outline: 0;
}
#calendar {
	/* margin-top:270px;*/
}
.bloke {
	display:block;		
	background-image: url(slike/obcine/bloke.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:22px;	
}
.cerknica {
	display:block;		
	background-image: url(slike/obcine/cerknica.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:22px;	
}
.ilirskabistrica {
	display:block;	
	background-image: url(slike/obcine/ilirska-bistrica.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:22px;	
}
.loskadolina {
	display:block;	
	background-image: url(slike/obcine/loska-dolina.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:22px;	
}
.pivka {
	display:block;	
	background-image: url(slike/obcine/pivka.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:22px;	
}
.postojna {
	display:block;
	background-image: url(slike/obcine/postojna.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:22px;	
}
.drugo {
	display:block;
	background-image: url(slike/obcine/slovenija.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:22px;	
}

/*KOLEDAR*/
/* Reset */

.ui-datepicker,
.ui-datepicker table,
.ui-datepicker tr,
.ui-datepicker td,
.ui-datepicker th {
	margin: 0;
	padding: 0;
	border: none;
	border-spacing: 0;
}

/* Calendar Wrapper */
.ui-datepicker {
	display: none;
	width: 156px;
	padding: 12px;
	cursor: default;
	text-transform: uppercase;
	font-family: Tahoma;
	font-size: var(--font-base); /* 12px */
	-webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);
	background-color: #EEE;
}

/* Calendar Header */
.ui-datepicker-header {
	position: relative;
	padding-bottom: 10px;
	border-bottom: 1px solid #d6d6d6;
}

.ui-datepicker-title { text-align: center; }

/* Month */
.ui-datepicker-month {
	position: relative;
	padding-right: 15px;
	color: #565656;
}

.ui-datepicker-month:before {
	display: block;
	position: absolute;
	top: 5px;
	right: 0;
	width: 5px;
	height: 5px;
	content: '';

	background: #a5cd4e;
	background: -moz-linear-gradient(top, #a5cd4e 0%, #6b8f1a 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#a5cd4e), color-stop(100%,#6b8f1a));
	background: -webkit-linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);
	background: -o-linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);
	background: -ms-linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);
	background: linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);

	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

/* Year */
.ui-datepicker-year {
	padding-left: 8px;
	color: #a8a8a8;
}

/* Prev Next Month */
.ui-datepicker-prev,
.ui-datepicker-next {
	position: absolute;
	top: -2px;
	padding: 5px;
	cursor: pointer;
}

.ui-datepicker-prev {
	left: 0;
	padding-left: 0;
}

.ui-datepicker-next {
	right: 0;
	padding-right: 0;
}

.ui-datepicker-prev span,
.ui-datepicker-next span{
	display: block;
	width: 5px;
	height: 10px;
	text-indent: -9999px;

	background-image: url(orodja/koledar/arrows.png);
}

.ui-datepicker-prev span { background-position: 0px 0px; }

.ui-datepicker-next span { background-position: -5px 0px; }

.ui-datepicker-prev-hover span { background-position: 0px -10px; }

.ui-datepicker-next-hover span { background-position: -5px -10px; }

/* Calendar "Days" */
.ui-datepicker-calendar th {
	padding-top: 15px;
	padding-bottom: 10px;
	
	text-align: center;
	font-weight: normal;
	color: #a8a8a8;
}

.ui-datepicker-calendar td {
	padding: 0 0;
	text-align: center;
	line-height: 20px;
}

.ui-datepicker-calendar .ui-state-default {

	display: block;
	width: 21px;

	outline: none;
	
	text-decoration: none;
	color: #a8a8a8;
	
	border: 1px solid transparent;
}

/* Day Active State*/
.ui-datepicker-calendar .ui-state-active {
	color: #6a9113;
	border-color: #6a9113;
}

/* Other Months Days*/
.ui-datepicker-other-month .ui-state-default { color: #565656; }
.highlight .ui-state-default {
	font-weight: bold;
	color: #000000;
	background-color: #ACE6F7;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}









































/* =======================================================
   NOVI NAVIGACIJSKI SISTEM (Faza B+C prenove)
   Desktop: stari_header viden, siteheader/bottom_nav skriti
   Tablet: siteheader + top_nav viden, bottom_nav skrit
   Mobile: siteheader (brand + gumbi) + bottom_nav viden
   ======================================================= */

/* --- Privzeto (desktop): novi nav skrit, stari viden --- */
#siteheader  { display: none; }
#bottom_nav  { display: none; }
#stari_header { display: block; }

/* --- Skupni stili za #siteheader --- */
#siteheader {
    position: sticky;
    top: 0;
    z-index: 9999;
    width: 100%;
    height: 56px;
    background: rgba(255,255,255,0.85);
    backdrop-filter: blur(8px) saturate(140%);
    -webkit-backdrop-filter: blur(8px) saturate(140%);
    box-shadow: 0 1px 2px rgba(0,0,0,0.06);
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 0 12px;
    gap: 8px;
    transition: height 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}
#siteheader.shrunk {
    height: 42px;
    box-shadow: 0 1px 6px rgba(0,0,0,0.15);
}
/* Pri shrunk naslov ostane viden, samo malce manjši */
#siteheader.shrunk #brand { font-size: var(--font-xl); }
#siteheader.shrunk #brand i { font-size: var(--font-lg); }
/* Siteheader v polni barvi aktivne teme */
body.tema-dogodki #siteheader { background: var(--col-blue); backdrop-filter: none; -webkit-backdrop-filter: none; }
body.tema-novice  #siteheader { background: var(--col-pink); backdrop-filter: none; -webkit-backdrop-filter: none; }
body.tema-katalog #siteheader { background: var(--col-orange); backdrop-filter: none; -webkit-backdrop-filter: none; }
body.tema-koledar #siteheader { background: var(--col-green); backdrop-filter: none; -webkit-backdrop-filter: none; }
/* A11y: temno besedilo v pobarvanem headerju. Per-theme:
   - dogodki (#18B9E8), katalog (#F39200), koledar (#A1C201) so svetli ->
     dark text doseže 7-12:1.
   - novice (#E1007A) je dovolj zasičen, da BELO besedilo daje 5.5:1 (AA pass)
     in dark text daje 3.3:1 (FAIL). Zato ostane bel. */
body.tema-dogodki #siteheader #brand,
body.tema-dogodki #siteheader #brand span,
body.tema-katalog #siteheader #brand,
body.tema-katalog #siteheader #brand span,
body.tema-koledar #siteheader #brand,
body.tema-koledar #siteheader #brand span { color: #1a1a1a; }
body.tema-novice #siteheader #brand,
body.tema-novice #siteheader #brand span { color: #fff; }

body.tema-dogodki #siteheader #header_actions button,
body.tema-katalog #siteheader #header_actions button,
body.tema-koledar #siteheader #header_actions button { color: rgba(0,0,0,0.85); }
body.tema-novice #siteheader #header_actions button { color: rgba(255,255,255,0.92); }

/* Brand */
#brand {
    display: flex;
    align-items: center;
    gap: 6px;
    text-decoration: none;
    color: var(--col-blue);
    font-family: var(--font-condensed);
    font-size: var(--font-2xl);
    font-weight: 700;
    white-space: nowrap;
    flex-shrink: 0;
}
#brand i { font-size: var(--font-xl); }
#brand span { color: #333; font-size: var(--font-lg); font-weight: 600; }

/* Top nav (tablet/desktop dentro siteheader) */
#top_nav {
    display: none; /* vključimo v tablet/desktop media query */
    align-items: center;
    gap: 4px;
    flex: 1;
    justify-content: center;
}
#top_nav a {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 6px 12px;
    border-radius: var(--radius-sm);
    text-decoration: none;
    color: var(--col-grey);
    font-size: var(--font-base);
    font-weight: 600;
    transition: color 0.15s, background 0.15s;
    white-space: nowrap;
}
#top_nav a:hover {
    color: var(--col-blue);
    background: rgba(24,185,232,0.08);
}
#top_nav a[aria-current="page"] {
    color: var(--col-blue);
    border-bottom: 2px solid var(--col-blue);
}

/* Header action buttons */
#header_actions {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
}
#btn_iskanje {
    width: 40px;
    height: 40px;
    border: none;
    background: transparent;
    cursor: pointer;
    color: var(--col-grey);
    font-size: var(--font-xl);
    border-radius: var(--radius-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color 0.15s, background 0.15s;
}
#btn_iskanje:hover { color: var(--col-blue); background: rgba(24,185,232,0.08); }

/* --- Preklopnik jezika --- */
.jezik-preklop {
    position: relative;
}
.jezik-preklop summary {
    display: flex;
    align-items: center;
    gap: 6px;
    list-style: none;
    cursor: pointer;
    padding: 8px 10px;
    border-radius: var(--radius-sm);
    color: var(--col-grey);
    transition: color 0.15s, background 0.15s;
    user-select: none;
}
.jezik-preklop summary::-webkit-details-marker { display: none; }
.jezik-preklop summary:hover { color: var(--col-blue); background: rgba(24,185,232,0.08); }
.jp-zastava { font-family: "Twemoji Country Flags", sans-serif; }
.jezik-preklop .jp-zastava { font-size: 1.1em; line-height: 1; }
.jezik-preklop .jp-koda { font-size: 0.82em; font-weight: 600; letter-spacing: 0.5px; }
.jezik-preklop .jp-puscica { font-size: 0.7em; transition: transform 0.2s; }
.jezik-preklop[open] .jp-puscica { transform: rotate(180deg); }
.jp-meni {
    position: absolute;
    top: calc(100% + 4px);
    right: 0;
    background: #fff;
    border: 1px solid rgba(0,0,0,0.08);
    border-radius: 8px;
    box-shadow: 0 6px 20px rgba(0,0,0,0.18);
    padding: 4px 0;
    list-style: none;
    margin: 0;
    min-width: 170px;
    z-index: 10001;
    max-height: 70vh;
    overflow-y: auto;
}
.jp-meni li { list-style: none; }
.jp-meni a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 14px;
    color: #333;
    text-decoration: none;
    font-size: 0.92em;
    transition: background 0.12s;
}
.jp-meni a:hover { background: rgba(24,185,232,0.10); color: var(--col-blue); }
.jp-meni a.aktiven { background: rgba(24,185,232,0.06); font-weight: 600; }
.jp-meni .jp-zastava { font-size: 1.15em; line-height: 1; }
body.tema-dogodki #siteheader .jezik-preklop summary,
body.tema-katalog #siteheader .jezik-preklop summary,
body.tema-koledar #siteheader .jezik-preklop summary { color: rgba(0,0,0,0.85); }
body.tema-novice #siteheader .jezik-preklop summary { color: rgba(255,255,255,0.92); }
body.tema-dogodki #siteheader .jezik-preklop summary:hover,
body.tema-katalog #siteheader .jezik-preklop summary:hover,
body.tema-koledar #siteheader .jezik-preklop summary:hover { background: rgba(0,0,0,0.10); }
body.tema-novice #siteheader .jezik-preklop summary:hover { background: rgba(255,255,255,0.12); }

/* Desktop varianta: absolutno v zgornjem levem kotu #container-ja
   (#container ima position: relative; width: 1028px; margin: 0 auto)
   — ne moti krožnega nav menija v desnem zgornjem kotu */
.jezik-preklop-desktop {
    position: absolute;
    top: 12px;
    left: 14px;
    z-index: 100;
}
/* Na mobilnem in tabletu jezik preklopnik živi v #siteheader > #header_actions —
   desktop different absolutna varianta je takrat odveč in vizualno moteča
   (lebdi nad ostalo vsebino v zgornjem kotu). */
@media (max-width: 816px) {
    .jezik-preklop-desktop { display: none; }
}
.jezik-preklop-desktop summary {
    background: rgba(255,255,255,0.85);
    border: 1px solid rgba(0,0,0,0.06);
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
    color: #333;
}
.jezik-preklop-desktop summary:hover { background: #fff; }
/* Meni odpre desno, ker je trigger ob levem robu */
.jezik-preklop-desktop .jp-meni {
    right: auto;
    left: 0;
}

/* --- Bottom nav (skupni stili — vidno samo na mobilnem) --- */
#bottom_nav {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 56px;
    background: rgba(40,40,40,0.92);
    box-shadow: 0 -1px 4px rgba(0,0,0,0.25);
    z-index: 9999;
    flex-direction: row;
    align-items: stretch;
    transition: background 0.3s;
}
/* Rahla tinta v barvi aktivne strani (na temni osnovi) */
#bottom_nav.tema-dogodki { background: color-mix(in srgb, var(--col-blue) 14%, #282828); }
#bottom_nav.tema-koledar { background: color-mix(in srgb, var(--col-green) 14%, #282828); }
#bottom_nav.tema-katalog { background: color-mix(in srgb, var(--col-orange) 14%, #282828); }
#bottom_nav.tema-novice  { background: color-mix(in srgb, var(--col-pink) 14%, #282828); }

.bn-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    text-decoration: none;
    color: rgba(255,255,255,0.62);
    font-size: var(--font-xs);
    font-weight: 600;
    padding: 6px 2px;
    background: none;
    border: none;
    cursor: pointer;
    transition: color 0.15s;
    min-width: 0;
    overflow: hidden;
    font-family: inherit;
}
.bn-item i {
    font-size: 20px;
    line-height: 1;
}
.bn-item span {
    font-size: var(--font-xs);
    line-height: 1;
    white-space: nowrap;
}
/* Barve tem na bottom nav — svetlejši odtenki za boljši kontrast na temni podlagi.
   A11y: prej 75% brand + 25% white je dal ~3.1:1 (Lighthouse FAIL). 50/50 mix
   doseže ≥5:1 na #282828-ish bg in ohrani brand prepoznavnost. */
.bn-item[data-tema="dogodki"] { color: color-mix(in srgb, var(--col-blue) 50%, #fff); }
.bn-item[data-tema="koledar"] { color: color-mix(in srgb, var(--col-green) 50%, #fff); }
.bn-item[data-tema="katalog"] { color: color-mix(in srgb, var(--col-orange) 50%, #fff); }
.bn-item[data-tema="novice"]  { color: color-mix(in srgb, var(--col-pink) 50%, #fff); }

/* Gumb Nazaj: bela ikona + tekst, brez ločene zaobljene strehice (zlije se z navom) */
#bn_nazaj {
    flex: 0 0 64px;
    background: transparent;
    color: #fff;
    border-radius: 0;
    margin: 0;
    padding: 6px 6px;
}
#bn_nazaj i, #bn_nazaj span { color: #fff; }
#bn_nazaj:hover { background: rgba(0,0,0,0.25); }

/* Aktivni zavihek — polna svetla tema barva (ne dark variant).
   Pink dobi rahlo posvetlitev (col-pink + 20% white) za AA 4.5:1 na temni podlagi
   (čisti #E1007A ima samo 4.36:1). Ostale teme imajo dovolj kontrasta. */
.bn-item.bn-aktivna[data-tema="dogodki"] { color: var(--col-blue); }
.bn-item.bn-aktivna[data-tema="koledar"] { color: var(--col-green); }
.bn-item.bn-aktivna[data-tema="katalog"] { color: var(--col-orange); }
.bn-item.bn-aktivna[data-tema="novice"]  { color: color-mix(in srgb, var(--col-pink) 80%, #fff); }
.bn-item.bn-aktivna { font-weight: 700; }
.bn-item.bn-aktivna::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 28px;
    height: 3px;
    background: currentColor;
    border-radius: 0 0 3px 3px;
}
.bn-item { position: relative; }

/* =======================================================
   ISKALNI OVERLAY (Faza D)
   - Desktop: #btn_iskanje_fab fixed v zgornjem desnem kotu
   - Mobile/tablet: #btn_iskanje v #siteheader
   - Overlay: zatemnjen backdrop + centriran panel (modal)
   ======================================================= */

#btn_iskanje_fab {
    position: fixed;
    top: 14px;
    right: 14px;
    z-index: 9998;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: none;
    background: var(--col-white, #fff);
    box-shadow: 0 2px 8px rgba(0,0,0,0.18);
    cursor: pointer;
    color: var(--col-blue);
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.15s, box-shadow 0.15s;
}
#btn_iskanje_fab:hover {
    transform: scale(1.06);
    box-shadow: 0 4px 12px rgba(0,0,0,0.24);
}
#btn_iskanje_fab:focus-visible {
    outline: 2px solid var(--col-blue);
    outline-offset: 2px;
}

#btn_iskanje {
    border: none;
    background: transparent;
    color: var(--col-blue);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}
#btn_iskanje:hover { background: rgba(0,0,0,0.06); }

/* =======================================================
   ISKALNI BAR — inline vrstica pod headerjem
   ======================================================= */
#iskanje_bar {
    position: fixed;
    top: 56px; /* pod siteheader-jem */
    left: 0;
    width: 100%;
    z-index: 9998;
    background: rgba(255,255,255,0.95);
    backdrop-filter: blur(10px) saturate(130%);
    -webkit-backdrop-filter: blur(10px) saturate(130%);
    box-shadow: 0 3px 12px rgba(0,0,0,0.14);
    transform: translateY(-100%);
    opacity: 0;
    transition: transform 0.18s ease, opacity 0.18s ease;
    pointer-events: none;
}
#iskanje_bar:not([hidden]) { pointer-events: auto; }
#iskanje_bar.odprt {
    transform: translateY(0);
    opacity: 1;
}
/* Ko je header skrčen, se bar prestavi višje */
#siteheader.shrunk ~ #iskanje_bar { top: 42px; }
#iskanje_form {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    max-width: 700px;
    margin: 0 auto;
}
.ib-ikona {
    color: var(--col-grey, #666);
    font-size: 17px;
    flex-shrink: 0;
}
#iskanje_input {
    flex: 1;
    border: none;
    border-bottom: 2px solid #ddd;
    outline: none;
    background: transparent;
    font-size: 17px;
    font-family: inherit;
    padding: 4px 2px;
    min-width: 0;
    transition: border-color 0.15s;
}
#iskanje_input:focus { border-bottom-color: var(--col-blue); }
#iskanje_input::-webkit-search-cancel-button { display: none; }
.ib-iscibtn {
    border: none;
    background: var(--col-blue);
    color: #fff;
    border-radius: 999px;
    padding: 8px 18px;
    font: inherit;
    font-size: var(--font-base);
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
    flex-shrink: 0;
    transition: background 0.15s;
}
.ib-iscibtn:hover { background: #0D7AA0; }

/* Iskalni predlogi (autocomplete dropdown) — pod input vrstico */
#iskanje_predlogi {
    max-width: 700px;
    margin: 0 auto;
    background: #fff;
    border-top: 1px solid #eee;
    max-height: min(60vh, 480px);
    overflow-y: auto;
    box-shadow: 0 6px 16px rgba(0,0,0,0.06);
}
.isk-skupina-naslov {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #888;
    padding: 8px 14px 4px;
    font-weight: 600;
}
.isk-zadetek {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 8px 14px;
    text-decoration: none;
    color: inherit;
    border-left: 3px solid transparent;
    transition: background 0.1s, border-color 0.1s;
}
.isk-zadetek:hover,
.isk-zadetek.isk-aktiven {
    background: #f5f8fb;
    border-left-color: var(--col-blue);
}
.isk-ikona {
    color: #888;
    font-size: 16px;
    margin-top: 2px;
    flex-shrink: 0;
}
.isk-vsebina { display: flex; flex-direction: column; min-width: 0; flex: 1; }
.isk-naslov {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.isk-naslov mark {
    background: #fff3a8;
    color: inherit;
    padding: 0;
}
.isk-meta {
    font-size: 12px;
    color: #777;
    margin-top: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.isk-prazno {
    padding: 14px;
    text-align: center;
    color: #888;
    font-size: 14px;
}
.isk-vsi {
    display: block;
    padding: 10px 14px;
    text-align: center;
    background: #fafbfc;
    border-top: 1px solid #eee;
    color: var(--col-blue);
    text-decoration: none;
    font-weight: 600;
    font-size: 13px;
}
.isk-vsi:hover { background: #f0f4f8; }

/* Na mobilnem inline iskanje ni vidno — tam je #iskanje_bar */
#iskanje_inline_wrapper { display: none; }

/* =======================================================
   FILTER DRAWER (Faza E)
   - Trigger: #btn_filter (mobile/tablet) + #btn_filter_fab (desktop)
   - Panel: drsa z desne, full-screen na mobilnem
   ======================================================= */

#btn_filter_fab {
    position: fixed;
    top: 66px; /* pod #btn_iskanje_fab */
    right: 14px;
    z-index: 9998;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: none;
    background: var(--col-white, #fff);
    box-shadow: 0 2px 8px rgba(0,0,0,0.18);
    cursor: pointer;
    color: var(--col-blue);
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.15s, box-shadow 0.15s;
}
#btn_filter_fab:hover {
    transform: scale(1.06);
    box-shadow: 0 4px 12px rgba(0,0,0,0.24);
}
#btn_filter_fab:focus-visible {
    outline: 2px solid var(--col-blue);
    outline-offset: 2px;
}
#btn_filter_fab.ima-aktivne::after {
    content: "";
    position: absolute;
    top: 6px; right: 6px;
    width: 10px; height: 10px;
    border-radius: 50%;
    background: var(--col-pink, #e63082);
    border: 2px solid #fff;
}

#btn_filter {
    border: none;
    background: transparent;
    color: var(--col-blue);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    font-size: 18px;
    cursor: pointer;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}
#btn_filter:hover { background: rgba(0,0,0,0.06); }
#btn_filter.ima-aktivne::after {
    content: "";
    position: absolute;
    top: 6px; right: 6px;
    width: 8px; height: 8px;
    border-radius: 50%;
    background: var(--col-pink, #e63082);
}

#filter_drawer {
    position: fixed;
    inset: 0;
    z-index: 10001;
    pointer-events: none;
}
#filter_drawer:not([hidden]) { pointer-events: auto; }
#filter_drawer .fd-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.45);
    opacity: 0;
    transition: opacity 0.2s ease;
}
#filter_drawer.odprt .fd-backdrop { opacity: 1; }
#filter_drawer .fd-panel {
    position: absolute;
    top: 0; right: 0; bottom: 0;
    width: 360px;
    max-width: 100%;
    background: #fff;
    box-shadow: -4px 0 16px rgba(0,0,0,0.18);
    display: flex;
    flex-direction: column;
    transform: translateX(100%);
    transition: transform 0.22s ease;
}
#filter_drawer.odprt .fd-panel { transform: translateX(0); }

.fd-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    border-bottom: 1px solid #eee;
    flex-shrink: 0;
}
.fd-header h2 {
    margin: 0;
    font-size: var(--font-2xl);
    color: var(--col-blue);
}
.fd-close {
    border: none;
    background: transparent;
    cursor: pointer;
    font-size: 18px;
    color: var(--col-grey, #666);
    width: 36px; height: 36px;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
}
.fd-close:hover { background: rgba(0,0,0,0.06); }

.fd-body {
    flex: 1;
    overflow-y: auto;
    padding: 16px;
}
.fd-skupina { margin-bottom: 22px; }
.fd-skupina h3 {
    margin: 0 0 10px 0;
    font-size: var(--font-lg);
    color: var(--col-grey, #555);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
.fd-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.fd-chip {
    border: 1px solid #d0d0d0;
    background: #fff;
    color: #333;
    padding: 8px 14px;
    border-radius: 999px;
    font-size: var(--font-md);
    font-family: inherit;
    cursor: pointer;
    transition: all 0.12s;
    white-space: nowrap;
    min-height: 36px;
}
.fd-chip:hover {
    border-color: var(--col-blue);
    color: var(--col-blue);
}
.fd-chip.aktiven {
    background: var(--col-blue);
    border-color: var(--col-blue);
    color: #fff;
}
.fd-chip:focus-visible {
    outline: 2px solid var(--col-blue);
    outline-offset: 2px;
}

.fd-footer {
    border-top: 1px solid #eee;
    padding: 12px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-shrink: 0;
}
.fd-pocisti {
    border: none;
    background: transparent;
    color: var(--col-blue);
    cursor: pointer;
    font-size: var(--font-md);
    padding: 8px 4px;
    text-decoration: underline;
}
button.fd-stevec {
    font: inherit;
    font-size: var(--font-md);
    font-weight: 600;
    color: #fff;
    background: var(--col-blue);
    border: none;
    border-radius: 999px;
    padding: 10px 18px;
    cursor: pointer;
    transition: background 0.15s, transform 0.05s;
    min-height: 40px;
    line-height: 1.1;
}
button.fd-stevec:hover { background: #129dc6; }
button.fd-stevec:active { transform: scale(0.97); }
button.fd-stevec.fd-stevec-prazno {
    background: #ddd;
    color: #666;
    cursor: default;
}
button.fd-stevec.fd-stevec-prazno:hover { background: #ddd; }

.dogodek_card.skrit-filter { display: none !important; }

.filter-empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 56px 24px;
    text-align: center;
    color: var(--col-grey);
    max-width: 540px;
    margin: 0 auto;
}
.filter-empty-ilustracija {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 96px;
    height: 96px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(194,0,126,0.10), rgba(15,144,198,0.08));
    color: #C2007E;
    margin-bottom: 4px;
}
.filter-empty-ilustracija i { font-size: 42px; opacity: 1; }
/* Backwards-compat: če <i> brez wrapperja, uporabi star pristop */
.filter-empty-state > i { font-size: 48px; opacity: 0.35; color: var(--col-grey); }
.filter-empty-naslov {
    margin: 0;
    font-size: var(--font-xl);
    color: #222;
    font-weight: 600;
}
.filter-empty-state p { font-size: var(--font-lg); margin: 0; line-height: 1.5; }
.filter-empty-namig {
    font-size: var(--font-base);
    color: #777;
    margin-top: -4px !important;
}
.filter-empty-pocisti {
    border: none;
    background: var(--col-blue);
    color: #fff;
    border-radius: 999px;
    padding: 10px 22px;
    font: inherit;
    font-size: var(--font-base);
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
}
.filter-empty-pocisti:hover, .filter-empty-pocisti:focus-visible { background: #0D7AA0; }
.filter-empty-sek {
    border: 1px solid #d0d0d0;
    background: #fff;
    color: #444;
    border-radius: 999px;
    padding: 9px 18px;
    font: inherit;
    font-size: var(--font-base);
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
}
.filter-empty-sek:hover, .filter-empty-sek:focus-visible { background: #f5f5f5; color: #222; }
.filter-empty-sek i { margin-right: 6px; color: #C2007E; }
/* Koledar stran je trenutno samo mobilna; gumb skrijemo na desktopu. */
@media (min-width: 997px) {
    .filter-empty-sek-mobil { display: none; }
}

/* ============================================================================
   Snooze / mute (IDEJE 9.3) — utišanje obvestil za 7/14/30 dni
   ============================================================================ */
.narocnine-snooze .snooze-opis { color: #555; margin: 0 0 14px; line-height: 1.5; }
.narocnine-snooze .snooze-gumbi {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.narocnine-snooze .snooze-gumb {
    border: 1px solid #d0d0d0;
    background: #fff;
    color: #333;
    padding: 9px 18px;
    border-radius: 999px;
    font: inherit;
    cursor: pointer;
    font-size: 14px;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.narocnine-snooze .snooze-gumb:hover:not(:disabled),
.narocnine-snooze .snooze-gumb:focus-visible {
    background: #fff5fa;
    border-color: #C2007E;
    color: #C2007E;
}
.narocnine-snooze .snooze-gumb:disabled { opacity: 0.5; cursor: wait; }
.narocnine-snooze .snooze-banner {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    padding: 14px 18px;
    background: linear-gradient(135deg, rgba(194,0,126,0.08), rgba(15,144,198,0.06));
    border-left: 4px solid #C2007E;
    border-radius: 6px;
    color: #333;
}
.narocnine-snooze .snooze-banner-tekst {
    flex: 1;
    min-width: 220px;
    line-height: 1.5;
}
.narocnine-snooze .snooze-banner-tekst i {
    color: #C2007E;
    margin-right: 6px;
}
.narocnine-snooze .snooze-banner strong { color: #C2007E; font-weight: 600; }
.narocnine-snooze .snooze-razveljavi {
    border: none;
    background: #C2007E;
    color: #fff;
    padding: 9px 18px;
    border-radius: 999px;
    font: inherit;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}
.narocnine-snooze .snooze-razveljavi:hover,
.narocnine-snooze .snooze-razveljavi:focus-visible { background: #A30068; }
.narocnine-snooze .snooze-razveljavi:disabled { opacity: 0.6; cursor: wait; }
@media (max-width: 640px) {
    .narocnine-snooze .snooze-banner { padding: 12px; }
    .narocnine-snooze .snooze-razveljavi { width: 100%; }
}

/* ============================================================================
   iCal feed (IDEJE 6.3) — sinhronizacija naročnin v zunanji koledar
   ============================================================================ */
.moje-koledar .moje-koledar-url {
    display: flex;
    align-items: stretch;
    gap: 8px;
    margin: 0 0 10px;
}
.moje-koledar .moje-koledar-url input {
    flex: 1 1 auto;
    min-width: 0;
    padding: 9px 12px;
    border: 1px solid #d0d0d0;
    border-radius: 6px;
    background: #f7f7f7;
    color: #333;
    font: inherit;
    font-size: 13px;
    font-family: var(--font-condensed);
    cursor: text;
}
.moje-koledar .moje-koledar-url input:focus {
    outline: 2px solid #C2007E;
    outline-offset: 1px;
    background: #fff;
}
.moje-koledar .moje-koledar-url button { flex: 0 0 auto; white-space: nowrap; }
.moje-koledar .moje-koledar-akcije {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 10px;
}
.moje-koledar .moje-pojasnilo-mini {
    font-size: 12px;
    color: #777;
    margin-top: 4px;
}
html[data-theme="dark"] .moje-koledar .moje-koledar-url input {
    background: var(--theme-bg-soft);
    border-color: var(--theme-border);
    color: var(--theme-text);
}
html[data-theme="dark"] .moje-koledar .moje-koledar-url input:focus {
    background: var(--theme-card);
}
html[data-theme="dark"] .moje-koledar .moje-pojasnilo-mini { color: var(--theme-text-muted); }
@media (max-width: 640px) {
    .moje-koledar .moje-koledar-url { flex-direction: column; }
    .moje-koledar .moje-koledar-url button { width: 100%; }
}

.filter-empty-akcije {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin-top: 8px;
}
.filter-empty-state p strong {
    color: #333;
    font-weight: 600;
}
@media (max-width: 640px) {
    .filter-empty-state { padding: 36px 20px; }
    .filter-empty-ilustracija { width: 80px; height: 80px; }
    .filter-empty-ilustracija i { font-size: 36px; }
}

/* ---- Trakec aktivnih filtrov nad rezultati ---- */
#aktivni_filtri {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    padding: 8px 14px 10px;
    margin: 0 0 6px;
    border-bottom: 1px solid #eee;
    /* Sticky na vseh velikostih; top in margin se prilagodita po breakpointih.
       Na desktopu se prilepi POD sticky #vsebina_menu_abs (var --vma-h ga meri v JS). */
    position: sticky;
    top: var(--vma-h, 70px);
    z-index: 69; /* pod #vsebina_menu_abs (z-index: 70), nad .dogodki_grid::after (60) */
    background: #fff;
}
/* Mobilno/tablet: bar prilepljen POD sticky #vsebina_menu_abs zvrst menijem
   (--vma-h ga meri v JS). Sicer bi #aktivni_filtri (z-index: 8000) prekril
   chip meni (z-index: 70) na istem top:56px in uporabnik ne bi mogel
   preklopiti zvrsti. */
@media (max-width: 816px) {
    #aktivni_filtri {
        top: calc(var(--sh-h, 56px) + var(--vma-h, 0px));
        z-index: 8000;
        margin: 0;
    }
    /* #vsebina_head je na mobilnem skrit; margin-top na .vsebina_spodaj
       je bil predviden za odmik pod cyan banner-jem, zdaj samo siroti razmik */
    .vsebina_spodaj { margin-top: 0; }
}
#aktivni_filtri[hidden] { display: none; }
.af-naslov {
    font-size: 13px;
    color: var(--col-grey, #666);
    font-weight: 500;
    margin-right: 4px;
}
.af-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #f0f6fc;
    border: 1px solid #d8e6f0;
    color: var(--col-blue);
    padding: 4px 10px 4px 12px;
    border-radius: 999px;
    font: inherit;
    font-size: 13px;
    line-height: 1.4;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, transform 0.1s;
}
.af-pill:hover {
    background: #e2eef8;
    border-color: var(--col-blue);
}
.af-pill:active { transform: scale(0.97); }
.af-pill i {
    font-size: 11px;
    color: var(--col-grey, #888);
}
.af-pill-iskanje {
    background: #fff3e0;
    border-color: #ffd4a0;
    color: #b3651a;
}
.af-pill-iskanje i { color: #b3651a; }
.af-pill-blizu {
    background: #e9f7ee;
    border-color: #b8e0c5;
    color: #2a7a45;
}
.af-pill-blizu i { color: #2a7a45; }
.af-pill-zvrst {
    background: #f3eafa;
    border-color: #ddc9ee;
    color: #6b3aa0;
}
.af-pill-zvrst i { color: #6b3aa0; }
.af-pill-obcina {
    background: #fff8e1;
    border-color: #ffe79a;
    color: #8a6a08;
}
.af-pill-obcina i { color: #8a6a08; }
.af-pill-datum {
    background: #eaf1fb;
    border-color: #c4d6ee;
    color: #1e4f8a;
}
.af-pill-datum i { color: #1e4f8a; }
.af-pill-organizator {
    background: #f5f5f5;
    border-color: #d8d8d8;
    color: #444;
}
.af-pill-organizator i { color: #444; }
.af-pocisti-vse {
    margin-left: auto;
    background: none;
    border: none;
    color: var(--col-grey, #666);
    font: inherit;
    font-size: 13px;
    cursor: pointer;
    text-decoration: underline;
    padding: 4px 6px;
}
.af-pocisti-vse:hover { color: var(--col-blue); }

/* Mobilni override: poln zaslon + frosted glass + swipe-to-dismiss */
@media screen and (max-width: 640px) {
    #filter_drawer .fd-panel {
        width: 100%;
        background: rgba(255,255,255,0.72);
        backdrop-filter: blur(12px) saturate(125%);
        -webkit-backdrop-filter: blur(12px) saturate(125%);
    }
    #filter_drawer .fd-backdrop {
        background: rgba(0,0,0,0.25);
    }
    /* Med swipe-om sledimo prstu (preneha tranzicija) */
    #filter_drawer.drsi .fd-panel,
    #filter_drawer.drsi .fd-backdrop { transition: none; }
    /* Vizualni "grab" indikator na vrhu panela */
    #filter_drawer .fd-panel::before {
        content: "";
        position: absolute;
        top: 6px;
        left: 50%;
        transform: translateX(-50%);
        width: 38px;
        height: 4px;
        border-radius: 2px;
        background: rgba(0,0,0,0.18);
        pointer-events: none;
    }
}

/* ============================================================================
   Trending chip (IDEJE 11) — 🔥 značka na kartah z visokimi obiski (24h)
   ============================================================================ */
.dogodek_card { position: relative; }
.card-trending {
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 6;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px 4px 8px;
    border-radius: 999px;
    background: linear-gradient(135deg, #ff6b00, #c2007e);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.02em;
    box-shadow: 0 2px 6px rgba(194,0,126,0.32);
    pointer-events: none;
    text-transform: uppercase;
}
.card-trending-ikona { font-size: 13px; line-height: 1; filter: drop-shadow(0 1px 0 rgba(0,0,0,0.25)); }
.card-trending-tekst { white-space: nowrap; }
.nas-card.je-trending .card-trending,
.dogodek_card.je-trending .card-trending { animation: card-trending-pulse 2.4s ease-in-out infinite; }
@keyframes card-trending-pulse {
    0%, 100% { transform: scale(1); }
    50%      { transform: scale(1.04); }
}
@media (max-width: 480px) {
    .card-trending { font-size: 11px; padding: 3px 8px 3px 6px; }
    .card-trending-tekst { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    .nas-card.je-trending .card-trending,
    .dogodek_card.je-trending .card-trending { animation: none; }
}

/* ============================================================================
   Sorodni dogodki (IDEJE 8) — "Morda vas bo zanimalo" na detail strani
   ============================================================================ */
.sorodni-dogodki {
    margin: 28px 0 12px;
    padding: 0 14px;
}
.sorodni-dogodki > h2 {
    font-size: 20px;
    font-weight: 600;
    color: #222;
    margin: 0 0 14px;
    border-left: 4px solid #C2007E;
    padding-left: 10px;
    line-height: 1.2;
}
.sorodni-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
@media (max-width: 900px) {
    .sorodni-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 540px) {
    .sorodni-grid { grid-template-columns: 1fr; }
}
html[data-theme="dark"] .sorodni-dogodki > h2 {
    color: var(--theme-text);
    border-left-color: var(--theme-link);
}

/* ============================================================================
   Javni profil organizatorja (IDEJE 15) — header v /dogodki/organizator/{slug}
   ============================================================================ */
.org-profil {
    display: flex;
    gap: 18px;
    align-items: flex-start;
    background: #fff;
    border: 1px solid #e6e6e6;
    border-radius: 12px;
    padding: 18px 20px;
    margin: 0 0 22px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}
.org-profil-logo {
    flex: 0 0 auto;
    width: 110px;
    border-radius: 10px;
    overflow: hidden;
    background: #f4f4f4;
    margin-top: 12px;
}
.org-profil-logo img {
    width: 100%;
    height: auto;
    display: block;
}
.org-profil-vsebina { flex: 1 1 auto; min-width: 0; }
.org-profil-naziv {
    font-size: 22px;
    font-weight: 600;
    color: #222;
    margin: 0 0 4px;
    line-height: 1.2;
}
.org-profil-slogan {
    font-size: 15px;
    color: #C2007E;
    font-style: italic;
    margin: 0 0 10px;
}
.org-profil-opis {
    color: #444;
    font-size: 14px;
    line-height: 1.55;
    margin: 0 0 12px;
}
.org-profil-povezave {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
}
.org-profil-povezave li {
    margin: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #555;
    font-size: 13px;
    padding: 5px 10px;
    border: 1px solid #e0e0e0;
    border-radius: 999px;
    background: #fafafa;
}
.org-profil-povezave li:has(> i:only-child),
.org-profil-povezave li:not(:has(a)) { cursor: default; }
.org-profil-povezave a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: inherit;
    text-decoration: none;
    margin: -5px -10px;
    padding: 5px 10px;
    border-radius: 999px;
    transition: color 0.15s;
}
.org-profil-povezave li:hover,
.org-profil-povezave li:focus-within {
    border-color: #C2007E;
    background: #fff5fa;
}
.org-profil-povezave li:hover a,
.org-profil-povezave li:focus-within a { color: #C2007E; }
.org-profil-povezave i { font-size: 14px; }
html[data-theme="dark"] .org-profil {
    background: var(--theme-card);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .org-profil-naziv { color: var(--theme-text); }
html[data-theme="dark"] .org-profil-opis  { color: var(--theme-text); }
html[data-theme="dark"] .org-profil-povezave li { background: var(--theme-bg-soft); border-color: var(--theme-border); color: var(--theme-text); }
html[data-theme="dark"] .org-profil-slogan { color: var(--theme-link); }
html[data-theme="dark"] .org-profil-logo { background: var(--theme-bg-soft); }
html[data-theme="dark"] .org-profil-povezave a {
    background: var(--theme-bg-soft);
    border-color: var(--theme-border);
    color: var(--theme-text);
}
html[data-theme="dark"] .org-profil-povezave a:hover,
html[data-theme="dark"] .org-profil-povezave a:focus-visible {
    color: var(--theme-link);
    border-color: var(--theme-link);
    background: rgba(194,0,126,0.12);
}
@media (max-width: 640px) {
    .org-profil { flex-direction: column; align-items: stretch; }
    .org-profil-logo { width: 80px; }
}

/* ======================================================= */

@media screen and (min-width: 0px) and (max-width: 640px) {
    .fotka_mobilna {
        display: block;
    }

/* --- Mobilna navigacija (Faza C) --- */
#stari_header    { display: none; }
#siteheader      { display: flex; }
#bottom_nav      { display: flex; }
#btn_iskanje_fab { display: none; }
#btn_filter_fab  { display: none; }
#telo            { padding-bottom: 56px; } /* prostor za bottom nav */
/* top_nav v siteheader-ju je na mobilnem skrit — samo brand + gumbi */
#top_nav         { display: none !important; }

/* Temna podlaga siteheader-ja na mobilnem (ujema se z bottom nav) */
#siteheader {
    background: rgba(40,40,40,0.92);
    box-shadow: 0 1px 4px rgba(0,0,0,0.25);
    transition: background 0.3s, height 0.18s ease, box-shadow 0.18s ease;
}
#siteheader.shrunk { box-shadow: 0 1px 6px rgba(0,0,0,0.4); }
/* Brand in gumbi: beli ko je tema aktivna (definirano globalno zgoraj) */
#btn_iskanje:hover { color: #fff; background: rgba(255,255,255,0.15); }

body {
	width: 100%;
background-image:none;
	margin: 0;
	padding: 0;
	font-size: var(--font-base); /* 12px — 14px je podiral fiksno-široke widgete (datepicker) */
	line-height: 1.5;
}
.zafotko {
	min-height:0px;
}
#container {
	width: 100%;
	margin: 0;
	padding:0;
}
#glava {
	width: 100%;
	height:40px;
}
#glava_levo {
	display:none;

}
#glava_desno {


float:none;
}
#vsebina {
	width:100%;
	padding-top: 12px;
}
#centralni_stolpec {
	width:100%;
	margin:0;
	padding:0;
	float:none;
}
#desni_stolpec {
display:none;
	float:none;
}
#mobilni_linki {
    display: block;
}    
#desni_linki {
	
}

#desni, #desni1, #desni2 {
	
	display:block;
	float:left;
	width:32px;
	height:33px;
}
#desni span, #desni1 span, #desni2 span {
	display:none;
}
.tw, .go, .em {
	margin-left:0;	
}
#noga {
	display:none;

}
#noga_levo p {
		display:none;

}
#noga_levo #boreoslikca {
		display:none;

}
#noga_desno p {
		display:none;

}
#noga_desno #slikce {
		display:none;

}
#noga_desno #ess{
		display:none;


}
#noga_desno #mnz{
		display:none;
	
}

/* CSS MENU */


#cssmenu {
    position: fixed;
    top: 0;           /* Dodano: zagotovi, da je res na vrhu */
    left: 0;          /* Dodano: zagotovi, da se začne levo */
    
    width: 100%;
    height: 40px;
    color: #BBB;
    font-size: var(--font-base); /* 12px — 16px je povzročal prelom v 2 vrstici na 360px zaslonu */
    background-image: none;
    background-color: #FFF;

    /* --- NOVO --- */

    /* Senca: premik dol 2px, zameglitev 5px, barva črna z 15% prosojnostjo */
    box-shadow: 0 2px 5px rgba(0,0,0,0.25);

    /* Z-index: zagotovi, da je meni nad vsebino */
    z-index: 9999;
}
    #cssmenu ul {
        padding-left: 0 !important; /* Povozimo desktop nastavitev 38px */
        padding-right: 0;
        padding-top: 0 !important; /* Povozimo desktop 9px */
        margin: 0;
        width: 100%;
        text-align: center;
        box-sizing: border-box;
        display: flex; /* Enakomerno razporedi 4 zavihke */
        flex-wrap: nowrap; /* Prepreči prelom v 2 vrstici */
        overflow: hidden;
    }
/* Varovalka za mobilni prikaz - prepreči vsem elementom širjenje čez rob */
    * {
        box-sizing: border-box;
    }

    html, body {
        overflow-x: clip; /* clip ne ustvari scroll containerja — ne pokvari position:sticky */
        width: 100%;
        max-width: 100%;
    }

#cssmenu li {
    height: 40px;
    float: left;
    width: 25%;
    padding-top: 0;
    z-index: 100;
    text-align: center;
    font-weight: bold;
    flex: 1; /* flex otroci zapolnijo enakomerno */
    min-width: 0;
}
#cssmenu li a {
	display: block;
	height: 40px;
	line-height: 40px;
	color: #666;
	text-decoration: none;
	z-index: 100;
	font-size: var(--font-base); /* 12px — 16px je prelomilo meni v 2 vrstici */
	overflow: hidden;
	white-space: nowrap;
}
#cssmenu li a:hover,
#cssmenu li a:active {
	color: #000;
	text-decoration: none;
	z-index: 100;
}
/* Desktop specificity override: #cssmenu li.X ima (1,1,1) > #cssmenu li (1,0,1).
   Brez tega se padding/margin iz desktop sprite-pozicij prenesejo v mobile. */
#cssmenu li.dogodki,
#cssmenu li.novice,
#cssmenu li.koledar,
#cssmenu li.galerija {
	display: block;
	padding-top: 0;
	padding-left: 0;
	margin-top: 0;
	margin-left: 0;
}
#cssmenu.novicehover {

	background-position: -570px -87px;
	z-index:100;
}
#cssmenu.dogodkihover{

	background-position: -570px -172px;
	z-index:100;
}
#cssmenu.galerijahover{

	background-position: -570px -257px;
	z-index:100;	
}
/* CSS MENU KONEC */
/* NASLOVNICA */
#naslovna_dogodki, #naslovna_novice, #noga_levo, #noga_desno {
	width:100%;
	float:none;
	padding:0;
	
}

#naslovna_novice {
	padding:0;
	padding-top:50px;
}

#naslovna_ikona, #naslovna_ikona_novice {
	display:none;


}
.novice_ikona {
	display:none;
	background-position:-130px 0;
	
	
}
.galerija_ikona {
	display:none;
	background-position:-262px -255px;	
}
#naslovna_ikona.podstran {
	display:none;
	margin-left:630px;
}

#naslovna_dogodki_krogec {
	display:none;
	position:absolute;
	margin-left:-10px;
	margin-top:-10px;
	width:28px;
	height:28px;
	background-image:url(slike/naslovne_ikone.png);
	background-repeat:no-repeat;
	background-position:0px -129px;
}


#naslovna_seznam_dogodkov, #naslovna_seznam_novic {
	
	width:100%;
    -webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);

	background-color:#FFF;
	min-height:350px;
		
	
}

#naslovna_novice_head, #naslovna_dogodki_head {
	height:40px;
    -webkit-border-radius:  12px  12px 0px 12px;
	-moz-border-radius: 12px  12px 0px 12px;
	border-radius: 12px 12px  0px 12px;
	

}
#naslovna_dogodki_head {
	background-color: var(--col-blue);
}
#naslovna_novice_head {
	background-color: var(--col-pink);
}
.naslov_dve {

	font-size: var(--font-3xl); /* 20px */
	font-family:'Noto Serif', "Times New Roman", Times, serif;
	font-weight:bold;
	color: var(--col-white);
}
.naslov_ostalo {

	font-size: var(--font-3xl); /* 20px */
	font-family:'Noto Serif', "Times New Roman", Times, serif;
	font-style:italic;
	color: var(--col-white);	
}
.naslovna_naslov {
	margin:0;
	padding-top:8px;
	padding-left:14px;
}
.naslovna_vec {
	
	color: var(--col-white);
	font-size: var(--font-base); /* 12px */

	text-align: center;
	float: right;
	margin-right: 30px;
	padding-top:2px;
	background-image: url(slike/naslovne_ikone.png);
	background-repeat: no-repeat;
	background-position: -29px -129px;
	-webkit-border-radius: 0px  0px 5px 5px;
	-moz-border-radius: 0px  0px 5px 5px;
	border-radius: 0px  0px 5px 5px;
	height: 19px;
	width: 139px;

	border-right-width: 1px;
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-top-style: none;
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-right-color: #FFF;
	border-bottom-color: #FFF;
	border-left-color: #FFF;

}
.naslovna_vec a {
	text-decoration:none;
	color: var(--col-white);
}
.naslovna_vec a:hover {
	text-decoration:none;
	color:#444	;
}
.naslovna_vsi_dogodki {
	padding:14px;
}




.kjekaj {
	
	clear:both;
	line-height:16px;


}
.kjekaj_naslovka {
	padding-top:8px;
	clear:both;

}
.datum {
	float:left;
	width:42px;
	text-align:center;
	color:white;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
}
.vmesdatum {
	float:left;
	width:24px;
	padding-top:6px;
	text-align:center;
	font-size: var(--font-4xl); /* 24px */
	color:black;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
}
.kondatum {
	float:left;
	width:42px;
	text-align:center;
	color:white;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
}
.mesec {
	background-color: black;
	padding-bottom:2px;
	line-height:20px;
	-webkit-border-radius: 5px 5px 0px  0px;
	-moz-border-radius: 5px 5px 0px  0px;
	border-radius: 5px 5px 0px  0px;

}
.dan {
	background-color: var(--col-blue);
	line-height:22px;
	height:22px;
	-webkit-border-radius: 0px  0px 5px 5px;
	-moz-border-radius: 0px  0px 5px 5px;
	border-radius: 0px  0px 5px 5px;

	font-weight:bold;
	font-size: var(--font-xl); /* 16px */
}
.adddan {
	background-color: #D50000;
	padding-bottom: 2px;
	line-height: 20px;
	-webkit-border-radius: 5px 5px 0px  0px;
	-moz-border-radius: 5px 5px 0px  0px;
	border-radius: 5px 5px 0px  0px;
}
.urakraj_vstopna {
	float:left;
	padding-left:14px;
	margin-top:0;
	width:80%;
	line-height: 1em;
	
}
.urakraj {
	float:left;
    max-width:95%;


	
}
.urakraj_vecdni {
	float:left;
	padding-left:115px;
	max-width:95%;
	margin-top:-2px;
	line-height:16px;
}

.kajzakaj {
	clear:both;
	color:#555;
	font-size: var(--font-base); /* 12px */

}
.kajzakaj a{
	text-decoration:none;
	color:inherit;
}
.kajzakaj a:hover{
	text-decoration: none;
	color: #000;	
}
h1, h2, h1 a, h2 a {
	margin:0;
	
	font-weight:bold;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
	text-decoration:none;
}
h1 {
	
	font-size: var(--font-3xl); /* 20px */
	padding-top:12px;

}
h2 {
	padding:0;
	padding-top:8px;
	font-size: var(--font-2xl); /* 18px */
}
.kajzakaj p {
	margin-top: 4px;
	padding: 0;
	text-align: justify;

}
.podnaslov {
	color: #222;
	padding: 0;
	line-height: 1.5;
	font-size: var(--font-md);
	margin: 0 0 12px 0;
}
.dogodki_vmes {
	width: auto; 
	height: 1px;
	border-top-width: 1px;
	border-top-style: dashed;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	border-top-color: #B6C9D3;
	margin-top:12px;
	margin-bottom:14px;
}
#naslovna_seznam_novic .dan {
	background-color: var(--col-pink);	
}


/* NASLOVNICA KONEC */
/* NOVICE */
#vsebina {
	margin-left:0;
	margin-right:0;	

	width:100%;
    -webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);

	background-color:#FFF;
		


	

		
	
}

#vsebina_head {
	
	height:40px;
	width:100%;
    -webkit-border-radius:  12px  12px 0px 0px;
	-moz-border-radius: 12px  12px 0px 0px;
	border-radius: 12px 12px  0px 0px;

}
.podlaga_dogodki {	background-color: var(--col-blue); }
.podlaga_novice { 	background-color: var(--col-pink); }
.podlaga_galerija {	background-color: var(--col-green); }
.pisava_dogodki, .pisava_dogodki a {	color: var(--col-blue-dark); } /* a11y: 2.29:1 → 5.4:1 */
.pisava_dogodki a:hover {
	color: #1399BF;
}

.pisava_novice, .pisava_novice a { 	color: var(--col-pink); }
.pisava_novice a:hover {
	color: #B90066;
}

.pisava_galerija, .pisava_galerija a {	color: var(--col-green-dark); } /* a11y: --col-green daje 2.05:1 (FAIL), --col-green-dark = 4.51:1 (AA) */
.pisava_galerija a:hover {
	color: #809A01;
}

.pisava_sivo, .pisava_sivo a  { 
	color:#666666;
	text-decoration:none;
}
.pisava_sivo a:hover  {
	color: #333333;
}
.vsebina_naslov {
	margin:0;
	padding-top:8px;
	padding-left:20px;

}
.vsebina_naslov a {
		text-decoration:none;
}
#vsebina_spodaj, .vsebina_spodaj {
	width:100%;
	padding-left: 0;
	padding-right: 0;
	/* margin-top: 16px je bil predviden za odmik pod cyan #vsebina_head
	   banner-jem, ki je na mobilnem display:none — zdaj samo siroti razmik
	   med #siteheader in #aktivni_filtri sticky barjem. */
	margin-top: 0;
	clear: both;


}
.mobile_video {
	display:block;
	height:200px;
}
		.mobile_kontakt	{
		display: inline-block;
			padding-top:6px;
	}
.sam_video, .sam_video_dogodki  {
	width:100%;
	display:block;
	height:200px;
	padding-bottom:8px;
}
#vsebina_menu, .vsebina_menu  {
display:none;
	float:left;
	
}
#vsebina_menu_abs {
	display:none;
	width:186px;

}
#vsebina_vsebina, .vsebina_vsebina {
	width:100%;
	float:none;
	margin-left: 0;

	/* padding-bottom:12px; */
}
.srednji {
	width:100%;

}
.srdanes {
  background: none; /* For browsers that do not support gradients */

  }
.o_dogodku {
	float:left;
	padding-left:2%;
	
	width:96%;

}
.o_dogodku_brezvidea {
	float:left;
	padding-left:2%;
	
	width:96%;
	

}
.nastopajoci p {
	padding-left:3px;
	padding-right:3px;
}
.fotka_desno, .fotka_levo {
	display:none;


}
.fotka_levo {
	display:none;

}
.hspacer {
	height:12px;
}
.hspacer1 {
	height:28px;
}
.splosni_linki, .splosni_linki_off {
	list-style: none;
	margin: 0;
	margin-top: 22px;
	padding: 0;

}
.splosni_linki li{
	height:32px; 



	
}


.splosni_linki li span {
	display:block;
	float:left;
	width:70%;
		border-bottom-width: thin;
	border-bottom-style: dashed;
	border-bottom-color: #CCC;

}



.seznam {
	/* background-image: url(slike/locnica.png); */
	/* background-repeat: no-repeat; */
	/* background-position: center bottom; */
	/* border-bottom-width: thin; */
	/* border-bottom-style: dashed; */
	/* border-bottom-color: #DFDFDF; */
	/* -webkit-border-radius: var(--radius-lg); */
	/* -moz-border-radius: var(--radius-lg); */
	/* border-radius: var(--radius-lg); */

}
.seznam_vsebine {
	background-image: url(slike/locnica.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	border-bottom-width: thin;
	border-bottom-style: dashed; 
	border-bottom-color: #DFDFDF;
    -webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);	

}

/* NOVICE KONEC */
/* KOMENTAR */
#komentar {
display:none;


	    -webkit-border-radius: var(--radius-md);
	-moz-border-radius: var(--radius-md);
	border-radius: var(--radius-md);
	clear: both;	
}
.komentar_naslov {
	padding-top:16px;
}
fieldset, .komentar_vsebina{
	margin: 0 auto 0;
	border:none;

}
.komentar_vsebina ul, fieldset ul, fieldset li{
border:0; margin:0; padding:0; list-style:none;
}
.komentar_vsebina li, fieldset li{
	clear:none;
	list-style:none;
	
}
	
#prijava {

	width: 100%;

    -webkit-box-shadow: 0px 0px 6px 0px rgba(50, 50, 50, 0.9);
	-moz-box-shadow:    0px 0px 6px 0px rgba(50, 50, 50, 0.9);
	box-shadow:         0px 0px 6px 0px rgba(50, 50, 50, 0.8);
		
	-webkit-border-radius: var(--radius-md);
	-moz-border-radius: var(--radius-md);
	border-radius: var(--radius-md);
	clear: both;	
}	
	li {
		float: none;
	/*	display:block; */
	}
.izjave {
	width:99%;
	margin-left:1%; 
	padding-top: 5px; 
	color:white;
}

fieldset input[type=text]{
	display:block;
	-webkit-border-radius: var(--radius-sm);
	-moz-border-radius: var(--radius-sm);
	border-radius: var(--radius-sm);	
	border-color:#B1B3B4;
	border-style:solid;
	border-width:thin;
	color:#888;
    clear:left;
	float:none;
	padding-right:3%;
	width: 97%;
	max-width: 200px;
	height:20px;
}
fieldset textarea{
		display:none;
	-webkit-border-radius: var(--radius-sm);
	-moz-border-radius: var(--radius-sm);
	border-radius: var(--radius-sm);	
	border-color:#B1B3B4;
	border-style:solid;
	border-width:thin;
	color:#888;
	width:370px;
	min-height:99px;
	overflow: hidden;
}
fieldset label{
	width:100%;
	float:none;
	clear:both;
	text-align:right;
	color: var(--col-white);
	padding-top:4px;
}
fieldset input[type=submit]{
	color: var(--col-white);
	-webkit-border-radius: 0 0 5px  5px;
	-moz-border-radius: 0 0 5px  5px; 
	border-radius: 0 0 5px  5px;	
	border-color: var(--col-white);
	border-style:solid;
	border-width:thin;
	width:auto;
	height:30px;
	padding-top:0;
	margin-top:-2px;
	margin-left:0;
	cursor: pointer;
}
.komentar_gumb_novice {
		background-color:#EF97CB;
}
.komentar_gumb_novice:hover {
		background-color:#E551A3;
}
.komentar_gumb_dogodki:hover {
		background-color:#63D0EA;
}
.komentar_gumb_dogodki {
		background-color:#7CE0F7;
}
.komentar_gumb_galerija:hover {
		background-color:#B8C93D;
}
.komentar_gumb_galerija {
		background-color:#C5D839;
}
.izbornik {
	display:none;
	width:172px;
	list-style: none;
	margin: 0;
	padding: 0;
	padding-top:4px;
	background-image: url(/slike/izbornik-top.png);
	background-repeat: no-repeat;
}
.izbornik li {
	display:none;
	border-bottom-width: thin;
	border-bottom-style: dashed;
	line-height:32px;
	border-bottom-color: #CCC;
}
.izbornik li a {
	display:none;
	font-size: var(--font-base); /* 12px */
	color:#666666;
	font-family: Arial, Helvetica, sans-serif;
	text-decoration:none;	
}
.izbornik li a:hover {
	color:#333;

}
.izbornik li:hover {
	background-color: #E6FBFF;
}


.komentator{
	display:none;
	width:186px;
	float:left;
	text-align:right;
	padding-right:10px;
	font-weight:bold;
	padding-top:14px;
}
.vsebina_komentarja{
	display:none;	
	float:left;
	padding-top:14px;
	width:370px;
	color:#666666;
	padding-bottom:14px;
	border-bottom:thin;
	border-bottom-style:dashed;
	border-bottom-color:#999;
}
.o_prispevku {
	padding-top:84px;
}
.gal_fotka {
	float:left;
}
a {
   outline: 0;
}
#calendar {
	margin:0;
	padding:0;
	padding-bottom:16px;
	width:100%;
	position:relative;

}
.ui-datepicker{
	margin: 0 auto;
	border: none;
	border-spacing: 0;
}

/* Calendar Wrapper */
.ui-datepicker {
	display: none;
	width: auto;
	max-width: calc(100% - 24px);
	margin: 12px;
	padding: 14px 10px;
	box-sizing: border-box;
	cursor: default;
	text-transform: uppercase;
	font-family: Tahoma;
	font-size: var(--font-md);
	-webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);
	background-color: #EEE;
}
.ui-datepicker-calendar {
	width: 100%;
	table-layout: fixed; /* enakomerna razporeditev 7 stolpcev, neodvisno od širine celice */
}
/* Calendar Header */
.ui-datepicker-header {
	position: relative;
	padding-bottom: 10px;
	border-bottom: 1px solid #d6d6d6;
}

.ui-datepicker-title { text-align: center; }

/* Month */
.ui-datepicker-month {
	position: relative;
	padding-right: 15px;
	color: #565656;
}

.ui-datepicker-month:before {
	display: block;
	position: absolute;
	top: 5px;
	right: 0;
	width: 5px;
	height: 5px;
	content: '';

	background: #a5cd4e;
	background: -moz-linear-gradient(top, #a5cd4e 0%, #6b8f1a 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#a5cd4e), color-stop(100%,#6b8f1a));
	background: -webkit-linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);
	background: -o-linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);
	background: -ms-linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);
	background: linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);

	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

/* Year */
.ui-datepicker-year {
	padding-left: 8px;
	color: #a8a8a8;
}

/* Prev Next Month */
.ui-datepicker-prev,
.ui-datepicker-next {
	position: absolute;
	top: -2px;
	padding: 5px;
	cursor: pointer;
}

.ui-datepicker-prev {
	left: 0;
	padding-left: 0;
}

.ui-datepicker-next {
	right: 0;
	padding-right: 0;
}

.ui-datepicker-prev span,
.ui-datepicker-next span{
	display: block;
	width: 5px;
	height: 10px;
	text-indent: -9999px;

	background-image: url(orodja/koledar/arrows.png);
}

.ui-datepicker-prev span { background-position: 0px 0px; }

.ui-datepicker-next span { background-position: -5px 0px; }

.ui-datepicker-prev-hover span { background-position: 0px -10px; }

.ui-datepicker-next-hover span { background-position: -5px -10px; }

/* Calendar "Days" */
.ui-datepicker-calendar th {
	padding-top: 15px;
	padding-bottom: 10px;
	
	text-align: center;
	font-weight: normal;
	color: #a8a8a8;
}

.ui-datepicker-calendar td {
	padding: 2px 1px;
	text-align: center;
	line-height: 1;
	font-size: var(--font-lg);
}
.ui-datepicker-calendar td a.ui-state-default,
.ui-datepicker-calendar td span.ui-state-default {
	min-height: 48px;
	line-height: 48px;
	padding: 0 2px;
	border-radius: 6px;
	box-sizing: border-box;
}

.ui-datepicker-calendar .ui-state-default {

	display: block;
	width: auto; /* table-layout: fixed na .ui-datepicker-calendar razporedi enakomerno */

	outline: none;

	text-decoration: none;
	color: #a8a8a8;

	border: 1px solid transparent;
}

/* Day Active State*/
.ui-datepicker-calendar .ui-state-active {
	color: #6a9113;
	border-color: #6a9113;
}

/* Other Months Days*/
.ui-datepicker-other-month .ui-state-default { color: #565656; }
.highlight .ui-state-default {
	font-weight: bold;
	color: #000000;
	background-color: #ACE6F7;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
.bloke {
	background-image: url(slike/obcine/bloke.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.cerknica {
	background-image: url(slike/obcine/cerknica.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.ilirskabistrica {
	background-image: url(slike/obcine/ilirska-bistrica.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.loskadolina {
	background-image: url(slike/obcine/loska-dolina.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.pivka {
	background-image: url(slike/obcine/pivka.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.postojna {
	background-image: url(slike/obcine/postojna.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.drugo {
	background-image: url(slike/obcine/slovenija.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}

#map_canvas {
	 width:100%; 

}
  /*write your CSS-Code here*/
}
@media screen and (min-width: 817px) and (max-width: 997px) {
body {
	background-image: none;
}
    #siteheader {
        display: none;
    }
#container {
	position: relative;
	width: 1028px;
	margin: 0 auto;
}
#glava {
	height:100px;
}
#glava_levo {
	display:none;
	width:686px;
	height:100px;
	float:left;
}
#glava_desno {

	width:342px;	
	float:left;
}
#vsebina {
	width:1028px;
}
#centralni_stolpec {
	width:814px;
	float:left;
}
#desni_stolpec {
	position: fixed;
	margin-left: 814px;
	margin-top: -8px;
	width: 214px;
}
}
@media screen and (min-width: 641px) and (max-width: 816px) {

/* --- Tabletna navigacija (Faza C) --- */
#stari_header    { display: none; }
#siteheader      { display: flex; }
#bottom_nav      { display: flex; }
#btn_iskanje_fab { display: none; }
#btn_filter_fab  { display: none; }
#top_nav         { display: none !important; }
#telo            { padding-bottom: 56px; }
/* Action bar in dab-btn stili so v skupnem @media (max-width: 816px) bloku
   spodaj v datoteki — tu samo dovolimo bottom_nav, da deluje. */

body {
	width: 100%;
background-image:none;
	margin: 0;
	padding: 0;
	font-size: var(--font-sm); /* 11px */


}
.zafotko {
	min-height:0px;
}
#container { 
	width: 100%;
	margin: 0;
	padding:0;
}
#glava { 
	width: 100%;
	height:40px;
    
}
#glava_levo {
	display:none;

}
#glava_desno {


float:none;
}
#vsebina {
	width:100%;
}
#centralni_stolpec {
	width:100%;
	margin:0;
	padding:0;
	float:none;
}
#desni_stolpec {
display:none;
	float:none;
}
#mobilni_linki {
    display: block;
}      
#desni_linki {
	
}

#desni, #desni1, #desni2 {
	
	display:block;
	float:left;
	width:32px;
	height:33px;
}
#desni span, #desni1 span, #desni2 span {
	display:none;
}
.tw, .go, .em {
	margin-left:0;	
}
#noga {
	display:none;

}
#noga_levo p {
		display:none;

}
#noga_levo #boreoslikca {
		display:none;

}
#noga_desno p {
		display:none;

}
#noga_desno #slikce {
		display:none;

}
#noga_desno #ess{
		display:none;


}
#noga_desno #mnz{
		display:none;
	
}

/* CSS MENU */


#cssmenu {
    position: fixed;
    top: 0;           /* Dodano: zagotovi, da je res na vrhu */
    left: 0;          /* Dodano: zagotovi, da se začne levo */
    
    width: 100%;
    height: 40px;
    color: #BBB;
    font-size: var(--font-base); /* 12px — 16px je povzročal prelom v 2 vrstici */
    background-image: none;
    background-color: #FFF;

    /* --- NOVO --- */

    /* Senca: premik dol 2px, zameglitev 5px, barva črna z 15% prosojnostjo */
    box-shadow: 0 2px 5px rgba(0,0,0,0.25);

    /* Z-index: zagotovi, da je meni nad vsebino */
    z-index: 9999;
}

#cssmenu li {
	height: 40px;
	width: 25%;
	float: left;
	flex: 1;
	min-width: 0;
	padding-top: 0;
	z-index: 10000;
	text-align: center;
	font-weight: bold;
}
#cssmenu li a {
	display: block;
	height: 40px;
	line-height: 40px;
	color: #666;
	text-decoration: none;
	z-index: 100;
	font-weight: bold;
	font-size: var(--font-base); /* 12px — 16px je prelomilo meni v 2 vrstici */
	overflow: hidden;
	white-space: nowrap;
}
#cssmenu li a:hover,
#cssmenu li a:active {
	color: #000;
	text-decoration: none;
	z-index: 1000;
}
#cssmenu li.dogodki,
#cssmenu li.novice,
#cssmenu li.koledar,
#cssmenu li.galerija {
	display: block;
	padding-top: 0;
	padding-left: 0;
	margin-top: 0;
	margin-left: 0;
}
#cssmenu ul {
	padding-top: 0 !important;
	padding-left: 0 !important;
	display: flex;
	flex-wrap: nowrap;
	overflow: hidden;
	width: 100%;
	margin: 0;
}
#cssmenu.novicehover {

	background-position: -570px -87px;
	z-index:100;
}
#cssmenu.dogodkihover{

	background-position: -570px -172px;
	z-index:100;
}
#cssmenu.galerijahover{

	background-position: -570px -257px;
	z-index:100;	
}
/* CSS MENU KONEC */
/* NASLOVNICA */
#naslovna_dogodki, #naslovna_novice, #noga_levo, #noga_desno {
	width:100%;
	float:none;
	padding:0;
	
}

#naslovna_novice {
	padding:0;
	padding-top:50px;
}

#naslovna_ikona, #naslovna_ikona_novice {
	display:none;


}
.novice_ikona {
	display:none;
	background-position:-130px 0;
	
	
}
.galerija_ikona {
	display:none;
	background-position:-262px -255px;	
}
#naslovna_ikona.podstran {
	display:none;
	margin-left:630px;
}

#naslovna_dogodki_krogec {
	display:none;
	position:absolute;
	margin-left:-10px;
	margin-top:-10px;
	width:28px;
	height:28px;
	background-image:url(slike/naslovne_ikone.png);
	background-repeat:no-repeat;
	background-position:0px -129px;
}


#naslovna_seznam_dogodkov, #naslovna_seznam_novic {
	
	width:100%;
    -webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);

	background-color:#FFF;
	min-height:350px;
		
	
}

#naslovna_novice_head, #naslovna_dogodki_head {
	height:40px;
    -webkit-border-radius:  12px  12px 0px 12px;
	-moz-border-radius: 12px  12px 0px 12px;
	border-radius: 12px 12px  0px 12px;
	

}
#naslovna_dogodki_head {
	background-color: var(--col-blue);
}
#naslovna_novice_head {
	background-color: var(--col-pink);
}
.naslov_dve {

	font-size: var(--font-3xl); /* 20px */
	font-family:'Noto Serif', "Times New Roman", Times, serif;
	font-weight:bold;
	color: var(--col-white);
}
.naslov_ostalo {

	font-size: var(--font-3xl); /* 20px */
	font-family:'Noto Serif', "Times New Roman", Times, serif;
	font-style:italic;
	color: var(--col-white);	

}
.naslovna_naslov {
	margin:0;
	padding-top:8px;
	padding-left:14px;
}
.naslovna_vec {
	
	color: var(--col-white);
	font-size: var(--font-base); /* 12px */

	text-align: center;
	float: right;
	margin-right: 30px;
	padding-top:2px;
	background-image: url(slike/naslovne_ikone.png);
	background-repeat: no-repeat;
	background-position: -29px -129px;
	-webkit-border-radius: 0px  0px 5px 5px;
	-moz-border-radius: 0px  0px 5px 5px;
	border-radius: 0px  0px 5px 5px;
	height: 19px;
	width: 139px;

	border-right-width: 1px;
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-top-style: none;
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-right-color: #FFF;
	border-bottom-color: #FFF;
	border-left-color: #FFF;

}
.naslovna_vec a {
	text-decoration:none;
	color: var(--col-white);
}
.naslovna_vec a:hover {
	text-decoration:none;
	color:#444	;
}
.naslovna_vsi_dogodki {
	padding:14px;
}




.kjekaj {
	
	clear:both;
	line-height:16px;


}
.kjekaj_naslovka {
	padding-top:8px;
	clear:both;

}
.datum {
	float:left;
	width:42px;
	text-align:center;
	color:white;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
}
.vmesdatum {
	float:left;
	width:24px;
	padding-top:6px;
	text-align:center;
	font-size: var(--font-4xl); /* 24px */
	color:black;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
}
.kondatum {
	float:left;
	width:42px;
	text-align:center;
	color:white;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
}
.mesec {
	background-color: black;
	padding-bottom:2px;
	line-height:20px;
	-webkit-border-radius: 5px 5px 0px  0px;
	-moz-border-radius: 5px 5px 0px  0px;
	border-radius: 5px 5px 0px  0px;

}
.dan {
	background-color: var(--col-blue);
	line-height:22px;
	height:22px;
	-webkit-border-radius: 0px  0px 5px 5px;
	-moz-border-radius: 0px  0px 5px 5px;
	border-radius: 0px  0px 5px 5px;

	font-weight:bold;
	font-size: var(--font-xl); /* 16px */
}
.adddan {
	background-color: #D50000;
	padding-bottom: 2px;
	line-height: 20px;
	-webkit-border-radius: 5px 5px 0px  0px;
	-moz-border-radius: 5px 5px 0px  0px;
	border-radius: 5px 5px 0px  0px;
}
.urakraj_vstopna {
	float:left;
	padding-left:14px;
	margin-top:0;
	width:80%;
	line-height: 1em;
	
}
.urakraj {
	float:left;
    max-width:95%;


	
}
.urakraj_vecdni {
	float:left;
	padding-left:115px;
	max-width:95%;
	margin-top:-2px;
	line-height:16px;
}

.kajzakaj {
	clear:both;
	color:#555;
	font-size: var(--font-base); /* 12px */

}
.kajzakaj a{
	text-decoration:none;
	color:inherit;
}
.kajzakaj a:hover{
	text-decoration: none;
	color: #000;	
}
h1, h2, h1 a, h2 a {
	margin:0;
	
	font-weight:bold;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
	text-decoration:none;
}
h1 {
	
	font-size: var(--font-3xl); /* 20px */
	padding-top:12px;

}
h2 {
	padding:0;
	padding-top:8px;
	font-size: var(--font-2xl); /* 18px */

}
.kajzakaj p {
	margin-top: 4px;
	padding: 0;
	text-align: justify;
}
.podnaslov {
	color: #222;
	padding: 0;
	line-height: 1.5;
	font-size: var(--font-md);
	margin: 0 0 12px 0;
}
.dogodki_vmes {
	width: auto; 
	height: 1px;
	border-top-width: 1px;
	border-top-style: dashed;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	border-top-color: #B6C9D3;
	margin-top:12px;
	margin-bottom:14px;
}
#naslovna_seznam_novic .dan {
	background-color: var(--col-pink);	
}


/* NASLOVNICA KONEC */
/* NOVICE */
#vsebina {
	margin-left:0;
	margin-right:0;	

	width:100%;
    -webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);

	background-color:#FFF;


	

		
	
}

#vsebina_head {
	
	height:40px;
	width:100%;
    -webkit-border-radius:  12px  12px 0px 0px;
	-moz-border-radius: 12px  12px 0px 0px;
	border-radius: 12px 12px  0px 0px;

}
.podlaga_dogodki {	background-color: var(--col-blue); }
.podlaga_novice { 	background-color: var(--col-pink); }
.podlaga_galerija {	background-color: var(--col-green); }
.pisava_dogodki, .pisava_dogodki a {	color: var(--col-blue-dark); } /* a11y: 2.29:1 → 5.4:1 */
.pisava_dogodki a:hover {
	color: #1399BF;
}

.pisava_novice, .pisava_novice a { 	color: var(--col-pink); }
.pisava_novice a:hover {
	color: #B90066;
}

.pisava_galerija, .pisava_galerija a {	color: var(--col-green-dark); } /* a11y: --col-green daje 2.05:1 (FAIL), --col-green-dark = 4.51:1 (AA) */
.pisava_galerija a:hover {
	color: #809A01;
}

.pisava_sivo, .pisava_sivo a  { 
	color:#666666;
	text-decoration:none;
}
.pisava_sivo a:hover  {
	color: #333333;
}
.vsebina_naslov {
	margin:0;
	padding-top:20px;
	padding-left:30px;

}
.vsebina_naslov a {
		text-decoration:none;
}
#vsebina_spodaj, .vsebina_spodaj {
	width:100%;
	padding-left: 0;	
	padding-right: 0;	
	margin-top: 0;
	width: 100%;
	clear: both;	
	

}
.mobile_video {

	display:block;
	height:300px;
}
		.mobile_kontakt	{
		display: inline-block;
			padding-top:6px;
	}
.sam_video, .sam_video_dogodki  {
		width:100%;
	display:block;
	height:200px;
	padding-bottom:8px;
}
#vsebina_menu, .vsebina_menu  {
display:none;
	float:left;
	
}
#vsebina_menu_abs {
	display:none;
	width:186px;

}
#vsebina_vsebina, .vsebina_vsebina {
	width:100%;
	float:none;
	margin-left: 0;

	padding-bottom:12px;
}
.srednji {
	width:100%;

}
.srdanes {
  background: none; /* For browsers that do not support gradients */

  }
.o_dogodku {
	float:left;
	padding-left:2%;

	width:96%;

}
.o_dogodku_brezvidea {
	float:left;
	padding-left:2%;

	width:96%;


}
.nastopajoci p {
	padding-left:3px;
	padding-right:3px;
}
.fotka_desno {
	float:right;
	width:23%;
	height:23%;
	padding-right:1%;



}
.fotka_levo {
	display:none;

}
.hspacer {
	height:12px;
}
.hspacer1 {
	height:28px;
}
.splosni_linki, .splosni_linki_off {
	list-style: none;
	margin: 0;
	margin-top: 22px;
	padding: 0;

}
.splosni_linki li{
	height:32px; 



	
}


.splosni_linki li span {
	display:block;
	float:left;
	width:70%;
		border-bottom-width: thin;
	border-bottom-style: dashed;
	border-bottom-color: #CCC;

}



.seznam {
	padding-top: 16px;
}
.seznam_vsebine {
	background-image: url(slike/locnica.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	border-bottom-width: thin;
	border-bottom-style: dashed; 
	border-bottom-color: #DFDFDF;
    -webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);	

}

/* NOVICE KONEC */
/* KOMENTAR */
#komentar {
display:none;


	-webkit-border-radius: var(--radius-md);
	-moz-border-radius: var(--radius-md);
	border-radius: var(--radius-md);
	clear: both;	
}
.komentar_naslov {
	padding-top:16px;
}
fieldset, .komentar_vsebina{
	margin: 0 auto 0;
	border:none;

}
.komentar_vsebina ul, fieldset ul, fieldset li{
border:0; margin:0; padding:0; list-style:none;
}
.komentar_vsebina li, fieldset li{
	clear:both;
	list-style:none;
	
}
	#prijava {
		width:99%;
	}
fieldset input[type=text]{

	-webkit-border-radius: var(--radius-sm);
	-moz-border-radius: var(--radius-sm);
	border-radius: var(--radius-sm);	
	border-color:#B1B3B4;
	border-style:solid;
	border-width:thin;
	color:#888;
	width:200px;
	height:20px;
}
fieldset textarea{
		display:none;
	-webkit-border-radius: var(--radius-sm);
	-moz-border-radius: var(--radius-sm);
	border-radius: var(--radius-sm);	
	border-color:#B1B3B4;
	border-style:solid;
	border-width:thin;
	color:#888;
	width:370px;
	min-height:99px;
	overflow: hidden;
}
fieldset label{
	

}
fieldset input[type=submit]{
	color: var(--col-white);
	-webkit-border-radius: 0 0 5px  5px;
	-moz-border-radius: 0 0 5px  5px; 
	border-radius: 0 0 5px  5px;	
	border-color: var(--col-white);
	border-style:solid;
	border-width:thin;
	width:160px;
	height:30px;
	padding-top:0;
	margin-top:-2px;
	cursor: pointer;

}
.komentar_gumb_novice {
		background-color:#EF97CB;
}
.komentar_gumb_novice:hover {
		background-color:#E551A3;
}
.komentar_gumb_dogodki:hover {
		background-color:#63D0EA;
}
.komentar_gumb_dogodki {
		background-color:#7CE0F7;
}
.komentar_gumb_galerija:hover {
		background-color:#B8C93D;
}
.komentar_gumb_galerija {
		background-color:#C5D839;
}
.izbornik {
	display:none;
	width:172px;
	list-style: none;
	margin: 0;
	padding: 0;
	padding-top:4px;
	background-image: url(/slike/izbornik-top.png);
	background-repeat: no-repeat;
}
.izbornik li {
	display:none;
	border-bottom-width: thin;
	border-bottom-style: dashed;
	line-height:32px;
	border-bottom-color: #CCC;
}
.izbornik li a {
	display:none;
	font-size: var(--font-base); /* 12px */
	color:#666666;
	font-family: Arial, Helvetica, sans-serif;
	text-decoration:none;	
}
.izbornik li a:hover {
	color:#333;

}
.izbornik li:hover {
	background-color: #E6FBFF;
}


.komentator{
	display:none;
	width:186px;
	float:left;
	text-align:right;
	padding-right:10px;
	font-weight:bold;
	padding-top:14px;
}
.vsebina_komentarja{
	display:none;	
	float:left;
	padding-top:14px;
	width:370px;
	color:#666666;
	padding-bottom:14px;
	border-bottom:thin;
	border-bottom-style:dashed;
	border-bottom-color:#999;
}
.o_prispevku {
	padding-top:84px;
}
.gal_fotka {
	float:left;
}
a {
   outline: 0;
}
#calendar {
	margin:0;
	padding:0;
	padding-bottom:16px;
	width:100%;
	position:relative;

}
.ui-datepicker{
	margin: 0 auto;
	border: none;
	border-spacing: 0;
}

/* Calendar Wrapper */
.ui-datepicker {
	display: none;
	width: auto;
	max-width: calc(100% - 24px);
	margin: 12px;
	padding: 14px 10px;
	box-sizing: border-box;
	cursor: default;
	text-transform: uppercase;
	font-family: Tahoma;
	font-size: var(--font-md);
	-webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);
	background-color: #EEE;
}
.ui-datepicker-calendar {
	width: 100%;
	table-layout: fixed; /* enakomerna razporeditev 7 stolpcev, neodvisno od širine celice */
}
/* Calendar Header */
.ui-datepicker-header {
	position: relative;
	padding-bottom: 10px;
	border-bottom: 1px solid #d6d6d6;
}

.ui-datepicker-title { text-align: center; }

/* Month */
.ui-datepicker-month {
	position: relative;
	padding-right: 15px;
	color: #565656;
}

.ui-datepicker-month:before {
	display: block;
	position: absolute;
	top: 5px;
	right: 0;
	width: 5px;
	height: 5px;
	content: '';

	background: #a5cd4e;
	background: -moz-linear-gradient(top, #a5cd4e 0%, #6b8f1a 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#a5cd4e), color-stop(100%,#6b8f1a));
	background: -webkit-linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);
	background: -o-linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);
	background: -ms-linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);
	background: linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);

	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

/* Year */
.ui-datepicker-year {
	padding-left: 8px;
	color: #a8a8a8;
}

/* Prev Next Month */
.ui-datepicker-prev,
.ui-datepicker-next {
	position: absolute;
	top: -2px;
	padding: 5px;
	cursor: pointer;
}

.ui-datepicker-prev {
	left: 0;
	padding-left: 0;
}

.ui-datepicker-next {
	right: 0;
	padding-right: 0;
}

.ui-datepicker-prev span,
.ui-datepicker-next span{
	display: block;
	width: 5px;
	height: 10px;
	text-indent: -9999px;

	background-image: url(orodja/koledar/arrows.png);
}

.ui-datepicker-prev span { background-position: 0px 0px; }

.ui-datepicker-next span { background-position: -5px 0px; }

.ui-datepicker-prev-hover span { background-position: 0px -10px; }

.ui-datepicker-next-hover span { background-position: -5px -10px; }

/* Calendar "Days" */
.ui-datepicker-calendar th {
	padding-top: 15px;
	padding-bottom: 10px;
	
	text-align: center;
	font-weight: normal;
	color: #a8a8a8;
}

.ui-datepicker-calendar td {
	padding: 2px 1px;
	text-align: center;
	line-height: 1;
	font-size: var(--font-lg);
}
.ui-datepicker-calendar td a.ui-state-default,
.ui-datepicker-calendar td span.ui-state-default {
	min-height: 48px;
	line-height: 48px;
	padding: 0 2px;
	border-radius: 6px;
	box-sizing: border-box;
}

.ui-datepicker-calendar .ui-state-default {

	display: block;
	width: auto; /* table-layout: fixed na .ui-datepicker-calendar razporedi enakomerno */

	outline: none;

	text-decoration: none;
	color: #a8a8a8;

	border: 1px solid transparent;
}

/* Day Active State*/
.ui-datepicker-calendar .ui-state-active {
	color: #6a9113;
	border-color: #6a9113;
}

/* Other Months Days*/
.ui-datepicker-other-month .ui-state-default { color: #565656; }
.highlight .ui-state-default {
	font-weight: bold;
	color: #000000;
	background-color: #ACE6F7;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
.bloke {
	background-image: url(slike/obcine/bloke.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.cerknica {
	background-image: url(slike/obcine/cerknica.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.ilirskabistrica {
	background-image: url(slike/obcine/ilirska-bistrica.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.loskadolina {
	background-image: url(slike/obcine/loska-dolina.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.pivka {
	background-image: url(slike/obcine/pivka.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.postojna {
	background-image: url(slike/obcine/postojna.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.drugo {
	background-image: url(slike/obcine/slovenija.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}

#map_canvas {
	 width:100%; 

}
  /*write your CSS-Code here*/


}
@media print {
	 
body {
	width: 100%;
background-image:none;
	margin: 0;
	padding: 0;
	font-size: var(--font-sm); /* 11px */

	
}
.zafotko {
	min-height:0px;
}
#container { 
	width: 100%;
	margin: 0;
	padding:0;
}
#glava { 
	width: 100%;
	height:40px;
}
#glava_levo {
	display:none;

}
#glava_desno {


float:none;
}
#vsebina {
	width:100%;
}
#centralni_stolpec {
	width:100%;
	margin:0;
	padding:0;
	float:none;
}
#desni_stolpec {
display:none;
	float:none;
}
#mobilni_linki {
    display: block;
}      
#desni_linki {
	
}
#desni, #desni1, #desni2 {
	
	display:block;
	float:left;
	width:32px;
	height:33px;
}
#desni span, #desni1 span, #desni2 span {
	display:none;
}
.tw, .go, .em {
	margin-left:0;	
}
#noga {
	display:none;

}
#noga_levo p {
		display:none;

}
#noga_levo #boreoslikca {
		display:none;

}
#noga_desno p {
		display:none;

}
#noga_desno #slikce {
		display:none;

}
#noga_desno #ess{
		display:none;


}
#noga_desno #mnz{
		display:none;
	
}

/* CSS MENU */

#cssmenu {
	display:none;
		
		position:fixed;

	width: 100%;
	height: 40px;
	color: #BBB;
	font-size: var(--font-xl); /* 16px */
	background-image: none;	
	background-color:#FFF;
}
#cssmenu ul {
/*  height: 32px; */

width:100%;
  list-style: none;
  margin: 0;
  padding: 0;
  padding-top: 9px;

text-align:center;
 
/*  margin-bottom:4px; */

}

#cssmenu li {
height:30px;

	float: left;
	


}
#cssmenu li a {
	height: 30px;
	color: #666;
	text-decoration:none;

	z-index:100;
	font-weight:bold;
	
}
#cssmenu li a:hover  {
	color: #000;
	text-decoration: none;
	z-index:100;	
}
#cssmenu li.dogodki {
	padding-left:0;
	width:33%;
	float:left;
	padding-top:0;
	z-index:100;
	text-align:center;	
}
#cssmenu li.novice {
	width:33%;
	float:left;
	z-index:100;
	padding-top:0;	
	text-align:center;
}
#cssmenu li.koledar {
	display:block;
	width:33%;
	float:left;
	padding-top:0;
	z-index:100;	
	
		text-align:center;
}
#cssmenu li.galerija {
	display:none;

	
}
#cssmenu.novicehover {

	background-position: -570px -87px;
	z-index:100;
}
#cssmenu.dogodkihover{

	background-position: -570px -172px;
	z-index:100;
}
#cssmenu.galerijahover{

	background-position: -570px -257px;
	z-index:100;	
}
/* CSS MENU KONEC */
/* NASLOVNICA */
#naslovna_dogodki, #naslovna_novice, #noga_levo, #noga_desno {
	width:100%;
	float:none;
	padding:0;
	
}

#naslovna_novice {
	padding:0;
	padding-top:50px;
}

#naslovna_ikona, #naslovna_ikona_novice {
	display:none;


}
.novice_ikona {
	display:none;
	background-position:-130px 0;
	
	
}
.galerija_ikona {
	display:none;
	background-position:-262px -255px;	
}
#naslovna_ikona.podstran {
	display:none;
	margin-left:630px;
}

#naslovna_dogodki_krogec {
	display:none;
	position:absolute;
	margin-left:-10px;
	margin-top:-10px;
	width:28px;
	height:28px;
	background-image:url(slike/naslovne_ikone.png);
	background-repeat:no-repeat;
	background-position:0px -129px;
}


#naslovna_seznam_dogodkov, #naslovna_seznam_novic {
	
	width:100%;
    -webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);

	background-color:#FFF;
	min-height:350px;
		
	
}

#naslovna_novice_head, #naslovna_dogodki_head {
	height:40px;
    -webkit-border-radius:  12px  12px 0px 12px;
	-moz-border-radius: 12px  12px 0px 12px;
	border-radius: 12px 12px  0px 12px;
	

}
#naslovna_dogodki_head {
	background-color: var(--col-blue);
}
#naslovna_novice_head {
	background-color: var(--col-pink);
}
.naslov_dve {

	font-size: var(--font-3xl); /* 20px */
	font-family:'Noto Serif', "Times New Roman", Times, serif;
	font-weight:bold;
	color: var(--col-white);
}
.naslov_ostalo {

	font-size: var(--font-3xl); /* 20px */
	font-family:'Noto Serif', "Times New Roman", Times, serif;
	font-style:italic;
	color: var(--col-white);	
}
.naslovna_naslov {
	margin:0;
	padding-top:8px;
	padding-left:14px;
}
.naslovna_vec {
	
	color: var(--col-white);
	font-size: var(--font-base); /* 12px */
	
	text-align: center;
	float: right;
	margin-right: 30px;
	padding-top:2px;
	background-image: url(slike/naslovne_ikone.png);
	background-repeat: no-repeat;
	background-position: -29px -129px;
	-webkit-border-radius: 0px  0px 5px 5px;
	-moz-border-radius: 0px  0px 5px 5px;
	border-radius: 0px  0px 5px 5px;
	height: 19px;
	width: 139px;

	border-right-width: 1px;
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-top-style: none;
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-right-color: #FFF;
	border-bottom-color: #FFF;
	border-left-color: #FFF;

}
.naslovna_vec a {
	text-decoration:none;
	color: var(--col-white);
}
.naslovna_vec a:hover {
	text-decoration:none;
	color:#444	;
}
.naslovna_vsi_dogodki {
	padding:14px;
}




.kjekaj {
	
	clear:both;
	line-height:16px;


}
.kjekaj_naslovka {
	padding-top:8px;
	clear:both;

}
.datum {
	float:left;
	width:42px;
	text-align:center;
	color:white;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
}
.vmesdatum {
	float:left;
	width:24px;
	padding-top:6px;
	text-align:center;
	font-size: var(--font-4xl); /* 24px */
	color:black;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
}
.kondatum {
	float:left;
	width:42px;
	text-align:center;
	color:white;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
}
.mesec {
	background-color: black;
	padding-bottom:2px;
	line-height:20px;
	-webkit-border-radius: 5px 5px 0px  0px;
	-moz-border-radius: 5px 5px 0px  0px;
	border-radius: 5px 5px 0px  0px;

}
.dan {
	background-color: var(--col-blue);
	line-height:22px;
	height:22px;
	-webkit-border-radius: 0px  0px 5px 5px;
	-moz-border-radius: 0px  0px 5px 5px;
	border-radius: 0px  0px 5px 5px;

	font-weight:bold;
	font-size: var(--font-xl); /* 16px */
}
.adddan {
	background-color: #D50000;
	padding-bottom: 2px;
	line-height: 20px;
	-webkit-border-radius: 5px 5px 0px  0px;
	-moz-border-radius: 5px 5px 0px  0px;
	border-radius: 5px 5px 0px  0px;
}
.urakraj_vstopna {
	float:left;
	padding-left:14px;
	margin-top:0;
	width:80%;
}
.urakraj {
	float:left;



	
}
.urakraj_vecdni {
	float:left;

	width:60%;
	margin-top:-2px;
	line-height:16px;
}

.kajzakaj {
	clear:both;
	color:#555;
	font-size: var(--font-base); /* 12px */

}
.kajzakaj a{
	text-decoration:none;
	color:inherit;
}
.kajzakaj a:hover{
	text-decoration: none;
	color: #000;	
}
h1, h2, h1 a, h2 a {
	margin:0;
	
	font-weight:bold;
	font-family:'Noto Serif', "Times New Roman", Times, serif;
	text-decoration:none;
}
h1 {
	
	font-size: var(--font-3xl); /* 20px */
	padding-top:12px;

}
h2 {
	padding:0;
	padding-top:8px;
	font-size: var(--font-2xl); /* 18px */

}
.kajzakaj p {
	margin-top: 4px;
	padding: 0;
	text-align: justify;
}
.podnaslov {
	color: #222;
	padding: 0;
	line-height: 1.5;
	font-size: var(--font-md);
	margin: 0 0 12px 0;
}
.dogodki_vmes {
	width: auto; 
	height: 1px;
	border-top-width: 1px;
	border-top-style: dashed;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	border-top-color: #B6C9D3;
	margin-top:12px;
	margin-bottom:14px;
}
#naslovna_seznam_novic .dan {
	background-color: var(--col-pink);	
}


/* NASLOVNICA KONEC */
/* NOVICE */
#vsebina {
	margin-left:0;
	margin-right:0;	

	width:100%;
    -webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);

	background-color:#FFF;


	

		
	
}

#vsebina_head {
	
	height:40px;
	width:100%;
    -webkit-border-radius:  12px  12px 0px 0px;
	-moz-border-radius: 12px  12px 0px 0px;
	border-radius: 12px 12px  0px 0px;

}
.podlaga_dogodki {	background-color: var(--col-blue); }
.podlaga_novice { 	background-color: var(--col-pink); }
.podlaga_galerija {	background-color: var(--col-green); }
.pisava_dogodki, .pisava_dogodki a {	color: var(--col-blue-dark); } /* a11y: 2.29:1 → 5.4:1 */
.pisava_dogodki a:hover {
	color: #1399BF;
}

.pisava_novice, .pisava_novice a { 	color: var(--col-pink); }
.pisava_novice a:hover {
	color: #B90066;
}

.pisava_galerija, .pisava_galerija a {	color: var(--col-green-dark); } /* a11y: --col-green daje 2.05:1 (FAIL), --col-green-dark = 4.51:1 (AA) */
.pisava_galerija a:hover {
	color: #809A01;
}

.pisava_sivo, .pisava_sivo a  { 
	color:#666666;
	text-decoration:none;
}
.pisava_sivo a:hover  {
	color: #333333;
}
.vsebina_naslov {
	margin:0;
	padding-top:8px;
	padding-left:20px;

}
.vsebina_naslov a {
		text-decoration:none;
}
#vsebina_spodaj, .vsebina_spodaj {
	width:100%;
	padding-left: 0;	
	padding-right: 0;	
	margin-top: 16px;
	width: 100%;
	clear: both;	
	

}
.mobile_video {
	display:block;
	height:200px;
}
		.mobile_kontakt	{
		display: inline-block;
			padding-top:6px;
	}
.sam_video, .sam_video_dogodki  {
	width:100%;
	display:block;
	height:200px;
	padding-bottom:8px;
}
#vsebina_menu, .vsebina_menu  {
display:none;
	float:left;
	
}
#vsebina_menu_abs {
	display:none;
	width:186px;

}
#vsebina_vsebina, .vsebina_vsebina {
	width:100%;
	float:none;
	margin-left: 0;

	padding-bottom:12px;
}
.srednji {
	width:100%;

}
.srdanes {
  background: none; /* For browsers that do not support gradients */

  }
.o_dogodku {
	float:left;
	padding-left:2%;
	
	width:96%;

}
.o_dogodku_brezvidea {
	float:left;
	padding-left:2%;
	
	width:96%;
	

}
.nastopajoci p {
	padding-left:3px;
	padding-right:3px;
}
.fotka_desno, .fotka_levo {
	display:none;


}
.fotka_levo {
	display:none;

}
.hspacer {
	height:12px;
}
.hspacer1 {
	height:28px;
}
.splosni_linki, .splosni_linki_off {
	list-style: none;
	margin: 0;
	margin-top: 22px;
	padding: 0;

}
.splosni_linki li{
	height:32px; 



	
}


.splosni_linki li span {
	display:block;
	float:left;
	width:70%;
		border-bottom-width: thin;
	border-bottom-style: dashed;
	border-bottom-color: #CCC;

}



.seznam {
	/* background-image: url(slike/locnica.png); */
	/* background-repeat: no-repeat; */
	/* background-position: center bottom; */
	/* border-bottom-width: thin; */
	/* border-bottom-style: dashed; */
	/* border-bottom-color: #DFDFDF; */
	/* -webkit-border-radius: var(--radius-lg); */
	/* -moz-border-radius: var(--radius-lg); */
	/* border-radius: var(--radius-lg); */

}
.seznam_vsebine {
	background-image: url(slike/locnica.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	border-bottom-width: thin;
	border-bottom-style: dashed; 
	border-bottom-color: #DFDFDF;
    -webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);	

}

/* NOVICE KONEC */
/* KOMENTAR */
#komentar {
display:none;


	-webkit-border-radius: var(--radius-md);
	-moz-border-radius: var(--radius-md);
	border-radius: var(--radius-md);
	clear: both;	
}
.komentar_naslov {
	padding-top:16px;
}
fieldset, .komentar_vsebina{
	margin: 0 auto 0;
	border:none;

}
.komentar_vsebina ul, fieldset ul, fieldset li{
border:0; margin:0; padding:0; list-style:none;
}
.komentar_vsebina li, fieldset li{
	clear:both;
	list-style:none;
	
}
	#prijava {
		width:99%;
	}
fieldset input[type=text]{

	-webkit-border-radius: var(--radius-sm);
	-moz-border-radius: var(--radius-sm);
	border-radius: var(--radius-sm);	
	border-color:#B1B3B4;
	border-style:solid;
	border-width:thin;
	color:#888;
	width:200px;
	height:20px;
}
fieldset textarea{
		display:none;
	-webkit-border-radius: var(--radius-sm);
	-moz-border-radius: var(--radius-sm);
	border-radius: var(--radius-sm);	
	border-color:#B1B3B4;
	border-style:solid;
	border-width:thin;
	color:#888;
	width:370px;
	min-height:99px;
	overflow: hidden;
}
fieldset label{
	

}
fieldset input[type=submit]{
	color: var(--col-white);
	-webkit-border-radius: 0 0 5px  5px;
	-moz-border-radius: 0 0 5px  5px; 
	border-radius: 0 0 5px  5px;	
	border-color: var(--col-white);
	border-style:solid;
	border-width:thin;
	width:160px;
	height:30px;
	padding-top:0;
	margin-top:-2px;
	cursor: pointer;

}
.komentar_gumb_novice {
		background-color:#EF97CB;
}
.komentar_gumb_novice:hover {
		background-color:#E551A3;
}
.komentar_gumb_dogodki:hover {
		background-color:#63D0EA;
}
.komentar_gumb_dogodki {
		background-color:#7CE0F7;
}
.komentar_gumb_galerija:hover {
		background-color:#B8C93D;
}
.komentar_gumb_galerija {
		background-color:#C5D839;
}
.izbornik {
	display:none;
	width:172px;
	list-style: none;
	margin: 0;
	padding: 0;
	padding-top:4px;
	background-image: url(/slike/izbornik-top.png);
	background-repeat: no-repeat;
}
.izbornik li {
	display:none;
	border-bottom-width: thin;
	border-bottom-style: dashed;
	line-height:32px;
	border-bottom-color: #CCC;
}
.izbornik li a {
	display:none;
	font-size: var(--font-base); /* 12px */
	color:#666666;
	font-family: Arial, Helvetica, sans-serif;
	text-decoration:none;	
}
.izbornik li a:hover {
	color:#333;

}
.izbornik li:hover {
	background-color: #E6FBFF;
}


.komentator{
	display:none;
	width:186px;
	float:left;
	text-align:right;
	padding-right:10px;
	font-weight:bold;
	padding-top:14px;
}
.vsebina_komentarja{
	display:none;	
	float:left;
	padding-top:14px;
	width:370px;
	color:#666666;
	padding-bottom:14px;
	border-bottom:thin;
	border-bottom-style:dashed;
	border-bottom-color:#999;
}
.o_prispevku {
	padding-top:84px;
}
.gal_fotka {
	float:left;
}
a {
   outline: 0;
}
#calendar {
	margin:0;
	padding:0;
	padding-bottom:16px;
	width:100%;
	position:relative;

}
.ui-datepicker{
	margin: 0 auto;
	border: none;
	border-spacing: 0;
}

/* Calendar Wrapper */
.ui-datepicker {
	display: none;
	width: auto;
	max-width: calc(100% - 24px);
	margin: 12px;
	padding: 14px 10px;
	box-sizing: border-box;
	cursor: default;
	text-transform: uppercase;
	font-family: Tahoma;
	font-size: var(--font-md);
	-webkit-border-radius: var(--radius-lg);
	-moz-border-radius: var(--radius-lg);
	border-radius: var(--radius-lg);
	background-color: #EEE;
}
.ui-datepicker-calendar {
	width: 100%;
	table-layout: fixed; /* enakomerna razporeditev 7 stolpcev, neodvisno od širine celice */
}
/* Calendar Header */
.ui-datepicker-header {
	position: relative;
	padding-bottom: 10px;
	border-bottom: 1px solid #d6d6d6;
}

.ui-datepicker-title { text-align: center; }

/* Month */
.ui-datepicker-month {
	position: relative;
	padding-right: 15px;
	color: #565656;
}

.ui-datepicker-month:before {
	display: block;
	position: absolute;
	top: 5px;
	right: 0;
	width: 5px;
	height: 5px;
	content: '';

	background: #a5cd4e;
	background: -moz-linear-gradient(top, #a5cd4e 0%, #6b8f1a 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#a5cd4e), color-stop(100%,#6b8f1a));
	background: -webkit-linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);
	background: -o-linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);
	background: -ms-linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);
	background: linear-gradient(top, #a5cd4e 0%,#6b8f1a 100%);

	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

/* Year */
.ui-datepicker-year {
	padding-left: 8px;
	color: #a8a8a8;
}

/* Prev Next Month */
.ui-datepicker-prev,
.ui-datepicker-next {
	position: absolute;
	top: -2px;
	padding: 5px;
	cursor: pointer;
}

.ui-datepicker-prev {
	left: 0;
	padding-left: 0;
}

.ui-datepicker-next {
	right: 0;
	padding-right: 0;
}

.ui-datepicker-prev span,
.ui-datepicker-next span{
	display: block;
	width: 5px;
	height: 10px;
	text-indent: -9999px;

	background-image: url(orodja/koledar/arrows.png);
}

.ui-datepicker-prev span { background-position: 0px 0px; }

.ui-datepicker-next span { background-position: -5px 0px; }

.ui-datepicker-prev-hover span { background-position: 0px -10px; }

.ui-datepicker-next-hover span { background-position: -5px -10px; }

/* Calendar "Days" */
.ui-datepicker-calendar th {
	padding-top: 15px;
	padding-bottom: 10px;
	
	text-align: center;
	font-weight: normal;
	color: #a8a8a8;
}

.ui-datepicker-calendar td {
	padding: 0 0;
	text-align: center;
	line-height: 27px;
}

.ui-datepicker-calendar .ui-state-default {

	display: block;
	width: 27px;

	outline: none;
	
	text-decoration: none;
	color: #a8a8a8;
	
	border: 1px solid transparent;
}

/* Day Active State*/
.ui-datepicker-calendar .ui-state-active {
	color: #6a9113;
	border-color: #6a9113;
}

/* Other Months Days*/
.ui-datepicker-other-month .ui-state-default { color: #565656; }
.highlight .ui-state-default {
	font-weight: bold;
	color: #000000;
	background-color: #ACE6F7;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
.bloke {
	background-image: url(slike/obcine/bloke.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.cerknica {
	background-image: url(slike/obcine/cerknica.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.ilirskabistrica {
	background-image: url(slike/obcine/ilirska-bistrica.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.loskadolina {
	background-image: url(slike/obcine/loska-dolina.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.pivka {
	background-image: url(slike/obcine/pivka.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.postojna {
	background-image: url(slike/obcine/postojna.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}
.drugo {
	background-image: url(slike/obcine/slovenija.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left:20px;	
}

#map_canvas {
	 width:100%; 

}
  /*write your CSS-Code here*/

}

  /* Ovoj, ki se bo višinsko prilagajal */
    .galerija_wrapper {
        width: 100%;
        transition: height 0.3s ease-out, opacity 0.2s ease-in;
        overflow: hidden; 
        position: relative;
        opacity: 0;
        
        /* NOVO: Odmik zgoraj in spodaj */
        margin-top: 8px;
        margin-bottom: 8px;
    }

    .mobilna_galerija {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        gap: 0;
        width: 100%;
        scrollbar-width: none;
        align-items: flex-start; 
    }
    
    .mobilna_galerija::-webkit-scrollbar {
        display: none;
    }
    
    .slide_item {
        flex: 0 0 100%;
        width: 100%;
        scroll-snap-align: center;
        scroll-snap-stop: always; 
        position: relative;
        display: flex;
        justify-content: center;
        align-items: flex-start;
        
        /* Brez paddinga, slika gre do roba */
        padding: 0; 
    }

    .slide_item img {
        width: 100%;
        height: auto;
        display: block;
        user-select: none; 
        -webkit-user-drag: none;
        
        /* NOVO: Samo zaobljeni koti, brez sence */
        border-radius: var(--radius-lg);
        
    }

    .crop_2_3 img {
        aspect-ratio: 2 / 3;
        object-fit: cover;
        object-position: top;
    }
    
    .slide_counter {
        position: absolute;
        /* Pozicija prilagojena, ker ni več paddinga na sliki */
        bottom: 10px; 
        right: 10px;
        
        background: rgba(0,0,0,0.6);
        color: var(--col-white);
        padding: 4px 8px;
        font-size: var(--font-base); /* 12px */
        border-radius: 6px; 
        
        pointer-events: none;
        font-family: sans-serif;
    }

    /* Kontejner za pike - na dnu */
    .slider_dots {
        position: absolute;
        bottom: 20px; /* Malo višje od roba */
        left: 0;
        width: 100%;
        text-align: center;
        z-index: 10;
        pointer-events: none;
    }

    /* Izboljšane pike */
    .slider_dot {
        display: inline-block;
        width: 12px; /* Večje */
        height: 12px;
        margin: 0 6px;
        background-color: rgba(255, 255, 255, 0.6); /* Svetla, a ne popolnoma bela */
        border: 1px solid rgba(0, 0, 0, 0.2); /* Tanka obroba za kontrast */
        border-radius: 50%;
        cursor: pointer;
        pointer-events: auto;
        transition: all 0.3s ease;
        /* Močna senca, da so vidne na svetlih slikah */
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.7); 
    }

    /* Aktivna pika */
    .slider_dot.active {
        background-color: #ffffff; /* Popolnoma bela */
        transform: scale(1.3); /* Povečana */
        border-color: rgba(0,0,0,0.5);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.9);
    }

    /* Nova elegantna številka */
    .slide_number_overlay {
        position: absolute;
        top: 20px;
        right: 20px;
        background-color: rgba(0, 0, 0, 0.6); /* Temna prosojna kapsula */
        color: #fff;
        font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
        font-size: 12px;
        font-weight: 600;
        letter-spacing: 1px;
        padding: 5px 12px;
        border-radius: 20px; /* Zaobljeni robovi */
        z-index: 5;
        pointer-events: none;
        backdrop-filter: blur(2px); /* Rahla zameglitev ozadja za moderen videz */
        box-shadow: 0 2px 4px rgba(0,0,0,0.3);
    }

    /* Skrijemo stare PHP številke, če obstajajo */
    .slide_counter { display: none !important; }

    .galerija_wrapper { position: relative; }

/* =======================================================
   Detail dogodka: hero slika + sticky action bar (kosi/4.php)
   Viden samo na mobilnem — desktop ohranja stari layout
   ======================================================= */
.dogodek_hero { display: none; }
#dogodek_action_bar { display: none; }

@media screen and (max-width: 640px) {
    .dogodek_hero {
        display: block;
        width: 100%;
        line-height: 0;
        margin-bottom: 12px;
        background: #f2f2f2;
    }
    .dogodek_hero img {
        width: 100%;
        height: auto;
        max-height: 320px;
        object-fit: cover;
        display: block;
    }
}

/* Detail dogodka — naslovna slika na desktop-u: naravna višina (proporcionalna 172px širini), JS doda max-height = višina besedila */
@media screen and (min-width: 641px) {
    .dogodek_fotka_link {
        display: inline-block;
        overflow: hidden;
        border-radius: 6px;
        line-height: 0;
    }
    .dogodek_fotka_link img.fotka_desno {
        height: auto !important;
        width: 172px !important;
        max-width: 172px;
        object-fit: cover;
        box-shadow: 0 0 6px rgba(50, 50, 50, 0.7);
    }
}

@media screen and (max-width: 640px) {
    .dogode-vsebina {
        flex-direction: column;
    }
    .dogode-vsebina .dogodek_fotka_link {
        width: 100%;
    }
    .dogode-vsebina .fotka_desno {
        width: 100% !important;
        max-width: 100% !important;
    }
}

@media screen and (max-width: 816px) {
    #dogodek_action_bar {
        display: flex;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 56px; /* nad bottom_nav-om */
        z-index: 9990;
        gap: 6px;
        padding: 8px 10px;
        /* Barva podlage je enaka aktivni ikoni v #bottom_nav (polna theme barva) */
        background: var(--col-blue);
        box-shadow: 0 -2px 8px rgba(0,0,0,0.10);
        container-type: inline-size;
        container-name: dab;
    }
    body.tema-dogodki #dogodek_action_bar { background: var(--col-blue); }
    body.tema-koledar #dogodek_action_bar { background: var(--col-green); }
    body.tema-katalog #dogodek_action_bar { background: var(--col-orange); }
    body.tema-novice  #dogodek_action_bar { background: var(--col-pink); }
    .dab-btn {
        flex: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        padding: 10px 8px;
        border-radius: 999px;
        text-decoration: none;
        font-family: var(--font-condensed);
        font-size: var(--font-md);
        font-weight: 600;
        cursor: pointer;
        border: 1px solid #ddd;
        background: #fff;
        color: #333;
        white-space: nowrap;
        min-height: 40px;
    }
    .dab-btn i { font-size: 16px; line-height: 1; }
    .dab-btn span { line-height: 1; }
    .dab-glavni {
        background: var(--col-blue);
        color: #fff;
        border-color: var(--col-blue);
    }
    .dab-glavni:hover, .dab-glavni:focus-visible { background: var(--col-blue-dark); }
    .dab-btn:active { transform: scale(0.97); }
    /* Telo dobi dovolj spodnjega prostora, da bar ne prekrije zadnje vsebine */
    body.detail-dogodka #telo,
    body.detail-dogodka #container { padding-bottom: 120px; }
}

/* "Dodaj v koledar" dropdown (kosi/2.php seznam + kosi/4.php levi stolpec + action bar) */
.koledar-wrap {
    position: relative;
    display: inline-block;
}
.koledar-trigger {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: transparent;
    border: 0;
    padding: 0;
    font: inherit;
    color: inherit;
    cursor: pointer;
    text-decoration: none;
}
.koledar-trigger:hover,
.koledar-trigger:focus-visible { text-decoration: underline; }
.koledar-trigger .fa-light { font-size: 0.95em; }
.koledar-trigger .koledar-trigger-chev { font-size: 0.75em; opacity: 0.7; }
.koledar-meni {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    z-index: 200;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
    padding: 4px;
    display: flex;
    flex-direction: column;
}
.koledar-meni[hidden] { display: none; }
.koledar-meni a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border-radius: 6px;
    text-decoration: none;
    color: #333;
    font-size: var(--font-md);
}
.koledar-meni a:hover,
.koledar-meni a:focus-visible {
    background: #f3f5f8;
    text-decoration: none;
}
.koledar-meni a i { width: 16px; text-align: center; font-size: 16px; }
.koledar-meni a .ico-google   { color: #4285F4; }
.koledar-meni a .ico-outlook  { color: #0078D4; }
.koledar-meni a .ico-apple    { color: #555; }

/* V action baru: dropdown se odpre NAD gumbom, da gre nad sticky bar.
   .koledar-trigger sicer ničta background/border/padding (za uporabo
   v .info-akcije) — tukaj jih povrnemo na dab-btn videz. */
.dab-btn.koledar-trigger {
    padding: 10px 8px;
    flex: 1;
    justify-content: center;
    background: #fff;
    border: 1px solid #ddd;
    color: #333;
}
.dab-koledar-wrap { flex: 1; display: flex; }
.dab-koledar-wrap .koledar-meni {
    top: auto;
    bottom: calc(100% + 6px);
    left: 50%;
    transform: translateX(-50%);
}

/* Gumb "Pot" z razdaljo v action baru (mobilni) */
.dab-pot { flex: 1; gap: 6px; padding: 10px 6px; }
.dab-pot .info-razdalja {
    font-family: var(--font-condensed);
    font-size: var(--font-md);
    font-weight: 600;
    padding: 2px 5px;
}

/* Ikona-only "Deli" gumb (brez besedila) */
.dab-deli-ikona {
    flex: 0 0 40px;
    min-width: 40px;
    padding: 10px;
    gap: 0;
}
.dab-deli-ikona i { font-size: 18px; }

/* Progresivna density logika: privzeto vsi neobvezni gumbi icon-only
   (ozko, brez labela in razdalje). Ko @container query pokaže, da je
   v baru dovolj prostora za to število gumbov, se label-i prikažejo
   in gumbi se razširijo (flex:1). Prijava ohrani label vedno. */
#dogodek_action_bar .dab-label-opt,
#dogodek_action_bar .dab-pot .info-razdalja,
#dogodek_action_bar .dab-cena-text { display: none; }
#dogodek_action_bar .dab-koledar,
#dogodek_action_bar .dab-pot,
#dogodek_action_bar .dab-tel,
#dogodek_action_bar .dab-email,
#dogodek_action_bar .dab-splet {
    flex: 0 0 40px;
    min-width: 40px;
    padding: 10px;
    gap: 0;
}
#dogodek_action_bar .dab-btn i { font-size: 17px; }

/* "Razprto" stanje: label-i, razdalja in cena tekst se pokažejo,
   gumbi se razširijo. Sprožijo ga container queries spodaj na podlagi
   .dab-nN razreda — N je število ne-deli gumbov v baru. */
#dogodek_action_bar.dab-razprto .dab-label-opt,
#dogodek_action_bar.dab-razprto .dab-pot .info-razdalja,
#dogodek_action_bar.dab-razprto .dab-cena-text { display: inline; }
#dogodek_action_bar.dab-razprto .dab-koledar,
#dogodek_action_bar.dab-razprto .dab-pot,
#dogodek_action_bar.dab-razprto .dab-tel,
#dogodek_action_bar.dab-razprto .dab-email,
#dogodek_action_bar.dab-razprto .dab-splet {
    flex: 1;
    min-width: 0;
    padding: 10px 8px;
    gap: 6px;
}

/* Pragovi za vsako število gumbov — ko je container širok dovolj,
   dodaj .dab-razprto vedenje preko @container queries.
   Vrednosti so približno: 40px (deli) + N*~70px (label gumbi) + gaps. */
@container dab (min-width: 240px) { #dogodek_action_bar.dab-n2 { } #dogodek_action_bar.dab-n2 .dab-label-opt, #dogodek_action_bar.dab-n2 .dab-pot .info-razdalja, #dogodek_action_bar.dab-n2 .dab-cena-text { display: inline; } #dogodek_action_bar.dab-n2 .dab-koledar, #dogodek_action_bar.dab-n2 .dab-pot, #dogodek_action_bar.dab-n2 .dab-tel, #dogodek_action_bar.dab-n2 .dab-email, #dogodek_action_bar.dab-n2 .dab-splet { flex: 1; min-width: 0; padding: 10px 8px; gap: 6px; } }
@container dab (min-width: 300px) { #dogodek_action_bar.dab-n3 .dab-label-opt, #dogodek_action_bar.dab-n3 .dab-pot .info-razdalja, #dogodek_action_bar.dab-n3 .dab-cena-text { display: inline; } #dogodek_action_bar.dab-n3 .dab-koledar, #dogodek_action_bar.dab-n3 .dab-pot, #dogodek_action_bar.dab-n3 .dab-tel, #dogodek_action_bar.dab-n3 .dab-email, #dogodek_action_bar.dab-n3 .dab-splet { flex: 1; min-width: 0; padding: 10px 8px; gap: 6px; } }
@container dab (min-width: 360px) { #dogodek_action_bar.dab-n4 .dab-label-opt, #dogodek_action_bar.dab-n4 .dab-pot .info-razdalja, #dogodek_action_bar.dab-n4 .dab-cena-text { display: inline; } #dogodek_action_bar.dab-n4 .dab-koledar, #dogodek_action_bar.dab-n4 .dab-pot, #dogodek_action_bar.dab-n4 .dab-tel, #dogodek_action_bar.dab-n4 .dab-email, #dogodek_action_bar.dab-n4 .dab-splet { flex: 1; min-width: 0; padding: 10px 8px; gap: 6px; } }
@container dab (min-width: 440px) { #dogodek_action_bar.dab-n5 .dab-label-opt, #dogodek_action_bar.dab-n5 .dab-pot .info-razdalja, #dogodek_action_bar.dab-n5 .dab-cena-text { display: inline; } #dogodek_action_bar.dab-n5 .dab-koledar, #dogodek_action_bar.dab-n5 .dab-pot, #dogodek_action_bar.dab-n5 .dab-tel, #dogodek_action_bar.dab-n5 .dab-email, #dogodek_action_bar.dab-n5 .dab-splet { flex: 1; min-width: 0; padding: 10px 8px; gap: 6px; } }
@container dab (min-width: 520px) { #dogodek_action_bar.dab-n6 .dab-label-opt, #dogodek_action_bar.dab-n6 .dab-pot .info-razdalja, #dogodek_action_bar.dab-n6 .dab-cena-text { display: inline; } #dogodek_action_bar.dab-n6 .dab-koledar, #dogodek_action_bar.dab-n6 .dab-pot, #dogodek_action_bar.dab-n6 .dab-tel, #dogodek_action_bar.dab-n6 .dab-email, #dogodek_action_bar.dab-n6 .dab-splet { flex: 1; min-width: 0; padding: 10px 8px; gap: 6px; } }
@container dab (min-width: 600px) { #dogodek_action_bar.dab-n7 .dab-label-opt, #dogodek_action_bar.dab-n7 .dab-pot .info-razdalja, #dogodek_action_bar.dab-n7 .dab-cena-text { display: inline; } #dogodek_action_bar.dab-n7 .dab-koledar, #dogodek_action_bar.dab-n7 .dab-pot, #dogodek_action_bar.dab-n7 .dab-tel, #dogodek_action_bar.dab-n7 .dab-email, #dogodek_action_bar.dab-n7 .dab-splet { flex: 1; min-width: 0; padding: 10px 8px; gap: 6px; } }

/* Cena indikator (ni gumb — pasivni badge) */
@media screen and (max-width: 816px) {
    .dab-cena {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        min-width: 40px;
        padding: 6px 13px;
        border-radius: 999px;
        font-family: var(--font-condensed);
        font-size: var(--font-md);
        font-weight: 600;
        white-space: nowrap;
        min-height: 40px;
        box-sizing: border-box;
    }
    .dab-cena i { font-size: 14px; }
    .dab-cena-brez {
        background: color-mix(in srgb, var(--col-green) 16%, #fff);
        color: var(--col-green-dark);
    }
    .dab-cena-vstop {
        background: color-mix(in srgb, var(--col-orange) 16%, #fff);
        color: var(--col-orange-dark);
    }
}
/* Dark mode varianta .dab-cena-brez (mobile action bar) — dark green tint
   namesto light green. */
@media screen and (max-width: 816px) {
    html[data-theme="dark"] .dab-cena-brez {
        background: color-mix(in srgb, #2B2C28 16%, #232323);
    }
}

/* --- Dark mode iteracija 6 (2026-05-22): /moje stran (naročnine) ---
   .moje-gumb-mini (Uredi/Izbriši/… mini gumbi), .narocnina-vrstica
   (kartica posamezne naročnine), .narocnina-vir/-pref (besedila), srce
   gumb .js-narocnina. */

/* Mini gumbi (Uredi, Izbriši, …) — base bel z #DDD bordurom. */
html[data-theme="dark"] .moje-gumb-mini {
    color: #fff;
    background: #393838;
    border-color: var(--theme-border);
}
html[data-theme="dark"] .moje-gumb-mini:hover {
    background: var(--theme-bg-soft);
    border-color: var(--col-pink-dark);
    color: var(--col-pink);
}
html[data-theme="dark"] .moje-gumb-odstrani:hover,
html[data-theme="dark"] .moje-gumb-nevarno:hover { color: #ff7a7a; border-color: #ff7a7a; }
html[data-theme="dark"] .moje-gumb-test:disabled {
    background: var(--theme-bg-soft);
    color: var(--theme-text-muted);
    opacity: 0.5;
}

/* Naročnina kartica (.narocnina-vrstica) — base je #FAFAFA z #EEE bordurom. */
html[data-theme="dark"] .narocnina-vrstica {
    background: var(--theme-card-elev);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .narocnina-vir { color: var(--theme-text); }
html[data-theme="dark"] .narocnina-pref { color: var(--theme-text-muted); }
html[data-theme="dark"] .narocnina-pref-naslov { color: var(--theme-text-muted); }
html[data-theme="dark"] .narocnina-pref .narocnina-kanali { color: var(--col-pink); }
html[data-theme="dark"] .narocnina-pref .narocnina-rezimi { color: var(--theme-text-muted); }

/* button.js-narocnina (srce gumb) — base je transparenten z #C2007E (pink-dark)
   tekstom; v dark modu pink ostane viden, samo nekoliko svetlejša varianta. */
html[data-theme="dark"] button.js-narocnina {
    color: var(--col-pink) !important;
}
html[data-theme="dark"] button.js-narocnina.aktivna {
    color: var(--col-pink) !important;
}

/* =======================================================
   Lazy Google Maps placeholder (kosi/4.php)
   ======================================================= */
.zemljevid_placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 300px;
    background: linear-gradient(135deg, #f3f5f8 0%, #e6ebf2 100%);
    border-radius: 8px;
    border: 1px dashed #c5cdd8;
    margin: 8px 0;
}
/* !important da prebije višjo specifičnost ID-based pravil (npr. v listing
   view-u .zemljevid_blok-listing #map_placeholder_listing). Brez tega
   placeholder ostane viden, čeprav JS pokliče `ph.hidden = true`. */
.zemljevid_placeholder[hidden] { display: none !important; }

/* Pre-render skrivanje: ko ima uporabnik gmaps consent (localStorage, set v
   index.php pre-render scriptu), placeholderja sploh ne pokažemo — JS bo
   avtomatsko nalozil zemljevid. Brez tega pravila placeholder utripne za
   ~50ms pred load-om. */
.gmaps-consent .zemljevid_placeholder { display: none !important; }
.gmaps-consent #map_canvas,
.gmaps-consent #map_canvas_listing,
.gmaps-consent #moje_zemljevid { display: block !important; }
.gmaps-consent #moje_zemljevid_placeholder { display: none !important; }
.zemljevid_gumb {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 22px;
    font-family: var(--font-main);
    font-size: var(--font-base);
    font-weight: 600;
    /* A11y: temno besedilo na svetli brand barvi (kontrast ~9:1).
       Belo na #18B9E8 ima samo 2.29:1 (Lighthouse FAIL). */
    color: #1a1a1a;
    background: var(--col-blue);
    border: 2px solid var(--col-blue);
    border-radius: 999px;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, transform 0.1s;
}
.zemljevid_gumb:hover,
.zemljevid_gumb:focus-visible {
    /* Hover ohrani dovolj kontrasta z temnim besedilom (col-blue-dark + dark text = ~3.3:1,
       zato bg le subtilno otemnimo z color-mix namesto popolnoma var(--col-blue-dark)). */
    background: color-mix(in srgb, var(--col-blue) 80%, #000);
    border-color: color-mix(in srgb, var(--col-blue) 80%, #000);
}
.zemljevid_gumb:active { transform: translateY(1px); }
.zemljevid_gumb .fa-light { font-size: 18px; }
#map_canvas:not([hidden]) {
    min-height: 320px;
    height: 320px;
}

/* =======================================================
   Novice mobile (kosi/1.php seznam + kosi/5.php detail)
   ======================================================= */
@media screen and (max-width: 640px) {
    .novica_kartica {
        padding: 0 12px 16px;
        margin-bottom: 14px;
    }
    .novica_naslov {
        float: none;
        width: auto;
        max-width: 100%;
        font-size: var(--font-2xl);
        line-height: 1.2;
        padding-top: 0;
        padding-bottom: 10px;
    }
    .novica_urakraj {
        padding-left: 56px;
        max-width: 100%;
        position: relative;
        float: none;
    }
    /* Vir/Kontakt blok pred kartico (kosi/5.php) — odmik od roba */
    #vsebina_spodaj .vsebina_menu {
        padding: 12px 12px 4px;
    }
    /* Posamezna novica: dolgopis */
    #vsebina_vsebina,
    .vsebina_vsebina {
        padding-left: 12px;
        padding-right: 12px;
    }
    .vsebina_vsebina .kajzakaj,
    .vsebina_vsebina .podnaslov {
        font-size: var(--font-base);
        line-height: 1.5;
    }
}

/* =================================================
   FAZA F — Card grid layout za sezname (v2)
   ================================================= */

/* --- Meni zvrstnih kategorij nad gridom ---
   #vsebina_menu_abs kot chip-meni (enaka oblika kot .nas-zvrsti na naslovnici).
   CSS custom property --zvrst-barva nastavi vsak .kl_* blok. */
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs {
    position: sticky;
    /* Pod sticky #siteheader-jem (56px) na mobilnem/tabletu;
       na desktopu (stari_header ni sticky) je tu samo varovalka. */
    top: 56px;
    width: 100%;
    /* Dvignjeno nad dim/blur overlay (.dogodki_grid::after z-index: 60) in
       nad fokusirane/hover kartice (z-index: 61), da meni vedno ostane
       viden in oster, tudi ko je seznam v scroll-fokus načinu. */
    z-index: 70;
    background: #fff;
}

@media screen and (min-width: 817px) {
    #siteheader {
        display: none;
    }
    .vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs {
        position: sticky;
        top: 0;
        z-index: 70;
        background: #fff;
        padding-top: 6px;
        padding-bottom: 2px;
    }
}

/* Mreža chip-ov, enaka logika kot .nas-zvrsti */
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 8px;
    width: 100%;
    background-image: none;
    padding: 4px 0 8px 0;
    list-style: none;
    margin: 0;
}

/* Akcijska gumba (iskanje + filtri) na desni strani sticky zvrst menuja —
   samo desktop; na mobilnem/tabletu sta v #siteheader. */
.zvrst-akcije { display: none; }
@media screen and (min-width: 817px) {
    /* Na desktopu je zvrst meni že v sticky baru — v drawerju ga skrijemo */
    .fd-skupina-zvrst-mobile,
    .fd-skupina-vrsta-mobile { display: none; }
    .vsebina_spodaj #vsebina_menu_abs {
        display: flex;
        align-items: center;
        gap: 12px;
    }
    .vsebina_spodaj #vsebina_menu_abs > ul { flex: 1 1 auto; min-width: 0; }
    .zvrst-akcije {
        display: flex;
        gap: 6px;
        flex: 0 0 auto;
        padding-bottom: 6px;
    }
    .zvrst-akcija {
        width: 38px;
        height: 38px;
        border-radius: 50%;
        border: 1px solid #d8d8d8;
        background: #fff;
        color: var(--col-blue);
        font-size: 15px;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: background 0.15s, border-color 0.15s, transform 0.15s;
    }
    .zvrst-akcija:hover { background: #f0f6fc; border-color: var(--col-blue); }
    .zvrst-akcija:focus-visible {
        outline: 2px solid var(--col-blue);
        outline-offset: 2px;
    }
    .zvrst-akcija.ima-aktivne::after {
        content: "";
        position: absolute;
        width: 8px; height: 8px;
        border-radius: 50%;
        background: var(--col-pink);
        margin-top: -14px;
        margin-left: 14px;
        border: 2px solid #fff;
    }
    /* Skrij FAB-e na desktopu — funkcija je zdaj v zvrst menuju */
    #btn_iskanje_fab,
    #btn_filter_fab { display: none !important; }

    /* ---- Inline iskanje v zvrst baru (desktop) ----
       Wrapper je position:absolute overlay nad chip-i, da ne razbije
       flex layout-a #vsebina_menu_abs. Slide-in od desne, do levega
       roba akcijskih gumbov. */
    .vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs { position: sticky; }
    #iskanje_inline_wrapper {
        position: absolute;
        top: 6px;
        bottom: 6px;
        right: 100px; /* širina .zvrst-akcije (38+6+38=82) + gap (12) ≈ 100 */
        width: 0;
        opacity: 0;
        overflow: hidden;
        background: #fff;
        display: flex;
        align-items: center;
        pointer-events: none;
        transition: width 0.32s cubic-bezier(0.34, 1.32, 0.64, 1),
                    opacity 0.2s ease;
        z-index: 2;
    }
    #iskanje_inline_wrapper.odprt {
        width: calc(100% - 110px);
        opacity: 1;
        pointer-events: auto;
    }
    .iskanje-inline-form {
        display: flex;
        align-items: center;
        gap: 8px;
        width: 100%;
        padding: 0 8px;
        border-bottom: 2px solid #d8d8d8;
        transition: border-color 0.15s;
    }
    .iskanje-inline-form:focus-within { border-bottom-color: var(--col-blue); }
    .iskanje-inline-form > .fa-magnifying-glass {
        color: #999;
        font-size: 14px;
        flex-shrink: 0;
    }
    #iskanje_inline_input {
        flex: 1;
        border: none;
        outline: none;
        font-size: 15px;
        font-family: inherit;
        padding: 5px 0;
        background: transparent;
        min-width: 0;
    }
    #iskanje_inline_input::-webkit-search-cancel-button { display: none; }

    /* Gumb menja ikono ob odprtju — smooth crossfade + rotate */
    #btn_iskanje_inline { position: relative; overflow: hidden; }
    #btn_iskanje_inline .ii-search,
    #btn_iskanje_inline .ii-close {
        position: absolute;
        top: 50%; left: 50%;
        transform: translate(-50%, -50%);
        transition: opacity 0.18s ease, transform 0.22s ease;
    }
    #btn_iskanje_inline .ii-close {
        opacity: 0;
        transform: translate(-50%, -50%) rotate(45deg) scale(0.6);
    }
    #btn_iskanje_inline.iskanje-odprt .ii-search {
        opacity: 0;
        transform: translate(-50%, -50%) rotate(-45deg) scale(0.6);
    }
    #btn_iskanje_inline.iskanje-odprt .ii-close {
        opacity: 1;
        transform: translate(-50%, -50%) rotate(0) scale(1);
    }
}

@media screen and (max-width: 816px) {
    .vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul {
        grid-template-columns: repeat(3, 1fr);
        gap: 6px;
    }
    /* Naslov sekcije je v #siteheader brand — duplikat vsebina_head skrij */
    #vsebina_head { display: none; }
}
@media screen and (max-width: 480px) {
    .vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul {
        grid-template-columns: repeat(2, 1fr);
    }
}

.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li {
    border-bottom: none;
    position: relative;
    background-color: transparent !important;
    background-image: none !important;
}

/* Chip — osnovna oblika (enak .nas-zvrst) */
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li > a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 14px 10px;
    border-radius: 12px;
    border: 2px solid var(--zvrst-barva, #aaa);
    background: #fff;
    color: var(--zvrst-barva, #444);
    font-family: var(--font-condensed);
    font-size: var(--font-base);
    font-weight: 700;
    text-align: center;
    line-height: 1.1;
    transition: background 0.15s, color 0.15s;
    white-space: nowrap;
}
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li > a i {
    font-size: var(--font-xl);
}
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li > a:hover,
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li > a:focus-visible,
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li.aktivna > a {
    background: var(--zvrst-barva, #444);
    color: #fff;
}

/* Aktivna podzvrst v dropdown-u — polno barvno ozadje */
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul li.aktivna > a {
    background: var(--zvrst-barva, #444);
    color: #fff;
    font-weight: 700;
}

/* Barve po kategoriji */
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li.kl_glasba        { --zvrst-barva: var(--nas-glasba); }
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li.kl_gledalisce    { --zvrst-barva: var(--nas-gledalisce); }
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li.kl_razstave      { --zvrst-barva: var(--nas-razstave); }
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li.kl_za-otroke     { --zvrst-barva: var(--nas-za-otroke); }
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li.kl_izobrazevanje { --zvrst-barva: var(--nas-izobrazevanje); }
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li.kl_drugo         { --zvrst-barva: var(--nas-drugo); }

/* Submenu (dropdown) — belo ozadje, barvni rob, ločnice in pisava */
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul {
    display: none;
    position: absolute;
    top: calc(100% - 2px);
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    min-width: 160px;
    background: #fff;
    border: 2px solid var(--zvrst-barva, #444);
    border-radius: 10px;
    box-shadow: 0 6px 20px rgba(0,0,0,0.12);
    z-index: 200;
    padding: 4px;
    list-style: none;
}
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li:hover > ul {
    display: block;
}
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul li {
    float: none;
    padding: 0;
    border-bottom: 1px solid color-mix(in srgb, var(--zvrst-barva, #444) 22%, transparent);
}
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul li:last-child {
    border-bottom: none;
}
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul li a {
    display: block;
    padding: 7px 10px;
    font-family: var(--font-condensed);
    font-size: var(--font-sm);
    font-weight: 400;
    border-radius: 6px;
    color: var(--zvrst-barva, #444);
    transition: background 0.12s, color 0.12s;
}
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul li a:hover,
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul li a:focus-visible {
    background: var(--zvrst-barva, #444);
    color: #fff;
}

/* Skrij seznam občin */
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs ul.izbornik {
    display: none;
}

/* Odpravimo levi margin na vsebina_vsebina */
.vsebina_spodaj:has(.dogodki_grid) #vsebina_vsebina,
.vsebina_spodaj:has(.dogodki_grid) .vsebina_vsebina:not(.dogodek_card):not(.novica_kartica) {
    margin-left: 0;
    width: 100%;
}

/* Opis dogodka: razširi klikabilno območje na ves blok (display: block) */
.dogodki_grid .kajzakaj span[itemprop="description"] > a {
    display: block;
    cursor: pointer;
}

/* --- Osnova grida --- */
.dogodki_grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
    padding: 8px 0 16px 0;
    width: 100%;
    box-sizing: border-box;
    clear: both;
    position: relative;
}

/* Infinite-scroll sentinel — fallback link "Naloži več", JS hijacka klik in
   uporablja IntersectionObserver. Element je po grid-u (NE grid item), zato
   ga ne ogradi grid-template-columns. */
.dogodki-load-more {
    grid-column: 1 / -1;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px 0 40px;
    margin-top: -8px;
    clear: both;
}
.dogodki-load-more[hidden] { display: none; }
.dogodki-load-more-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    /* a11y: --col-blue z white = 2.29:1 (FAIL); --col-blue-dark = 4.87:1 (AA) */
    background: var(--col-blue-dark);
    color: #fff;
    border-radius: 999px;
    padding: 10px 22px;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    transition: background 0.15s, transform 0.12s;
}
.dogodki-load-more-link:hover,
.dogodki-load-more-link:focus-visible {
    background: #0a5d7a; /* še temnejši za hover */
    transform: translateY(-1px);
}
.dogodki-load-more-link i { font-size: 13px; }
.dogodki-load-more-loading .dogodki-load-more-link {
    opacity: 0.55;
    pointer-events: none;
    background: var(--col-blue-dark, #0D7AA0);
}
.dogodki-load-more-loading .dogodki-load-more-link::after {
    content: "";
    width: 14px;
    height: 14px;
    margin-left: 4px;
    border: 2px solid #fff;
    border-top-color: transparent;
    border-radius: 50%;
    animation: dog-spin 0.7s linear infinite;
}
@keyframes dog-spin { to { transform: rotate(360deg); } }

/* --- Prazni separator divs ne smejo biti grid items --- */
.dogodki_grid > .vsebina_menu,
.dogodki_grid > br,
.dogodki_grid > .dogodki_vmes,
.dogodki_grid > div[style*="clear:both"] {
    display: none !important;
}

/* --- Vsaka kartica: bel box, flex kolona --- */
.dogodki_grid > .dogodek_card,
.dogodki_grid > .novica_kartica {
    --card-kleur: #555;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 10px color-mix(in srgb, var(--card-kleur) 20%, transparent);
    overflow: hidden;
    width: auto;
    max-width: none;
    min-height: 0;
    margin: 0;
    padding: 0;
    float: none;
    display: flex;
    flex-direction: column;
    position: relative;
    transition: box-shadow 0.18s, transform 0.18s;
    box-sizing: border-box;
}
.dogodki_grid > .dogodek_card:hover,
.dogodki_grid > .novica_kartica:hover {
    box-shadow: 0 5px 22px color-mix(in srgb, var(--card-kleur) 35%, transparent);
    transform: translateY(-2px);
}

/* Z enim samim zapisom kartica zasede celo širino grida (oba stolpca) */
.dogodki_grid > .dogodek_card:only-child,
.dogodki_grid > .novica_kartica:only-child {
    grid-column: 1 / -1;
}

/* --- Dimming overlay na celotnem viewportu (vključno z gapi in pasovi ob strani) ---
   position:fixed → pokrije ves zaslon, hoverirana/.fokus kartica se dvigne nad overlay z z-index.
   Barva (40,40,40) je usklajena z mobilno bottom/top nav podlago. */
.dogodki_grid::after {
    content: "";
    position: fixed;
    inset: 0;
    background: rgb(from var(--col-dim) r g b / 0);
    pointer-events: none;
    -webkit-backdrop-filter: blur(0);
    backdrop-filter: blur(0);
    transition: background 0.25s ease, backdrop-filter 0.25s ease, -webkit-backdrop-filter 0.25s ease;
    z-index: 60;
}
/* Desktop hover */
@media (hover: hover) and (min-width: 817px) {
    .dogodki_grid:has(> .dogodek_card:hover, > .novica_kartica:hover)::after {
        background: rgb(from var(--col-dim) r g b / 0.32);
        -webkit-backdrop-filter: blur(3px);
        backdrop-filter: blur(3px);
    }
    .dogodki_grid > .dogodek_card:hover,
    .dogodki_grid > .novica_kartica:hover {
        z-index: 61;
    }
}
/* Scroll fokus — gladko zvezno sledenje (JS nastavi --fokus-dim per kartica)
   Globalni overlay daje dim na gapih in pasovih;
   posamezne kartice se dvignejo nad njim in dobijo svoj per-kartica dim sloj. */
.dogodki_grid.scroll-fokus::after {
    background: rgb(from var(--col-dim) r g b / 0.78);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}
.dogodki_grid.scroll-fokus > .dogodek_card,
.dogodki_grid.scroll-fokus > .novica_kartica {
    z-index: 61;
}
/* Per-kartica dim + blur sloj — backdrop-filter na absolute deluje bolje kot na global fixed */
.dogodki_grid.scroll-fokus > .dogodek_card::before,
.dogodki_grid.scroll-fokus > .novica_kartica::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgb(from var(--col-dim) r g b / var(--fokus-dim, 0));
    -webkit-backdrop-filter: blur(calc(var(--fokus-dim, 0) * 5px));
    backdrop-filter: blur(calc(var(--fokus-dim, 0) * 5px));
    pointer-events: none;
    z-index: 5;
    border-radius: 12px;
    transition: background 0.12s linear, backdrop-filter 0.12s linear, -webkit-backdrop-filter 0.12s linear;
}
@media (prefers-reduced-motion: reduce) {
    .dogodki_grid::after,
    .dogodki_grid > .dogodek_card::before,
    .dogodki_grid > .novica_kartica::before {
        transition: none;
    }
}

/* Desktop: dim/blur/fokus efekti popolnoma izključeni.
   Razločevanje kartic je rešeno z barvno spodnjo obrobo glede na zvrst
   (glej spodaj). */
@media screen and (min-width: 817px) {
    .dogodki_grid::after,
    .dogodki_grid.scroll-fokus::after,
    .dogodki_grid.scroll-fokus > .dogodek_card::before,
    .dogodki_grid.scroll-fokus > .novica_kartica::before {
        display: none !important;
        content: none !important;
        background: none !important;
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
    }
    .dogodki_grid.scroll-fokus > .dogodek_card,
    .dogodki_grid.scroll-fokus > .novica_kartica,
    .dogodki_grid > .dogodek_card:hover,
    .dogodki_grid > .novica_kartica:hover {
        z-index: auto;
    }
}

/* Levi barvni pas (desktop) + datum badge v barvi zvrsti (vsi breakpointi) */
@media screen and (min-width: 817px) {
    .dogodki_grid > .dogodek_card,
    .dogodki_grid > .novica_kartica {
        border-left: 5px solid #ddd;
    }
    /* Svetlejše različice (35% barva + bela), da je rob bolj nežen; shadow sledi isti barvi */
    /* Dogodki */
    .dogodki_grid > .dogodek_card[data-zvrst="100"] { border-left-color: color-mix(in srgb, var(--nas-glasba) 35%, #fff);        --card-kleur: var(--nas-glasba); }
    .dogodki_grid > .dogodek_card[data-zvrst="200"] { border-left-color: color-mix(in srgb, var(--nas-gledalisce) 35%, #fff);    --card-kleur: var(--nas-gledalisce); }
    .dogodki_grid > .dogodek_card[data-zvrst="300"] { border-left-color: color-mix(in srgb, var(--nas-razstave) 35%, #fff);      --card-kleur: var(--nas-razstave); }
    .dogodki_grid > .dogodek_card[data-zvrst="400"] { border-left-color: color-mix(in srgb, var(--nas-za-otroke) 35%, #fff);     --card-kleur: var(--nas-za-otroke); }
    .dogodki_grid > .dogodek_card[data-zvrst="500"] { border-left-color: color-mix(in srgb, var(--nas-izobrazevanje) 35%, #fff); --card-kleur: var(--nas-izobrazevanje); }
    .dogodki_grid > .dogodek_card[data-zvrst="600"] { border-left-color: color-mix(in srgb, var(--nas-drugo) 35%, #fff);         --card-kleur: var(--nas-drugo); }
    /* Katalog */
    .dogodki_grid > .dogodek_card[data-vrsta="1"] { border-left-color: color-mix(in srgb, var(--nas-glasba) 35%, #fff);       --card-kleur: var(--nas-glasba); }
    .dogodki_grid > .dogodek_card[data-vrsta="2"] { border-left-color: color-mix(in srgb, var(--nas-gledalisce) 35%, #fff);   --card-kleur: var(--nas-gledalisce); }
    .dogodki_grid > .dogodek_card[data-vrsta="3"] { border-left-color: color-mix(in srgb, var(--nas-razstave) 35%, #fff);     --card-kleur: var(--nas-razstave); }
    /* Novice */
    .dogodki_grid > .novica_kartica { border-left-color: color-mix(in srgb, var(--nas-novice, #e91e63) 35%, #fff); --card-kleur: var(--nas-novice, #e91e63); }
}

/* Datum badge v barvi zvrsti (vsi breakpointi).
   Višja specifičnost kot body.tema-* pravila, da deluje per-kartica. */
/* a11y (WCAG 1.4.3): per-zvrst date badge backgrounds. Originalne nas-*
   barve so prebrlne, da bi imele white text 4.5:1+ kontrast. Mešamo z 30%
   črne za vse, da dobimo AA pass. Brand prepoznavnost ostane. */
body .dogodki_grid > .dogodek_card[data-zvrst="100"] .datum,
body .dogodki_grid > .dogodek_card[data-zvrst="100"] .kondatum { background: color-mix(in srgb, var(--nas-glasba) 70%, #000) !important; }
body .dogodki_grid > .dogodek_card[data-zvrst="200"] .datum,
body .dogodki_grid > .dogodek_card[data-zvrst="200"] .kondatum { background: color-mix(in srgb, var(--nas-gledalisce) 70%, #000) !important; }
body .dogodki_grid > .dogodek_card[data-zvrst="300"] .datum,
body .dogodki_grid > .dogodek_card[data-zvrst="300"] .kondatum { background: color-mix(in srgb, var(--nas-razstave) 70%, #000) !important; }
body .dogodki_grid > .dogodek_card[data-zvrst="400"] .datum,
body .dogodki_grid > .dogodek_card[data-zvrst="400"] .kondatum { background: color-mix(in srgb, var(--nas-za-otroke) 70%, #000) !important; }
body .dogodki_grid > .dogodek_card[data-zvrst="500"] .datum,
body .dogodki_grid > .dogodek_card[data-zvrst="500"] .kondatum { background: color-mix(in srgb, var(--nas-izobrazevanje) 70%, #000) !important; }
body .dogodki_grid > .dogodek_card[data-zvrst="600"] .datum,
body .dogodki_grid > .dogodek_card[data-zvrst="600"] .kondatum { background: color-mix(in srgb, var(--nas-drugo) 70%, #000) !important; }

/* Naslovna stran: dim/blur/fokus efekti popolnoma izključeni */
.dogodki_grid.nas-grid::after,
.dogodki_grid.nas-grid.scroll-fokus::after,
.dogodki_grid.nas-grid > .dogodek_card::before,
.dogodki_grid.nas-grid > .novica_kartica::before {
    display: none !important;
    content: none !important;
}
.dogodki_grid.nas-grid > .dogodek_card,
.dogodki_grid.nas-grid > .novica_kartica {
    z-index: auto !important;
}

/* --- card-media: slika med kjekaj in kajzakaj --- */
.dogodki_grid .card-media {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    line-height: 0;
    flex-shrink: 0;
    order: 0;
}
.dogodki_grid .card-media .fotka_desno,
.dogodki_grid .card-media img {
    display: block;
    float: none !important;
    width: 100% !important;
    height: 240px !important;
    object-fit: cover;
    margin: 8px 0 0 0 !important;
    padding: 0 !important;
    border-radius: 8px 8px 0 0;
}
/* Skrij mobilno sliko — za to zdaj skrbi .card-media */
.dogodki_grid .fotka_mobilna { display: none !important; }
/* Neobdana .fotka_desno (brez .card-media) — skrij, da ni duplikata */
.dogodki_grid .fotka_desno:not(.card-media *) { display: none !important; }

/* --- Vsebina kartice: reset floatov, padding --- */
.dogodki_grid .dogodek_card .srednji,
.dogodki_grid .dogodek_card .srdanes {
    float: none;
    width: auto;
    max-width: none;
    margin: 0;
    padding: 14px 16px 12px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
}
.dogodki_grid .novica_kartica {
    padding: 14px 16px 12px 16px;
}
.dogodki_grid .o_dogodku,
.dogodki_grid .o_dogodku_brezvidea {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
/* Skrij odvečne ločilnike in clearfix divs */
.dogodki_grid .dogodki_vmes,
.dogodki_grid div[style*="clear:both"] { display: none !important; }

/* --- Kjekaj: datum badge + ura/lokacija v eni vrstici --- */
.dogodki_grid .kjekaj {
    clear: none;
    background: none;
    margin-bottom: 0;
}
/* Span[itemprop=address] v kosi/2.php obdaja vse elemente kjekaj */
.dogodki_grid .kjekaj > span[itemprop="address"],
.dogodki_grid .kjekaj > span {
    display: flex !important;
    flex-direction: row;
    align-items: flex-start;
    gap: 10px;
    flex-wrap: wrap;
    width: 100%;
}
/* Novice: kjekaj nima span-a, ima direktne child dive */
.dogodki_grid .novica_kartica .kjekaj {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 10px;
    flex-wrap: wrap;
}

/* --- Datum badge --- */
.dogodki_grid .datum,
.dogodki_grid .kondatum {
    display: inline-flex !important;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    background: var(--col-blue) !important;
    color: #fff !important;
    border-radius: 8px;
    overflow: hidden;
    padding: 0 !important;
    min-width: 48px;
    min-height: 52px;
    text-align: center;
    flex-shrink: 0;
    float: none !important;
    position: static !important;
    width: auto !important;
}
/* Današnji dogodek: zgornji del rdeč (.adddan) */
.dogodki_grid .datum .adddan {
    background: #D50000 !important;
}
/* Barva glede na zavihek */
/* a11y: dark variants brand colors za white text AA (4.5:1+) */
body.tema-novice  .dogodki_grid .datum,
body.tema-novice  .dogodki_grid .kondatum { background: var(--col-pink-dark) !important; }
body.tema-katalog .dogodki_grid .datum,
body.tema-katalog .dogodki_grid .kondatum { background: var(--col-orange-dark) !important; }
body.tema-koledar .dogodki_grid .datum,
body.tema-koledar .dogodki_grid .kondatum { background: var(--col-green-dark) !important; }

.dogodki_grid .datum .mesec,
.dogodki_grid .datum .adddan,
.dogodki_grid .kondatum .mesec {
    font-size: 18px !important;
    line-height: 1 !important;
    color: #fff !important;
    background: none;
    font-weight: 700;
    padding: 6px 10px 5px 10px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    width: 100%;
    box-sizing: border-box;
}
.dogodki_grid .datum .dan,
.dogodki_grid .kondatum .dan {
    font-size: 11px !important;
    line-height: 1.2 !important;
    /* a11y: rgba(...,0.88) na *-dark brand barvi = ~4.19:1 (FAIL). Pure white = 4.5+:1 */
    color: #fff !important;
    background: none !important;
    padding: 5px 10px 8px 10px !important;
    margin: 0 !important;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    width: 100%;
    box-sizing: border-box;
}
/* Novice .dan ima podlaga_novice class — resetiraj barvo */
.dogodki_grid .dan.podlaga_novice {
    background: none !important;
}

/* --- Vmesdatum (črtica med datumoma) --- */
.dogodki_grid .vmesdatum {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    font-size: 18px !important;
    color: #bbb;
    padding: 0 2px !important;
    padding-top: 0 !important;
    align-self: center;
    font-family: inherit !important;
}

/* --- Urakraj: ura + kraj desno od datuma --- */
.dogodki_grid .urakraj,
.dogodki_grid .urakraj_vecdni {
    flex: 1;
    min-width: 0;
    max-width: none !important;
    font-size: 13px;
    line-height: 1.5;
    color: #555;
    background: none !important;
    position: static !important;
    float: none !important;
    width: auto !important;
    padding: 0 !important;
    align-self: flex-start;
}
.dogodki_grid .novica_urakraj {
    flex: 1;
    min-width: 0;
}
.dogodki_grid .urakraj em,
.dogodki_grid .urakraj_vecdni em {
    font-style: normal;
    /* a11y: #888 daje 3.54:1 kontrast (FAIL); #595959 da 7:1 (AAA) */
    color: #595959;
    font-size: 12px;
    display: block;
    margin-top: 2px;
}

/* --- Naslov in opis --- */
.dogodki_grid .kajzakaj {
    float: none !important;
    width: auto !important;
    padding: 0 !important;
}
.dogodki_grid .kajzakaj h2,
.dogodki_grid .kajzakaj h1 {
    font-size: var(--font-xl);
    line-height: 1.3;
    margin: 0 0 6px 0;
    padding-top: 0;
    font-weight: 700;
}
.dogodki_grid .kajzakaj h2 a,
.dogodki_grid .kajzakaj h1 a,
.dogodki_grid .novica_naslov a {
    color: inherit;
    text-decoration: none;
}
.dogodki_grid .kajzakaj h2 a:hover,
.dogodki_grid .kajzakaj h1 a:hover,
.dogodki_grid .novica_naslov a:hover { text-decoration: underline; }
/* Naslov kartice na /novice: uskladi z /dogodki in /katalog (h2 v .kajzakaj = 16px).
   h1.novica_naslov je v .urakraj (NE v .kajzakaj), zato ga ne dohitita pravili zgoraj. */
.dogodki_grid .novica_naslov {
    font-size: var(--font-xl);
    line-height: 1.3;
    margin: 0 0 6px 0;
    padding-top: 0;
    padding-bottom: 0;
    font-weight: 700;
}
@media screen and (max-width: 640px) {
    .dogodki_grid .novica_naslov { font-size: var(--font-2xl); }
}
.dogodki_grid .kajzakaj p {
    font-size: 13px;
    margin: 0 0 6px 0;
    color: #444;
    line-height: 1.5;
}
/* Skrij float:right / float:left na "Več o..." linkih */
.dogodki_grid .pisava_dogodki[style*="float"] {
    float: none !important;
    display: inline-block !important;
    margin-top: 6px;
    font-size: 13px;
}
/* Vrsta badge (Katalog: [STORITEV], [OPREMA]...) — zmanjšaj inline style vpliv */
.dogodki_grid .kajzakaj h1 span[style] {
    font-size: 11px !important;
    top: 0 !important;
    display: inline-block;
    margin-bottom: 4px;
}

/* --- Skrij elemente, ki v gridu ne sodijo --- */
.dogodki_grid .addtocalendar { display: none; }
.dogodki_grid .sam_video_dogodki { display: none; }
.dogodki_grid .kjekaj_naslovka { display: none; }
.dogodki_grid .mobilno_skrij { display: none !important; }

/* --- Hover barva naslova --- */
body.tema-dogodki .dogodki_grid .kajzakaj h2 a:hover { color: var(--col-blue); }
body.tema-katalog .dogodki_grid .kajzakaj h1 a:hover { color: var(--col-orange); }
body.tema-novice  .dogodki_grid .novica_naslov a:hover { color: var(--col-pink); }

/* --- Vir info (novice) --- */
.dogodki_grid .card_vir {
    font-size: 12px;
    color: #999;
    margin-bottom: 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid #f0f0f0;
}
.dogodki_grid .card_vir a { color: #666; text-decoration: none; }
.dogodki_grid .card_vir a:hover { text-decoration: underline; }

/* --- Empty state pokriva celotno širino --- */
.dogodki_grid > .filter-empty-state,
.filter-empty-state { grid-column: 1 / -1; }

/* --- Ikone na karticah (prijava, vstopnina, lokacija) --- */
.card-ikone {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    margin-top: 4px;
}
.card-ikona {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    padding: 3px 9px;
    border-radius: 20px;
    text-decoration: none;
    white-space: nowrap;
    line-height: 1.4;
}
.card-ikona-prijava {
    background: #EBF4FF;
    color: #1A6DB5;
    border: 1px solid #C3DDF8;
}
.card-ikona-prijava:hover { background: #D3E9FF; }
.card-ikona-brezplacno {
    background: #EDFAED;
    color: #2D7D2D;
    border: 1px solid #B6E8B6;
    padding: 3px 7px;
    cursor: help;
}
.card-ikona-brezplacno .fa-euro-sign {
    position: relative;
}
.card-ikona-brezplacno .fa-euro-sign::after {
    content: "";
    position: absolute;
    left: -2px;
    right: -2px;
    top: 50%;
    height: 2px;
    background: currentColor;
    transform: rotate(-20deg);
    border-radius: 1px;
}
.card-ikona-vstopnina {
    background: #FFF5E6;
    color: #8B5A00;
    border: 1px solid #F5D999;
}
.card-ikona-lokacija,
.card-ikona-koledar,
.card-ikona-deli {
    background: #F3F3F3;
    color: #555;
    border: 1px solid #DDD;
    cursor: pointer;
}
.card-ikona-lokacija:hover,
.card-ikona-koledar:hover,
.card-ikona-deli:hover { background: #E8E8E8; }
.card-ikone .fa-light { font-size: 11px; }

/* Naročnina — vsi srce gumbi so povsod ENAKE plain ikone (brez ozadja,
   brez teksta, samo srce). Layout pozicijo (absolute v zvrst chipih)
   ohranjamo z dodatnim selectorjem nižje. fa-light = prazno srce,
   fa-solid = polno (JS doda .aktivna razred + swap class). M1.17. */
button.js-narocnina {
    background: transparent !important;
    border: 0 !important;
    margin: 0;
    padding: 4px 6px;
    cursor: pointer;
    color: #C2007E !important;
    font-size: 16px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: inherit;
    vertical-align: middle;
    transition: transform 0.1s, color 0.15s;
    opacity: 0.7;
}
button.js-narocnina:hover,
button.js-narocnina:focus-visible {
    transform: scale(1.2);
    opacity: 1;
    outline: none;
}
button.js-narocnina.aktivna { opacity: 1 !important; }
button.js-narocnina .fa-heart { font-size: 16px; transition: transform 0.18s ease; }
button.js-narocnina .fa-heart.fa-solid { font-weight: 900; }
/* Fill animacija — sproži se ob aktivaciji (.naroci-pop razred doda JS
   za ~480ms ob kliku, da uporabnik vidi vizualni feedback brez page reload). */
button.js-narocnina.naroci-pop .fa-heart {
    animation: srce-pop 0.42s cubic-bezier(0.34, 1.56, 0.64, 1);
}
@keyframes srce-pop {
    0%   { transform: scale(1); }
    35%  { transform: scale(1.55); }
    65%  { transform: scale(0.92); }
    100% { transform: scale(1); }
}

/* Srce ob h1 naslova dogodka — večje (vidnejši CTA) */
.naroci-srce-naslov { font-size: 22px !important; padding: 2px 0px 2px 0 !important; }
.naroci-srce-naslov .fa-heart { font-size: 24px !important; }

/* Vrstica info-vrednosti z naročnina-srce na koncu (organizator + srce v eni vrstici) */
.info-vrednost-vrstica {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.info-vrednost-vrstica .info-vrednost { margin: 0; flex: 0 1 auto; }
.info-vrednost-vrstica .naroci-srce-inline { flex: 0 0 auto; }

/* Pozicija srce-gumba znotraj nas-card-body: desno-spodaj */
.nas-card-body .card-ikona-naroci {
    position: absolute;
    right: 8px;
    bottom: 8px;
    z-index: 2;
}

.sr-only {
    position: absolute;
    width: 1px; height: 1px;
    padding: 0; margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}

/* ============================================================
   Naročnine — "košarica" UI (FAB + toast + modal seznam)
   Glej OBVESCANJE.md M1.4
   ============================================================ */

/* Floating Action Button — "Naroči se (N)" spodaj desno */
.narocnina-fab {
    position: fixed;
    right: 18px;
    bottom: 80px; /* nad bottom_nav-om na mobilnem; nad nogo na desktopu */
    z-index: 900;
    background: #C2007E;
    color: #fff;
    border: 0;
    border-radius: 28px;
    padding: 12px 20px 12px 16px;
    box-shadow: 0 6px 20px rgba(194,0,126,0.35);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 700;
    font-family: inherit;
    animation: fab-pop 0.25s ease-out;
}
/* `display: inline-flex` zgoraj privzeto premaga HTML `hidden` atribut
   (ki bi moral nastaviti `display: none`). Zato JS `fab.hidden = true`
   ne deluje brez tega pravila. !important da prepreči regresijo. */
.narocnina-fab[hidden] { display: none !important; }
.narocnina-fab:hover { background: #A30068; transform: translateY(-1px); }
.narocnina-fab .fab-stevec {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    background: #fff;
    color: #C2007E;
    border-radius: 11px;
    font-size: 12px;
    font-weight: 800;
}
.narocnina-fab .fab-label { font-weight: 700; }
@keyframes fab-pop {
    from { transform: scale(0.7); opacity: 0; }
    to { transform: scale(1); opacity: 1; }
}
@media (max-width: 640px) {
    .narocnina-fab { bottom: 70px; right: 12px; padding: 10px 14px 10px 12px; }
    .narocnina-fab .fab-label { display: none; }
}

/* Strip pod headerjem — vidnost košarice (kompaktna "pill", centriran chip).
   Pozicija fixed, top: pod #siteheader-jem; širina omejena na ~520px, da
   ne reže celotnega zaslona kot full-width banner. Roza akcent obrobe +
   bel polprosojen backdrop z blur-om za nevtralen videz. */
.narocnina-strip {
    position: fixed;
    top: 64px; /* malo pod siteheader-jem, da "lebdi" */
    left: 50%;
    transform: translateX(-50%) translateY(-12px);
    z-index: 9997;
    max-width: 520px;
    width: max-content;
    padding: 6px 8px 6px 14px;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px) saturate(140%);
    -webkit-backdrop-filter: blur(10px) saturate(140%);
    border: 1px solid rgba(194, 0, 126, 0.25);
    color: #4A1133;
    display: flex;
    align-items: center;
    gap: 10px;
    box-shadow: 0 4px 14px rgba(194,0,126,0.18);
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    opacity: 0;
    transition: transform 0.2s ease, opacity 0.2s ease;
    pointer-events: none;
}
.narocnina-strip[hidden] { display: none !important; }
.narocnina-strip.odprt {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
    pointer-events: auto;
}
#siteheader.shrunk ~ .narocnina-strip { top: 50px; }
.narocnina-strip-ikona { font-size: 14px; color: #C2007E; flex-shrink: 0; }
.narocnina-strip-tekst { white-space: nowrap; }
.narocnina-strip-akcija {
    background: #C2007E;
    color: #fff;
    border: 0;
    border-radius: 999px;
    padding: 4px 12px;
    font: inherit;
    font-weight: 700;
    font-size: 12px;
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
}
.narocnina-strip-akcija:hover { background: #A30068; }
.narocnina-strip-zapri {
    background: transparent;
    border: 0;
    color: #888;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
    padding: 2px 6px;
    flex-shrink: 0;
}
.narocnina-strip-zapri:hover { color: #333; }
@media (max-width: 640px) {
    .narocnina-strip {
        top: 60px;
        max-width: calc(100vw - 24px);
        font-size: 12px;
        padding: 5px 6px 5px 12px;
        gap: 8px;
    }
    .narocnina-strip-akcija { padding: 3px 10px; font-size: 11px; }
    .narocnina-strip-tekst {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 50vw;
    }
}

/* Toast spodaj desno (nad FAB-om) */
.narocnina-toast {
    position: fixed;
    right: 18px;
    bottom: 144px;
    z-index: 950;
    max-width: 360px;
    background: #fff;
    color: #222;
    border-left: 4px solid #C2007E;
    border-radius: 8px;
    box-shadow: 0 6px 24px rgba(0,0,0,0.18);
    padding: 12px 36px 12px 14px;
    font-size: 13px;
    line-height: 1.4;
    transform: translateY(20px);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s, transform 0.25s;
}
.narocnina-toast.viden {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
}
.narocnina-toast strong { color: #C2007E; }
.narocnina-toast a { color: #C2007E; font-weight: 600; }
.narocnina-toast-zapri {
    position: absolute;
    top: 4px; right: 6px;
    background: transparent;
    border: 0;
    font-size: 18px;
    line-height: 1;
    color: #999;
    cursor: pointer;
    padding: 2px 8px;
}
.narocnina-toast-zapri:hover { color: #222; }
.narocnina-toast-napaka { border-left-color: #B00020; }
.narocnina-toast-napaka strong { color: #B00020; }
@media (max-width: 640px) {
    .narocnina-toast { right: 8px; left: 8px; bottom: 130px; max-width: none; }
}

/* Seznam virov v modal-u (košarica) */
.narocnina-modal-podnaslov {
    margin: 0 0 12px;
    color: #555;
    font-size: 13px;
}
.kosarica-seznam {
    list-style: none;
    padding: 0;
    margin: 0 0 18px;
    border: 1px solid #FFE6F0;
    border-radius: 8px;
    background: #FFF5FA;
    overflow: hidden;
}
.kosarica-vrstica {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-bottom: 1px solid #FFE6F0;
    font-size: 14px;
    color: #222;
}
.kosarica-vrstica:last-child { border-bottom: 0; }
.kosarica-vrstica > i.fa-heart { color: #C2007E; flex-shrink: 0; }
.kosarica-vir { flex: 1 1 auto; }
.kosarica-odstrani {
    background: transparent;
    border: 0;
    color: #888;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
    padding: 2px 10px;
    border-radius: 4px;
}
.kosarica-odstrani:hover { background: #FFE6F0; color: #B00020; }

/* Modal "Naroči se" (košarica) */
.narocnina-modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.2s;
    color: #222;
}
.narocnina-modal.odprt { opacity: 1; }
/* `display:flex` na modalu zaobide UA `[hidden]{display:none}` — eksplicitno
   prepovemo, da ostane click-blocker po zaprtju. */
.narocnina-modal[hidden] { display: none !important; }
.narocnina-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.5);
}
.narocnina-modal-panel {
    position: relative;
    background: #fff;
    color: #222;
    border-radius: 12px;
    max-width: 480px;
    width: calc(100% - 32px);
    max-height: 90vh;
    overflow-y: auto;
    padding: 24px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.2);
    font-family: var(--font-main, sans-serif);
    font-size: 14px;
    line-height: 1.4;
}
.narocnina-modal-panel * { color: inherit; }
.narocnina-modal-panel a { color: #C2007E; }
.narocnina-modal-zapri {
    position: absolute;
    top: 8px; right: 8px;
    background: transparent;
    border: 0;
    font-size: 24px;
    cursor: pointer;
    color: #666;
    line-height: 1;
    padding: 4px 8px;
}
.narocnina-modal-naslov {
    margin: 0 0 4px;
    font-size: 20px;
    font-weight: 700;
    color: #222;
}
.narocnina-modal-vir {
    margin: 0 0 18px;
    padding: 10px 12px;
    background: #FFF5FA;
    border-left: 3px solid #C2007E;
    border-radius: 6px;
    color: #444;
    font-size: 14px;
}
.narocnina-modal-vir strong { color: #C2007E; }
.narocnina-modal-namig {
    margin: 0 0 12px;
    padding: 8px 10px;
    background: #FFFBEA;
    border-left: 3px solid #F5C200;
    border-radius: 4px;
    font-size: 12px;
    color: #5C4500;
}

/* Skupina za kanal (e-pošta / SMS / PWA) — kartica z disclosure */
.kanal-skupina {
    border: 1px solid #E5E5E5;
    border-radius: 10px;
    margin: 0 0 10px;
    overflow: hidden;
    background: #FAFAFA;
    transition: background 0.15s, border-color 0.15s;
}
.kanal-skupina:has(input[data-kanal-checkbox]:checked) {
    background: #fff;
    border-color: #C2007E;
}
.kanal-glava {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    cursor: pointer;
    font-size: 15px;
    user-select: none;
}
.kanal-glava input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
    flex-shrink: 0;
    accent-color: #C2007E;
}
.kanal-glava i {
    font-size: 16px;
    color: #C2007E;
}
.kanal-status {
    margin-left: auto;
    font-size: 12px;
    color: #999;
    font-style: italic;
    font-weight: 400;
}
.kanal-zaznamek {
    font-size: 11px;
    color: #B07000;
    font-style: italic;
    font-weight: 500;
    margin-left: 4px;
}
.kanal-vsebina {
    padding: 0 14px 14px 40px;
    border-top: 1px dashed #EEE;
    margin-top: -4px;
    padding-top: 12px;
}
.kanal-vsebina[hidden] { display: none; }
.kanal-input-label {
    display: block;
    margin: 0 0 10px;
    font-size: 13px;
    color: #555;
}
.kanal-input-label input {
    display: block;
    width: 100%;
    padding: 8px 10px;
    margin-top: 4px;
    /* a11y (WCAG 1.4.11): non-text contrast 3:1+ za form input border */
    border: 1px solid #767676;
    border-radius: 6px;
    font-size: 14px;
    box-sizing: border-box;
    color: #222;
}
.kanal-input-label input:focus {
    outline: none;
    border-color: #C2007E;
    box-shadow: 0 0 0 2px rgba(194,0,126,0.15);
}
.kanal-rezimi-naslov {
    margin: 10px 0 4px;
    font-size: 12px;
    color: #777;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
}
.kanal-rezim {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 5px 0;
    font-size: 14px;
    color: #333;
    cursor: pointer;
}
.kanal-rezim input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: #C2007E;
}
.kanal-pojasnilo {
    margin: 0 0 8px;
    font-size: 12px;
    color: #888;
    font-style: italic;
}
.pwa-omogoci-blok { padding-top: 12px; }
.pwa-omogoci-gumb {
    margin-top: 6px;
    padding: 8px 14px;
    border: 1px solid #C2007E;
    background: #fff;
    color: #C2007E;
    border-radius: 6px;
    cursor: pointer;
    font-size: 13px;
    font-weight: 600;
}
.pwa-omogoci-gumb:hover { background: #FFF5FA; }

.narocnina-modal-gumbi {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid #EEE;
}
.narocnina-help-gumb {
    background: #fff;
    border: 1.5px solid #C2007E;
    color: #C2007E;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 14px;
    font-weight: 700;
    font-family: inherit;
    line-height: 1;
    margin-left: auto;
    margin-right: 8px;
    flex-shrink: 0;
}
.narocnina-help-gumb:hover { background: #FFE6F0; }

.narocnina-help-panel {
    margin-top: 12px;
    padding: 14px 16px;
    background: #FFF5FA;
    border: 1px solid #FFE6F0;
    border-radius: 8px;
    position: relative;
    font-size: 13px;
    line-height: 1.5;
    color: #333;
}
.narocnina-help-panel h3 {
    margin: 0 0 8px;
    font-size: 15px;
    color: #C2007E;
}
.narocnina-help-panel h4 {
    margin: 12px 0 4px;
    font-size: 13px;
    color: #555;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
.narocnina-help-panel ol,
.narocnina-help-panel p { margin: 4px 0; }
.narocnina-help-panel ol { padding-left: 20px; }
.narocnina-help-panel li { margin-bottom: 4px; }
.narocnina-help-zapri {
    position: absolute;
    top: 6px; right: 8px;
    background: transparent;
    border: 0;
    font-size: 18px;
    color: #999;
    cursor: pointer;
    line-height: 1;
    padding: 2px 6px;
}
.narocnina-help-zapri:hover { color: #222; }
.narocnina-modal-potrdi {
    background: #C2007E;
    color: #fff;
    border: 0;
    padding: 10px 24px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
}
.narocnina-modal-potrdi:hover { background: #A30068; }
.narocnina-modal-preklici {
    background: transparent;
    color: #777;
    border: 0;
    padding: 10px 16px;
    cursor: pointer;
    font-size: 14px;
}
.narocnina-modal-preklici:hover { color: #222; }
.narocnina-modal-sporocilo {
    margin: 10px 0 0;
    padding: 10px 12px;
    border-radius: 6px;
    font-size: 13px;
    line-height: 1.4;
}
.narocnina-modal-sporocilo:empty { padding: 0; margin: 0; }
.narocnina-modal-sporocilo.uspeh { background: #EDFAED; color: #2D7D2D; border: 1px solid #B6E8B6; }
.narocnina-modal-sporocilo.napaka { background: #FDECEC; color: #B00020; border: 1px solid #F5C2C2; }

@media (max-width: 640px) {
    .narocnina-modal-panel { padding: 16px; }
    .kanal-vsebina { padding-left: 28px; }
}

/* ============================================================
   Stran /moje — control panel za naročnine (glej OBVESCANJE.md)
   ============================================================ */
#vsebina.moje-narocnine {
    background: #fff;
    border-radius: 12px;
    padding: 24px 28px;
    margin: 16px;
    max-width: 760px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    box-sizing: border-box;
    color: #222;
}
#vsebina.moje-narocnine h1 {
    margin: 0 0 16px;
    font-size: 24px;
    font-weight: 700;
}
#vsebina.moje-narocnine h2 {
    font-size: 16px;
    font-weight: 700;
    color: #222;
    margin: 0 0 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}
#vsebina.moje-narocnine h2 i { color: #C2007E; }
.moje-stevilo {
    background: #C2007E;
    color: #fff;
    border-radius: 12px;
    padding: 1px 8px;
    font-size: 12px;
    margin-left: 4px;
}
.moje-pod-naslov {
    font-size: 13px;
    font-weight: 600;
    color: #555;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 14px 0 8px;
}
.moje-sekcija {
    border-top: 1px solid #EEE;
    padding: 18px 0;
}
.moje-sekcija:first-of-type { border-top: 0; padding-top: 0; }
.moje-sekcija-akcije { border-top-style: dashed; }
/* "Naprave s push obvestili" seznam v /moje */
.moje-push-naprave { margin-top: 14px; padding-top: 12px; border-top: 1px solid #eee; }
.moje-naprave-seznam { list-style: none; padding: 0; margin: 0; }
.moje-naprava-vrstica {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 0;
    border-bottom: 1px solid #f0f0f0;
    font-size: 13px;
}
.moje-naprava-vrstica:last-child { border-bottom: 0; }
.moje-naprava-vrstica > i { color: #777; }
.moje-naprava-ime { font-weight: 600; color: #333; }
.moje-naprava-od { color: #888; font-size: 12px; margin-left: auto; margin-right: 8px; }

.moje-pojasnilo {
    margin: 0 0 8px;
    font-size: 12px;
    color: #777;
    font-style: italic;
}

/* Zgodovina obvestil (9.1) — /moje sekcija */
.moje-log-filtri {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin: 10px 0 14px;
}
.moje-log-filter {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    background: #f5f5f5;
    border: 1px solid #e0e0e0;
    border-radius: 999px;
    color: #555;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.moje-log-filter:hover { background: #ececec; border-color: #ccc; color: #333; }
.moje-log-filter.aktiven {
    background: var(--col-blue);
    border-color: var(--col-blue);
    color: #fff;
}
.moje-log-filter > i { font-size: 13px; }

.moje-log-prazno {
    text-align: center;
    padding: 24px 12px;
    color: #999;
}
.moje-log-prazno > i { font-size: 28px; color: #ccc; display: block; margin-bottom: 8px; }
.moje-log-prazno > p { margin: 0; font-size: 13px; }

.moje-log-seznam {
    list-style: none;
    margin: 0;
    padding: 0;
    border-top: 1px solid #eee;
}
.moje-log-vrstica {
    display: flex;
    gap: 12px;
    padding: 12px 4px;
    border-bottom: 1px solid #eee;
    align-items: flex-start;
}
.moje-log-vrstica:last-child { border-bottom: 0; }
.moje-log-ikona {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 15px;
    color: #fff;
    background: #999;
}
.moje-log-kanal-email { background: var(--col-blue); }
.moje-log-kanal-sms   { background: var(--col-green, #4caf50); }
.moje-log-kanal-pwa   { background: var(--col-pink, #C2007E); }
.moje-log-status-napaka .moje-log-ikona { background: #c0392b; opacity: 0.6; }
.moje-log-status-rate_limit .moje-log-ikona { background: #b58105; opacity: 0.7; }

.moje-log-vsebina { flex: 1; min-width: 0; }
.moje-log-glava {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    font-size: 13px;
}
.moje-log-tip { font-weight: 700; color: #333; }
.moje-log-cas {
    margin-left: auto;
    color: #888;
    font-size: 12px;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
.moje-log-status {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 1px 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}
.moje-log-status-napaka-badge { background: #fde8e6; color: #c0392b; }
.moje-log-status-rate-badge   { background: #fff3d9; color: #8a6306; }
.moje-log-subject {
    margin-top: 2px;
    font-size: 13px;
    color: #444;
    overflow-wrap: anywhere;
}
.moje-log-povezava {
    margin-top: 4px;
    font-size: 12px;
}
.moje-log-povezava a {
    color: var(--col-blue);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.moje-log-povezava a:hover { text-decoration: underline; }
.moje-log-povzetek {
    margin-top: 4px;
    font-size: 12px;
    color: #777;
    overflow-wrap: anywhere;
}
@media (max-width: 640px) {
    .moje-log-vrstica { gap: 10px; }
    .moje-log-ikona { width: 30px; height: 30px; font-size: 13px; }
    .moje-log-cas { font-size: 11px; }
}
.moje-prazno-mini { color: #999; font-size: 13px; padding: 8px 0; }
.moje-prazno {
    text-align: center;
    padding: 30px 16px;
    color: #555;
}
.moje-cta {
    display: inline-block;
    padding: 10px 22px;
    background: #C2007E;
    color: #fff !important;
    border-radius: 20px;
    text-decoration: none !important;
    font-weight: 600;
    margin-top: 8px;
}
.moje-cta:hover { background: #A30068; }
.moje-link { color: #C2007E; }

/* SMS potrditvena stran */
#vsebina.tel-potrdi {
    background: #fff;
    border-radius: 12px;
    padding: 32px 28px;
    margin: 16px auto;
    max-width: 520px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    box-sizing: border-box;
    color: #222;
    text-align: center;
}
#vsebina.tel-potrdi h1 {
    margin: 0 0 16px;
    font-size: 22px;
    font-weight: 700;
}
.tel-potrdi-besedilo { font-size: 15px; margin: 12px 0; }
.tel-potrdi-form { margin-top: 22px; }
.moje-gumb-velik {
    font-size: 16px;
    padding: 14px 28px;
    font-weight: 700;
    box-shadow: 0 4px 12px rgba(194,0,126,0.3);
}

/* Form polja v "Vaši podatki" */
.moje-form-vrstica {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 12px;
    margin-bottom: 10px;
}
.moje-form-vrstica label {
    display: flex;
    flex-direction: column;
    font-size: 12px;
    color: #666;
    gap: 4px;
}
.moje-form-vrstica input {
    padding: 8px 10px;
    /* a11y (WCAG 1.4.11): #CCC daje 1.6:1, treba ≥3:1. #767676 ima 4.5:1 */
    border: 1px solid #767676;
    border-radius: 6px;
    font-size: 14px;
    color: #222;
}
.moje-form-vrstica input:read-only { background: #F5F5F5; color: #777; }
.moje-form-vrstica input:focus {
    outline: none;
    border-color: #C2007E;
    box-shadow: 0 0 0 2px rgba(194,0,126,0.15);
}
/* Label v "Vaši podatki" — naslov + status badge na ISTI vrstici.
   Trenutni layout je `display: flex; flex-direction: column`, kar bi sicer
   potisnilo badge v drugo vrstico nad input-om. .moje-form-label wrap
   nudi horizontal flex layout znotraj column-flex label-a. */
.moje-form-label {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.moje-form-label-tekst { display: inline-block; }
/* Status badge (potrjen / nepotrjen) ob e-pošti in telefonu v "Vaši podatki".
   Naročnik takoj vidi, ali kanal lahko prejema obvestila. */
.moje-status {
    display: inline-flex;
    align-items: center;
    font-size: 13px;
    line-height: 1;
}
.moje-status-ok { color: #1a8550; }
.moje-status-ne { color: #C28800; }
@media (max-width: 640px) {
    .moje-form-vrstica { grid-template-columns: 1fr; }
}

/* Gumbi */
.moje-gumb {
    background: #C2007E;
    color: #fff;
    border: 0;
    padding: 9px 18px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.moje-gumb:hover { background: #A30068; }
.moje-gumb-mini {
    background: #fff;
    border: 1px solid #DDD;
    color: #555;
    padding: 6px 12px;
    border-radius: 16px;
    font-size: 12px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: inherit;
}
.moje-gumb-mini:hover { background: #F5F5F5; border-color: #C2007E; color: #C2007E; }
.moje-gumb-odstrani:hover { color: #B00020; border-color: #B00020; }
.moje-gumb-nevarno:hover { color: #B00020; border-color: #B00020; }
.moje-gumb-test:disabled {
    opacity: 0.5;
    cursor: not-allowed;
    background: #EEE;
    color: #999;
}
.moje-form-inline { display: inline-block; }

/* Naročnine seznam */
.narocnine-seznam { list-style: none; padding: 0; margin: 12px 0 0; }
.narocnina-vrstica {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px;
    border: 1px solid #EEE;
    border-radius: 8px;
    margin-bottom: 8px;
    gap: 12px;
    flex-wrap: wrap;
    background: #FAFAFA;
}
.narocnina-vir { flex: 1 1 auto; min-width: 180px; color: #222; }
.narocnina-vir > strong { font-size: 14px; }
.narocnina-pref {
    margin-top: 8px;
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 2px 8px;
    font-size: 12px;
    color: #555;
}
.narocnina-pref-naslov {
    color: #888;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    line-height: 1.6;
}
.narocnina-pref .narocnina-kanali { font-weight: 600; color: #C2007E; }
.narocnina-pref .narocnina-rezimi { color: #555; }
.narocnina-akcije { display: flex; gap: 6px; }

/* Zvrst seznam v /moje "Dodaj naročnino": minimalen list-style prikaz z
   srcem pred imenom zvrsti (in vsake podzvrsti). Brez chip-style gumbov —
   konzistentno z ostalim site-om, kjer srca uporabljamo kot toggle ikone
   (glej .zvrst-srce / .podzvrst-srce v kosi/2.php levem meniju). */
.moje-zvrsti-seznam {
    list-style: none;
    padding: 0;
    margin: 0 0 12px;
}
.moje-zvrsti-seznam > li {
    border-bottom: 1px solid #EEE;
}
.moje-zvrsti-seznam > li:last-child { border-bottom: 0; }
.moje-zvrst-details > .moje-zvrst-sum {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 0;
    cursor: pointer;
    list-style: none;
    user-select: none;
}
.moje-zvrst-details > .moje-zvrst-sum::-webkit-details-marker { display: none; }
.moje-zvrst-ime {
    flex: 1;
    color: #333;
    font-weight: 600;
    font-size: 15px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.moje-zvrst-ime > i { color: #888; font-size: 14px; width: 16px; text-align: center; }
.moje-zvrst-razsiri {
    color: #999;
    padding: 4px 6px;
    font-size: 13px;
}
.moje-zvrst-razsiri .fa-chevron-down { transition: transform 0.15s; }
.moje-zvrst-details[open] .moje-zvrst-razsiri .fa-chevron-down { transform: rotate(180deg); }

.moje-podzvrsti-seznam {
    list-style: none;
    padding: 0 0 6px 32px;
    margin: 0;
}
.moje-podzvrsti-seznam > li {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 0;
}
.moje-podzvrst-ime {
    color: #555;
    font-size: 14px;
}
/* Med pošiljanjem (klik na srce → AJAX toggle): rahlo zatemnimo. */
.js-narocnina-vmes { opacity: 0.6; cursor: progress; }

/* Geo gumb na /moje — vidno povratno informacijo ko je aktiven. */
.moje-gumb-geo .fa-heart { display: none; }
.moje-gumb-geo.aktivna .fa-heart { display: inline-block; }
.moje-gumb-geo.aktivna { background: #1a8550; }
.moje-gumb-geo.aktivna:hover { background: #155f3c; }

.moje-organizatorji {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
}
.moje-select {
    padding: 8px 12px;
    border: 1px solid #CCC;
    border-radius: 6px;
    font-size: 14px;
    background: #fff;
    color: #222;
    min-width: 280px;
}

.moje-test-gumbi {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.moje-akcije {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.msg-uspeh { background: #EDFAED; color: #2D7D2D; padding: 12px; border-radius: 6px; border: 1px solid #B6E8B6; margin: 0 0 12px; display: flex; gap: 8px; align-items: center; }
.msg-napaka { background: #FDECEC; color: #B00020; padding: 12px; border-radius: 6px; border: 1px solid #F5C2C2; margin: 0 0 12px; }

.moje-lokacija-stanje {
    margin: 10px 0;
    padding: 10px 12px;
    background: #F5F5F5;
    border-radius: 6px;
    font-size: 13px;
    color: #444;
}
.moje-lokacija-stanje code {
    background: #fff;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 12px;
    color: #C2007E;
    border: 1px solid #EEE;
}
.moje-lokacija-akcije { margin-bottom: 8px; }
#moje_zemljevid { box-shadow: 0 1px 4px rgba(0,0,0,0.08); }

@media (max-width: 816px) {
    #vsebina.moje-narocnine { margin: 8px; padding: 16px; }
    .narocnina-vrstica { padding: 10px; }
    .moje-select { min-width: 100%; }
    #moje_zemljevid { height: 220px !important; }
}

/* Srce v chipu zvrsti — pozicijska absoluta v chipu (barvni in hover stil
   prihaja iz globalnega button.js-narocnina pravila). */
.zvrst-srce {
    position: absolute !important;
    top: 4px;
    right: 4px;
    z-index: 3;
}

/* Srce ob vsaki podzvrsti v dropdown submeniju. Submenu vrstica `<li>` ima
   `<a>` z vsebino, sedaj pa še `<button>` desno; postavimo flex layout. */
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul li {
    position: relative;
}
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul li a {
    padding-right: 36px; /* prostor za srce */
}
/* Srce ob vsaki podzvrsti v dropdown submeniju — samo layout. */
.podzvrst-srce {
    position: absolute !important;
    top: 50% !important;
    right: 6px;
    transform: translateY(-50%);
    z-index: 2;
}
.podzvrst-srce:hover,
.podzvrst-srce:focus-visible {
    transform: translateY(-50%) scale(1.2) !important;
}

/* CTA blok pod opisom dogodka — vidna gumba za naročanje */
.dogodek-cta-blok {
    margin: 16px 0;
    padding: 14px 16px;
    background: linear-gradient(135deg, #FFF5FA 0%, #FFE6F0 100%);
    border-radius: 10px;
    border: 1px solid #FFE6F0;
}
.dogodek-cta-namig {
    margin: 0 0 10px;
    font-size: 13px;
    color: #C2007E;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 6px;
}
.dogodek-cta-namig i { font-size: 14px; }
.dogodek-cta-gumbi {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.dogodek-cta-gumb {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border-radius: 24px;
    border: 2px solid transparent;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    font-family: inherit;
    transition: background 0.15s, transform 0.1s;
}
.dogodek-cta-gumb-primarno {
    background: #C2007E;
    color: #fff;
    border-color: #C2007E;
}
.dogodek-cta-gumb-primarno:hover {
    background: #A30068;
    transform: translateY(-1px);
}
.dogodek-cta-gumb-primarno.aktivna {
    background: #fff;
    color: #C2007E;
}
.dogodek-cta-gumb-primarno.aktivna .fa-heart { font-weight: 900; }
.dogodek-cta-gumb-sekundarno {
    background: #fff;
    color: #C2007E;
    border-color: #C2007E;
}
.dogodek-cta-gumb-sekundarno:hover {
    background: #FFE6F0;
}
.dogodek-cta-gumb-sekundarno.aktivna {
    background: #C2007E;
    color: #fff;
}
@media (max-width: 640px) {
    .dogodek-cta-gumbi { flex-direction: column; align-items: stretch; }
    .dogodek-cta-gumb { justify-content: center; }
}

/* Srce v podzvrsti dropdown menijo, ko je vrstica aktivna: postane belo. */
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul li a:hover ~ .podzvrst-srce,
.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul li.aktivna .podzvrst-srce {
    color: #fff !important;
}

/* Razdalja v lokacijski ikoni (ko je "Blizu mene" aktivno) */
.card-ikona-lokacija .card-razdalja {
    font-size: 11px;
    font-weight: 600;
    color: #1A6DB5;
}

/* Spodnja vrstica kartice: chipi levo, "Več o dogodku" gumb desno */
.card-spodaj {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid #EEE;
}
.card-spodaj .card-chips { margin: 0; flex: 1 1 auto; min-width: 0; }
.card-spodaj .card-vec   { flex: 0 0 auto; margin-left: auto; }

.card-vec {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    font-family: var(--font-main);
    font-size: var(--font-sm);
    font-weight: 600;
    color: #fff;
    background: color-mix(in srgb, var(--col-blue) 40%, white);
    border: 2px solid var(--col-blue);
    border-radius: 20px;
    text-decoration: none;
    white-space: nowrap;
    transition: background 0.15s, border-color 0.15s, transform 0.1s;
}
.card-vec:hover,
.card-vec:focus-visible {
    background: var(--col-blue);
    border-color: var(--col-blue-dark);
    text-decoration: none;
    color: #fff;
}
.card-vec:active { transform: translateY(1px); }
.card-vec .fa-light { font-size: 0.85em; }

/* Tema barvni preliv za nadaljnje strani (npr. katalog) */
body.tema-katalog .card-vec {
    background: color-mix(in srgb, var(--col-orange) 40%, white);
    border-color: var(--col-orange);
}
body.tema-katalog .card-vec:hover,
body.tema-katalog .card-vec:focus-visible {
    background: var(--col-orange);
    border-color: var(--col-orange-dark);
}

/* Tag chips: zvrst + občina */
.card-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.card-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.4;
    padding: 2px 9px;
    border-radius: 20px;
    white-space: nowrap;
    letter-spacing: 0.01em;
    text-decoration: none; /* za <a> elemente — ohrani videz brez podčrtaja */
}
.card-chip .fa-light { font-size: 10px; }
/* Klikabilni chip (card-chip-zvrst je zdaj <a> z linkom na filter strani).
   Drobna hover animacija, da uporabnik vidi, da je klikabilen. */
a.card-chip {
    cursor: pointer;
    transition: filter 0.15s, transform 0.1s;
}
a.card-chip:hover { filter: brightness(0.95); transform: translateY(-1px); }
a.card-chip:active { transform: translateY(0); }

.card-chip-obcina {
    background: #F1F1F1;
    color: #555;
    border: 1px solid #DDD;
    font-weight: 500;
}

/* Zvrst chip — tonirana barva po kategoriji (ujema se z .p_<slug>) */
.card-chip-zvrst { border: 1px solid transparent; }
.card-chip-zvrst-glasba       { background: #E1F5FB; color: #066683; border-color: #B7E4F0; }
.card-chip-zvrst-gledalisce   { background: #EEF7DF; color: #4F6E1C; border-color: #CDE2A5; }
.card-chip-zvrst-razstave     { background: #FDE4F1; color: #A40D67; border-color: #F4B1D5; }
.card-chip-zvrst-za-otroke    { background: #E0EEFB; color: #064E99; border-color: #B1CFEC; }
.card-chip-zvrst-izobrazevanje{ background: #FFF0DC; color: #A05F00; border-color: #F5CC92; }
.card-chip-zvrst-drugo        { background: #EEE2F5; color: #5A1F6F; border-color: #C9AAD9; }

/* Katalog vrsta chips */
.card-chip-vrsta { border: 1px solid transparent; }
.card-chip-vrsta-storitve  { background: #E4E9FC; color: #0D31BF; border-color: #B3BCEE; }
.card-chip-vrsta-oprema    { background: #EBF2DC; color: #3A5011; border-color: #BACED0; }
.card-chip-vrsta-prostori  { background: #F7E0EE; color: #870951; border-color: #DBA8C7; }

/* Filter drawer: "Blizu mene" + slider */
.fd-blizu-vrstica { display: flex; align-items: center; gap: 8px; }
.fd-skupina-blizu .fd-chip-blizu {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    font-size: 14px;
}
.fd-chip-blizu .fa-location-crosshairs { font-size: 14px; }
.fd-chip-blizu.fd-chip-aktivna {
    background: #1A6DB5;
    color: #fff;
    border-color: #1A6DB5;
}
.fd-chip-blizu[disabled] { opacity: 0.6; cursor: wait; }
.fd-blizu-status { font-size: 12px; opacity: 0.8; }

.fd-radius-vrstica {
    margin-top: 10px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.fd-radius-vrstica.fd-radius-neaktivno { opacity: 0.45; }
.fd-radius-label {
    font-size: 13px;
    color: #555;
    user-select: none;
}
.fd-radius-label strong { color: #1A6DB5; }

/* Slider (range input) */
.fd-slider {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    height: 4px;
    border-radius: 2px;
    background: linear-gradient(to right,
        #1A6DB5 0%,
        #1A6DB5 calc(var(--pct, 28%) ),
        #ddd    calc(var(--pct, 28%) ),
        #ddd 100%);
    outline: none;
    cursor: pointer;
    border: none;
}
.fd-slider::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #1A6DB5;
    border: 2px solid #fff;
    box-shadow: 0 1px 4px rgba(0,0,0,.25);
    cursor: pointer;
}
.fd-slider::-moz-range-thumb {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #1A6DB5;
    border: 2px solid #fff;
    box-shadow: 0 1px 4px rgba(0,0,0,.25);
    cursor: pointer;
}
.fd-slider:focus-visible {
    outline: 2px solid #1A6DB5;
    outline-offset: 3px;
}

/* Sort: padajoči meni */
.fd-select {
    width: 100%;
    padding: 9px 36px 9px 14px;
    font-size: 14px;
    font-family: inherit;
    color: #222;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 8px;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%23555' d='M6 8L0 0h12z'/></svg>");
    background-repeat: no-repeat;
    background-position: right 12px center;
}
.fd-select:focus-visible {
    outline: 2px solid #1A6DB5;
    outline-offset: 2px;
    border-color: #1A6DB5;
}
.fd-select:hover { border-color: #999; }

/* --- Mobilni (≤640px): 1 stolpec --- */
@media (max-width: 640px) {
    .dogodki_grid {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 10px 0;
    }
    .dogodki_grid .card-media .fotka_desno,
    .dogodki_grid .card-media img {
        height: 175px !important;
    }
}

/* --- Tablet (641–816px): 2 stolpca --- */
@media (min-width: 641px) and (max-width: 816px) {
    .dogodki_grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* =========================================================================
   NASLOVNA STRAN (Faza H) — hero scroller + sekcije
   ========================================================================= */

/* --- Subtilna ilustracija za kartice brez slike, ki imajo v vrstici
   sosedo s sliko (razred .pokazi-vibe doda JS, ker je "vrstica" odvisna
   od širine viewporta — responsive grid z auto-fill).
   ::after je flex-otrok s flex: 1, zato sam zasede ves preostali
   navpični prostor (kratek opis → velika ilustracija, dolg opis →
   ilustracija se zoži). Mask jo navzgor zlije v belo (oz. v podlago
   kartice — če ima ta barvno ozadje, ilustracija "puhi" čez). */
.dogodki_grid > .dogodek_card.pokazi-vibe::after {
    content: "";
    flex: 1 1 auto;
    align-self: stretch;
    min-height: 130px;
    max-height: 520px;
    background-image: url('/slike/vibe-trsje.svg');
    background-repeat: no-repeat;
    background-position: bottom center;
    /* 100% 100% raztegne SVG navpično, da zasede ves preostali prostor —
       večina motivov (trsje, travnik, gozd, kapnice) zdrži razteg, ker
       so sestavljeni iz vertikalnih elementov. Mask gladko zlije zgornji
       del v podlago. */
    background-size: 100% 100%;
    -webkit-mask-image: linear-gradient(to top, #000 30%, transparent 95%);
    mask-image: linear-gradient(to top, #000 30%, transparent 95%);
    opacity: 0.65;
    pointer-events: none;
}
.dogodki_grid > .dogodek_card.pokazi-vibe[data-vibe="1"]::after {
    background-image: url('/slike/vibe-travnik.svg');
}
.dogodki_grid > .dogodek_card.pokazi-vibe[data-vibe="2"]::after {
    background-image: url('/slike/vibe-topo.svg');
    opacity: 0.55;
}
/* Zvezde imajo krožne pike — razteg jih popači v elipse, zato pri tem
   motivu ohranimo razmerje (100% auto) in raje skaliramo viewBox v SVG-ju. */
.dogodki_grid > .dogodek_card.pokazi-vibe[data-vibe="3"]::after {
    background-image: url('/slike/vibe-zvezde.svg');
    background-size: 100% auto;
    opacity: 0.7;
}
.dogodki_grid > .dogodek_card.pokazi-vibe[data-vibe="4"]::after {
    background-image: url('/slike/vibe-gozd.png');
    /* Ročno risane ilustracije se ne raztezajo dobro — uporabimo contain
       in jih sidrimo v dnu kartice. */
    background-size: contain;
    background-position: bottom center;
    opacity: 0.85;
}
.dogodki_grid > .dogodek_card.pokazi-vibe[data-vibe="5"]::after {
    background-image: url('/slike/vibe-kapnice.svg');
    opacity: 0.6;
}

/* Higher specificity (ID + class) to beat #vsebina { width: 1028px;
   margin-left: 14px; } pravila iz default desktop sloga.
   Brez margin: 0 bi 100% širine + 14px margin levo prekrilo desni
   stolpec (koledar). */
#vsebina.nas-naslovna,
.nas-naslovna {
    padding: 0 14px 24px 14px;
    margin: 0;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
}

/* --- Hero scroller --- */
.nas-hero {
    margin: 0 0 24px 0;
}
.nas-hero-head,
.nas-sekcija-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    padding: 4px 0 12px 0;
}
.nas-hero-title,
.nas-sekcija-naslov {
    font-family: var(--font-condensed);
    font-size: var(--font-4xl);
    font-weight: 700;
    margin: 0;
    color: #333;
    display: flex;
    align-items: center;
    gap: 8px;
}
.nas-sekcija-naslov i {
    color: var(--col-grey, #666);
    font-size: 0.9em;
    font-weight: 400;
}
.nas-hero-vec,
.nas-sekcija-vec {
    font-family: var(--font-main);
    font-size: var(--font-md);
    color: var(--col-grey, #666);
    text-decoration: none;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: color 0.15s;
}
.nas-hero-vec:hover,
.nas-sekcija-vec:hover {
    color: var(--col-blue, #0D97BF);
}

.nas-hero-wrap {
    position: relative;
}
.nas-hero-viewport {
    overflow: hidden;
    padding: 4px 0 14px 0;
}
.nas-hero-track {
    display: flex;
    gap: 14px;
    transition: transform 0.4s cubic-bezier(0.4, 0.0, 0.2, 1);
    will-change: transform;
    touch-action: pan-y;
}
.nas-hero-track.preskoci-tranzicijo {
    transition: none;
}

.nas-hero-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255,255,255,0.95);
    border: none;
    box-shadow: 0 2px 10px rgba(0,0,0,0.18);
    cursor: pointer;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #333;
    font-size: 16px;
    transition: background 0.15s, transform 0.15s, opacity 0.2s;
}
.nas-hero-nav:hover {
    background: #fff;
    transform: translateY(-50%) scale(1.05);
}
.nas-hero-nav-prev { left: -8px; }
.nas-hero-nav-next { right: -8px; }
.nas-hero-nav[disabled] {
    opacity: 0;
    pointer-events: none;
}

.nas-hero-pike {
    display: flex;
    justify-content: center;
    gap: 8px;
    padding: 6px 0 2px 0;
}
/* Vizualno 8px pikica, klikabilna površina pa 24×24 (WCAG target-size).
   Vidna pika je narejena prek ::before, button ostane prozoren padding. */
.nas-hero-pika {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: none;
    background: transparent;
    padding: 0;
    cursor: pointer;
    position: relative;
    transition: transform 0.18s;
}
.nas-hero-pika::before {
    content: "";
    position: absolute;
    top: 50%; left: 50%;
    width: 8px;
    height: 8px;
    margin: -4px 0 0 -4px;
    border-radius: 50%;
    background: rgba(0,0,0,0.18);
    transition: background 0.18s, width 0.18s, margin-left 0.18s, border-radius 0.18s;
}
.nas-hero-pika:hover::before {
    background: rgba(0,0,0,0.35);
}
.nas-hero-pika-aktivna::before {
    background: var(--col-blue, #0D97BF);
    width: 22px;
    margin-left: -11px;
    border-radius: 5px;
}

@media (pointer: coarse) {
    .nas-hero-nav { display: none; }
}
.nas-hero-scroller::-webkit-scrollbar { height: 6px; }
.nas-hero-scroller::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.15); border-radius: 4px; }

.nas-hero-kartica-wrap {
    flex: 0 0 min(85vw, 280px);
    scroll-snap-align: start;
    position: relative;
    aspect-ratio: 2 / 3;
    transition: transform 0.2s, box-shadow 0.2s;
    border-radius: 14px;
}
.nas-hero-kartica-wrap:hover { transform: translateY(-3px); }
.nas-hero-kartica {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    border-radius: 14px;
    overflow: hidden;
    text-decoration: none;
    color: #fff;
    box-shadow: 0 4px 16px rgba(0,0,0,0.18);
    transition: box-shadow 0.2s;
    isolation: isolate;
    background: #222;
}
.nas-hero-kartica-wrap:hover .nas-hero-kartica {
    box-shadow: 0 8px 24px rgba(0,0,0,0.25);
}
/* Srce gumb na hero kartici (desno zgoraj, nad sliko). Pozicija proti
   .nas-hero-kartica-wrap, ne proti kartici, da hover transform na kartici
   ne premakne srca.
   !important je potreben, ker button.js-narocnina ima background/color
   z !important na globalnem pravilu (stil.src.css:~7287). */
button.nas-hero-srce {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 5;
    width: 36px;
    height: 36px;
    padding: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.42) !important;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    color: #fff !important;
    font-size: 16px;
    line-height: 1;
    box-shadow: 0 2px 8px rgba(0,0,0,0.25);
    opacity: 1 !important;
}
button.nas-hero-srce:hover,
button.nas-hero-srce:focus-visible {
    background: rgba(0, 0, 0, 0.62) !important;
    transform: scale(1.08);
}
button.nas-hero-srce.aktivna {
    background: #fff !important;
    color: #C2007E !important;
}
button.nas-hero-srce .fa-heart { font-size: 16px; }

/* Srce gumb na nas-card (homepage), desno zgoraj nad sliko. Pozicija proti
   article.nas-card (ki ima position: relative). */
.nas-card > button.nas-card-srce {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 3;
    width: 34px;
    height: 34px;
    padding: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    color: #C2007E !important;
    font-size: 15px;
    line-height: 1;
    box-shadow: 0 2px 8px rgba(0,0,0,0.18);
    opacity: 1 !important;
}
.nas-card > button.nas-card-srce:hover,
.nas-card > button.nas-card-srce:focus-visible {
    background: #fff !important;
    transform: scale(1.08);
}
.nas-card > button.nas-card-srce.aktivna {
    background: #fff !important;
    color: #C2007E !important;
}
.nas-card > button.nas-card-srce .fa-heart { font-size: 15px; }
.nas-hero-slika {
    position: absolute;
    inset: 0;
    z-index: 0;
}
.nas-hero-slika img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.nas-hero-kartica::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0,0,0,0) 35%, rgba(0,0,0,0.85) 100%);
    z-index: 1;
}
.nas-hero-vsebina {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 14px 16px 16px 16px;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.nas-hero-kdaj {
    font-family: var(--font-main);
    font-size: var(--font-sm);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    opacity: 0.95;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}
.nas-hero-naslov {
    font-family: var(--font-condensed);
    font-size: var(--font-3xl);
    font-weight: 700;
    margin: 0;
    line-height: 1.2;
    text-shadow: 0 1px 3px rgba(0,0,0,0.6);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.nas-hero-kraj {
    font-family: var(--font-main);
    font-size: var(--font-md);
    opacity: 0.88;
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.nas-hero-kartica.zvrst-glasba .nas-hero-kdaj { color: #6FE7FF; }
.nas-hero-kartica.zvrst-gledalisce .nas-hero-kdaj { color: #C2EE85; }
.nas-hero-kartica.zvrst-razstave .nas-hero-kdaj { color: #FFB2D8; }
.nas-hero-kartica.zvrst-za-otroke .nas-hero-kdaj { color: #9FC9FF; }
.nas-hero-kartica.zvrst-izobrazevanje .nas-hero-kdaj { color: #FFC880; }
.nas-hero-kartica.zvrst-drugo .nas-hero-kdaj { color: #D8B0E5; }

/* --- Sekcije --- */
.nas-sekcija {
    margin: 0 0 28px 0;
}
.nas-sekcija .dogodki_grid {
    padding: 0;
}

/* --- Kompaktna kartica (nas-card) --- */
.nas-card.dogodek_card,
.nas-card.novica_kartica {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.07);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: box-shadow 0.18s, transform 0.18s;
    position: relative;
}
.nas-card.dogodek_card:hover,
.nas-card.novica_kartica:hover {
    box-shadow: 0 5px 22px rgba(0,0,0,0.13);
    transform: translateY(-2px);
}
.nas-card-link {
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: 12px;
}
.nas-card-link:focus-visible {
    outline: 2px solid var(--col-blue, #0D97BF);
    outline-offset: 2px;
}
.nas-card-naslov a,
.nas-card-kraj {
    position: relative;
    z-index: 2;
}
.nas-card-media {
    position: relative;
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: #eee;
}
.nas-card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.nas-card-datum-overlay {
    position: absolute;
    top: 10px;
    left: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 48px;
    padding: 6px 8px;
    background: rgba(255,255,255,0.95);
    border-radius: 8px;
    line-height: 1;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
    z-index: 2;
}
.nas-card-datum-overlay.nas-card-datum-danes {
    /* a11y: --col-blue daje 2.29:1 z white, --col-blue-dark = 4.87:1 AA */
    background: var(--col-blue-dark, #0D7AA0);
    color: #fff;
}
.nas-card-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 12px 14px 14px 14px;
    flex: 1;
    position: relative;
}
/* Novice kartice: datum levo, info desno */
.nas-card.novica_kartica .nas-card-body {
    flex-direction: row;
    align-items: flex-start;
    gap: 12px;
}
.nas-card.novica_kartica .nas-card-datum {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    padding: 6px 8px;
    background: #f5f5f5;
    border-radius: 8px;
    line-height: 1;
    flex-shrink: 0;
}
.nas-card.novica_kartica .nas-card-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    flex: 1;
}
.nas-card-dan {
    font-family: var(--font-condensed);
    font-size: var(--font-3xl);
    font-weight: 700;
    color: #333;
}
.nas-card-datum-overlay.nas-card-datum-danes .nas-card-dan { color: #fff; }
.nas-card-mesec {
    font-family: var(--font-main);
    font-size: var(--font-xs);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--col-grey, #666);
    margin-top: 2px;
}
/* a11y: rgba(255,255,255,0.92) na col-blue-dark = 4.37:1 (FAIL); pure white = 4.87:1 (AA) */
.nas-card-datum-overlay.nas-card-datum-danes .nas-card-mesec { color: #fff; }
.nas-card-kdaj {
    font-family: var(--font-main);
    font-size: var(--font-sm);
    color: var(--col-grey, #666);
}
.nas-card-naslov {
    font-family: var(--font-condensed);
    font-size: var(--font-xl);
    font-weight: 700;
    line-height: 1.25;
    margin: 2px 0 4px 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.nas-card-naslov a { text-decoration: none; color: inherit; }
.nas-card-naslov a:hover { text-decoration: underline; }
.nas-card-kraj {
    font-family: var(--font-main);
    font-size: var(--font-sm);
    color: var(--col-grey, #666);
    display: inline-flex;
    align-items: baseline;
    gap: 5px;
}
.nas-card-kraj i { color: #999; }
/* a11y: opacity 0.85 + #666 daje ~4.11:1 (FAIL). Brez opacity = 5.74:1 (AA) */
.nas-card-kraj em { font-style: normal; }
.nas-card-opis {
    font-family: var(--font-main);
    font-size: var(--font-md);
    color: #444;
    margin: 4px 0 0 0;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.nas-card-opis a { text-decoration: none; color: inherit; position: relative; z-index: 2; }

/* --- Zvrsti chips --- */
.nas-zvrsti {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 10px;
}
.nas-zvrst {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 18px 12px;
    border-radius: 12px;
    background: #fff;
    text-decoration: none;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
    transition: transform 0.15s, box-shadow 0.15s;
    color: #333;
    font-family: var(--font-condensed);
    font-size: var(--font-lg);
    font-weight: 700;
    text-align: center;
}
.nas-zvrst i {
    font-size: 24px;
    font-weight: 400;
}
.nas-zvrst:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.12);
}
.nas-zvrst.zvrst-glasba { color: var(--nas-glasba); }
.nas-zvrst.zvrst-gledalisce { color: var(--nas-gledalisce); }
.nas-zvrst.zvrst-razstave { color: var(--nas-razstave); }
.nas-zvrst.zvrst-za-otroke { color: var(--nas-za-otroke); }
.nas-zvrst.zvrst-izobrazevanje { color: var(--nas-izobrazevanje); }
.nas-zvrst.zvrst-drugo { color: var(--nas-drugo); }
.nas-zvrst.zvrst-glasba:hover { background: var(--nas-glasba); color: #fff; }
.nas-zvrst.zvrst-gledalisce:hover { background: var(--nas-gledalisce); color: #fff; }
.nas-zvrst.zvrst-razstave:hover { background: var(--nas-razstave); color: #fff; }
.nas-zvrst.zvrst-za-otroke:hover { background: var(--nas-za-otroke); color: #fff; }
.nas-zvrst.zvrst-izobrazevanje:hover { background: var(--nas-izobrazevanje); color: #fff; }
.nas-zvrst.zvrst-drugo:hover { background: var(--nas-drugo); color: #fff; }

.p_novice { color: var(--nas-novice); }

/* --- Mobile prilagoditve --- */
@media (max-width: 640px) {
    .nas-naslovna {
        padding: 0 10px 24px 10px;
    }
    .nas-hero-head,
    .nas-sekcija-head {
        padding: 4px 0 10px 0;
    }
    .nas-hero-scroller {
        padding: 4px 2px 14px 2px;
        scroll-padding-left: 2px;
    }
    .nas-hero-kartica {
        flex: 0 0 78vw;
        aspect-ratio: 3 / 4;
    }
    .nas-card-body {
        padding: 10px 12px 12px 12px;
    }
    .nas-zvrsti {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }
    .nas-zvrst {
        padding: 14px 10px;
    }
    .nas-zvrst i { font-size: 20px; }
    .nas-zvrst span { font-size: var(--font-md); }
}

/* =================================================
   Flatpickr — inline koledar (uskladimo z bivšo
   jQuery UI datepicker estetiko: ozek, sive celice,
   modri kvadratki za dni z dogodki, mali arrowi)
   ================================================= */
.flatpickr-calendar.inline {
    width: 220px;
    max-width: 100%;
    padding: 10px 12px;
    background: #EEE;
    border-radius: var(--radius-lg, 12px);
    box-shadow: none;
    font-family: Tahoma, Arial, sans-serif;
    font-size: var(--font-base, 12px);
    text-transform: uppercase;
    margin-top: 8px;
}
.flatpickr-calendar.inline .flatpickr-months {
    height: 28px;
    padding-bottom: 8px;
    border-bottom: 1px solid #d6d6d6;
    margin-bottom: 8px;
    align-items: center;
}
.flatpickr-calendar.inline .flatpickr-month {
    height: 24px;
    color: #565656;
    line-height: 24px;
}
.flatpickr-calendar.inline .flatpickr-current-month {
    padding: 0;
    height: 24px;
    line-height: 24px;
    font-size: var(--font-base, 12px);
    font-weight: 400;
}
.flatpickr-calendar.inline .flatpickr-current-month .cur-month {
    font-weight: 400;
    color: #565656;
    margin: 0 4px 0 0;
}
.flatpickr-calendar.inline .flatpickr-current-month .numInputWrapper {
    width: 50px;
}
.flatpickr-calendar.inline .flatpickr-current-month input.cur-year {
    color: #a8a8a8;
    font-weight: 400;
    font-size: var(--font-base, 12px);
    padding: 0;
}
.flatpickr-calendar.inline .flatpickr-monthDropdown-months {
    color: #565656;
    font-weight: 400;
    background: transparent;
    padding: 0;
}
.flatpickr-calendar.inline .flatpickr-prev-month,
.flatpickr-calendar.inline .flatpickr-next-month {
    padding: 4px 6px;
    height: 24px;
    color: #565656;
    fill: #565656;
}
.flatpickr-calendar.inline .flatpickr-prev-month svg,
.flatpickr-calendar.inline .flatpickr-next-month svg {
    width: 8px;
    height: 12px;
}
.flatpickr-calendar.inline .flatpickr-weekdays {
    height: 22px;
}
.flatpickr-calendar.inline .flatpickr-weekday {
    color: #a8a8a8;
    font-weight: 400;
    font-size: var(--font-base, 12px);
    text-transform: uppercase;
}
.flatpickr-calendar.inline .dayContainer {
    width: 196px;
    min-width: 0;
    max-width: 196px;
    padding: 0 2px 0 0;
}
.flatpickr-calendar.inline .flatpickr-days {
    width: 196px;
}
.flatpickr-calendar.inline .flatpickr-day {
    max-width: 27px;
    height: 22px;
    line-height: 22px;
    margin: 1px 0;
    border-radius: 4px;
    color: #a8a8a8;
    font-weight: 400;
    border: 1px solid transparent;
    background: transparent;
}
.flatpickr-calendar.inline .flatpickr-day:hover {
    background: #ddd;
    color: #333;
    border-color: transparent;
}
.flatpickr-calendar.inline .flatpickr-day.prevMonthDay,
.flatpickr-calendar.inline .flatpickr-day.nextMonthDay {
    color: #c8c8c8;
}
.flatpickr-calendar.inline .flatpickr-day.today {
    border-color: #6a9113;
    color: #6a9113;
    background: transparent;
}
.flatpickr-calendar.inline .flatpickr-day.today:hover {
    background: #6a9113;
    color: #fff;
}
.flatpickr-calendar.inline .flatpickr-day.selected,
.flatpickr-calendar.inline .flatpickr-day.selected:hover {
    background: #6a9113;
    border-color: #6a9113;
    color: #fff;
}
/* Dnevi z dogodki — modri kvadratki kot pri starem .highlight */
.flatpickr-calendar.inline .flatpickr-day.ima-dogodek {
    background: #ACE6F7;
    color: #000;
    font-weight: 700;
    border-color: transparent;
    border-radius: 4px;
}
.flatpickr-calendar.inline .flatpickr-day.ima-dogodek:hover {
    background: var(--col-blue, #18B9E8);
    color: #fff;
}
.flatpickr-calendar.inline .flatpickr-day.ima-dogodek.selected,
.flatpickr-calendar.inline .flatpickr-day.ima-dogodek.selected:hover {
    background: var(--col-blue, #18B9E8);
    border-color: var(--col-blue, #18B9E8);
    color: #fff;
}
.flatpickr-calendar.inline .flatpickr-day.ima-dogodek.prevMonthDay,
.flatpickr-calendar.inline .flatpickr-day.ima-dogodek.nextMonthDay {
    opacity: 0.5;
}
/* flatpickr base ima overflow:hidden na .flatpickr-innerContainer,
   kar reže desni rob zadnjega stolpca. */
.flatpickr-calendar.inline .flatpickr-innerContainer {
    overflow: visible;
}

/* /koledar: bela podlaga naj sega do dna viewport-a na mobilnem */
@media (max-width: 816px) {
    #vsebina {
        min-height: calc(100vh - var(--sh-h, 56px));
    }
}

/* Mobilna prilagoditev: koledar nekoliko širši in centriran v viewport */
@media (max-width: 816px) {
    /* Centriranje: oboje na ravni #calendar (kjer flatpickr injectira)
       in na sami flatpickr-calendar.inline — različne knjižnične verzije
       injectirajo na različnih mestih (sibling/child). */
    #calendar { text-align: center; }
    .flatpickr-calendar.inline {
        display: block !important;
        width: min(320px, calc(100% - 24px)) !important;
        max-width: none !important;
        margin: 12px auto !important;
        padding: 14px 16px;
    }
    .flatpickr-calendar.inline .dayContainer,
    .flatpickr-calendar.inline .flatpickr-days {
        width: 100%;
        max-width: 100%;
    }
    .flatpickr-calendar.inline .flatpickr-day {
        max-width: none;
        flex-basis: calc(100% / 7);
        height: 32px;
        line-height: 32px;
        font-size: var(--font-lg, 14px);
    }
    .flatpickr-calendar.inline .flatpickr-weekday {
        font-size: var(--font-md, 13px);
    }
    .flatpickr-calendar.inline .flatpickr-current-month,
    .flatpickr-calendar.inline .flatpickr-current-month .cur-month,
    .flatpickr-calendar.inline .flatpickr-current-month input.cur-year {
        font-size: var(--font-lg, 14px);
    }
}

/* =============================================
   kosi/4.php — levi info stolpec
   Razdelki "Organizator / Kontakt / Cena" + akcijski gumbi
   ============================================= */

.dogodek-napaka {
    margin-left: 550px;
}

.info-blok {
    margin-bottom: 14px;
    margin-right: 14px;
    padding-bottom: 12px;
    border-bottom: 1px solid #EEE;
}
.info-blok + .info-akcije {
    margin-top: 4px;
}
.info-label {
    font-family: 'Raleway', sans-serif;
    font-size: 11px;
    font-weight: 600;
    color: var(--col-pink);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 6px;
}
.info-vrednost {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    color: var(--col-grey);
    font-family: var(--font-condensed);
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 2px;
    text-decoration: none;
    word-break: break-word;
    overflow-wrap: anywhere;
}
.info-vrednost i {
    flex: 0 0 14px;
    color: #999;
    text-align: center;
    line-height: 1.5;
}
.info-vrednost-link:hover {
    color: #000;
}
.info-vrednost-link:hover i {
    color: #555;
}
.info-vrednost-brezplacno {
    color: #2D7D2D;
    font-weight: 500;
}
.info-vrednost-brezplacno i {
    color: #2D7D2D;
}

.info-akcije {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 4px;
    padding-right: 14px;
}
/* .info-gumb je tudi na .koledar-trigger znotraj .info-akcije —
   ker je pravilo definirano kasneje od .koledar-trigger, premaga
   transparenten background in 0 padding iz baseline trigger pravila. */
.info-gumb {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    box-sizing: border-box;
    padding: 9px 12px;
    border-radius: 8px;
    background: #F3F3F3;
    color: #444;
    border: 1px solid #DDD;
    text-decoration: none;
    font-family: 'Raleway', sans-serif;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.3;
    cursor: pointer;
    text-align: left;
}
.info-gumb:hover,
.info-gumb:focus-visible {
    background: #E8E8E8;
    color: #000;
    text-decoration: none;
}
.info-gumb > i {
    flex: 0 0 auto;
    font-size: 14px;
}
.info-gumb > span {
    flex: 1 1 auto;
    min-width: 0;
}
.info-gumb-prijava {
    background: #EBF4FF;
    color: #1A6DB5;
    border-color: #C3DDF8;
}
.info-gumb-prijava:hover,
.info-gumb-prijava:focus-visible {
    background: #D3E9FF;
    color: #0F5598;
}
.info-razdalja {
    flex: 0 0 auto;
    font-weight: 600;
    font-size: 12px;
    color: #1A6DB5;
    background: rgba(26, 109, 181, 0.1);
    padding: 2px 7px;
    border-radius: 12px;
    white-space: nowrap;
}
.info-gumb.koledar-trigger .koledar-trigger-chev {
    flex: 0 0 auto;
    font-size: 11px;
    opacity: 0.7;
    margin-left: auto;
}
.info-akcije .koledar-wrap {
    display: block;
    width: 100%;
}
.info-akcije .koledar-meni {
    left: 0;
    right: 0;
}

.video_play_overlay {
    position: absolute;
    margin-left: 72px;
    margin-top: 35px;
    width: 59px;
    height: 59px;
    background-image: url(/slike/video.png);
}

/* Detail ponudbe v katalogu — podnaslovi sekcij in seznami.
   Nadomesti stare inline style="font-size: 1.4em" h2 v kosi/ponudba.php. */
.ponudba-podnaslov {
    font-size: 1.4em;
    margin-top: 1em;
    margin-bottom: 0.4em;
}
.ponudba-podnaslov-normalno {
    font-weight: normal;
}
.ponudba-seznam {
    margin-top: 6px;
    margin-bottom: 4px;
}
.ponudba-seznam-kvadrat {
    list-style: square;
}

/* =================================================
   YouTube façade — lažji nadomestek za iframe.
   Klik naloži pravi embed (ui.js). Privarči ~1.4 MB JS na detail strani.
   Specificity z .yt-facade.sam_video premaga obstoječe .sam_video pravilo.
   ================================================= */
.yt-facade.sam_video,
.yt-facade.mobile_video,
.yt-facade.sam_video_dogodki,
.yt-loaded.sam_video,
.yt-loaded.mobile_video,
.yt-loaded.sam_video_dogodki {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    position: relative;
    overflow: hidden;
    background: #000;
    padding: 0;
    border: 0;
    margin: 12px 0 16px;
}
.yt-facade.sam_video,
.yt-facade.mobile_video,
.yt-facade.sam_video_dogodki {
    cursor: pointer;
}
.yt-facade-poster {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border: 0;
}
.yt-facade-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 68px;
    height: 48px;
    pointer-events: none;
    z-index: 2;
}
.yt-facade-play-bg {
    fill: #212121;
    fill-opacity: 0.8;
    transition: fill 150ms, fill-opacity 150ms;
}
.yt-facade:hover .yt-facade-play-bg,
.yt-facade:focus-visible .yt-facade-play-bg {
    fill: #f00;
    fill-opacity: 1;
}

/* =======================================================
   CMP — Consent Management Platform: banner + settings modal
   ======================================================= */
.cmp-banner {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9700;
    background: #1a1a2e;
    color: #fff;
    padding: 14px 20px;
    box-shadow: 0 -6px 20px rgba(0,0,0,0.25);
    display: flex;
    gap: 16px;
    align-items: center;
    flex-wrap: wrap;
    animation: cmp-banner-up 0.3s ease-out;
}
.cmp-banner[hidden] { display: none !important; }
.cmp-banner-text { flex: 1; min-width: 260px; font-size: 13px; line-height: 1.4; }
.cmp-banner-text strong { display: block; margin-bottom: 4px; color: #fff; font-size: 14px; }
.cmp-banner-text p { margin: 0; color: #ccc; }
.cmp-banner-text a { color: #ff8a00; text-decoration: underline; }
.cmp-banner-akcije { display: flex; gap: 8px; flex-wrap: wrap; }
.cmp-btn {
    background: #444;
    color: #fff;
    border: 0;
    border-radius: 6px;
    padding: 9px 16px;
    font-size: 13px;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
    transition: background 0.15s;
}
.cmp-btn:hover, .cmp-btn:focus-visible { background: #555; }
.cmp-btn-primary { background: #C2007E; }
.cmp-btn-primary:hover, .cmp-btn-primary:focus-visible { background: #A30068; }
.cmp-btn-link { background: transparent; color: #aaa; text-decoration: underline; padding: 9px 8px; }
.cmp-btn-link:hover, .cmp-btn-link:focus-visible { background: transparent; color: #fff; }
@keyframes cmp-banner-up { from { transform: translateY(100%); } to { transform: translateY(0); } }
@media (max-width: 640px) {
    .cmp-banner { padding: 12px 14px; bottom: 56px; /* nad bottom_nav-om */ }
    .cmp-banner-text { font-size: 12px; }
    .cmp-banner-akcije { width: 100%; justify-content: stretch; }
    .cmp-banner-akcije .cmp-btn { flex: 1; padding: 9px 8px; font-size: 12px; }
}

/* Settings modal */
.cmp-modal {
    position: fixed;
    inset: 0;
    z-index: 9800;
    display: flex;
    align-items: center;
    justify-content: center;
}
.cmp-modal[hidden] { display: none !important; }
.cmp-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.6);
    cursor: pointer;
}
.cmp-modal-panel {
    position: relative;
    background: #fff;
    color: #222;
    border-radius: 10px;
    max-width: 560px;
    width: calc(100% - 40px);
    max-height: calc(100vh - 60px);
    display: flex;
    flex-direction: column;
    box-shadow: 0 12px 40px rgba(0,0,0,0.3);
    animation: cmp-modal-in 0.18s ease-out;
}
@keyframes cmp-modal-in { from { opacity: 0; transform: scale(0.96); } to { opacity: 1; transform: scale(1); } }
.cmp-modal-head {
    display: flex;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid #eee;
}
.cmp-modal-head h2 { margin: 0; flex: 1; font-size: 18px; color: #222; }
.cmp-modal-x {
    background: transparent;
    border: 0;
    font-size: 28px;
    line-height: 1;
    color: #888;
    padding: 0 8px;
    cursor: pointer;
}
.cmp-modal-x:hover, .cmp-modal-x:focus-visible { color: #222; }
.cmp-modal-body { padding: 16px 20px; overflow-y: auto; }
.cmp-intro { margin: 0 0 16px; color: #555; font-size: 14px; line-height: 1.5; }
.cmp-service {
    display: flex;
    gap: 12px;
    padding: 12px 0;
    border-top: 1px solid #f0f0f0;
    cursor: pointer;
    align-items: flex-start;
}
.cmp-service:first-of-type { border-top: 0; }
.cmp-service input[type="checkbox"] {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    margin-top: 2px;
    accent-color: #C2007E;
    cursor: pointer;
}
.cmp-service-text { flex: 1; }
.cmp-service-text strong { display: block; font-size: 15px; color: #222; margin-bottom: 3px; }
.cmp-service-text small { display: block; color: #666; font-size: 13px; line-height: 1.45; }
.cmp-pojasnilo { margin: 16px 0 0; color: #777; font-size: 12px; font-style: italic; padding-top: 12px; border-top: 1px dashed #ddd; }
.cmp-modal-foot {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 14px 20px;
    border-top: 1px solid #eee;
    background: #f8f8f8;
    border-radius: 0 0 10px 10px;
}
.cmp-modal-foot .cmp-btn { background: #ddd; color: #333; }
.cmp-modal-foot .cmp-btn:hover { background: #ccc; }
.cmp-modal-foot .cmp-btn-primary { background: #C2007E; color: #fff; }
.cmp-modal-foot .cmp-btn-primary:hover { background: #A30068; }
.cmp-foot-spacer { flex: 1; }
body.cmp-modal-open { overflow: hidden; }

/* CMP YouTube consent wrapper:
   - Brez consent-a: prikazan .cmp-yt-placeholder z gumbom "Sprejmi YouTube".
   - S consent-om: skrit placeholder, prikazan pravi .yt-facade (poster + play).
   Pre-render <script> v index.php doda .youtube-consent na <html> če je
   localStorage flag set, da preprečimo flicker. */
.cmp-yt-wrapper { display: block; }
.youtube-consent .cmp-yt-placeholder { display: none !important; }
.youtube-consent .yt-facade[hidden] { display: block !important; }
.cmp-yt-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: linear-gradient(135deg, #2a0000 0%, #4a0000 100%);
    color: #fff;
    padding: 30px 20px;
    border-radius: 8px;
    min-height: 200px;
    aspect-ratio: 16/9;
}
.cmp-yt-placeholder i { font-size: 48px; color: #ff0000; margin-bottom: 12px; }
.cmp-yt-placeholder p { margin: 0 0 14px; font-size: 14px; max-width: 320px; }
.cmp-yt-placeholder .cmp-btn-primary { background: #ff0000; }
.cmp-yt-placeholder .cmp-btn-primary:hover { background: #cc0000; }

/* Mobilni override: brez backdrop-filter blur/saturate na sticky elementih.
   Razlog: Google Maps in druge slikovne vsebine se ob scrollanju vidno
   "potemnijo in zablurajo" za frosted-glass headerjem, kar je vizualno
   moteče. Solidno (skoraj) opaque ozadje da enak kontrast brez expensivnih
   blur efektov + brez compositing artefaktov nad map canvas-om. */
@media (max-width: 816px) {
    #siteheader,
    #iskanje_bar {
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        background: rgba(255,255,255,0.97);
    }
    /* SCROLL-FOKUS POPRAVEK:
       .dogodki_grid::after je `position: fixed; inset: 0` full-viewport overlay
       z backdrop-filter blur. Namen je dim cards okrog fokusirane kartice
       (cards imajo z-index 61, nad overlay z-index 60). A overlay pokriva
       ZUNANJI UI (map view, view toggle [Seznam|Zemljevid], filter chip-e) ki
       imajo z-index auto (0) — torej so PADJEMU overlaya in se blurraju.
       Rešitev: lift teh elementov nad overlay (z-index 62, pod cards 61
       da cards še vedno višje za hover/focus, a nad overlayem).
       Map view (#map_canvas_listing) potrebuje višji (65), ker je nad cards. */
    .view-toggle-wrap,
    .zemljevid_blok-listing,
    .nas-blizu {
        position: relative;
        z-index: 65;
    }
    /* Map canvas in placeholder dobita z-index, da scroll-fokus overlay ne
       blure-a Google Maps render-a. */
    #map_canvas_listing,
    #map_placeholder_listing,
    #map_canvas,
    #map_placeholder,
    #moje_zemljevid,
    #moje_zemljevid_placeholder {
        position: relative;
        z-index: 65;
    }
}

/* Najbližji dogodki — widget na naslovnici */
.nas-blizu .nas-blizu-body {
    padding: 16px 18px;
    background: linear-gradient(135deg, #fff5fa 0%, #fffaf0 100%);
    border: 1px dashed #f0c5dd;
    border-radius: 10px;
    text-align: center;
}
.nas-blizu-cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #C2007E;
    color: #fff;
    border: 0;
    border-radius: 24px;
    padding: 10px 22px;
    font-size: 15px;
    font-weight: 700;
    font-family: inherit;
    cursor: pointer;
    transition: background 0.15s, transform 0.15s;
}
/* HTML `hidden` atribut zahteva display:none, a inline-flex zgoraj ga preglasi.
   !important da se gumb pravilno skrije po prikazu rezultatov. */
.nas-blizu-cta[hidden] { display: none !important; }
.nas-blizu-cta:hover, .nas-blizu-cta:focus-visible {
    background: #A30068;
    transform: translateY(-1px);
}
.nas-blizu-cta:disabled { background: #888; cursor: wait; transform: none; }
.nas-blizu-info {
    margin: 10px 0 0;
    color: #777;
    font-size: 12px;
    line-height: 1.4;
}
.nas-blizu-napaka {
    margin: 10px 0 0;
    color: #b00020;
    font-size: 13px;
    font-weight: 600;
}
.nas-blizu-seznam {
    list-style: none;
    margin: 12px 0 0;
    padding: 0;
    text-align: left;
}
.nas-blizu-seznam li { margin-bottom: 8px; }
.nas-blizu-element {
    display: block;
    padding: 10px 14px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 8px;
    text-decoration: none;
    color: inherit;
    transition: border-color 0.15s, transform 0.15s;
}
.nas-blizu-element:hover, .nas-blizu-element:focus-visible {
    border-color: #C2007E;
    transform: translateY(-1px);
    text-decoration: none;
}
.nas-blizu-meta {
    font-size: 12px;
    color: #C2007E;
    font-weight: 600;
    margin-bottom: 3px;
}
.nas-blizu-naslov {
    font-size: 15px;
    font-weight: 700;
    color: #222;
    line-height: 1.3;
}
.nas-blizu-kraj { font-size: 13px; color: #666; margin-top: 3px; }
.nas-blizu-prazno { color: #777; font-size: 14px; margin: 10px 0 0; }
@media (max-width: 640px) {
    .nas-blizu .nas-blizu-body { padding: 12px 14px; }
    .nas-blizu-cta { padding: 9px 16px; font-size: 14px; }
}

/* Polmer slider na /moje (lokacija sekcija) */
.moje-polmer-control {
    margin: 14px 0 0;
    padding: 12px 14px;
    background: #fafafa;
    border: 1px solid #eee;
    border-radius: 8px;
}
.moje-polmer-label {
    display: block;
    font-size: 14px;
    color: #444;
    margin-bottom: 8px;
}
.moje-polmer-label strong { color: #C2007E; }
.moje-polmer-slider {
    width: 100%;
    accent-color: #C2007E;
    margin: 6px 0 2px;
}
.moje-polmer-skala {
    display: flex;
    justify-content: space-between;
    color: #888;
    font-size: 11px;
    margin: 0 0 8px;
}

/* View toggle [Seznam | Zemljevid] na /dogodki */
.view-toggle-wrap {
    display: flex;
    gap: 6px;
    padding: 4px 14px 10px;
}
.view-toggle {
    flex: 1;
    text-align: center;
    padding: 9px 14px;
    background: #f5f5f5;
    color: #555;
    border-radius: 8px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    border: 1px solid #e2e2e2;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.view-toggle:hover, .view-toggle:focus-visible {
    background: #e8e8e8;
    color: #222;
    text-decoration: none;
}
.view-toggle.aktiven {
    background: #C2007E;
    color: #fff;
    border-color: #C2007E;
}
.view-toggle.aktiven:hover, .view-toggle.aktiven:focus-visible {
    background: #A30068;
    border-color: #A30068;
    color: #fff;
}
.view-toggle i { margin-right: 4px; }

/* Map-first view: placeholder + canvas blok */
.zemljevid_blok-listing {
    margin: 0 14px 18px;
}
.zemljevid_blok-listing #map_placeholder_listing {
    background: linear-gradient(135deg, #f5f5f5 0%, #fafafa 100%);
    border: 2px dashed #ccc;
    border-radius: 10px;
    padding: 40px 20px;
    text-align: center;
    min-height: 240px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.zemljevid_blok-listing .zemljevid_gumb {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: #C2007E;
    color: #fff;
    border: 0;
    border-radius: 24px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    font-family: inherit;
    transition: background 0.15s, transform 0.15s;
}
.zemljevid_blok-listing .zemljevid_gumb:hover {
    background: #A30068;
    transform: translateY(-1px);
}
.zemljevid_blok-listing .zemljevid_info {
    margin: 14px 0 0;
    color: #666;
    font-size: 12px;
    line-height: 1.45;
    max-width: 500px;
}
.zemljevid_blok-listing #map_canvas_listing {
    width: 100%;
    height: 60vh;
    min-height: 360px;
    border-radius: 10px;
    overflow: hidden;
}
@media (max-width: 640px) {
    .view-toggle-wrap   { padding: 4px 10px 8px; }
    .view-toggle        { padding: 8px 12px; font-size: 13px; }
    .zemljevid_blok-listing { margin: 0 10px 14px; }
    .zemljevid_blok-listing #map_placeholder_listing { padding: 30px 16px; min-height: 200px; }
    .zemljevid_blok-listing #map_canvas_listing      { height: 70vh; min-height: 400px; }
}

/* Offline indikator — sticky banner spodaj, ko ni omrežja */
.offline-indikator {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 940;
    background: #444;
    color: #fff;
    padding: 8px 14px;
    font-size: 13px;
    text-align: center;
    box-shadow: 0 -2px 8px rgba(0,0,0,0.15);
    animation: offline-slide 0.25s ease-out;
}
.offline-indikator i { margin-right: 5px; opacity: 0.8; }
@keyframes offline-slide {
    from { transform: translateY(100%); }
    to   { transform: translateY(0); }
}
@media (max-width: 640px) {
    .offline-indikator { bottom: 56px; /* nad bottom_nav-om */ font-size: 12px; padding: 7px 12px; }
}

/* PWA install banner — slide-down z vrha, ne tekmuje s FAB-om/bottom_nav-om */
/* PWA install banner — pripet kot prvi otrok #container-ja, da je dejansko
   nad siteheader-jem (ne overlay s position:fixed, ki ga je siteheader z
   z-index 9999 prej zakril). Statična pozicija pomeni, da banner potisne
   ostali layout (vključno z siteheader-jem) navzdol; ob scrollu se odpelje
   z vsebino. */
.pwa-install-banner {
    position: static;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: #1a1a2e;
    color: #fff;
    box-shadow: 0 4px 14px rgba(0,0,0,0.18);
    font-size: 14px;
    line-height: 1.35;
    animation: pwa-banner-slide 0.3s ease-out;
}
.pwa-install-text { flex: 1; }
.pwa-install-btn {
    background: #C2007E;
    color: #fff;
    border: 0;
    border-radius: 6px;
    padding: 8px 16px;
    font-weight: 700;
    cursor: pointer;
    font-family: inherit;
    font-size: 14px;
}
.pwa-install-btn:hover { background: #A30068; }
.pwa-install-close {
    background: transparent;
    color: #fff;
    border: 0;
    font-size: 24px;
    line-height: 1;
    padding: 4px 8px;
    cursor: pointer;
    opacity: 0.7;
}
.pwa-install-close:hover { opacity: 1; }
@keyframes pwa-banner-slide {
    from { transform: translateY(-100%); opacity: 0; }
    to   { transform: translateY(0);     opacity: 1; }
}
@media (max-width: 640px) {
    .pwa-install-banner { padding: 10px 12px; font-size: 13px; gap: 8px; }
    .pwa-install-btn    { padding: 7px 12px; font-size: 13px; }
}

/* ============================================================================
   Welcome modal — onboarding ob prvem obisku (IDEJE 1.1)
   3-koračni dialog s pikicami v glavi, gumbi v nogi.
   ============================================================================ */
.welcome-modal {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
}
.welcome-modal[hidden] { display: none !important; }
.welcome-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
}
.welcome-modal-panel {
    position: relative;
    max-width: 520px;
    width: calc(100% - 24px);
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25);
    animation: welcome-in 0.22s ease-out;
    max-height: calc(100vh - 24px);
    display: flex;
    flex-direction: column;
}
@keyframes welcome-in {
    from { opacity: 0; transform: scale(0.96) translateY(8px); }
    to   { opacity: 1; transform: scale(1) translateY(0); }
}
.welcome-modal.zapiranje .welcome-modal-panel {
    animation: welcome-out 0.18s ease-in forwards;
}
@keyframes welcome-out {
    to { opacity: 0; transform: scale(0.98); }
}

.welcome-modal-head {
    display: flex;
    align-items: center;
    padding: 14px 18px 0;
    gap: 12px;
}
.welcome-koraki {
    flex: 1;
    display: flex;
    gap: 8px;
}
.welcome-pika {
    width: 8px; height: 8px;
    border-radius: 50%;
    background: #ddd;
    transition: background 0.18s, transform 0.18s;
}
.welcome-pika.aktivna { background: #C2007E; transform: scale(1.25); }

.welcome-modal-x {
    background: none; border: 0;
    font-size: 26px; line-height: 1;
    color: #999; cursor: pointer; padding: 0 4px;
}
.welcome-modal-x:hover, .welcome-modal-x:focus-visible { color: #222; }

.welcome-modal-body {
    padding: 8px 24px 8px;
    overflow-y: auto;
}
.welcome-korak[hidden] { display: none; }
.welcome-ikona {
    font-size: 44px;
    text-align: center;
    margin: 0 0 10px;
    color: #C2007E;
    line-height: 1;
}
/* Demo animacija srca: kazalec pride, klikne, prazno postane polno + utripa */
.welcome-srce-demo { line-height: 1; }
.welcome-srce-scena {
    position: relative;
    display: inline-block;
    width: 140px;
    height: 64px;
    vertical-align: middle;
}
.welcome-srce-scena .welcome-srce-prazno,
.welcome-srce-scena .welcome-srce-polno {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 60px;
    text-align: center;
    font-size: 50px;
    line-height: 1;
    color: #C2007E;
    transform: translate(-50%, -50%);
    will-change: opacity, transform;
}
.welcome-srce-scena .welcome-srce-prazno {
    animation: welcome-prazno 4s ease-in-out infinite;
}
.welcome-srce-scena .welcome-srce-polno {
    opacity: 0;
    animation: welcome-polno 4s ease-in-out infinite;
}
@keyframes welcome-prazno {
    0%, 42%   { opacity: 1; }
    48%, 95%  { opacity: 0; }
    100%      { opacity: 1; }
}
@keyframes welcome-polno {
    0%, 42%   { opacity: 0; transform: translate(-50%, -50%) scale(1); }
    48%       { opacity: 1; transform: translate(-50%, -50%) scale(1.4); }
    58%       { transform: translate(-50%, -50%) scale(1); }
    66%       { transform: translate(-50%, -50%) scale(1.18); }
    74%       { transform: translate(-50%, -50%) scale(1); }
    82%       { transform: translate(-50%, -50%) scale(1.18); }
    90%       { transform: translate(-50%, -50%) scale(1); }
    95%       { opacity: 1; }
    100%      { opacity: 0; transform: translate(-50%, -50%) scale(1); }
}
.welcome-srce-scena .welcome-kazalec {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 22px;
    height: 22px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' stroke='%23222' stroke-width='1.5' stroke-linejoin='round' d='M5 2 L5 19 L9.5 15 L12.5 21 L15 20 L12 14 L18 13.5 Z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
    transform: translate(45px, 12px);
    opacity: 0;
    animation: welcome-kazalec 4s ease-in-out infinite;
}
@keyframes welcome-kazalec {
    0%       { transform: translate(45px, 14px) scale(1); opacity: 0; }
    8%       { opacity: 1; }
    36%      { transform: translate(-4px, 0) scale(1); opacity: 1; }
    44%      { transform: translate(-4px, 0) scale(0.78); }
    50%      { transform: translate(-4px, 0) scale(1); opacity: 1; }
    64%      { transform: translate(-4px, 0) scale(1); opacity: 0; }
    100%     { transform: translate(45px, 14px) scale(1); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
    .welcome-srce-scena .welcome-srce-prazno,
    .welcome-srce-scena .welcome-srce-polno,
    .welcome-srce-scena .welcome-kazalec { animation: none; }
    .welcome-srce-scena .welcome-srce-prazno { opacity: 0; }
    .welcome-srce-scena .welcome-srce-polno  { opacity: 1; }
}
.welcome-modal-body h2 {
    text-align: center;
    margin: 0 0 12px;
    font-size: 22px;
    color: #C2007E;
    font-weight: 600;
}
.welcome-modal-body p {
    margin: 0 0 12px;
    color: #444;
    line-height: 1.55;
    font-size: 16px;
}
.welcome-modal-body p.welcome-namig { font-size: 13px; }
.welcome-kanali {
    list-style: none;
    padding: 0;
    margin: 12px 0;
}
.welcome-kanali li {
    padding: 8px 0;
    color: #444;
    line-height: 1.5;
}
.welcome-kanali li i {
    color: #C2007E;
    width: 22px;
    text-align: center;
    margin-right: 4px;
}
.welcome-namig {
    font-size: 13px;
    color: #777;
    font-style: italic;
    margin-top: 14px !important;
}

.welcome-modal-noga {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px 18px;
    flex-wrap: wrap;
}
.welcome-naprej, .welcome-koncaj {
    background: #C2007E; color: #fff; border: 0;
    padding: 10px 22px; border-radius: 6px;
    cursor: pointer; font-weight: 600;
    margin-left: auto;
    font-size: 15px;
}
.welcome-naprej:hover, .welcome-koncaj:hover,
.welcome-naprej:focus-visible, .welcome-koncaj:focus-visible {
    background: #A30068;
}
.welcome-nazaj {
    background: none; border: 0;
    color: #666;
    padding: 8px 12px; cursor: pointer;
    font-size: 14px;
}
.welcome-nazaj:hover, .welcome-nazaj:focus-visible { color: #222; }
.welcome-snooze {
    background: none; border: 0;
    color: #999;
    padding: 8px 4px; cursor: pointer;
    font-size: 13px;
}
.welcome-snooze:hover, .welcome-snooze:focus-visible {
    color: #666; text-decoration: underline;
}

body.welcome-modal-open { overflow: hidden; }

@media (max-width: 640px) {
    .welcome-modal-panel {
        max-width: none;
        width: calc(100% - 16px);
        margin: 8px;
    }
    .welcome-modal-body { padding: 4px 18px 4px; }
    .welcome-modal-body h2 { font-size: 19px; }
    .welcome-modal-body p { font-size: 15px; }
    .welcome-ikona { font-size: 38px; margin-bottom: 8px; }
    .welcome-modal-noga {
        flex-direction: column-reverse;
        align-items: stretch;
        gap: 8px;
        padding: 12px 18px 16px;
    }
    .welcome-naprej, .welcome-koncaj { margin-left: 0; width: 100%; }
    .welcome-nazaj, .welcome-snooze { text-align: center; }
}

/* ============================================================================
   Feedback modal (IDEJE 11.2) — "Predlog?" iz footerja
   ============================================================================ */
.feedback-modal {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
}
.feedback-modal[hidden] { display: none !important; }
.feedback-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
}
.feedback-modal-panel {
    position: relative;
    max-width: 520px;
    width: calc(100% - 24px);
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25);
    animation: feedback-in 0.22s ease-out;
    max-height: calc(100vh - 24px);
    display: flex;
    flex-direction: column;
    padding: 18px 22px 16px;
}
@keyframes feedback-in {
    from { opacity: 0; transform: scale(0.96) translateY(8px); }
    to   { opacity: 1; transform: scale(1) translateY(0); }
}
.feedback-modal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 8px;
}
.feedback-modal-head h2 {
    font-size: 19px;
    font-weight: 600;
    color: #222;
    margin: 0;
}
.feedback-modal-x {
    background: none; border: 0;
    font-size: 26px; line-height: 1;
    color: #999; cursor: pointer; padding: 0 4px;
}
.feedback-modal-x:hover, .feedback-modal-x:focus-visible { color: #222; }
.feedback-opis {
    margin: 0 0 14px;
    color: #555;
    line-height: 1.5;
    font-size: 14px;
}
.feedback-form { display: flex; flex-direction: column; gap: 12px; }
.feedback-tip {
    border: 0;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.feedback-tip legend {
    font-size: 13px;
    color: #555;
    margin-bottom: 6px;
    width: 100%;
    padding: 0;
}
.feedback-tip-opcija {
    flex: 1 1 auto;
    cursor: pointer;
    position: relative;
}
.feedback-tip-opcija input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.feedback-tip-opcija span {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 12px;
    border: 1px solid #d0d0d0;
    border-radius: 8px;
    background: #f7f7f7;
    color: #444;
    font-size: 14px;
    text-align: center;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.feedback-tip-opcija input[type="radio"]:checked + span {
    background: #fff5fa;
    border-color: #C2007E;
    color: #C2007E;
    font-weight: 500;
}
.feedback-tip-opcija input[type="radio"]:focus-visible + span {
    outline: 2px solid #C2007E;
    outline-offset: 2px;
}
.feedback-polje { display: flex; flex-direction: column; gap: 4px; }
.feedback-polje-label {
    font-size: 13px;
    color: #555;
}
.feedback-obvezno { color: #C2007E; font-weight: 600; }
.feedback-form textarea,
.feedback-form input[type="email"] {
    padding: 9px 12px;
    border: 1px solid #767676;
    border-radius: 6px;
    background: #fff;
    color: #222;
    font: inherit;
    font-size: 14px;
    font-family: var(--font-main);
}
.feedback-form textarea { resize: vertical; min-height: 90px; }
.feedback-form textarea:focus,
.feedback-form input[type="email"]:focus {
    outline: 2px solid #C2007E;
    outline-offset: 1px;
    border-color: #C2007E;
}
.feedback-honeypot {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
.feedback-msg {
    padding: 10px 12px;
    border-radius: 6px;
    font-size: 13px;
}
.feedback-msg[hidden] { display: none; }
.feedback-msg-ok {
    background: #e8f5e9;
    color: #1b5e20;
    border: 1px solid #a5d6a7;
}
.feedback-msg-napaka {
    background: #ffebee;
    color: #b71c1c;
    border: 1px solid #ef9a9a;
}
.feedback-akcije {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 4px;
}
.feedback-gumb-prekloi {
    border: 1px solid #d0d0d0;
    background: #fff;
    color: #555;
    padding: 9px 18px;
    border-radius: 999px;
    font: inherit;
    font-size: 14px;
    cursor: pointer;
}
.feedback-gumb-prekloi:hover,
.feedback-gumb-prekloi:focus-visible {
    background: #f0f0f0;
    color: #222;
}
.feedback-gumb-poslji {
    border: 0;
    background: #C2007E;
    color: #fff;
    padding: 9px 22px;
    border-radius: 999px;
    font: inherit;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.feedback-gumb-poslji:hover:not(:disabled),
.feedback-gumb-poslji:focus-visible:not(:disabled) { background: #A30068; }
.feedback-gumb-poslji:disabled { opacity: 0.6; cursor: wait; }

body.feedback-modal-open { overflow: hidden; }

html[data-theme="dark"] .feedback-modal-panel {
    background: var(--theme-card);
    color: var(--theme-text);
}
html[data-theme="dark"] .feedback-modal-head h2 { color: var(--theme-text); }
html[data-theme="dark"] .feedback-modal-x { color: var(--theme-text-muted); }
html[data-theme="dark"] .feedback-modal-x:hover,
html[data-theme="dark"] .feedback-modal-x:focus-visible { color: var(--theme-text); }
html[data-theme="dark"] .feedback-opis,
html[data-theme="dark"] .feedback-tip legend,
html[data-theme="dark"] .feedback-polje-label { color: var(--theme-text-muted); }
html[data-theme="dark"] .feedback-tip-opcija span {
    background: var(--theme-bg-soft);
    border-color: var(--theme-border);
    color: var(--theme-text);
}
html[data-theme="dark"] .feedback-tip-opcija input[type="radio"]:checked + span {
    background: rgba(194, 0, 126, 0.18);
    color: var(--theme-link);
    border-color: var(--theme-link);
}
html[data-theme="dark"] .feedback-form textarea,
html[data-theme="dark"] .feedback-form input[type="email"] {
    background: var(--theme-input-bg);
    border-color: var(--theme-border);
    color: var(--theme-text);
}
html[data-theme="dark"] .feedback-gumb-prekloi {
    background: var(--theme-bg-soft);
    border-color: var(--theme-border);
    color: var(--theme-text);
}
html[data-theme="dark"] .feedback-msg-ok {
    background: rgba(76, 175, 80, 0.18);
    color: #a5d6a7;
    border-color: #4caf50;
}
html[data-theme="dark"] .feedback-msg-napaka {
    background: rgba(244, 67, 54, 0.18);
    color: #ef9a9a;
    border-color: #f44336;
}

@media (max-width: 640px) {
    .feedback-modal-panel { padding: 14px 16px 12px; }
    .feedback-tip-opcija { flex: 1 1 100%; }
    .feedback-akcije { flex-direction: column-reverse; }
    .feedback-akcije button { width: 100%; }
}

/* ============================================================================
   DARK MODE — celovit override (8.2 Phase 2)
   Postavljeno na koncu file-a za max source-order specificity. Cilj: vsi
   uporabniku vidni paneli, kontejneri in tekst-i berljivi v dark mode-u.
   ============================================================================ */
html[data-theme="dark"] body {
    background-color: var(--theme-bg) !important;
    background-image: none !important;
    color: var(--theme-text);
}
html[data-theme="dark"] {
    color-scheme: dark;
}

/* Bazni teksti (širši nego prejšnji override) */
html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4,
html[data-theme="dark"] h5,
html[data-theme="dark"] h6,
html[data-theme="dark"] p,
html[data-theme="dark"] li,
html[data-theme="dark"] td,
html[data-theme="dark"] dd,
html[data-theme="dark"] dt,
html[data-theme="dark"] label,
html[data-theme="dark"] span:not([class*="zastava"]):not([class*="ikona"]) {
    color: inherit;
}
html[data-theme="dark"] body,
html[data-theme="dark"] #container {
    color: var(--theme-text);
}

/* Glavni nav meniji */
html[data-theme="dark"] #cssmenu { /* desktop colored nav ostaja barven (per-sekcija), brez sprememb */ }
html[data-theme="dark"] #top_nav,
html[data-theme="dark"] #bottom_nav {
    background-color: var(--theme-card);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] #top_nav a,
html[data-theme="dark"] #bottom_nav a { color: var(--theme-text); }
html[data-theme="dark"] #top_nav a:hover,
html[data-theme="dark"] #bottom_nav a:hover { color: var(--theme-link); }

/* siteheader (mobile+tablet sticky) — barvni odtenki ostanejo, tekst svetel */
html[data-theme="dark"] #siteheader {
    background: rgba(35, 35, 35, 0.92);
    box-shadow: 0 2px 8px var(--theme-shadow);
}
/* Per-theme variants — light tema barve so v dark modu prebleščeče;
   uporabimo *-dark variante (--col-blue-dark, …). */
html[data-theme="dark"] body.tema-dogodki #siteheader { background: var(--col-blue-dark); }
html[data-theme="dark"] body.tema-novice  #siteheader { background: var(--col-pink-dark); }
html[data-theme="dark"] body.tema-katalog #siteheader { background: var(--col-orange-dark); }
html[data-theme="dark"] body.tema-koledar #siteheader { background: var(--col-green-dark); }
/* Brand text na naslovnici (brez tema class-a) — naj bo svetel. */
html[data-theme="dark"] #siteheader #brand,
html[data-theme="dark"] #siteheader #brand span { color: var(--theme-text); }
html[data-theme="dark"] #siteheader #header_actions button { color: var(--theme-text); }

/* .seznam_vsebine — base ima dashed bottom border + locnica.png background
   slika (svetlo dekorativno ločilo); v dark mode oba odstranimo. Velja za
   vse media query variante (4 base pravila čez breakpoint-e). */
html[data-theme="dark"] .seznam_vsebine {
    background-image: none;
    border-bottom-style: none;
}

/* Aktivni filter pill-i (.af-pill-*) — base so svetli pastelni okvirji
   z barvno tipografijo; v dark naredimo subtle tint v isti hue družini. */
html[data-theme="dark"] .af-pill {
    background: rgba(24, 185, 232, 0.12);
    border-color: rgba(24, 185, 232, 0.35);
    color: #6cd0ee;
}
html[data-theme="dark"] .af-pill:hover {
    background: rgba(24, 185, 232, 0.20);
    border-color: var(--col-blue);
}
html[data-theme="dark"] .af-pill i { color: var(--theme-text-muted); }
html[data-theme="dark"] .af-pill-iskanje {
    background: rgba(238, 144, 0, 0.15);
    border-color: rgba(238, 144, 0, 0.40);
    color: #f4c074;
}
html[data-theme="dark"] .af-pill-iskanje i { color: #f4c074; }
html[data-theme="dark"] .af-pill-blizu {
    background: rgba(45, 125, 45, 0.18);
    border-color: rgba(45, 125, 45, 0.40);
    color: #6fd96f;
}
html[data-theme="dark"] .af-pill-blizu i { color: #6fd96f; }
html[data-theme="dark"] .af-pill-zvrst {
    background: rgba(107, 58, 160, 0.22);
    border-color: rgba(107, 58, 160, 0.50);
    color: #c79ed8;
}
html[data-theme="dark"] .af-pill-zvrst i { color: #c79ed8; }
html[data-theme="dark"] .af-pill-obcina {
    background: rgba(138, 106, 8, 0.22);
    border-color: rgba(138, 106, 8, 0.50);
    color: #e0c97a;
}
html[data-theme="dark"] .af-pill-obcina i { color: #e0c97a; }
html[data-theme="dark"] .af-pill-datum {
    background: rgba(30, 79, 138, 0.28);
    border-color: rgba(30, 79, 138, 0.55);
    color: #8aaee0;
}
html[data-theme="dark"] .af-pill-datum i { color: #8aaee0; }
html[data-theme="dark"] .af-pill-organizator {
    background: var(--theme-card-elev);
    border-color: var(--theme-border);
    color: var(--theme-text);
}
html[data-theme="dark"] .af-pill-organizator i { color: var(--theme-text-muted); }
/* .af-pill-kdaj (filter "Kdaj" — danes/jutri/ta teden/…) — base nima
   svojega pravila, fallback na .af-pill (light blue). V dark damo
   teal/cyan tint. */
html[data-theme="dark"] .af-pill-kdaj {
    background: rgba(24, 185, 232, 0.15);
    border-color: rgba(24, 185, 232, 0.40);
    color: #6cd0ee;
}
html[data-theme="dark"] .af-pill-kdaj i { color: #6cd0ee; }
/* .af-pill-vrsta (katalog) — fallback na .af-pill base; v dark damo
   teal/cyan tint za konsistenco. */
html[data-theme="dark"] .af-pill-vrsta {
    background: rgba(24, 185, 232, 0.15);
    border-color: rgba(24, 185, 232, 0.40);
    color: #6cd0ee;
}
html[data-theme="dark"] .af-pill-vrsta i { color: #6cd0ee; }
/* .af-pill-podzvrst — kot .af-pill-zvrst (purple tint). */
html[data-theme="dark"] .af-pill-podzvrst {
    background: rgba(107, 58, 160, 0.22);
    border-color: rgba(107, 58, 160, 0.50);
    color: #c79ed8;
}
html[data-theme="dark"] .af-pill-podzvrst i { color: #c79ed8; }

/* /moje lokacijski blok — stanje (točen GPS) in polmer slider. */
html[data-theme="dark"] .moje-lokacija-stanje {
    background: var(--theme-card-elev);
    color: var(--theme-text);
}
html[data-theme="dark"] .moje-lokacija-stanje code {
    background: var(--theme-bg-soft);
    color: var(--col-pink);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .moje-polmer-control {
    background: var(--theme-card-elev);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .moje-polmer-label { color: var(--theme-text); }
html[data-theme="dark"] .moje-polmer-label strong { color: var(--col-pink); }
html[data-theme="dark"] .moje-polmer-skala { color: var(--theme-text-muted); }

/* Glavna vsebina — main wrappers */
html[data-theme="dark"] .vsebina,
html[data-theme="dark"] .vsebina_vsebina,
html[data-theme="dark"] .srednji,
html[data-theme="dark"] .o_dogodku,
html[data-theme="dark"] .kajzakaj,
html[data-theme="dark"] main {
    color: var(--theme-text);
    background: transparent;
}

/* Kartice dogodkov in novic v .dogodki_grid (visoka specifika v izvirniku) */
html[data-theme="dark"] .dogodki_grid > .dogodek_card,
html[data-theme="dark"] .dogodki_grid > .novica_kartica {
    background: var(--theme-card);
    color: var(--theme-text);
    box-shadow: 0 2px 10px var(--theme-shadow);
}
html[data-theme="dark"] .dogodki_grid > .dogodek_card:hover,
html[data-theme="dark"] .dogodki_grid > .novica_kartica:hover {
    box-shadow: 0 5px 22px var(--theme-shadow-lg);
}
html[data-theme="dark"] .dogodek_card *,
html[data-theme="dark"] .novica_kartica *,
html[data-theme="dark"] .ponudba_card * {
    color: inherit;
}
html[data-theme="dark"] .dogodek_card .meta,
html[data-theme="dark"] .dogodek_card time,
html[data-theme="dark"] .dogodek_card .kraj,
html[data-theme="dark"] .novica_kartica .meta,
html[data-theme="dark"] .ponudba_card .meta {
    color: var(--theme-text-muted);
}

/* Filter drawer — base `#filter_drawer .fd-panel { background:#fff }` ima
   ID-weighted specifičnost (1,1,0); brez ujemajočega ID-ja dark rule (0,2,1)
   ne prebije. Zato ima dark varianta isto strukturo. */
html[data-theme="dark"] #filter_drawer,
html[data-theme="dark"] #filter_drawer .fd-panel,
html[data-theme="dark"] .fd-vsebina {
    background: var(--theme-card);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .fd-skupina h3 { color: var(--theme-text); }
html[data-theme="dark"] .fd-stevec {
    background: var(--theme-bg-soft);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .fd-stevec.fd-stevec-aktivna {
    color: #fff;
}

/* CMP banner + modal */
html[data-theme="dark"] #cmp-banner,
html[data-theme="dark"] .cmp-modal-panel {
    background: var(--theme-card-elev);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .cmp-modal-head h2,
html[data-theme="dark"] .cmp-modal-body { color: var(--theme-text); }
html[data-theme="dark"] .cmp-modal-x { color: var(--theme-text-muted); }
html[data-theme="dark"] .cmp-btn {
    background: var(--theme-bg-soft);
    color: var(--theme-text);
    border-color: var(--theme-border);
}

/* Iskanje / autocomplete */
html[data-theme="dark"] #ib-iscibtn,
html[data-theme="dark"] .isk-rezultat,
html[data-theme="dark"] .isk-prazno,
html[data-theme="dark"] #iskanje_results {
    background: var(--theme-card);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .isk-rezultat:hover,
html[data-theme="dark"] .isk-vsi:hover {
    background: var(--theme-bg-soft);
}
html[data-theme="dark"] .isk-vsi { background: var(--theme-card); color: var(--theme-text); }

/* Jezikovni meni dropdown — meni v dark, summary v desktopu pa ostane svetel */
html[data-theme="dark"] .jp-meni {
    background: var(--theme-card-elev);
    border-color: var(--theme-border);
    box-shadow: 0 6px 20px var(--theme-shadow-lg);
}
html[data-theme="dark"] .jp-meni a { color: var(--theme-text); }
html[data-theme="dark"] .jp-meni a:hover { background: var(--theme-bg-soft); color: var(--theme-link); }
html[data-theme="dark"] .jezik-preklop-desktop summary {
    background: rgba(40,40,40,0.85);
    border-color: rgba(255,255,255,0.10);
    color: #e6e6e6;
}
html[data-theme="dark"] .jezik-preklop-desktop summary:hover { background: #2a2a2a; }

/* Naročnine — kosarica modal */
html[data-theme="dark"] .narocnina-modal-panel {
    background: var(--theme-card);
    color: var(--theme-text);
}
html[data-theme="dark"] .narocnina-modal-podnaslov,
html[data-theme="dark"] .narocnina-modal-naslov,
html[data-theme="dark"] .narocnina-modal-vir,
html[data-theme="dark"] .narocnina-modal-namig { color: var(--theme-text); }
html[data-theme="dark"] .narocnina-modal-zapri { color: var(--theme-text-muted); }
html[data-theme="dark"] .narocnina-modal-preklici { color: var(--theme-text-muted); }
html[data-theme="dark"] .narocnina-modal-preklici:hover { color: var(--theme-text); }

/* Naročnine — košarica strip + FAB ostaneta barvni */
html[data-theme="dark"] .kosarica-strip-vsebina { color: var(--theme-text); }

/* Komentarji */
html[data-theme="dark"] .komentar,
html[data-theme="dark"] .komentar-form,
html[data-theme="dark"] .komentari-seznam .komentar {
    background: var(--theme-card);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .komentar .avtor { color: var(--theme-text); }
html[data-theme="dark"] .komentar .datum,
html[data-theme="dark"] .komentar .meta { color: var(--theme-text-muted); }

/* Forme — labels in legend */
html[data-theme="dark"] label,
html[data-theme="dark"] legend { color: var(--theme-text); }
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder { color: var(--theme-text-muted); }

/* Generic table */
html[data-theme="dark"] table {
    color: var(--theme-text);
}
html[data-theme="dark"] th { background: var(--theme-bg-soft); color: var(--theme-text); }
html[data-theme="dark"] td { border-color: var(--theme-border); }

/* Footer / glasilo */
html[data-theme="dark"] #footer,
html[data-theme="dark"] .footer,
html[data-theme="dark"] .glasilo-blok {
    background: var(--theme-card);
    color: var(--theme-text);
    border-color: var(--theme-border);
}

/* Zemljevid InfoWindow vsebine (Google Maps DOM) */
html[data-theme="dark"] .gm-style .gm-style-iw-c {
    background: var(--theme-card);
    color: var(--theme-text);
}
html[data-theme="dark"] .gm-style .gm-style-iw-tc::after {
    background: var(--theme-card);
}

/* Posebni overrides za uporabljene utility class-e */
html[data-theme="dark"] .filter-empty-pocisti { background: var(--col-blue); color: #fff; }
html[data-theme="dark"] .pwa-install-banner {
    background: var(--theme-card-elev);
    color: var(--theme-text);
}

/* Slike na karticah ne tonimo */
html[data-theme="dark"] img { filter: brightness(0.92); }
html[data-theme="dark"] .no-dark-filter img,
html[data-theme="dark"] img.no-dark-filter { filter: none; }

/* Linki znotraj vsebine */
html[data-theme="dark"] a:not(.dogodek_card):not(.novica_kartica):not(.ponudba_card):not(button):not(.filter-empty-pocisti):not(.welcome-naprej):not(.welcome-koncaj):not(.snooze-razveljavi) {
    color: var(--theme-link);
}
html[data-theme="dark"] hr { border-color: var(--theme-border-soft); }

/* Aktivni filtri pill bar */
html[data-theme="dark"] #aktivni_filtri,
html[data-theme="dark"] .pill {
    background: var(--theme-bg-soft);
    color: var(--theme-text);
    border-color: var(--theme-border);
}

/* ===== Targeted overrides (Phase 3) ===== */

/* Glavna vsebinska škatla #vsebina ima #FFF bg v izvirniku — v dark mode-u
   jo naredimo transparent, da se body bg vidi. */
html[data-theme="dark"] #vsebina {
    background-color: transparent !important;
    box-shadow: 0 0 32px rgba(0,0,0,0.5);
}

/* Naslovi na naslovnici (#dogodki home) — pisava #333 → var(--theme-text) */
html[data-theme="dark"] .nas-hero-title,
html[data-theme="dark"] .nas-sekcija-naslov {
    color: var(--theme-text);
}
html[data-theme="dark"] .nas-sekcija-naslov i,
html[data-theme="dark"] .nas-hero-vec,
html[data-theme="dark"] .nas-sekcija-vec {
    color: var(--theme-text-muted);
}
html[data-theme="dark"] .nas-hero-vec:hover,
html[data-theme="dark"] .nas-sekcija-vec:hover { color: var(--theme-link); }

/* Notification log (/moje "Zadnja obvestila") */
html[data-theme="dark"] .moje-log-tip { color: var(--theme-text); }
html[data-theme="dark"] .moje-log-subject { color: var(--theme-text); }
html[data-theme="dark"] .moje-log-povzetek { color: var(--theme-text-muted); }
html[data-theme="dark"] .moje-log-cas { color: var(--theme-text-muted); }
html[data-theme="dark"] .moje-log-vrstica { border-color: var(--theme-border-soft); }
html[data-theme="dark"] .moje-log-filter {
    background: var(--theme-bg-soft);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .moje-log-filter:hover {
    background: var(--theme-card-elev);
    color: var(--theme-text);
    border-color: var(--theme-link);
}
html[data-theme="dark"] .moje-log-filter.aktiven {
    background: var(--theme-link);
    color: #fff;
    border-color: var(--theme-link);
}
html[data-theme="dark"] .moje-log-status-napaka-badge {
    background: rgba(192,57,43,0.20);
    color: #ff8e7e;
    border: 1px solid rgba(192,57,43,0.40);
}
html[data-theme="dark"] .moje-log-status-rate-badge {
    background: rgba(181,129,5,0.22);
    color: #f0c469;
    border: 1px solid rgba(181,129,5,0.40);
}
html[data-theme="dark"] .moje-log-prazno > i { color: var(--theme-text-muted); }
html[data-theme="dark"] .moje-log-prazno > p { color: var(--theme-text); }

/* jQuery UI datepicker (desno spodaj na /dogodki, /katalog, /novice) */
html[data-theme="dark"] .ui-datepicker {
    background-color: var(--theme-card-elev);
    color: var(--theme-text);
}
html[data-theme="dark"] .ui-datepicker-header { border-bottom-color: var(--theme-border); }
html[data-theme="dark"] .ui-datepicker-month { color: var(--theme-text); }
html[data-theme="dark"] .ui-datepicker-year { color: var(--theme-text-muted); }
html[data-theme="dark"] .ui-datepicker td { color: var(--theme-text); }
html[data-theme="dark"] .ui-datepicker td a { color: var(--theme-text); }
html[data-theme="dark"] .ui-datepicker .ui-state-disabled { color: var(--theme-text-muted); opacity: 0.5; }
html[data-theme="dark"] .ui-datepicker .ui-datepicker-prev,
html[data-theme="dark"] .ui-datepicker .ui-datepicker-next { color: var(--theme-text); }

/* Komentar — gumb v dark mode-u dobimo viden tekst (default je svetel pink
   ki nima kontrasta na svetlo pink bg) */
html[data-theme="dark"] .komentar_gumb_novice,
html[data-theme="dark"] .komentar_gumb_dogodki,
html[data-theme="dark"] .komentar_gumb_galerija {
    color: #fff !important;
}
html[data-theme="dark"] .komentar_gumb_novice { background-color: var(--col-pink-dark); }
html[data-theme="dark"] .komentar_gumb_novice:hover { background-color: #B00060; }
html[data-theme="dark"] .komentar_gumb_dogodki { background-color: var(--col-blue-dark); }
html[data-theme="dark"] .komentar_gumb_dogodki:hover { background-color: #0A6A8E; }
html[data-theme="dark"] .komentar_gumb_galerija { background-color: var(--col-green-dark); }
html[data-theme="dark"] .komentar_gumb_galerija:hover { background-color: #556800; }
/* Light mode: tudi tu poskrbimo, da je tekst gumba viden (pre-existing bug) */
.komentar_gumb_novice,
.komentar_gumb_dogodki,
.komentar_gumb_galerija { color: #fff; }

/* Status sporočila */
html[data-theme="dark"] .msg-uspeh {
    background: rgba(45,125,45,0.18);
    color: #8be58b;
    border-color: rgba(45,125,45,0.40);
}
html[data-theme="dark"] .msg-napaka {
    background: rgba(176,0,32,0.20);
    color: #ff8e7e;
    border-color: rgba(176,0,32,0.40);
}

/* Prazna stanja v /moje (.moje-prazno, .moje-prazno-mini) — splošen prepis */
html[data-theme="dark"] .moje-prazno,
html[data-theme="dark"] .moje-prazno-mini {
    background: var(--theme-bg-soft);
    color: var(--theme-text);
    border-color: var(--theme-border);
}

/* CMP banner spodnji */
html[data-theme="dark"] .cmp-banner { background: var(--theme-card-elev); color: var(--theme-text); border-color: var(--theme-border); }

/* Strip košarice pod headerjem (sticky) */
html[data-theme="dark"] .kosarica-strip {
    background: var(--theme-card-elev);
    color: var(--theme-text);
    border-bottom-color: var(--theme-border);
}

/* Generic legacy white containers */
html[data-theme="dark"] .vsebina_menu,
html[data-theme="dark"] #vsebina_menu,
html[data-theme="dark"] #vsebina_menu_abs {
    background: transparent;
    color: var(--theme-text);
}
html[data-theme="dark"] #vsebina_menu_abs li:not([class*="kl_"]):hover {
    background: var(--theme-bg-soft);
}

/* Detail card kolofon (info-blok, info-akcije v dogodek/ponudba detail) —
   info-blok ostane brez background-a (transparenten, ker je v sidebar-u
   ki ima že theme bg); ostali okvirji dobijo card podlago. */
html[data-theme="dark"] .info-blok {
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .info-akcije,
html[data-theme="dark"] .kolofon,
html[data-theme="dark"] .obvestilo-strip {
    background: var(--theme-card);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .info-vrednost { color: var(--theme-text); }
html[data-theme="dark"] .info-naslov { color: var(--theme-text-muted); }
html[data-theme="dark"] .info-vrednost-link { color: var(--theme-link); }

/* Tabovi (dogodek detail nastopajoči, etc.) */
html[data-theme="dark"] .tab-list { border-bottom-color: var(--theme-border); }
html[data-theme="dark"] .tab-btn { color: var(--theme-text-muted); }
html[data-theme="dark"] .tab-btn.aktiven { color: var(--theme-link); }

/* --- Dark mode iteracija 2 (2026-05-22): polish za še manjkajoče komponente ---
   Glej slike screenshote: filter chip bar, komentar/hero podlage, view-toggle,
   calendar highlights, podlaga_prijava. */

/* Sticky filter chip bar (#vsebina_menu_abs nad gridom dogodki/katalog).
   Base ima background:#fff in višjo specifičnost (.vsebina_spodaj:has(.dogodki_grid)),
   zato moramo selektor obtežiti, da prebije osnovno pravilo. */
html[data-theme="dark"] .vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs {
    background: var(--theme-bg);
    border-bottom: 1px solid var(--theme-border-soft);
}
/* Akcijska kroga (iskanje + filtri) desno od chip-ov — desktop sticky bar. */
html[data-theme="dark"] .zvrst-akcija {
    background: var(--theme-card);
    border-color: var(--theme-border);
    color: var(--theme-text);
}
html[data-theme="dark"] .zvrst-akcija:hover {
    background: var(--theme-card-elev);
    border-color: var(--theme-link);
    color: var(--theme-link);
}
html[data-theme="dark"] .zvrst-akcija.ima-aktivne::after {
    border-color: var(--theme-bg);
}
/* Inline iskalni wrapper v zvrst baru (desktop) */
html[data-theme="dark"] #iskanje_inline_wrapper {
    background: var(--theme-bg);
}

/* Hero band (#vsebina_head) s .podlaga_dogodki/novice/galerija — v dark modu
   pretemen ne sme biti, a tudi ne tako svetel kot v light. Z mix-blend ne
   gremo (preveč unpredictable); raje za vsako podlago naredimo dim variant. */
html[data-theme="dark"] #vsebina_head.podlaga_dogodki  { background-color: var(--col-blue-dark); }
html[data-theme="dark"] #vsebina_head.podlaga_novice   { background-color: var(--col-pink-dark); }
html[data-theme="dark"] #vsebina_head.podlaga_galerija { background-color: var(--col-green-dark); }

/* Komentar sekcija (#komentar.podlaga_*) — v light modu je velik barvni blok,
   v dark modu to postane preglasno; dim na temno kartico, barvo ohrani gumb. */
html[data-theme="dark"] #komentar.podlaga_dogodki,
html[data-theme="dark"] #komentar.podlaga_novice,
html[data-theme="dark"] #komentar.podlaga_galerija,
html[data-theme="dark"] #komentar.podlaga_prijava {
    background-color: var(--theme-card);
    border: 1px solid var(--theme-border-soft);
    border-radius: 8px;
}
html[data-theme="dark"] #komentar .komentar_naslov { color: var(--theme-text); }
html[data-theme="dark"] #komentar label { color: var(--theme-text); }
html[data-theme="dark"] #komentar_komentarji .komentator { color: var(--theme-text); }
html[data-theme="dark"] #komentar_komentarji .vsebina_komentarja { color: var(--theme-text-muted); }

/* Prijava sekcija (#prijava.podlaga_prijava) — rdeč pas s formo. */
html[data-theme="dark"] #prijava.podlaga_prijava {
    background-color: var(--theme-card);
    border: 1px solid var(--theme-border-soft);
    border-radius: 8px;
}
html[data-theme="dark"] #prijava label { color: var(--theme-text); }

/* View toggle (Seznam / Zemljevid) na /dogodki — neaktiven gumb je svetlo siv. */
html[data-theme="dark"] .view-toggle {
    background: var(--theme-card);
    color: var(--theme-text-muted);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .view-toggle:hover,
html[data-theme="dark"] .view-toggle:focus-visible {
    background: var(--theme-card-elev);
    color: var(--theme-text);
}
html[data-theme="dark"] .view-toggle.aktiven {
    background: var(--col-pink-dark);
    color: #fff;
    border-color: var(--col-pink-dark);
}
html[data-theme="dark"] .view-toggle.aktiven:hover,
html[data-theme="dark"] .view-toggle.aktiven:focus-visible {
    background: #A30068;
    border-color: #A30068;
    color: #fff;
}

/* Datepicker — base wrapper background je #EEE; v dark modu jo prepišemo
   na temno kartico (specifični `.ui-datepicker` selektor že obstaja
   pri vrstici 11187, samo dodajamo manjkajoče dele). */
html[data-theme="dark"] .ui-datepicker {
    border: 1px solid var(--theme-border-soft);
}
/* Highlight (dnevi z dogodki) — base ima svetlo cyan podlago + črn tekst,
   ki na temni kartici izgleda kot lepilo. Mehka cyan-tinta + svetel tekst. */
html[data-theme="dark"] .highlight .ui-state-default {
    background-color: rgba(24, 185, 232, 0.22);
    color: var(--theme-text);
}
/* Aktivni dan (npr. danes) */
html[data-theme="dark"] .ui-datepicker-calendar .ui-state-active {
    color: var(--theme-link);
    border-color: var(--theme-link);
}
/* Calendar header podpičnik */
html[data-theme="dark"] .ui-datepicker-calendar th { color: var(--theme-text-muted); }

/* Social share linki — black X / Threads sta v inline `style="color:black"`
   nevidna na temni kartici; opacity 0.6 jih spremeni v temno siv. Dvignemo
   na 0.85 da je vsaj poskočno vidno, drugo (FB modra, Reddit oranžna ...)
   ostanejo brand barve. */
/* Opacity boost — naknadno povišan v iter 5 na 0.95 (glej spodaj). */
html[data-theme="dark"] .socialink { opacity: 0.85; }
html[data-theme="dark"] .socialink:hover { opacity: 1; }
/* Per-brand barve so v iter 5 zapisane v #desni_linki .socialink i.fa-XXX
   selektorjih (z višjo specifičnostjo), brez !important. */

/* Glasilo blok (info-blok in podobni okvirji) — base je svetlo, dark ga
   že dela temnega; samo zagotovimo, da linki znotraj imajo dovolj kontrasta. */
html[data-theme="dark"] .glasilo-blok a,
html[data-theme="dark"] .info-blok a { color: var(--theme-link); }

/* --- Dark mode iteracija 3 (2026-05-22): naslovnica (homepage) ---
   .nas-blizu (Blizu mene widget), .nas-zvrst (Po zvrsteh chip-i), .nas-card
   (Zadnje novice & dogodki krogi). */

/* "Blizu mene" widget: light pink/cream gradient → temna kartica. */
html[data-theme="dark"] .nas-blizu .nas-blizu-body {
    background: var(--theme-card);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .nas-blizu-info { color: var(--theme-text-muted); }
html[data-theme="dark"] .nas-blizu-prazno { color: var(--theme-text-muted); }
html[data-theme="dark"] .nas-blizu-element {
    background: var(--theme-card-elev);
    border-color: var(--theme-border);
    color: var(--theme-text);
}
html[data-theme="dark"] .nas-blizu-element:hover,
html[data-theme="dark"] .nas-blizu-element:focus-visible {
    border-color: var(--theme-link);
}
html[data-theme="dark"] .nas-blizu-naslov { color: var(--theme-text); }
html[data-theme="dark"] .nas-blizu-kraj { color: var(--theme-text-muted); }
html[data-theme="dark"] .nas-blizu-meta { color: var(--theme-link); }

/* "Po zvrsteh" chip-i: bel chip z barvno ikono → temen chip s svetlim okvirjem
   v barvi zvrsti (ikona + tekst ostaneta barvna, ker so to brand barve). */
html[data-theme="dark"] .nas-zvrst {
    background: var(--theme-card);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    color: var(--theme-text);
}
html[data-theme="dark"] .nas-zvrst:hover {
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.4);
}

/* Naslovi sekcij na naslovnici — "Kaj se dogaja", "Blizu mene", "V naslednjih 7 dneh",
   "Po zvrsteh", "Zadnje novice" — vsi imajo color:#333 v base. */
html[data-theme="dark"] .nas-hero-title,
html[data-theme="dark"] .nas-sekcija-naslov { color: var(--theme-text); }
html[data-theme="dark"] .nas-sekcija-naslov i { color: var(--theme-text-muted); }
html[data-theme="dark"] .nas-hero-vec,
html[data-theme="dark"] .nas-sekcija-vec { color: var(--theme-text-muted); }
html[data-theme="dark"] .nas-hero-vec:hover,
html[data-theme="dark"] .nas-sekcija-vec:hover { color: var(--theme-link); }

/* nas-card kartice (Kaj se dogaja, V naslednjih 7 dneh, Zadnje novice) —
   base ima `.nas-card.dogodek_card { background:#fff }` z 0,2,0 specifičnostjo;
   `html[data-theme="dark"] .dogodki_grid > .dogodek_card` cilja samo otroke
   gridja, ne pa nas-card-ov v hero carousel-u. Dodamo splošen override. */
html[data-theme="dark"] .nas-card.dogodek_card,
html[data-theme="dark"] .nas-card.novica_kartica {
    background: var(--theme-card);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.4);
}
html[data-theme="dark"] .nas-card.dogodek_card:hover,
html[data-theme="dark"] .nas-card.novica_kartica:hover {
    box-shadow: 0 5px 22px rgba(0, 0, 0, 0.55);
}
/* nas-card podatki (datum, naslov, opis) */
html[data-theme="dark"] .nas-card.novica_kartica .nas-card-datum {
    background: var(--theme-bg-soft);
}
html[data-theme="dark"] .nas-card-dan { color: var(--theme-text); }
html[data-theme="dark"] .nas-card-mesec { color: var(--theme-text-muted); }
html[data-theme="dark"] .nas-card-kdaj { color: var(--theme-text-muted); }
html[data-theme="dark"] .nas-card-naslov a { color: var(--theme-text); }
html[data-theme="dark"] .nas-card-kraj { color: var(--theme-text-muted); }
html[data-theme="dark"] .nas-card-kraj i { color: var(--theme-text-muted); }
html[data-theme="dark"] .nas-card-opis { color: var(--theme-text-muted); }
html[data-theme="dark"] .nas-card-media { background: var(--theme-bg-soft); }
/* Datum overlay (badge zgoraj-levo nad sliko v hero/event card) — ostane
   svetel za kontrast s sliko, samo "danes" varianta uporablja dark-blue. */
html[data-theme="dark"] .nas-card-datum-overlay {
    background: rgba(40, 40, 40, 0.92);
    color: var(--theme-text);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);
}
html[data-theme="dark"] .nas-card-datum-overlay .nas-card-dan { color: var(--theme-text); }
html[data-theme="dark"] .nas-card-datum-overlay .nas-card-mesec { color: var(--theme-text-muted); }
html[data-theme="dark"] .nas-card-datum-overlay.nas-card-datum-danes {
    background: var(--col-blue-dark);
}
html[data-theme="dark"] .nas-card-datum-overlay.nas-card-datum-danes .nas-card-dan,
html[data-theme="dark"] .nas-card-datum-overlay.nas-card-datum-danes .nas-card-mesec { color: #fff; }

/* Hero (Kaj se dogaja) nav puščice + pike */
html[data-theme="dark"] .nas-hero-nav {
    background: var(--theme-card);
    color: var(--theme-text);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
}
html[data-theme="dark"] .nas-hero-nav:hover { background: var(--theme-card-elev); }
html[data-theme="dark"] .nas-hero-pika::before { background: var(--theme-text-muted); }
html[data-theme="dark"] .nas-hero-pika-aktivna::before { background: var(--theme-link); }

/* --- Dark mode iteracija 4 (2026-05-22): event detail (kosi/4.php) gumbi ---
   .info-gumb (Pot do prizorišča, Dodaj v koledar, Spletna stran ...),
   .koledar-meni dropdown, .info-razdalja chip, action bar (mobile). */

/* .info-gumb — base je svetlo siv (#F3F3F3) z bordurom #DDD. */
html[data-theme="dark"] .info-gumb {
    background: var(--theme-card-elev);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .info-gumb:hover,
html[data-theme="dark"] .info-gumb:focus-visible {
    background: var(--theme-bg-soft);
    color: var(--theme-link);
}

/* .info-gumb-prijava — base je svetlo modra (#EBF4FF). V dark naredimo
   subtle modri tint, da gumb še vedno izstopa kot CTA prijave. */
html[data-theme="dark"] .info-gumb-prijava {
    background: rgba(24, 185, 232, 0.12);
    color: #6cd0ee;
    border-color: rgba(24, 185, 232, 0.35);
}
html[data-theme="dark"] .info-gumb-prijava:hover,
html[data-theme="dark"] .info-gumb-prijava:focus-visible {
    background: rgba(24, 185, 232, 0.20);
    color: #9bdff0;
}

/* .info-razdalja — distance chip (svetlo modra, npr. "7,6 km"). */
html[data-theme="dark"] .info-razdalja {
    background: rgba(24, 185, 232, 0.18);
    color: #6cd0ee;
}

/* Brezplačen — zelen text, ohranimo a ga prilagodimo na temno. */
html[data-theme="dark"] .info-vrednost-brezplacno,
html[data-theme="dark"] .info-vrednost-brezplacno i { color: #6fd96f; }

/* "Dodaj v koledar" dropdown (.koledar-meni) — bel popover → temen popover. */
html[data-theme="dark"] .koledar-meni {
    background: var(--theme-card);
    border-color: var(--theme-border);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.5);
}
html[data-theme="dark"] .koledar-meni a {
    color: var(--theme-text);
}
html[data-theme="dark"] .koledar-meni a:hover,
html[data-theme="dark"] .koledar-meni a:focus-visible {
    background: var(--theme-bg-soft);
    color: var(--theme-link);
}
html[data-theme="dark"] .koledar-meni a .ico-apple { color: var(--theme-text-muted); }

/* Mobilni #dogodek_action_bar (fixed bottom) — bright theme barva
   (col-blue/col-pink/col-green/col-orange) podlaga. Dimm na *-dark variante. */
html[data-theme="dark"] body.tema-dogodki #dogodek_action_bar { background: var(--col-blue-dark); }
html[data-theme="dark"] body.tema-koledar #dogodek_action_bar { background: var(--col-green-dark); }
html[data-theme="dark"] body.tema-katalog #dogodek_action_bar { background: var(--col-orange-dark); }
html[data-theme="dark"] body.tema-novice  #dogodek_action_bar { background: var(--col-pink-dark); }
/* .dab-btn (znotraj action bara) base je bel z #ddd bordurom. */
html[data-theme="dark"] .dab-btn {
    background: var(--theme-card);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .dab-glavni {
    background: var(--col-blue);
    color: #fff;
    border-color: var(--col-blue);
}
html[data-theme="dark"] .dab-glavni:hover,
html[data-theme="dark"] .dab-glavni:focus-visible {
    background: var(--col-blue-dark);
}
html[data-theme="dark"] .dab-pot .info-razdalja {
    background: rgba(24, 185, 232, 0.25);
    color: var(--theme-text);
}

/* .info-blok ima bordur-bottom #EEE — v dark naj bo manj viden. */
html[data-theme="dark"] .info-blok { border-bottom-color: var(--theme-border-soft); }
html[data-theme="dark"] .info-vrednost { color: var(--theme-text); }
html[data-theme="dark"] .info-vrednost i { color: var(--theme-text-muted); }
html[data-theme="dark"] .info-vrednost-link:hover { color: var(--theme-link); }
html[data-theme="dark"] .info-vrednost-link:hover i { color: var(--theme-link); }
/* .info-label (ORGANIZATOR, KONTAKT, CENA …) — pink uppercase. Ohranimo
   ker je to izrazit identifikator, samo prilagodimo na col-pink-dark. */
html[data-theme="dark"] .info-label { color: var(--col-pink); }

/* Chip-i znotraj filter zvrst bara — Glasba, Gledališče, Razstave, Za otroke,
   Delavnice, Druge prireditve. Base ima:
   `.vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li > a { background:#fff }`
   z visoko specifičnostjo (1,2,3); dark override mora ujemati ali presegati. */
html[data-theme="dark"] .vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li > a {
    background: var(--theme-card);
    /* `color` že prihaja iz --zvrst-barva (brand barva), torej pusti. */
}
html[data-theme="dark"] .vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li > a:hover,
html[data-theme="dark"] .vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li > a:focus-visible,
html[data-theme="dark"] .vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul > li.aktivna > a {
    /* Polna brand barva ostane pri hover/aktiven — bel tekst na barvni
       podlagi ima dovolj kontrasta tudi v dark modu. */
    background: var(--zvrst-barva, var(--theme-bg-soft));
    color: #fff;
}
/* Submenu dropdown — bel popover → temen popover, ohranimo barvni rob. */
html[data-theme="dark"] .vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul {
    background: var(--theme-card);
}
html[data-theme="dark"] .vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul a {
    background: var(--theme-card);
    color: var(--theme-text);
}
html[data-theme="dark"] .vsebina_spodaj:has(.dogodki_grid) #vsebina_menu_abs > ul ul a:hover {
    background: var(--theme-bg-soft);
    color: var(--zvrst-barva, var(--theme-link));
}

/* Map placeholder (zemljevid_placeholder na /dogodki) — base je svetlo siv. */
html[data-theme="dark"] .zemljevid_placeholder {
    background: var(--theme-card);
    border-color: var(--theme-border);
    color: var(--theme-text);
}
html[data-theme="dark"] .zemljevid_gumb {
    background: var(--theme-card-elev);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .zemljevid_gumb:hover,
html[data-theme="dark"] .zemljevid_gumb:focus-visible {
    background: var(--theme-bg-soft);
    color: var(--theme-link);
    border-color: var(--theme-link);
}

/* --- Dark mode iteracija 5 (2026-05-22): event card-i (chip-i, ikone, vec gumb) ---
   .card-chip-zvrst-*, .card-vec, .card-ikona-*, dogodek_card border-left,
   flatpickr inline koledar (desni stolpec). */

/* Zvrst chip na kartici (npr. "Druge prireditve" v light pink) — vse 6
   barvnih variant. V dark naredimo subtle tint + svetlejši text. */
html[data-theme="dark"] .card-chip-zvrst-glasba {
    background: rgba(24, 185, 232, 0.15);
    color: #6cd0ee;
    border-color: rgba(24, 185, 232, 0.40);
}
html[data-theme="dark"] .card-chip-zvrst-gledalisce {
    background: rgba(173, 197, 33, 0.15);
    color: #c8d878;
    border-color: rgba(173, 197, 33, 0.40);
}
html[data-theme="dark"] .card-chip-zvrst-razstave {
    background: rgba(225, 0, 122, 0.18);
    color: #f57bb5;
    border-color: rgba(225, 0, 122, 0.40);
}
html[data-theme="dark"] .card-chip-zvrst-za-otroke {
    background: rgba(6, 78, 153, 0.30);
    color: #6caee0;
    border-color: rgba(6, 78, 153, 0.55);
}
html[data-theme="dark"] .card-chip-zvrst-izobrazevanje {
    background: rgba(160, 95, 0, 0.22);
    color: #e0b069;
    border-color: rgba(160, 95, 0, 0.50);
}
html[data-theme="dark"] .card-chip-zvrst-drugo {
    background: rgba(90, 31, 111, 0.30);
    color: #c79ed8;
    border-color: rgba(90, 31, 111, 0.55);
}
/* Katalog vrsta chips */
html[data-theme="dark"] .card-chip-vrsta-storitve {
    background: rgba(13, 49, 191, 0.22);
    color: #93a4ee;
    border-color: rgba(13, 49, 191, 0.50);
}
html[data-theme="dark"] .card-chip-vrsta-oprema {
    background: rgba(58, 80, 17, 0.30);
    color: #b9cb7e;
    border-color: rgba(58, 80, 17, 0.55);
}
html[data-theme="dark"] .card-chip-vrsta-prostori {
    background: rgba(135, 9, 81, 0.25);
    color: #e08eb8;
    border-color: rgba(135, 9, 81, 0.50);
}

/* "Več o dogodku →" gumb (.card-vec) — base je svetlo modra (40% mix z white). */
html[data-theme="dark"] .card-vec {
    background: rgba(24, 185, 232, 0.18);
    color: #9bdff0;
    border-color: var(--col-blue);
}
html[data-theme="dark"] .card-vec:hover,
html[data-theme="dark"] .card-vec:focus-visible {
    background: var(--col-blue);
    border-color: var(--col-blue-dark);
    color: #fff;
}
html[data-theme="dark"] body.tema-katalog .card-vec {
    background: rgba(238, 144, 0, 0.18);
    color: #f4c074;
    border-color: var(--col-orange);
}
html[data-theme="dark"] body.tema-katalog .card-vec:hover,
html[data-theme="dark"] body.tema-katalog .card-vec:focus-visible {
    background: var(--col-orange);
    border-color: var(--col-orange-dark);
    color: #fff;
}

/* card-ikona chip-i (vstopnina, lokacija, prijava, brezplačno, koledar, deli) */
html[data-theme="dark"] .card-ikona-prijava {
    background: rgba(24, 185, 232, 0.15);
    color: #6cd0ee;
    border-color: rgba(24, 185, 232, 0.40);
}
html[data-theme="dark"] .card-ikona-prijava:hover {
    background: rgba(24, 185, 232, 0.25);
}
html[data-theme="dark"] .card-ikona-brezplacno {
    background: rgba(45, 125, 45, 0.20);
    color: #6fd96f;
    border-color: rgba(45, 125, 45, 0.50);
}
html[data-theme="dark"] .card-ikona-vstopnina {
    background: rgba(238, 144, 0, 0.18);
    color: #f4c074;
    border-color: rgba(238, 144, 0, 0.45);
}
html[data-theme="dark"] .card-ikona-lokacija,
html[data-theme="dark"] .card-ikona-koledar,
html[data-theme="dark"] .card-ikona-deli {
    background: var(--theme-card-elev);
    color: var(--theme-text-muted);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .card-ikona-lokacija:hover,
html[data-theme="dark"] .card-ikona-koledar:hover,
html[data-theme="dark"] .card-ikona-deli:hover {
    background: var(--theme-bg-soft);
    color: var(--theme-text);
}
html[data-theme="dark"] .card-ikona-lokacija .card-razdalja { color: inherit; }

/* dogodek_card border-left-color (barvni pas levo na kartici) — base meša
   brand barvo z 35% + #fff 65% (light, za svetlo podlago). V dark obratno:
   meša brand barvo z #000 da je dovolj kontrastna brez bleščanja. */
html[data-theme="dark"] .dogodki_grid > .dogodek_card[data-zvrst="100"] { border-left-color: color-mix(in srgb, var(--nas-glasba) 55%, #000);        --card-kleur: var(--nas-glasba); }
html[data-theme="dark"] .dogodki_grid > .dogodek_card[data-zvrst="200"] { border-left-color: color-mix(in srgb, var(--nas-gledalisce) 55%, #000);    --card-kleur: var(--nas-gledalisce); }
html[data-theme="dark"] .dogodki_grid > .dogodek_card[data-zvrst="300"] { border-left-color: color-mix(in srgb, var(--nas-razstave) 55%, #000);      --card-kleur: var(--nas-razstave); }
html[data-theme="dark"] .dogodki_grid > .dogodek_card[data-zvrst="400"] { border-left-color: color-mix(in srgb, var(--nas-za-otroke) 55%, #000);     --card-kleur: var(--nas-za-otroke); }
html[data-theme="dark"] .dogodki_grid > .dogodek_card[data-zvrst="500"] { border-left-color: color-mix(in srgb, var(--nas-izobrazevanje) 55%, #000); --card-kleur: var(--nas-izobrazevanje); }
html[data-theme="dark"] .dogodki_grid > .dogodek_card[data-zvrst="600"] { border-left-color: color-mix(in srgb, var(--nas-drugo) 55%, #000);         --card-kleur: var(--nas-drugo); }
html[data-theme="dark"] .dogodki_grid > .dogodek_card[data-vrsta="1"] { border-left-color: color-mix(in srgb, var(--nas-glasba) 55%, #000);       --card-kleur: var(--nas-glasba); }
html[data-theme="dark"] .dogodki_grid > .dogodek_card[data-vrsta="2"] { border-left-color: color-mix(in srgb, var(--nas-gledalisce) 55%, #000);   --card-kleur: var(--nas-gledalisce); }
html[data-theme="dark"] .dogodki_grid > .dogodek_card[data-vrsta="3"] { border-left-color: color-mix(in srgb, var(--nas-razstave) 55%, #000);     --card-kleur: var(--nas-razstave); }

/* Flatpickr inline koledar (desni stolpec) — base je #EEE bel-siv. Naj bo
   transparenten v dark modu (kot je uporabnik zahteval), z dark tekstom. */
html[data-theme="dark"] .flatpickr-calendar.inline {
    background: transparent;
    color: var(--theme-text);
}
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-months {
    border-bottom-color: var(--theme-border);
}
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-month,
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-current-month .cur-month,
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-monthDropdown-months,
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-prev-month,
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-next-month {
    color: var(--theme-text);
    fill: var(--theme-text);
}
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-current-month input.cur-year {
    color: var(--theme-text-muted);
}
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-weekday {
    color: var(--theme-text-muted);
}
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-day {
    color: var(--theme-text-muted);
}
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-day:hover {
    background: var(--theme-bg-soft);
    color: var(--theme-text);
}
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-day.prevMonthDay,
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-day.nextMonthDay {
    color: #555;
}
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-day.today {
    color: var(--theme-link);
    border-color: var(--theme-link);
}
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-day.today:hover {
    background: var(--theme-link);
    color: #fff;
}
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-day.selected,
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-day.selected:hover {
    background: var(--theme-link);
    border-color: var(--theme-link);
    color: #fff;
}
/* Dnevi z dogodki — base je #ACE6F7 svetlo cyan z #000 tekstom (kot
   .highlight v starem koledarju). V dark damo soft cyan tint + svetel tekst. */
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-day.ima-dogodek {
    background: rgba(24, 185, 232, 0.25);
    color: var(--theme-text);
}
html[data-theme="dark"] .flatpickr-calendar.inline .flatpickr-day.ima-dogodek:hover {
    background: var(--col-blue);
    color: #fff;
}

/* Ikone pod koledarjem (social share) — povečamo opacity in damo svetlejši
   variant za X / Threads, ki sta v inline `style="color:black"` nevidna. */
html[data-theme="dark"] .socialink { opacity: 0.95; }
html[data-theme="dark"] .socialink:hover { opacity: 1; }
/* Dark mode brand barve — temne (#000, #075e54) ikone niso vidne na temni
   podlagi; ostale brand barve lahko pustimo a jih malce posvetlimo za
   boljši kontrast. */
html[data-theme="dark"] #desni_linki .socialink i.fa-facebook       { color: #5b7bd1; }
html[data-theme="dark"] #desni_linki .socialink i.fa-x-twitter      { color: var(--theme-text); }
html[data-theme="dark"] #desni_linki .socialink i.fa-reddit         { color: #ff6a3d; }
html[data-theme="dark"] #desni_linki .socialink i.fa-threads        { color: var(--theme-text); }
html[data-theme="dark"] #desni_linki .socialink i.fa-viber          { color: #8d80f5; }
html[data-theme="dark"] #desni_linki .socialink i.fa-whatsapp       { color: #25D366; }
html[data-theme="dark"] #desni_linki .socialink i.fa-telegram       { color: #4cb6e8; }
html[data-theme="dark"] #desni_linki .socialink i.fa-circle-envelope { color: var(--theme-text); }

/* "Dogodki", "Novice", "Katalog", "Komentar" ... — h1/h2 naslov-i z razdelitvijo
   .naslov_dve + .naslov_ostalo morajo biti BELI v dark modu na vseh pojavih
   (hero band, komentar, prijava). Splošen `html[data-theme="dark"] span:not(...)`
   rule jih sicer nastavi na inherit → #e6e6e6; tukaj jih izrecno belimo. */
html[data-theme="dark"] .vsebina_naslov,
html[data-theme="dark"] .vsebina_naslov a,
html[data-theme="dark"] .vsebina_naslov .naslov_dve,
html[data-theme="dark"] .vsebina_naslov .naslov_ostalo,
html[data-theme="dark"] .komentar_naslov,
html[data-theme="dark"] .komentar_naslov .naslov_dve,
html[data-theme="dark"] .komentar_naslov .naslov_ostalo,
html[data-theme="dark"] .naslov_dve,
html[data-theme="dark"] .naslov_ostalo {
    color: var(--col-white) !important;
}

/* Desktop dark mode: .vsebina_spodaj potrebuje večji top margin (30px namesto
   16px), drugače prekrije absolutno pozicioniran #naslovna_ikona, ki se
   spušča iz vrha hero band-a v vsebino. Razlika: v dark band je dimmer
   (--col-blue-dark), zato je vidnost ikone bolj kritična. */
@media screen and (min-width: 997px) {
    html[data-theme="dark"] #vsebina_spodaj,
    html[data-theme="dark"] .vsebina_spodaj { margin-top: 30px; }
}

/* =======================================================================
   Confirm dialog (IDEJE 8.8) — custom potrditveni modal namesto browser
   `confirm()`. Sproži ga `window.confirmDialog(opts)` iz js/confirm-dialog.js.
   ======================================================================= */
.confirm-modal {
    position: fixed;
    inset: 0;
    z-index: 10010; /* nad toast (10000) in CMP banner (9999) */
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.18s ease;
    pointer-events: none;
}
.confirm-modal.odprt {
    opacity: 1;
    pointer-events: auto;
}
.confirm-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
}
.confirm-modal-panel {
    position: relative;
    max-width: 420px;
    width: calc(100% - 32px);
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25);
    padding: 22px 22px 18px;
    transform: scale(0.96) translateY(8px);
    transition: transform 0.18s ease;
}
.confirm-modal.odprt .confirm-modal-panel { transform: scale(1) translateY(0); }
.confirm-modal-naslov {
    margin: 0 0 10px;
    font-family: var(--font-condensed, 'Roboto Condensed', sans-serif);
    font-size: 20px;
    font-weight: 700;
    color: #222;
}
.confirm-modal-body {
    margin: 0 0 18px;
    font-size: 14px;
    line-height: 1.5;
    color: #444;
}
.confirm-modal-akcije {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}
.confirm-modal-preklici,
.confirm-modal-potrdi {
    padding: 9px 18px;
    border-radius: 8px;
    font-family: var(--font-main, 'Raleway', sans-serif);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    border: 1px solid transparent;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
}
.confirm-modal-preklici {
    background: #f0f0f0;
    color: #444;
    border-color: #ddd;
}
.confirm-modal-preklici:hover,
.confirm-modal-preklici:focus-visible {
    background: #e3e3e3;
    color: #222;
    outline: none;
}
.confirm-modal-potrdi {
    background: var(--col-pink, #C2007E);
    color: #fff;
    border-color: var(--col-pink, #C2007E);
}
.confirm-modal-potrdi:hover,
.confirm-modal-potrdi:focus-visible {
    background: var(--col-pink-dark, #94004F);
    border-color: var(--col-pink-dark, #94004F);
    outline: none;
}
.confirm-modal-potrdi.nevaren {
    background: #B00020;
    border-color: #B00020;
}
.confirm-modal-potrdi.nevaren:hover,
.confirm-modal-potrdi.nevaren:focus-visible {
    background: #8A0019;
    border-color: #8A0019;
}

/* Dark mode varianta confirm dialoga */
html[data-theme="dark"] .confirm-modal-panel {
    background: var(--theme-card);
    color: var(--theme-text);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.6);
}
html[data-theme="dark"] .confirm-modal-naslov { color: var(--theme-text); }
html[data-theme="dark"] .confirm-modal-body { color: var(--theme-text-muted); }
html[data-theme="dark"] .confirm-modal-preklici {
    background: var(--theme-card-elev);
    color: var(--theme-text);
    border-color: var(--theme-border);
}
html[data-theme="dark"] .confirm-modal-preklici:hover,
html[data-theme="dark"] .confirm-modal-preklici:focus-visible {
    background: var(--theme-bg-soft);
    color: var(--theme-link);
}

/* Dark mode: brand ikone v .splosni_linki — temne brand barve (IMDB, TikTok,
   Weebly, Vimeo so #000; X-Twitter, Threads ipd.) postanejo nevidne na temni
   podlagi. Naredimo svetlejše brand-skladne variante. */
html[data-theme="dark"] .imdb_link a i,
html[data-theme="dark"] .tiktok_link a i,
html[data-theme="dark"] .weebly_link a i,
html[data-theme="dark"] .vimeo_link a i  { color: var(--theme-text); }
html[data-theme="dark"] .fb_link a i        { color: #5b7bd1; }
html[data-theme="dark"] .twitter_link a i   { color: #4cb6e8; }
html[data-theme="dark"] .youtube_link a i   { color: #ff6464; }
html[data-theme="dark"] .soundcloud_link a i{ color: #ff9544; }
html[data-theme="dark"] .instagram_link a i { color: #f57bb5; }
html[data-theme="dark"] .bandcamp_link a i  { color: #8dbbcc; }
html[data-theme="dark"] .splosni_link a i   { color: var(--theme-link); }

/* A11y: kontrast za meta polja (ura, kraj, ulica) v event karticah.
   Base je #595959 (7:1 na belem). V dark modu na temni kartici (#232323)
   bi bil #595959 nečitljiv (2.4:1) — uporabi theme-text-muted (#a0a0a0,
   ~6.5:1 na #232323). */
html[data-theme="dark"] .dogodki_grid .urakraj em,
html[data-theme="dark"] .dogodki_grid .urakraj_vecdni em {
    color: var(--theme-text-muted);
}

/* Politika zasebnosti — padding znotraj #vsebina (sicer vsebina lepi
   na rob bele škatle, kar je bilo user-reported). */
#vsebina.politika-zasebnosti {
    padding: 24px 28px 32px;
}
#vsebina.politika-zasebnosti h1 {
    margin-top: 0;
}
@media (max-width: 640px) {
    #vsebina.politika-zasebnosti {
        padding: 16px 18px 24px;
    }
}
