/* =====================================================================
   Mislinjčan — slog v1 (nov. 2026): »vaška oglasna deska, sodobno«
   v4 (4. 11.): brez strehe nad desko (Aleš: »grda«), članek in dogodek brez luknje pred desnim stolpcem.
   v5 (4. 11., QA): desni stolpec povsod 360 px in razmik 64 px (naslovnica, rubrike, iskanje, dogodki, koledar),
       ikona in naslov Facebook okvirja spet berljiva, poravnani vrhovi stolpcev, stranski stolpec na tablici v dveh
       stolpcih, drsni zavihki na telefonu do roba, noga na tablici brez osamljenega stolpca, tabele piškotkov na telefonu.
   v6 (4. 11., QA): naslovi v videoteki v dveh vrsticah, imena piškotkov se ne lomijo, pri 1080–1279 px izpostavljeni
       članek rubrike pod sliko in manjši naslov članka, osamljen zadnji okvir stranskega stolpca na tablici čez vso širino.
   CDN predpomni statiko 1 leto: ob spremembi po objavi zamenjaj ime (v4 → v5).
   Naslovi: Besley (clarendon, pisava plakatov in oglasnih desk)
   Besedilo in vmesnik: Figtree (prijazna, odprta, dobro berljiva na telefonu)
   Barve: gozdno zelena #173F2E (znamka), papir, jantar = pripeto / lokalno.
   Rdeča je rezervirana za kljukico v logotipu — v vmesniku je ne uporabljamo.
   ===================================================================== */

:root {
    --paper: #F3F2EA;
    --paper-2: #E9E7DC;
    --card: #FFFFFF;
    --slip: #FFFDF6;
    --head: #FFFDF8;
    --ink: #1B2620;
    --ink-2: #3D4942;
    --muted: #5C665F;
    --line: #DCD9CC;
    --line-2: #C8C4B4;
    --forest: #173F2E;
    --forest-7: #1F5540;
    --forest-9: #0E271C;
    --forest-1: #E5EDE7;
    --forest-2: #CFDDD3;
    --amber: #E4A23A;
    --amber-d: #B97A14;
    --amber-ink: #7A4E08;
    --amber-1: #FBF1DC;
    --err: #9E2A1E;
    --serif: "Besley", Georgia, "Times New Roman", serif;
    --sans: "Figtree", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    --r-s: 8px;
    --r: 12px;
    --r-l: 16px;
    --r-xl: 20px;
    --lift: 0 1px 1px rgba(27, 38, 32, .05), 0 12px 26px -18px rgba(27, 38, 32, .45);
    --wrap: 1240px;
    --gut: 16px;
}
@media (min-width: 600px) { :root { --gut: 24px; } }
@media (min-width: 1080px) { :root { --gut: 32px; } }

/* ---------- osnova ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; touch-action: manipulation; scroll-behavior: smooth; scroll-padding-top: 84px; }
body {
    margin: 0; min-height: 100vh; display: flex; flex-direction: column;
    background: var(--paper); color: var(--ink);
    font-family: var(--sans); font-size: 17px; line-height: 1.5;
    -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
main { flex: 1 0 auto; display: block; }
main:focus { outline: none; }
img, svg, video, iframe { display: block; max-width: 100%; }
img { height: auto; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button { cursor: pointer; background: none; border: 0; padding: 0; }
h1, h2, h3, h4, h5, h6, p, ul, ol, figure, blockquote, dl, dd { margin: 0; }
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; }
ul, ol { padding: 0; list-style: none; }
[hidden] { display: none !important; }
:focus-visible { outline: 3px solid var(--forest); outline-offset: 3px; border-radius: 4px; }
.m-dark :focus-visible, .m-board :focus-visible, .m-menu :focus-visible, .m-foot :focus-visible { outline-color: var(--amber); }
::selection { background: var(--amber-1); color: var(--ink); }
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

.m-wrap { width: 100%; max-width: calc(var(--wrap) + 2 * var(--gut)); margin: 0 auto; padding: 0 var(--gut); }
.m-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.m-skip { position: absolute; left: 12px; top: -80px; z-index: 300; background: var(--forest); color: #fff; padding: 12px 18px; border-radius: 12px; font-weight: 700; }
.m-skip:focus { top: 12px; }
.m-clamp2, .m-clamp3 { display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; }
.m-clamp2 { -webkit-line-clamp: 2; }
.m-clamp3 { -webkit-line-clamp: 3; }

/* ---------- gumbi, polja ---------- */
.m-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    min-height: 48px; padding: 0 20px; border-radius: 12px;
    background: var(--forest); color: #fff; font-weight: 700; font-size: 16px; line-height: 1.2;
    border: 1.5px solid var(--forest); text-align: center;
}
.m-btn:hover { background: var(--forest-7); border-color: var(--forest-7); }
.m-btn--ghost { background: transparent; color: var(--forest); }
.m-btn--ghost:hover { background: var(--forest-1); border-color: var(--forest); }
.m-btn--light { background: #fff; color: var(--forest-9); border-color: #fff; }
.m-btn--light:hover { background: var(--forest-1); border-color: var(--forest-1); }
.m-btn--block { display: flex; width: 100%; }
.m-btn svg { width: 18px; height: 18px; flex: none; }
.m-input {
    width: 100%; min-height: 50px; padding: 0 14px;
    border: 1.5px solid var(--line-2); border-radius: 12px; background: #fff;
    font-size: 17px; line-height: 1.3;
}
textarea.m-input { padding: 12px 14px; min-height: 120px; }
.m-input::placeholder { color: #7C857F; }
.m-input:focus { outline: none; border-color: var(--forest); box-shadow: 0 0 0 3px var(--forest-2); }
.m-input[disabled] { background: var(--paper); color: var(--muted); }
.m-more {
    display: inline-flex; align-items: center; gap: 6px; flex: none;
    font-size: 14.5px; font-weight: 700; color: var(--forest);
    padding: 6px 12px; border-radius: 999px; background: var(--forest-1);
}
.m-more:hover { background: var(--forest); color: #fff; }
.m-more svg { width: 14px; height: 14px; }

/* =====================================================================
   GLAVA
   ===================================================================== */
.m-util { display: none; background: var(--paper-2); color: var(--ink-2); font-size: 14px; border-bottom: 1px solid var(--line); }
@media (min-width: 1080px) { .m-util { display: block; } }
.m-util__in { display: flex; align-items: center; gap: 22px; height: 38px; }
.m-util__date { font-weight: 700; color: var(--ink); white-space: nowrap; }
.m-util__wx { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.m-util__wx b { font-weight: 700; color: var(--ink); }
.m-util__last { flex: 1; min-width: 0; display: flex; align-items: center; gap: 8px; }
.m-util__last span { font-weight: 700; color: var(--forest); flex: none; }
.m-util__last a { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.m-util__last a:hover { text-decoration: underline; text-underline-offset: 3px; }
.m-util__links { margin-left: auto; display: flex; align-items: center; gap: 4px; }
.m-util__links a, .m-util__links button { padding: 6px 9px; border-radius: 8px; white-space: nowrap; }
.m-util__links a:hover, .m-util__links button:hover { background: var(--card); color: var(--forest); }
.m-util__links .m-util__login { font-weight: 700; color: var(--forest); }

.m-head { position: sticky; top: 0; z-index: 60; background: var(--head); border-bottom: 1px solid var(--line); }
.m-head__in { display: flex; align-items: center; gap: 10px; height: 58px; }
.m-logo { display: block; flex: none; padding: 6px 0; }
.m-logo img { height: 27px; width: auto; }
.m-nav { display: none; }
.m-head__tools { margin-left: auto; display: flex; align-items: center; gap: 6px; }
.m-ib { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; border-radius: 12px; color: var(--ink); flex: none; }
.m-ib:hover { background: var(--forest-1); color: var(--forest); }
.m-ib svg { width: 22px; height: 22px; }
.m-ib--solid { background: var(--forest); color: #fff; }
.m-ib--solid:hover { background: var(--forest-7); color: #fff; }
@media (min-width: 1080px) {
    .m-head__in { height: 74px; gap: 26px; }
    .m-logo img { height: 34px; }
    .m-nav { display: flex; align-items: center; gap: 2px; flex: 1; min-width: 0; overflow-x: auto; scrollbar-width: none; }
    .m-nav::-webkit-scrollbar { display: none; }
    .m-nav a { position: relative; padding: 10px 12px; font-weight: 700; font-size: 16px; color: var(--ink); border-radius: 10px; white-space: nowrap; }
    .m-nav a:hover { background: var(--forest-1); color: var(--forest); }
    .m-nav a[aria-current] { color: var(--forest); }
    .m-nav a[aria-current]::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: 3px; height: 3px; border-radius: 3px; background: var(--forest); }
    .m-ib--menu { display: none; }
}
.m-search { border-top: 1px solid var(--line); background: var(--head); padding: 12px 0; }
.m-search form { display: flex; gap: 8px; }
.m-search .m-input { flex: 1; min-width: 0; }

.m-chips { background: var(--head); border-bottom: 1px solid var(--line); }
@media (min-width: 1080px) { .m-chips { display: none; } }
.m-chips__in { display: flex; gap: 8px; overflow-x: auto; padding: 10px var(--gut); scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.m-chips__in::-webkit-scrollbar { display: none; }
.m-chip { flex: none; display: inline-flex; align-items: center; height: 36px; padding: 0 14px; border-radius: 999px; background: var(--paper-2); color: var(--ink); font-weight: 700; font-size: 15px; white-space: nowrap; }
.m-chip:hover { background: var(--forest-1); color: var(--forest); }
.m-chip[aria-current] { background: var(--forest); color: #fff; }

/* mobilni meni */
.m-menu { position: fixed; inset: 0; z-index: 120; background: var(--forest-9); color: #fff; display: flex; flex-direction: column; opacity: 0; transform: translateY(10px); transition: opacity .18s ease, transform .2s ease; }
.m-menu.is-open { opacity: 1; transform: none; }
.m-menu__head { display: flex; align-items: center; justify-content: space-between; height: 58px; padding: 0 var(--gut); border-bottom: 1px solid rgba(255, 255, 255, .12); flex: none; }
.m-menu__head img { height: 27px; width: auto; }
.m-menu__head .m-ib { color: #fff; }
.m-menu__head .m-ib:hover { background: rgba(255, 255, 255, .1); color: #fff; }
.m-menu__body { flex: 1; overflow-y: auto; padding: 8px var(--gut) 24px; }
.m-menu__cats a { display: flex; align-items: center; justify-content: space-between; padding: 13px 2px; font-family: var(--serif); font-weight: 700; font-size: 22px; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.m-menu__cats a svg { width: 18px; height: 18px; opacity: .6; }
.m-menu__more { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 22px; }
.m-menu__more a, .m-menu__more button { display: flex; align-items: center; min-height: 52px; padding: 12px 14px; border-radius: 12px; background: rgba(255, 255, 255, .08); font-weight: 700; text-align: left; color: #fff; }
.m-menu__more a:hover, .m-menu__more button:hover { background: rgba(255, 255, 255, .14); }
.m-menu__foot { flex: none; display: flex; gap: 10px; padding: 14px var(--gut) calc(14px + env(safe-area-inset-bottom)); border-top: 1px solid rgba(255, 255, 255, .12); }
.m-menu__foot > * { flex: 1; }

/* =====================================================================
   GRADNIKI KARTIC
   ===================================================================== */
.m-kick { display: flex; flex-wrap: wrap; align-items: center; gap: 3px 12px; font-size: 14px; line-height: 1.35; font-weight: 700; color: var(--forest); }
.m-place { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; color: var(--muted); }
.m-place::before { content: ""; width: 9px; height: 9px; border-radius: 50%; border: 2px solid currentColor; flex: none; }
.m-place--here { color: var(--amber-ink); }
.m-place--here::before { background: var(--amber); border-color: var(--amber-d); }
.m-ad { display: inline-flex; align-items: center; height: 22px; padding: 0 7px; border-radius: 6px; border: 1.5px solid var(--line-2); color: var(--ink-2); font-size: 12.5px; font-weight: 700; }
.m-time { font-size: 14px; color: var(--muted); font-variant-numeric: tabular-nums; }
.m-t { font-family: var(--serif); font-weight: 700; color: var(--ink); letter-spacing: -.004em; text-wrap: pretty; }
a:hover .m-t, a:focus-visible .m-t, a.m-t:hover { color: var(--forest); text-decoration: underline; text-decoration-thickness: .07em; text-underline-offset: .14em; }

.m-ph { position: relative; display: block; overflow: hidden; border-radius: var(--r); background: var(--paper-2) url("/static/images/mislinjcan/placeholder.svg?v=1") center / cover no-repeat; }
.m-ph > img { width: 100%; height: 100%; object-fit: cover; }
.m-badges { position: absolute; left: 10px; top: 10px; z-index: 2; display: flex; gap: 6px; }
.m-badge { display: inline-flex; align-items: center; gap: 5px; height: 26px; padding: 0 9px; border-radius: 999px; background: rgba(14, 39, 28, .86); color: #fff; font-size: 13px; font-weight: 700; line-height: 1; }
.m-badge svg { width: 12px; height: 12px; }
.m-badges--lg .m-badge { height: 30px; padding: 0 11px; font-size: 14px; }

/* vrstica s sličico (seznami, iskanje, sorodne) */
.m-row { display: grid; grid-template-columns: minmax(0, 1fr) 104px; gap: 14px; padding: 14px 0; border-top: 1px solid var(--line); align-items: start; }
.m-rows > li:first-child .m-row { border-top: 0; padding-top: 4px; }
.m-row .m-ph { aspect-ratio: 4 / 3; border-radius: 10px; }
.m-row__t { display: block; font-size: 17.5px; line-height: 1.25; margin-top: 5px; }
.m-row__x { display: none; color: var(--ink-2); font-size: 15.5px; line-height: 1.5; margin-top: 6px; }
.m-row .m-time { display: block; margin-top: 7px; font-size: 13.5px; }
@media (min-width: 640px) {
    .m-row { grid-template-columns: 220px minmax(0, 1fr); gap: 20px; padding: 18px 0; }
    .m-row .m-ph { order: -1; aspect-ratio: 3 / 2; }
    .m-row__t { font-size: 21px; }
    .m-row__x { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
}

/* naslov razdelka */
.m-sh { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 12px; }
.m-sh h2, .m-sh h1 { font-family: var(--serif); font-weight: 800; font-size: 26px; line-height: 1.15; color: var(--ink); }
.m-sh h2 a:hover { color: var(--forest); text-decoration: underline; text-underline-offset: .12em; }

/* stranski stolpec */
.m-side { display: flex; flex-direction: column; gap: 22px; min-width: 0; }
.m-box { background: var(--card); border: 1px solid var(--line); border-radius: var(--r-l); padding: 18px; }
.m-box__h { font-family: var(--serif); font-weight: 800; font-size: 21px; line-height: 1.2; margin: 0 0 8px; color: var(--ink); }
.m-box__f { margin-top: 12px; }
.m-rank li a { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 10px; padding: 11px 0; border-top: 1px solid var(--line); }
.m-rank li:first-child a { border-top: 0; }
.m-rank__n { font-family: var(--serif); font-weight: 800; font-size: 24px; line-height: 1; color: var(--forest); font-variant-numeric: lining-nums; }
.m-rank .m-t { font-size: 16px; line-height: 1.3; font-weight: 600; }
.m-rank .m-t, .m-mini .m-t { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
.m-mini li a { display: grid; grid-template-columns: minmax(0, 1fr) 76px; gap: 12px; padding: 11px 0; border-top: 1px solid var(--line); align-items: start; }
.m-mini li:first-child a { border-top: 0; padding-top: 4px; }
.m-mini .m-ph { aspect-ratio: 4 / 3; border-radius: 8px; }
.m-mini .m-t { font-size: 15.5px; line-height: 1.3; font-weight: 600; }
.m-mini .m-time { display: block; font-size: 13px; margin-top: 4px; }

.m-news { background: var(--forest-1); border: 1px solid var(--forest-2); border-radius: var(--r-l); padding: 18px; }
.m-news p { color: var(--ink-2); font-size: 15.5px; margin: 4px 0 12px; }
.m-news form { display: grid; gap: 10px; }
.m-news .m-check { font-size: 13.5px; }
.m-news__msg { font-weight: 700; color: var(--forest); font-size: 15px; }
.m-news__msg.is-err { color: var(--err); }
.m-news small { color: var(--muted); font-size: 13px; }
.m-check { display: flex; gap: 10px; align-items: flex-start; font-size: 15px; line-height: 1.4; color: var(--ink-2); }
.m-check input { width: 20px; height: 20px; accent-color: var(--forest); margin: 1px 0 0; flex: none; }
.m-check a { color: var(--forest); text-decoration: underline; text-underline-offset: 2px; }

.m-fb { display: flex; align-items: center; gap: 14px; background: var(--card); border: 1px solid var(--line); border-radius: var(--r-l); padding: 16px 18px; }
.m-fb__ic { width: 44px; height: 44px; border-radius: 12px; background: var(--forest); color: #fff; display: flex; align-items: center; justify-content: center; flex: none; }
.m-fb__ic svg { width: 20px; height: 20px; }
.m-fb b { display: block; font-size: 16px; color: var(--ink); }
.m-fb span span { color: var(--muted); font-size: 14px; }
.m-fb:hover b { color: var(--forest); text-decoration: underline; text-underline-offset: 3px; }

/* =====================================================================
   NASLOVNICA
   ===================================================================== */
.m-front { display: grid; gap: 22px; padding-top: 16px; }
@media (min-width: 1080px) { .m-front { grid-template-columns: minmax(0, 1fr) 360px; gap: 36px 64px; padding-top: 28px; align-items: start; } }
.m-lead { display: block; }
.m-lead .m-ph { border-radius: var(--r-l); aspect-ratio: 3 / 2; }
.m-lead__tx { padding: 14px 2px 0; }
.m-lead__t { display: block; font-size: 30px; line-height: 1.1; margin: 8px 0 10px; font-weight: 800; letter-spacing: -.012em; text-wrap: balance; }
.m-lead__x { font-size: 17px; line-height: 1.5; color: var(--ink-2); max-width: 64ch; }
.m-lead .m-time { display: block; margin-top: 10px; }
@media (min-width: 600px) {
    .m-lead .m-ph { aspect-ratio: 16 / 9; }
    .m-lead__t { font-size: 38px; }
}
@media (min-width: 1080px) {
    .m-lead__tx { padding: 18px 4px 0; }
    .m-lead__t { font-size: 44px; line-height: 1.06; }
    .m-lead__x { font-size: 18px; }
}

.m-today { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0; padding: 12px 0 0; font-size: 14.5px; color: var(--ink-2); }
.m-today b { font-weight: 700; color: var(--ink); }
.m-today span { color: var(--muted); white-space: nowrap; }
.m-today + .m-front { padding-top: 10px; }
@media (min-width: 1080px) { .m-today { display: none; } .m-today + .m-front { padding-top: 28px; } }

/* oglasna deska (obvestila + dogodki) */
.m-board { position: relative; display: flex; flex-direction: column; }
.m-board__body { position: relative; flex: 1; display: flex; flex-direction: column; background: var(--forest); border-radius: var(--r-l); padding: 22px 14px 16px; color: #fff; box-shadow: 0 18px 30px -22px rgba(14, 39, 28, .7); }
.m-board__cta { margin-top: 18px; padding-top: 14px; border-top: 1px dashed rgba(255, 255, 255, .28); font-size: 15px; color: #DCE7DF; line-height: 1.45; }
.m-board__cta a { color: #fff; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
@media (min-width: 1080px) {
    .m-front--side .m-lead .m-ph { aspect-ratio: 3 / 2; }
    .m-front { grid-template-rows: auto 1fr; }
    .m-front > .m-lead { grid-row: 1 / span 2; }
    .m-front > .m-board, .m-front > .m-trio { grid-column: 2; }
}
.m-board__h { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 2px 12px; }
.m-board__h h2, .m-board__h h3 { font-family: var(--serif); font-weight: 800; font-size: 24px; line-height: 1.1; color: #fff; }
.m-board__h h3 { font-size: 20px; }
.m-board__h a { font-size: 14.5px; font-weight: 700; color: #E3ECE5; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.m-board__h a:hover { color: #fff; text-decoration-thickness: 2px; }
.m-board__sec + .m-board__sec { margin-top: 20px; }
.m-slips { display: grid; gap: 10px; }
.m-slips > li { display: flex; }
.m-slips > li > .m-slip { flex: 1; }
.m-slip { position: relative; display: block; background: var(--slip); color: var(--ink); border-radius: 10px; padding: 13px 14px 12px 36px; box-shadow: 0 1px 0 rgba(0, 0, 0, .08), 0 8px 14px -10px rgba(0, 0, 0, .55); }
.m-slip::before { content: ""; position: absolute; left: 13px; top: 17px; width: 12px; height: 12px; border-radius: 50%; background: radial-gradient(circle at 34% 32%, #FFE7B5 0 16%, var(--amber) 22% 60%, var(--amber-d) 66%); box-shadow: 0 2px 2px rgba(0, 0, 0, .3); }
.m-slip__t { display: block; font-family: var(--serif); font-weight: 700; font-size: 17px; line-height: 1.25; }
.m-slip .m-time { display: block; margin-top: 6px; font-size: 13.5px; }
a.m-slip:hover .m-slip__t { color: var(--forest); text-decoration: underline; text-decoration-thickness: .07em; text-underline-offset: .14em; }
.m-slip__x { display: block; color: var(--ink-2); font-size: 15.5px; line-height: 1.45; margin-top: 6px; }

.m-ev { display: grid; grid-template-columns: 54px minmax(0, 1fr); gap: 12px; align-items: center; background: var(--slip); color: var(--ink); border-radius: 10px; padding: 9px 12px 9px 9px; box-shadow: 0 1px 0 rgba(0, 0, 0, .08), 0 8px 14px -10px rgba(0, 0, 0, .55); }
.m-ev + .m-ev { margin-top: 8px; }
.m-cal { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 54px; height: 56px; border-radius: 8px; background: var(--forest-1); color: var(--forest); line-height: 1; border-top: 5px solid var(--forest-7); }
.m-cal b { font-family: var(--serif); font-size: 23px; font-weight: 800; font-variant-numeric: lining-nums; }
.m-cal span { font-size: 12.5px; font-weight: 700; margin-top: 4px; }
.m-ev__t { display: block; font-weight: 700; font-size: 15.5px; line-height: 1.3; }
.m-ev__m { display: block; font-size: 13.5px; color: var(--muted); margin-top: 3px; }
a.m-ev:hover .m-ev__t { color: var(--forest); text-decoration: underline; text-underline-offset: 3px; }

/* trojka pod glavno novico: na telefonu vrstice, na tablici kartice, na namizju ob deski (če je prostor) */
.m-trio { display: grid; margin-top: 18px; }
.m-front > .m-trio { margin-top: 0; }
.m-card { display: grid; grid-template-columns: minmax(0, 1fr) 112px; column-gap: 14px; row-gap: 5px; align-content: start; min-width: 0; padding: 14px 0; border-bottom: 1px solid var(--line); }
.m-card .m-ph { grid-column: 2; grid-row: 1 / span 3; aspect-ratio: 4 / 3; border-radius: 10px; }
.m-card .m-kick, .m-card__t, .m-card .m-time { grid-column: 1; }
.m-card__t { display: block; font-size: 18.5px; line-height: 1.25; }
.m-card .m-badges { left: 6px; top: 6px; }
.m-card .m-badge { height: 22px; padding: 0 7px; font-size: 12px; }
@media (min-width: 700px) {
    .m-trio { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 30px; }
    .m-card { display: flex; flex-direction: column; gap: 10px; padding: 0; border: 0; }
    .m-card .m-ph { aspect-ratio: 16 / 10; border-radius: var(--r); }
    .m-card .m-badges { left: 10px; top: 10px; }
    .m-card .m-badge { height: 26px; padding: 0 9px; font-size: 13px; }
    .m-card__t { font-size: 21px; line-height: 1.2; }
    .m-card .m-time { margin-top: -2px; }
}
@media (min-width: 1080px) {
    .m-trio--side { grid-template-columns: minmax(0, 1fr); gap: 0; margin-top: 6px; }
    .m-trio--side .m-card { display: grid; grid-template-columns: minmax(0, 1fr) 104px; column-gap: 14px; row-gap: 5px; padding: 14px 0; border-bottom: 1px solid var(--line); }
    .m-trio--side .m-card:last-child { border-bottom: 0; }
    .m-trio--side .m-card .m-ph { aspect-ratio: 4 / 3; border-radius: 10px; }
    .m-trio--side .m-card__t { font-size: 17px; line-height: 1.25; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
    .m-trio--side .m-card .m-time { margin-top: 0; }
    .m-trio--side .m-card .m-badges { left: 6px; top: 6px; }
    .m-trio--side .m-card .m-badge { height: 22px; padding: 0 7px; font-size: 12px; }
}

@media (min-width: 700px) and (max-width: 1079px) {
    .m-card__t { font-size: 19px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
}

/* najnovejše — tok po dnevih */
.m-cols { display: grid; gap: 36px; margin-top: 44px; }
@media (min-width: 1080px) { .m-cols { grid-template-columns: minmax(0, 1fr) 360px; gap: 64px; } }
.m-day + .m-day { margin-top: 18px; }
.m-day__h { display: flex; align-items: center; gap: 12px; font-size: 14px; font-weight: 700; color: var(--ink-2); margin: 6px 0 2px; }
.m-day__h::after { content: ""; flex: 1; height: 1px; background: var(--line-2); }
.m-feed__a { display: grid; grid-template-columns: minmax(0, 1fr) 96px; gap: 14px; padding: 13px 0; border-bottom: 1px solid var(--line); align-items: start; }
.m-feed li:last-child .m-feed__a { border-bottom: 0; }
.m-feed__clock { display: none; }
.m-feed__h { display: block; font-size: 18px; line-height: 1.25; margin-top: 5px; }
.m-feed .m-ph { aspect-ratio: 4 / 3; border-radius: 10px; }
.m-feed .m-kick .m-time { font-weight: 700; color: var(--ink-2); font-size: 14px; }
@media (min-width: 640px) {
    .m-feed__a { grid-template-columns: 58px minmax(0, 1fr) 150px; gap: 18px; padding: 16px 0; }
    .m-feed__clock { display: block; font-size: 15px; font-weight: 700; color: var(--forest); font-variant-numeric: tabular-nums; padding-top: 1px; }
    .m-feed .m-kick .m-time { display: none; }
    .m-feed__h { font-size: 21px; }
}

/* razdelki po rubrikah */
.m-secs { display: grid; gap: 40px; margin-top: 54px; }
@media (min-width: 760px) { .m-secs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 44px 32px; } }
@media (min-width: 1080px) { .m-secs { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.m-sec { min-width: 0; }
.m-sec__lead { display: block; }
.m-sec__lead .m-ph { aspect-ratio: 16 / 10; }
.m-sec__lead .m-t { display: block; font-size: 20px; line-height: 1.22; margin-top: 10px; }
.m-sec__lead .m-time { display: block; margin-top: 6px; }
.m-sec__list { margin-top: 6px; }
.m-sec__list li a { display: block; padding: 11px 0; border-top: 1px solid var(--line); }
.m-sec__list .m-t { display: block; font-size: 16.5px; line-height: 1.3; font-weight: 600; }
.m-sec__list .m-time { display: block; font-size: 13px; margin-top: 3px; }

/* =====================================================================
   ČLANEK
   ===================================================================== */
.m-preview { background: var(--amber-1); color: var(--amber-ink); text-align: center; font-weight: 700; padding: 10px 16px; border-bottom: 1px solid #EBCF95; }
.m-art { padding-top: 14px; }
.m-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; font-size: 14.5px; color: var(--muted); margin-bottom: 12px; }
.m-crumbs a { color: var(--forest); font-weight: 700; }
.m-crumbs a:hover { text-decoration: underline; text-underline-offset: 3px; }
.m-crumbs svg { width: 14px; height: 14px; opacity: .6; }
.m-art__grid { display: grid; gap: 44px; }
@media (min-width: 1080px) { .m-art__grid { grid-template-columns: minmax(0, 1fr) 360px; gap: 64px; } }
.m-art__main { min-width: 0; }
.m-art__kick { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; }
.m-art__kick .m-kick a:hover { text-decoration: underline; text-underline-offset: 3px; }
.m-pill { display: inline-flex; align-items: center; gap: 6px; height: 26px; padding: 0 10px; border-radius: 999px; background: var(--forest-9); color: #fff; font-size: 13px; font-weight: 700; }
.m-pill svg { width: 12px; height: 12px; }
.m-pill--vip { background: var(--amber); color: var(--forest-9); }
.m-art__title { font-family: var(--serif); font-weight: 800; font-size: clamp(28px, 7.6vw, 32px); line-height: 1.1; letter-spacing: -.012em; margin: 10px 0 12px; color: var(--ink); text-wrap: balance; }
.m-art__sub { font-size: 20px; line-height: 1.4; color: var(--ink-2); margin: 0 0 16px; }
@media (min-width: 600px) { .m-art__title { font-size: 42px; } }
@media (min-width: 1080px) { .m-art__title { font-size: 48px; line-height: 1.06; } .m-art__sub { font-size: 22px; } }
.m-art__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; padding: 12px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: 15px; color: var(--ink-2); }
.m-art__by { font-weight: 700; color: var(--ink); }
.m-art__upd { display: inline-flex; align-items: center; gap: 6px; color: var(--muted); }
.m-art__upd svg { width: 14px; height: 14px; }
.m-share { display: flex; flex-wrap: wrap; gap: 6px; }
.m-art__meta .m-share { margin-left: auto; }
@media (max-width: 599px) { .m-art__meta .m-share { margin-left: 0; width: 100%; } }
.m-share a, .m-share button { width: 40px; height: 40px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: var(--card); border: 1px solid var(--line); color: var(--ink); }
.m-share a:hover, .m-share button:hover { background: var(--forest); border-color: var(--forest); color: #fff; }
.m-share svg { width: 18px; height: 18px; }
.m-share__ok { position: absolute; transform: translateY(46px); background: var(--forest-9); color: #fff; font-size: 13px; font-weight: 700; padding: 6px 10px; border-radius: 8px; white-space: nowrap; pointer-events: none; }
.m-share-end { margin-top: 28px; padding: 18px; border-radius: var(--r-l); background: var(--card); border: 1px solid var(--line); display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; }
.m-share-end b { font-family: var(--serif); font-size: 19px; font-weight: 800; }
.m-share-end .m-share { margin-left: auto; }
.m-art__fig { margin: 18px 0 0; }
.m-art__fig .m-ph { border-radius: var(--r-l); }
.m-art__ph { aspect-ratio: 16 / 10; background: var(--paper-2); }
.m-art__fig img { width: 100%; cursor: zoom-in; }
.m-art__fig figcaption { font-size: 14px; color: var(--muted); padding: 9px 2px 0; line-height: 1.45; }
.m-art__fig figcaption a { color: var(--forest); text-decoration: underline; text-underline-offset: 2px; }
.m-art__lede { font-size: 19px; line-height: 1.55; font-weight: 700; color: var(--ink); margin: 22px 0 18px; }
.m-art__lede a { color: var(--forest); text-decoration: underline; }
@media (min-width: 1080px) { .m-art__lede { font-size: 21px; } }

/* besedilo članka */
.m-prose { font-size: 18px; line-height: 1.7; color: var(--ink); overflow-wrap: break-word; }
@media (min-width: 1080px) { .m-prose { font-size: 19px; } }
.m-prose p { margin: 0 0 1.05em; }
.m-prose h2 { font-family: var(--serif); font-weight: 800; font-size: 1.42em; line-height: 1.2; margin: 1.5em 0 .5em; }
.m-prose h3 { font-family: var(--serif); font-weight: 700; font-size: 1.2em; line-height: 1.25; margin: 1.4em 0 .45em; }
.m-prose h4, .m-prose h5, .m-prose h6 { font-weight: 700; font-size: 1.05em; margin: 1.3em 0 .4em; }
.m-prose a { color: var(--forest); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.m-prose a:hover { text-decoration-thickness: 2px; }
.m-prose strong, .m-prose b { font-weight: 700; }
.m-prose ul, .m-prose ol { margin: 0 0 1.05em; padding-left: 1.4em; }
.m-prose ul { list-style: disc; }
.m-prose ol { list-style: decimal; }
.m-prose li { margin: .35em 0; padding-left: .15em; display: list-item; }
.m-prose li::marker { color: var(--forest); }
.m-prose li[data-list="bullet"] { list-style-type: disc; }
.m-prose li[data-list="ordered"] { list-style-type: decimal; }
.m-prose blockquote { margin: 1.4em 0; padding: 2px 0 2px 20px; border-left: 4px solid var(--forest); font-family: var(--serif); font-style: italic; font-size: 1.12em; line-height: 1.5; }
.m-prose img { max-width: 100%; height: auto; border-radius: var(--r); margin: 1.3em 0; }
.m-prose figure { margin: 1.4em 0; }
.m-prose figure img { margin: 0; }
.m-prose figcaption { font-size: 14px; color: var(--muted); margin-top: 7px; line-height: 1.45; }
.m-prose table { width: 100%; border-collapse: collapse; font-size: .88em; display: block; overflow-x: auto; margin: 0 0 1.2em; }
.m-prose th, .m-prose td { border: 1px solid var(--line); padding: 8px 10px; text-align: left; vertical-align: top; }
.m-prose th { background: var(--paper-2); }
.m-prose hr { border: 0; border-top: 1px solid var(--line-2); margin: 2em 0; }
.m-prose iframe { max-width: 100%; border: 0; }
.m-prose .ql-align-center { text-align: center; }
.m-prose .ql-align-right { text-align: right; }
.m-prose .ql-align-justify { text-align: justify; }
.m-prose img.align-left { float: left; margin: .4em 1.6em 1em 0; max-width: 45%; }
.m-prose img.align-right { float: right; margin: .4em 0 1em 1.6em; max-width: 45%; }
.m-prose img.align-center { display: block; margin: 1.3em auto; float: none; clear: both; }
.m-prose img.size-small { max-width: 200px; }
.m-prose img.size-medium { max-width: 400px; }
.m-prose img.size-large { max-width: 600px; }
.m-prose img.size-full { max-width: 100%; float: none; clear: both; }
.m-prose::after { content: ""; display: table; clear: both; }
@media (max-width: 768px) {
    .m-prose img.align-left, .m-prose img.align-right, .m-prose img.align-center, .m-prose img.size-large, .m-prose img.size-medium { float: none; max-width: 100% !important; width: auto !important; height: auto !important; margin: 1em auto; display: block; }
}
.m-prose .vg-video-gallery { display: none !important; }
.wp-block-gallery, .kn-gallery-source { display: none !important; }
.m-prose .youtube-embed { border-radius: var(--r); margin: 1.3em 0 !important; }
.m-prose .kn-html-embed { display: flex; justify-content: center; align-items: center; margin: 1.4em auto; clear: both; }
.m-prose .kn-html-embed iframe { max-width: 100%; display: block; margin: 0 auto; }
@media (max-width: 640px) {
    .m-prose .kn-html-embed { width: 100%; }
    .m-prose .kn-html-embed iframe { width: 100% !important; aspect-ratio: 16 / 9; height: auto !important; max-height: 60vh; }
}
.m-prose .kn-important { background: var(--forest); color: #fff; padding: 18px 22px; border-radius: var(--r); margin: 1.4em 0; font-weight: 600; }
.m-prose .kn-important a { color: #fff; }
.m-prose .kn-info { background: var(--paper-2); border-left: 4px solid var(--forest-7); padding: 16px 20px; border-radius: 0 var(--r) var(--r) 0; margin: 1.4em 0; color: var(--ink-2); }
.m-prose .kn-warning { background: var(--amber-1); border-left: 4px solid var(--amber-d); padding: 16px 20px; border-radius: 0 var(--r) var(--r) 0; margin: 1.4em 0; color: var(--amber-ink); }
.m-prose .kn-quote { border-left: 4px solid var(--forest); padding: 14px 22px; margin: 1.4em 0; background: var(--card); font-family: var(--serif); font-style: italic; font-size: 1.1em; color: var(--ink-2); border-radius: 0 var(--r) var(--r) 0; }
.m-prose .kn-source { color: var(--muted); font-size: .9em; font-style: italic; margin: .8em 0; padding-left: 12px; border-left: 2px solid var(--line-2); }
.m-prose .kn-audio { margin: 1.6em 0; padding: 18px 20px; background: var(--forest-9); border-radius: var(--r-l); color: #fff; }
.m-prose .kn-audio-header { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; padding-bottom: 10px; border-bottom: 1px solid rgba(255, 255, 255, .18); }
.m-prose .kn-audio-icon { width: 22px; height: 22px; flex-shrink: 0; color: var(--amber); }
.m-prose .kn-audio-title { font-weight: 700; font-size: 16px; color: #fff; }
.m-prose .kn-audio audio { width: 100%; height: 44px; display: block; border-radius: 8px; }

/* galerija (zgradi jo skripta iz .kn-gallery-source) */
.kn-gallery { margin: 1.6em 0; background: var(--forest-9); border-radius: var(--r-l); overflow: hidden; }
.kn-gallery-main { position: relative; aspect-ratio: 3 / 2; background: #0A1E15; overflow: hidden; }
.kn-gallery-main img, .m-prose .kn-gallery-main img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; margin: 0; border-radius: 0; max-width: none; cursor: zoom-in; }
.kn-gallery-nav { position: absolute; top: 50%; transform: translateY(-50%); z-index: 6; width: 44px; height: 44px; border-radius: 50%; background: rgba(255, 253, 246, .92); color: var(--forest-9); display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 12px rgba(0, 0, 0, .3); }
.kn-gallery-nav:hover { background: #fff; }
.kn-gallery-nav.prev { left: 10px; }
.kn-gallery-nav.next { right: 10px; }
.kn-gallery-counter { position: absolute; bottom: 10px; right: 10px; z-index: 6; background: rgba(14, 39, 28, .85); color: #fff; padding: 4px 11px; border-radius: 999px; font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; }
.kn-gallery-thumbs { display: flex; gap: 8px; overflow-x: auto; padding: 10px; scrollbar-width: thin; }
.kn-gallery-thumb { flex: none; width: 92px; height: 66px; border-radius: 8px; overflow: hidden; cursor: pointer; opacity: .6; border: 2px solid transparent; background: #183B2B; padding: 0; }
.kn-gallery-thumb:hover { opacity: .9; }
.kn-gallery-thumb.active { opacity: 1; border-color: var(--amber); }
.kn-gallery-thumb img, .m-prose .kn-gallery-thumb img { width: 100%; height: 100%; object-fit: cover; margin: 0; border-radius: 0; display: block; }
.kn-gallery-vip-thumb { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; color: #fff; font-size: 12px; font-weight: 700; text-decoration: none !important; opacity: 1; background: var(--forest-7); }
.kn-gallery-vip-overlay { position: absolute; inset: 0; z-index: 5; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; padding: 28px; text-align: center; color: #fff !important; text-decoration: none !important; background: linear-gradient(to top, rgba(10, 30, 21, .94), rgba(10, 30, 21, .3) 60%, transparent); }
.kn-gallery-grid { margin: 1.4em 0; display: grid; gap: 8px; border-radius: var(--r); overflow: hidden; }
.kn-gallery-grid[data-columns="2"] { grid-template-columns: repeat(2, 1fr); }
.kn-gallery-grid[data-columns="3"] { grid-template-columns: repeat(3, 1fr); }
.kn-gallery-grid[data-columns="4"] { grid-template-columns: repeat(4, 1fr); }
.kn-gallery-grid[data-columns="5"] { grid-template-columns: repeat(5, 1fr); }
@media (max-width: 640px) { .kn-gallery-grid[data-columns="4"], .kn-gallery-grid[data-columns="5"] { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 480px) { .kn-gallery-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 4px !important; } }
.kn-gallery-grid-item { aspect-ratio: 1; overflow: hidden; cursor: pointer; position: relative; }
.kn-gallery-grid-item img, .m-prose .kn-gallery-grid-item img { width: 100%; height: 100%; object-fit: cover; margin: 0; border-radius: 0; }

/* video v članku */
.m-video { margin: 22px 0; border-radius: var(--r-l); overflow: hidden; background: var(--forest-9); }
.m-video__t { display: flex; align-items: center; gap: 8px; padding: 12px 16px; color: #fff; font-weight: 700; font-size: 15px; line-height: 1.35; }
.m-video__t svg { width: 16px; height: 16px; flex: none; color: var(--amber); }
.m-video__main { aspect-ratio: 16 / 9; background: #000; }
.m-video__main iframe { width: 100%; height: 100%; border: 0; }
.m-video__thumbs { display: flex; gap: 10px; overflow-x: auto; padding: 12px; }
.m-video__thumb { flex: none; width: 150px; text-align: left; color: #DCE7DF; opacity: .75; }
.m-video__thumb[aria-current="true"], .m-video__thumb:hover { opacity: 1; }
.m-video__thumb img { width: 150px; height: 84px; object-fit: cover; border-radius: 8px; }
.m-video__thumb[aria-current="true"] img { outline: 2px solid var(--amber); outline-offset: 2px; }
.m-video__thumb span { display: block; font-size: 12.5px; margin-top: 6px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.m-fbvid { margin: 22px 0; display: flex; justify-content: center; }
.m-fbvid__p { width: 100%; max-width: 420px; height: 680px; }
.m-fbvid__l { width: 100%; aspect-ratio: 16 / 9; }
.m-fbvid iframe { width: 100%; height: 100%; border: 0; overflow: hidden; }

/* VIP */
.m-lock { position: relative; }
.m-lock__fade { position: absolute; left: 0; right: 0; bottom: 0; height: 140px; background: linear-gradient(to bottom, rgba(243, 242, 234, 0), var(--paper) 85%); pointer-events: none; }
.m-pay { position: relative; margin: 4px 0 8px; padding: 28px 22px; border-radius: var(--r-xl); background: var(--card); border: 1px solid var(--line); text-align: center; }
.m-pay__ic { width: 56px; height: 56px; margin: 0 auto 14px; border-radius: 16px; background: var(--forest); color: var(--amber); display: flex; align-items: center; justify-content: center; }
.m-pay__ic svg { width: 28px; height: 28px; }
.m-pay h3 { font-family: var(--serif); font-weight: 800; font-size: 26px; line-height: 1.15; }
.m-pay p { color: var(--ink-2); margin: 8px auto 0; max-width: 44ch; }
.m-pay ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 16px 0; }
.m-pay li { padding: 6px 12px; border-radius: 999px; background: var(--forest-1); color: var(--forest); font-weight: 700; font-size: 14px; }
.m-pay__price { font-size: 15px; color: var(--ink-2); margin: 6px 0 16px; }
.m-pay__price b { font-family: var(--serif); font-size: 34px; color: var(--ink); margin: 0 4px; }
.m-pay__btns { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
.m-vidlock { margin: 22px 0; border-radius: var(--r-l); background: var(--forest-9); color: #fff; aspect-ratio: 16 / 9; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 24px; gap: 10px; }
.m-vidlock h3 { font-family: var(--serif); font-size: 22px; font-weight: 800; }
.m-vidlock p { color: #C9D6CD; max-width: 40ch; }

/* preberi tudi */
.m-also { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 14px; align-items: center; margin: 1.6em 0; padding: 12px; border-radius: var(--r); background: var(--forest-1); border: 1px solid var(--forest-2); color: var(--ink) !important; text-decoration: none !important; }
.m-also--noimg { grid-template-columns: minmax(0, 1fr); padding: 14px 16px; }
.m-also img, .m-prose .m-also img { width: 112px; height: 80px; object-fit: cover; border-radius: 8px; margin: 0; }
.m-also small { display: block; font-family: var(--sans); font-size: 13.5px; font-weight: 700; color: var(--forest); margin-bottom: 3px; line-height: 1.3; }
.m-also b { display: block; font-family: var(--serif); font-size: 18px; line-height: 1.25; font-weight: 700; }
.m-also:hover b { color: var(--forest); text-decoration: underline; text-underline-offset: .14em; }

.m-art__src { font-size: 15px; color: var(--muted); font-style: italic; margin-top: 18px; }
.m-art__sponsor { margin-top: 18px; padding: 12px 14px; border-radius: var(--r); background: var(--paper-2); color: var(--ink-2); font-size: 15px; }
.m-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 18px; }
.m-tags__h { font-size: 14px; font-weight: 700; color: var(--muted); margin-right: 4px; }
.m-tag { display: inline-flex; align-items: center; min-height: 34px; padding: 4px 13px; border-radius: 999px; background: var(--paper-2); font-size: 14.5px; font-weight: 700; color: var(--ink-2); }
a.m-tag:hover { background: var(--forest); color: #fff; }
.m-rel { margin-top: 40px; }

/* google prednostni vir */
.m-gpref { display: flex; align-items: center; gap: 12px; margin: 18px 0 0; padding: 12px 14px; border-radius: var(--r); background: var(--card); border: 1px solid var(--line); }
.m-gpref svg { width: 26px; height: 26px; flex: none; }
.m-gpref span { font-size: 15px; line-height: 1.35; color: var(--ink-2); }
.m-gpref b { color: var(--ink); }
.m-gpref:hover b { color: var(--forest); text-decoration: underline; text-underline-offset: 3px; }

/* komentarji */
.m-cmt { margin-top: 44px; }
.m-cmt__warn { display: flex; gap: 12px; padding: 14px 16px; border-radius: var(--r); background: var(--amber-1); color: var(--amber-ink); font-size: 14.5px; line-height: 1.5; margin-bottom: 22px; }
.m-cmt__warn svg { width: 18px; height: 18px; flex: none; margin-top: 2px; }
.m-cmt__warn a { font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.m-cmt__load { display: flex; align-items: center; justify-content: center; gap: 12px; padding: 28px 0; color: var(--muted); }
.m-spin { width: 26px; height: 26px; border-radius: 50%; border: 3px solid var(--forest-2); border-top-color: var(--forest); animation: m-spin .8s linear infinite; }
@keyframes m-spin { to { transform: rotate(360deg); } }
#comments-section .comments-header h3 { font-family: var(--serif); font-weight: 800; font-size: 24px; color: var(--ink); }
#comments-section .comments-header h3 .w-1 { display: none; }
#comments-section .comment > .flex { background: var(--card); border-color: var(--line); border-radius: var(--r); }
#comments-section .comment .replies { border-left: 2px solid var(--line); }
#comments-section .comment-form textarea { background: #fff; border-color: var(--line-2); border-radius: 12px; font-size: 16px; }
#comments-section .comment-form textarea:focus { outline: none; border-color: var(--forest); box-shadow: 0 0 0 3px var(--forest-2); }
#comments-section button[type="submit"], #comments-section [data-action="show-login"] { border-radius: 10px; font-weight: 700; }
#report-modal label:has(input:checked) { background: var(--forest-1); border-color: var(--forest); }

/* združljivost: razredi, ki jih ustvari static/js/comments.js (Tailwind imena) */
.hidden { display: none !important; }
.block { display: block; } .inline-block { display: inline-block; } .flex { display: flex; }
.flex-1 { flex: 1 1 0%; } .flex-shrink-0 { flex-shrink: 0; } .min-w-0 { min-width: 0; }
.items-center { align-items: center; } .justify-between { justify-content: space-between; } .justify-center { justify-content: center; } .justify-end { justify-content: flex-end; }
.gap-1 { gap: .25rem; } .gap-2 { gap: .5rem; } .gap-3 { gap: .75rem; } .gap-4 { gap: 1rem; }
.space-y-3 > * + * { margin-top: .75rem; } .space-y-4 > * + * { margin-top: 1rem; }
.fixed { position: fixed; } .inset-0 { inset: 0; } .z-50 { z-index: 150; } .top-4 { top: 1rem; } .right-4 { right: 1rem; }
.w-1 { width: .25rem; } .w-4 { width: 1rem; } .w-5 { width: 1.25rem; } .w-6 { width: 1.5rem; } .w-10 { width: 2.5rem; } .w-12 { width: 3rem; } .w-full { width: 100%; }
.h-4 { height: 1rem; } .h-5 { height: 1.25rem; } .h-6 { height: 1.5rem; } .h-10 { height: 2.5rem; } .h-12 { height: 3rem; }
.max-w-md { max-width: 28rem; } .mx-auto { margin-left: auto; margin-right: auto; }
.p-2 { padding: .5rem; } .p-3 { padding: .75rem; } .p-4 { padding: 1rem; } .p-6 { padding: 1.5rem; }
.px-1\.5 { padding-left: .375rem; padding-right: .375rem; } .px-2 { padding-left: .5rem; padding-right: .5rem; } .px-3 { padding-left: .75rem; padding-right: .75rem; } .px-4 { padding-left: 1rem; padding-right: 1rem; } .px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
.py-0\.5 { padding-top: .125rem; padding-bottom: .125rem; } .py-2 { padding-top: .5rem; padding-bottom: .5rem; } .py-3 { padding-top: .75rem; padding-bottom: .75rem; } .py-4 { padding-top: 1rem; padding-bottom: 1rem; }
.mb-1 { margin-bottom: .25rem; } .mb-2 { margin-bottom: .5rem; } .mb-3 { margin-bottom: .75rem; } .mb-4 { margin-bottom: 1rem; } .mb-6 { margin-bottom: 1.5rem; }
.mt-1 { margin-top: .25rem; } .mt-2 { margin-top: .5rem; } .mt-3 { margin-top: .75rem; } .mt-4 { margin-top: 1rem; } .mt-6 { margin-top: 1.5rem; }
.mr-1 { margin-right: .25rem; } .mr-2 { margin-right: .5rem; } .ml-8 { margin-left: 2rem; }
@media (min-width: 640px) { .sm\:ml-12 { margin-left: 3rem; } }
.rounded { border-radius: .375rem; } .rounded-lg { border-radius: .75rem; } .rounded-full { border-radius: 9999px; }
.border { border: 1px solid var(--line); }
.border-gray-200 { border-color: var(--line); } .border-gray-300 { border-color: var(--line-2); } .border-blue-200 { border-color: #C3D4E4; } .border-red-200 { border-color: #EBC3BC; } .border-yellow-200 { border-color: #EED79A; }
.focus\:border-transparent:focus { border-color: transparent; }
.focus\:ring-2:focus { outline: none; box-shadow: 0 0 0 3px var(--forest-2); }
.bg-white { background-color: #fff; } .bg-gray-50 { background-color: #F8F7F2; } .bg-gray-100 { background-color: var(--paper); } .bg-gray-200 { background-color: var(--paper-2); }
.bg-blue-50 { background-color: #EEF3F8; } .bg-blue-200 { background-color: #C9D9E8; } .bg-red-50 { background-color: #FBEDEA; } .bg-red-600 { background-color: var(--err); } .bg-yellow-50 { background-color: #FCF6E3; } .bg-yellow-100 { background-color: var(--amber-1); } .bg-green-600 { background-color: var(--forest); }
.bg-black\/50 { background-color: rgba(14, 39, 28, .6); }
.hover\:bg-gray-50:hover { background-color: #F8F7F2; } .hover\:bg-red-700:hover { background-color: #7F1F15; }
.text-xs { font-size: .8125rem; } .text-sm { font-size: .9rem; } .text-base { font-size: 1rem; } .text-lg { font-size: 1.125rem; } .text-xl { font-size: 1.25rem; }
.font-normal { font-weight: 400; } .font-medium { font-weight: 700; } .font-bold { font-weight: 700; } .italic { font-style: italic; } .text-center { text-align: center; }
.text-white { color: #fff; } .text-gray-300 { color: #A5ACA6; } .text-gray-400 { color: #7C857F; } .text-gray-500 { color: var(--muted); } .text-gray-600 { color: var(--ink-2); } .text-gray-700 { color: var(--ink-2); } .text-gray-800 { color: var(--ink); } .text-gray-900 { color: var(--ink); }
.text-blue-600 { color: #285C8C; } .text-blue-800 { color: #1D4166; } .text-green-600 { color: var(--forest); } .text-red-500, .text-red-600 { color: var(--err); } .text-red-700 { color: #7F1F15; } .text-yellow-600 { color: var(--amber-ink); } .text-yellow-700 { color: var(--amber-ink); }
.hover\:text-gray-600:hover, .hover\:text-gray-700:hover, .hover\:text-gray-800:hover { color: var(--ink); } .hover\:text-green-800:hover { color: var(--forest-9); } .hover\:text-red-600:hover, .hover\:text-red-700:hover { color: var(--err); } .hover\:text-yellow-800:hover { color: #5C3A05; }
.hover\:underline:hover { text-decoration: underline; }
.whitespace-pre-wrap { white-space: pre-wrap; } .break-words { overflow-wrap: break-word; } .resize-none { resize: none; } .cursor-pointer { cursor: pointer; }
.transition-colors { transition: color .15s, background-color .15s, border-color .15s; } .transition-shadow { transition: box-shadow .15s; } .transition-all { transition: all .3s; }
.translate-x-full { transform: translateX(130%); } .shadow-lg { box-shadow: var(--lift); }
#comments-section .comment-form textarea, #report-modal textarea, #moderation-modal textarea { width: 100%; }
#comments-section .comment-form .border-gray-300 { border-style: solid; border-width: 1.5px; }

/* =====================================================================
   RUBRIKA, ISKANJE, STRANI
   ===================================================================== */
.m-page-h { padding: 22px 0 6px; }
.m-page-h h1 { font-family: var(--serif); font-weight: 800; font-size: 36px; line-height: 1.06; letter-spacing: -.012em; color: var(--ink); text-wrap: balance; }
.m-page-h p { color: var(--ink-2); font-size: 17px; margin-top: 8px; max-width: 62ch; }
@media (min-width: 1080px) { .m-page-h { padding-top: 32px; } .m-page-h h1 { font-size: 50px; } }
.m-subnav { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding: 14px 0 4px; }
.m-subnav::-webkit-scrollbar { display: none; }
.m-subnav .m-chip { background: var(--card); border: 1px solid var(--line); }
.m-subnav .m-chip[aria-current] { background: var(--forest); border-color: var(--forest); }
.m-list-cols { display: grid; gap: 40px; margin-top: 22px; }
@media (min-width: 1080px) {
    .m-list-cols { grid-template-columns: minmax(0, 1fr) 360px; gap: 64px; }
    /* vrh levega stolpca poravnan z vrhom stranskega */
    .m-list-cols > div > :first-child { margin-top: 0; }
}
.m-feat { display: grid; gap: 14px; padding-bottom: 22px; margin-bottom: 4px; border-bottom: 1px solid var(--line); }
.m-feat .m-ph { aspect-ratio: 16 / 9; border-radius: var(--r-l); }
.m-feat__t { display: block; font-size: 28px; line-height: 1.12; font-weight: 800; margin-top: 6px; text-wrap: balance; }
.m-feat__x { color: var(--ink-2); font-size: 17px; margin-top: 8px; }
.m-feat .m-time { display: block; margin-top: 8px; }
@media (min-width: 760px) {
    .m-feat { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 26px; align-items: start; }
    .m-feat__t { font-size: 32px; }
}
.m-pag { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px; margin: 30px 0 6px; }
.m-pag a, .m-pag span { min-width: 44px; height: 44px; padding: 0 12px; display: inline-flex; align-items: center; justify-content: center; border-radius: 12px; font-weight: 700; background: var(--card); border: 1px solid var(--line); font-variant-numeric: tabular-nums; }
.m-pag a:hover { border-color: var(--forest); color: var(--forest); }
.m-pag [aria-current] { background: var(--forest); border-color: var(--forest); color: #fff; }
.m-pag .m-pag__gap { background: none; border: 0; min-width: 24px; padding: 0; color: var(--muted); }
.m-pag svg { width: 18px; height: 18px; }
.m-empty { padding: 40px 22px; text-align: center; background: var(--card); border: 1.5px dashed var(--line-2); border-radius: var(--r-l); }
.m-empty h2 { font-family: var(--serif); font-weight: 800; font-size: 23px; margin-bottom: 6px; }
.m-empty p { color: var(--ink-2); max-width: 46ch; margin: 0 auto; }
.m-empty .m-btn { margin-top: 16px; }

/* rubrika Obvestila kot deska */
.m-board--page { margin-top: 8px; }
.m-board--page .m-board__body { padding: 22px 14px 18px; }
.m-board--page .m-slip { padding: 16px 18px 15px 40px; }
.m-board--page .m-slip::before { left: 15px; top: 21px; }
.m-board--page .m-slip__t { font-size: 20px; }
@media (min-width: 760px) {
    .m-board--page .m-board__body { padding: 26px 22px 22px; }
    .m-board--page .m-slips { grid-template-columns: 1fr 1fr; gap: 14px; }
}

.m-search-big { display: flex; gap: 8px; margin-top: 16px; max-width: 720px; }
.m-search-big .m-input { flex: 1; min-width: 0; min-height: 54px; font-size: 18px; }
.m-search-big .m-btn { min-height: 54px; }
.m-results-h { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 16px; margin: 26px 0 8px; }
.m-results-h h2 { font-family: var(--serif); font-weight: 800; font-size: 22px; }
.m-results-h span { color: var(--muted); font-size: 15px; }

.m-pagebox { max-width: 780px; margin: 0 auto; }
.m-pagebox .m-prose { margin-top: 18px; }
.m-contact { margin-top: 32px; padding: 22px; border-radius: var(--r-l); background: var(--forest-1); border: 1px solid var(--forest-2); }
.m-contact h2 { font-family: var(--serif); font-weight: 800; font-size: 22px; }
.m-contact p { color: var(--ink-2); margin: 4px 0 14px; }
.m-contact__btns { display: flex; flex-wrap: wrap; gap: 10px; }

/* =====================================================================
   DOGODKI
   ===================================================================== */
.m-tabs { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding: 16px 0 2px; }
.m-tabs::-webkit-scrollbar { display: none; }
.m-tab { flex: none; display: inline-flex; align-items: center; gap: 8px; height: 42px; padding: 0 16px; border-radius: 999px; border: 1.5px solid var(--line-2); background: var(--card); font-weight: 700; font-size: 15.5px; white-space: nowrap; }
.m-tab:hover { border-color: var(--forest); color: var(--forest); }
.m-tab small { font-size: 13.5px; font-weight: 700; opacity: .7; font-variant-numeric: tabular-nums; }
.m-tab[aria-current] { background: var(--forest); border-color: var(--forest); color: #fff; }
.m-tab[aria-current] small { opacity: .85; }
.m-filter { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding: 10px 0 0; }
.m-filter::-webkit-scrollbar { display: none; }
.m-filter a { flex: none; display: inline-flex; align-items: center; gap: 7px; height: 36px; padding: 0 13px; border-radius: 999px; background: var(--paper-2); font-weight: 700; font-size: 14.5px; white-space: nowrap; }
.m-filter a:hover { background: var(--forest-1); color: var(--forest); }
.m-filter a[aria-current] { background: var(--ink); color: #fff; }
.m-filter i { width: 9px; height: 9px; border-radius: 50%; display: block; }
.m-evlist { display: grid; gap: 12px; }
.m-evrow { display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 14px; align-items: start; padding: 14px; background: var(--card); border: 1px solid var(--line); border-radius: var(--r-l); }
.m-evrow:hover { border-color: var(--forest-2); }
.m-evrow .m-cal { width: 58px; height: 62px; }
.m-evrow__t { display: block; font-family: var(--serif); font-weight: 700; font-size: 19px; line-height: 1.25; }
.m-evrow:hover .m-evrow__t { color: var(--forest); text-decoration: underline; text-decoration-thickness: .07em; text-underline-offset: .14em; }
.m-evrow__m { display: flex; flex-wrap: wrap; gap: 4px 14px; margin-top: 6px; font-size: 14.5px; color: var(--ink-2); }
.m-evrow__m span { display: inline-flex; align-items: center; gap: 5px; }
.m-evrow__m svg { width: 15px; height: 15px; color: var(--forest); flex: none; }
.m-evrow__img { display: none; }
.m-evtag { display: inline-flex; align-items: center; height: 24px; padding: 0 9px; border-radius: 999px; font-size: 12.5px; font-weight: 700; background: var(--forest-1); color: var(--forest); }
.m-evtag--now { background: var(--amber); color: var(--forest-9); }
.m-evtag--off { background: #FBE7E4; color: var(--err); }
.m-evtag--past { background: var(--paper-2); color: var(--muted); }
@media (min-width: 700px) {
    .m-evrow { grid-template-columns: 64px minmax(0, 1fr) 168px; gap: 18px; padding: 16px; }
    .m-evrow .m-cal { width: 64px; height: 68px; }
    .m-evrow .m-cal b { font-size: 26px; }
    .m-evrow__img { display: block; aspect-ratio: 16 / 10; border-radius: 10px; }
    .m-evrow__t { font-size: 21px; }
}
.m-evfeat { display: grid; gap: 16px; }
@media (min-width: 760px) { .m-evfeat { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; } }
.m-evcard { display: block; background: var(--card); border: 1px solid var(--line); border-radius: var(--r-l); overflow: hidden; }
.m-evcard .m-ph { aspect-ratio: 16 / 9; border-radius: 0; }
.m-evcard__b { padding: 14px 16px 16px; }
.m-evcard__d { font-weight: 700; color: var(--forest); font-size: 14.5px; }
.m-evcard__t { display: block; font-family: var(--serif); font-weight: 700; font-size: 19px; line-height: 1.25; margin-top: 4px; }
.m-evcard:hover .m-evcard__t { color: var(--forest); text-decoration: underline; text-underline-offset: .14em; }
.m-evcard__m { display: block; color: var(--muted); font-size: 14px; margin-top: 6px; }
.m-evsec { margin-top: 30px; }
.m-evsec > h2 { font-family: var(--serif); font-weight: 800; font-size: 24px; margin-bottom: 12px; }

/* dogodek */
.m-evhead { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 16px; align-items: start; margin-top: 6px; }
.m-evhead .m-cal { width: 64px; height: 70px; }
.m-evhead .m-cal b { font-size: 28px; }
.m-evhead h1 { font-family: var(--serif); font-weight: 800; font-size: 30px; line-height: 1.1; letter-spacing: -.01em; text-wrap: balance; }
@media (min-width: 760px) { .m-evhead { grid-template-columns: 80px minmax(0, 1fr); } .m-evhead .m-cal { width: 80px; height: 86px; } .m-evhead .m-cal b { font-size: 34px; } .m-evhead h1 { font-size: 42px; } }
.m-evhead__tags { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
.m-facts { display: grid; gap: 2px; }
.m-fact { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 12px; padding: 12px 0; border-top: 1px solid var(--line); }
.m-fact:first-child { border-top: 0; padding-top: 2px; }
.m-fact svg { width: 20px; height: 20px; color: var(--forest); margin-top: 1px; }
.m-fact dt { font-size: 13.5px; font-weight: 700; color: var(--muted); }
.m-fact dd { font-weight: 700; color: var(--ink); line-height: 1.4; }
.m-fact dd a { color: var(--forest); text-decoration: underline; text-underline-offset: 2px; font-weight: 700; }
.m-fact dd small { display: block; font-weight: 400; color: var(--ink-2); font-size: 15px; }
.m-evbtns { display: grid; gap: 8px; margin-top: 14px; }
.m-map { margin-top: 14px; border-radius: var(--r); overflow: hidden; border: 1px solid var(--line); }
.m-map iframe { width: 100%; height: 220px; border: 0; }

/* koledar */
.m-calw { background: var(--card); border: 1px solid var(--line); border-radius: var(--r-l); overflow: hidden; }
.m-calw__h { display: flex; align-items: center; justify-content: space-between; padding: 14px 16px; border-bottom: 1px solid var(--line); }
.m-calw__h b { font-family: var(--serif); font-weight: 800; font-size: 24px; }
.m-calw__h span { display: block; text-align: center; color: var(--muted); font-size: 14px; font-weight: 700; }
.m-calw__nav { width: 44px; height: 44px; border-radius: 50%; border: 1.5px solid var(--line-2); display: inline-flex; align-items: center; justify-content: center; }
.m-calw__nav:hover { border-color: var(--forest); color: var(--forest); }
.m-calw__nav svg { width: 18px; height: 18px; }
.m-calw__dn, .m-calw__g { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.m-calw__dn div { padding: 10px 0; text-align: center; font-size: 13px; font-weight: 700; color: var(--muted); background: var(--paper); border-bottom: 1px solid var(--line); }
.m-calw__dn div.we { color: var(--amber-ink); }
.m-calw__c { position: relative; min-height: 56px; aspect-ratio: 1 / 1.05; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding-top: 8px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); font-weight: 700; font-variant-numeric: tabular-nums; }
.m-calw__c:nth-child(7n) { border-right: 0; }
.m-calw__c.we { background: #FBFAF4; }
.m-calw__c.empty { background: var(--paper); }
a.m-calw__c:hover { background: var(--forest-1); }
.m-calw__c .n { width: 34px; height: 34px; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.m-calw__c.today .n { box-shadow: inset 0 0 0 2px var(--forest); color: var(--forest); }
.m-calw__c.sel .n { background: var(--forest); color: #fff; }
.m-calw__c.has::after { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--amber); margin-top: 4px; box-shadow: 0 0 0 1px var(--amber-d); }
.m-calw__legend { display: flex; justify-content: center; gap: 18px; padding: 12px; font-size: 14px; color: var(--muted); }
.m-calw__legend span { display: inline-flex; align-items: center; gap: 7px; }
.m-calw__legend i { width: 9px; height: 9px; border-radius: 50%; background: var(--amber); display: block; }
.m-cal-cols { display: grid; gap: 28px; margin-top: 22px; }
@media (min-width: 760px) { .m-calw__c { aspect-ratio: auto; min-height: 86px; } }
@media (min-width: 1000px) { .m-cal-cols { grid-template-columns: minmax(0, 1fr) 360px; gap: 36px; align-items: start; } }
@media (min-width: 1080px) { .m-cal-cols { column-gap: 64px; } }

/* =====================================================================
   VIDEOTEKA, ZAPOSLITEV
   ===================================================================== */
.m-player { border-radius: var(--r-l); overflow: hidden; background: #000; aspect-ratio: 16 / 9; position: relative; }
.m-player iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.m-vinfo { margin-top: 16px; }
.m-vinfo h2 { font-family: var(--serif); font-weight: 800; font-size: 26px; line-height: 1.15; }
.m-vinfo p { color: var(--ink-2); margin-top: 8px; }
.m-vinfo .m-btn { margin-top: 14px; }
.m-vinfo__more { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--line); }
.m-vinfo__more h3 { font-size: 14px; font-weight: 700; color: var(--muted); margin-bottom: 6px; }
.m-vinfo__more a { display: block; padding: 6px 0; color: var(--forest); font-weight: 700; }
.m-vinfo__more a:hover { text-decoration: underline; text-underline-offset: 3px; }
.m-vgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 14px; }
@media (min-width: 760px) { .m-vgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1080px) { .m-vgrid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px 20px; } }
.m-vthumb { display: block; min-width: 0; }
.m-vthumb .m-ph { aspect-ratio: 16 / 9; }
.m-vthumb .m-ph::after { content: ""; position: absolute; left: 50%; top: 50%; width: 44px; height: 44px; margin: -22px 0 0 -22px; border-radius: 50%; background: rgba(14, 39, 28, .82) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M9 7v10l8-5z'/%3E%3C/svg%3E") center / 24px no-repeat; }
.m-vthumb .m-t { display: block; font-size: 16px; line-height: 1.3; margin-top: 8px; }
.m-vthumb .m-t.m-clamp2 { display: -webkit-box; }
.m-vthumb .m-time { display: block; font-size: 13px; margin-top: 4px; }
.m-vthumb[aria-current="page"] .m-ph { outline: 3px solid var(--forest); outline-offset: 3px; }

.m-jobsearch { display: flex; gap: 8px; margin: 16px 0 6px; max-width: 720px; }
.m-jobsearch .m-input { flex: 1; min-width: 0; }
.m-jobs { display: grid; gap: 10px; margin-top: 14px; }
.m-job { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 14px; align-items: start; padding: 14px 16px; background: var(--card); border: 1px solid var(--line); border-radius: var(--r-l); }
.m-job:hover { border-color: var(--forest-2); }
.m-job__logo { width: 52px; height: 52px; border-radius: 10px; border: 1px solid var(--line); background: #fff; overflow: hidden; display: flex; align-items: center; justify-content: center; color: var(--forest); }
.m-job__logo img { width: 100%; height: 100%; object-fit: contain; }
.m-job__logo svg { width: 24px; height: 24px; }
.m-job__t { display: block; font-family: var(--serif); font-weight: 700; font-size: 19px; line-height: 1.25; }
.m-job:hover .m-job__t { color: var(--forest); text-decoration: underline; text-underline-offset: .14em; }
.m-job__c { display: block; font-weight: 700; color: var(--forest); font-size: 15px; margin-top: 3px; }
.m-job__m { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 14px; color: var(--muted); margin-top: 6px; }
.m-job__x { display: none; color: var(--ink-2); font-size: 15px; margin-top: 6px; }
@media (min-width: 700px) { .m-job__x { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } }
.m-src-note { text-align: center; color: var(--muted); font-size: 14px; margin-top: 18px; }
.m-src-note a { color: var(--forest); text-decoration: underline; }

/* =====================================================================
   PRIJAVA, RAČUN, NAPAKE
   ===================================================================== */
.m-formcard { max-width: 470px; margin: 28px auto 0; background: var(--card); border: 1px solid var(--line); border-radius: var(--r-xl); padding: 26px 20px; }
@media (min-width: 600px) { .m-formcard { padding: 34px 32px; margin-top: 40px; } }
.m-formcard--wide { max-width: 680px; }
.m-formcard h1 { font-family: var(--serif); font-weight: 800; font-size: 30px; line-height: 1.1; }
.m-formcard h2 { font-family: var(--serif); font-weight: 800; font-size: 21px; }
.m-formcard > p, .m-formcard__lead { color: var(--ink-2); margin-top: 6px; }
.m-formcard form { margin-top: 18px; }
.m-formcard + .m-formcard { margin-top: 18px; }
.m-field { display: block; margin-top: 14px; }
.m-field:first-child { margin-top: 0; }
.m-label { display: block; font-weight: 700; font-size: 15px; margin-bottom: 6px; color: var(--ink); }
.m-err { color: var(--err); font-size: 14.5px; margin-top: 6px; font-weight: 700; }
.m-hint { color: var(--muted); font-size: 14px; margin-top: 6px; }
.m-row2 { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-top: 14px; }
.m-link { color: var(--forest); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.m-link:hover { text-decoration-thickness: 2px; }
.m-or { display: flex; align-items: center; gap: 12px; color: var(--muted); font-size: 14px; margin: 20px 0; }
.m-or::before, .m-or::after { content: ""; flex: 1; height: 1px; background: var(--line); }
.m-gbtn { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 50px; border-radius: 12px; border: 1.5px solid var(--line-2); background: #fff; font-weight: 700; }
.m-gbtn:hover { border-color: var(--forest); }
.m-gbtn svg { width: 20px; height: 20px; }
.m-formcard .m-formcard__foot { margin-top: 20px; text-align: center; color: var(--ink-2); }
.m-flash { padding: 12px 14px; border-radius: 12px; margin: 0 0 14px; font-weight: 700; font-size: 15.5px; background: var(--paper-2); color: var(--ink); }
.m-flash--error, .m-flash--danger { background: #FBE7E4; color: #7F1F15; }
.m-flash--success { background: var(--forest-1); color: var(--forest); }
.m-flash--warning { background: var(--amber-1); color: var(--amber-ink); }
.m-acc { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; }
.m-acc > div { display: flex; align-items: center; gap: 10px; }
.m-acc svg { width: 22px; height: 22px; }
.m-ok { color: var(--forest); font-size: 14px; font-weight: 700; }
.m-danger { color: var(--err); font-weight: 700; }
.m-btn--danger { background: var(--err); border-color: var(--err); }
.m-btn--danger:hover { background: #7F1F15; border-color: #7F1F15; }
.m-warnbox { background: #FBEDEA; border: 1px solid #EBC3BC; border-radius: 12px; padding: 14px 16px; color: #7F1F15; }
.m-warnbox ul { list-style: disc; padding-left: 1.2em; margin-top: 6px; }
.m-infobox { background: var(--paper); border-radius: 12px; padding: 12px 14px; margin: 14px 0; }

.m-err-page { text-align: center; padding: 48px 0 12px; max-width: 640px; margin: 0 auto; }
.m-err-page__code { font-family: var(--serif); font-weight: 800; font-size: 96px; line-height: 1; color: var(--forest); font-variant-numeric: lining-nums; }
.m-err-page h1 { font-family: var(--serif); font-weight: 800; font-size: 32px; margin-top: 10px; }
.m-err-page p { color: var(--ink-2); margin-top: 10px; }
.m-err-page .m-search-big { margin: 22px auto 0; }
.m-err-page__btns { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; margin-top: 18px; }

/* =====================================================================
   NOGA
   ===================================================================== */
.m-foot { margin-top: 80px; background: var(--forest-9); color: #C3D1C8; }
.m-foot__ridge { display: block; width: 100%; height: 46px; background: var(--paper); }
.m-foot__in { display: grid; gap: 30px; padding: 30px 0 26px; }
@media (min-width: 760px) { .m-foot__in { grid-template-columns: repeat(3, minmax(0, 1fr)); } .m-foot__brand { grid-column: 1 / -1; } }
@media (min-width: 1080px) { .m-foot__in { grid-template-columns: 1.5fr 1fr 1fr 1fr; padding-top: 36px; } .m-foot__brand { grid-column: auto; } }
.m-foot__brand img { height: 34px; width: auto; }
.m-foot__brand p { margin-top: 14px; max-width: 34ch; line-height: 1.55; }
.m-social { display: flex; gap: 8px; margin-top: 16px; }
.m-social a { width: 42px; height: 42px; border-radius: 12px; background: rgba(255, 255, 255, .08); color: #fff; display: inline-flex; align-items: center; justify-content: center; }
.m-social a:hover { background: rgba(255, 255, 255, .16); }
.m-social svg { width: 19px; height: 19px; }
.m-foot h2 { font-family: var(--serif); font-weight: 700; font-size: 17px; color: #fff; margin-bottom: 8px; }
.m-foot li a, .m-foot li button { display: inline-block; padding: 5px 0; color: #C3D1C8; text-align: left; }
.m-foot li a:hover, .m-foot li button:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.m-foot__bar { border-top: 1px solid rgba(255, 255, 255, .12); padding: 16px 0 26px; font-size: 14.5px; display: flex; flex-wrap: wrap; gap: 6px 24px; justify-content: space-between; }
.m-foot__bar a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }

/* novičnik in obvestila (skupna delčka) v barvah portala */
#knl-popup { --knl-accent: #173F2E !important; font-family: var(--sans) !important; }
#knl-popup .knl-popup__title { font-family: var(--serif); }
#knpush-optin { --knpush-accent: #173F2E !important; font-family: var(--sans) !important; }

@media print {
    .m-util, .m-head, .m-chips, .m-side, .m-foot, .m-share, .m-share-end, .m-cmt, .m-gpref { display: none !important; }
    body { background: #fff; }
}

/* dopolnila */
.m-box .m-ev { box-shadow: none; border: 1px solid var(--line); background: var(--card); }
.m-box .m-ev:hover { border-color: var(--forest-2); }
.m-tab svg, .m-btn svg { width: 18px; height: 18px; flex: none; }
.m-crumbs span { color: var(--ink-2); }
.m-share .is-ok { background: var(--forest); border-color: var(--forest); color: #fff; }
@media (min-width: 760px) { .m-evfeat--narrow { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1080px) { .m-evfeat--narrow { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* v3 */
@media (max-width: 599px) { .m-share-end .m-share { margin-left: 0; } }
.m-board--page .m-slip { display: flex; flex-direction: column; }
.m-board--page .m-slip .m-time { margin-top: auto; padding-top: 8px; }
.m-evgrid { display: grid; gap: 22px; }
@media (min-width: 1080px) {
    .m-evgrid { grid-template-columns: minmax(0, 1fr) 360px; grid-template-rows: auto 1fr; column-gap: 64px; row-gap: 0; }
    .m-evgrid__top { grid-column: 1; grid-row: 1; }
    .m-evgrid__side { grid-column: 2; grid-row: 1 / span 2; }
    .m-evgrid__main { grid-column: 1; grid-row: 2; }
}
@media (min-width: 1080px) { .m-evgrid__main { padding-top: 24px; } }

/* v5 */
/* stranski stolpec na tablici: okvirji v dveh stolpcih namesto čez vso širino */
@media (min-width: 760px) and (max-width: 1079px) {
    .m-side:not(.m-evgrid__side) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
}
/* drsni zavihki in filtri na telefonu in tablici segajo do roba zaslona (prej odrezani ob robu vsebine) */
@media (max-width: 1079px) {
    .m-tabs, .m-filter, .m-subnav { margin-left: calc(-1 * var(--gut)); margin-right: calc(-1 * var(--gut)); padding-left: var(--gut); padding-right: var(--gut); scroll-padding-inline: var(--gut); }
}
/* koda in tabele piškotkov (stran Zasebnost) v barvah portala; na telefonu se prilegajo širini */
.m-prose code { font-size: .86em; background: var(--paper-2); padding: .12em .4em; border-radius: 5px; overflow-wrap: anywhere; }
.m-prose .cookie-table th, .m-prose .cookie-table td { border-color: var(--line); }
.m-prose .cookie-table th { background: var(--paper-2); }
.m-prose .cookie-table code { background: var(--paper-2); font-size: .86em; }
@media (max-width: 599px) {
    .m-prose .cookie-table th, .m-prose .cookie-table td { padding: 8px 6px; }
    .m-prose .cookie-table code { white-space: nowrap; overflow-wrap: normal; font-size: .78em; padding: .1em .3em; }
}

/* v6 */
/* stranski stolpec na tablici: zadnji okvir, ki bi ostal sam v vrstici, čez obe polovici */
@media (min-width: 760px) and (max-width: 1079px) {
    .m-side:not(.m-evgrid__side) > :last-child:nth-child(odd) { grid-column: 1 / -1; }
}
/* 1080–1279 px: glavni stolpec je ožji kot na tablici, zato izpostavljeni članek rubrike pod sliko (naslov je imel 8 vrstic)
   in naslov članka v velikosti s tablice */
@media (min-width: 1080px) and (max-width: 1279px) {
    .m-feat { grid-template-columns: minmax(0, 1fr); gap: 14px; }
    .m-art__title { font-size: 42px; }
}
