.itcx-kal{--kal-main:#14309a;--kal-soft:#eef2ff;--kal-text:#1c2033;--kal-muted:#6b7280;--kal-line:#e6e9f2;--kal-green:#de121e;
  margin:0 0 2rem;color:var(--kal-text)}
.itcx-kal__month{display:flex;align-items:center;gap:14px;margin:26px 0 12px;font-weight:800;font-size:1.05rem;text-transform:uppercase;letter-spacing:.04em;color:var(--kal-main)}
.itcx-kal__month:first-child{margin-top:0}
.itcx-kal__month::after{content:"";flex:1;height:2px;background:var(--kal-line);border-radius:2px}
.itcx-kal__row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:18px;align-items:center;
  background:#fff;border:1px solid var(--kal-line);border-radius:14px;padding:14px 18px;margin-bottom:10px;
  color:inherit;text-decoration:none;box-shadow:0 2px 10px rgb(20 48 154 / 5%);transition:transform .15s,box-shadow .15s,border-color .15s}
.itcx-kal__row:hover{transform:translateY(-2px);border-color:#c9d3f5;box-shadow:0 10px 26px rgb(20 48 154 / 13%);color:inherit;text-decoration:none}
.itcx-kal__date{display:flex;flex-direction:column;align-items:center;justify-content:center;width:64px;height:64px;border-radius:12px;background:var(--kal-main);color:#fff;line-height:1}
.itcx-kal__date b{font-size:1.65rem;font-weight:800}
.itcx-kal__date span{margin-top:4px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:.85}
.itcx-kal__main{display:flex;align-items:center;gap:16px;min-width:0}
.itcx-kal__main img{width:96px;height:72px;object-fit:cover;border-radius:10px;flex:none}
.itcx-kal__text{min-width:0}
.itcx-kal__text>strong{display:block;font-size:1.05rem;line-height:1.25}
.itcx-kal__text>small{display:block;margin-top:2px;color:var(--kal-muted);font-size:.8rem}
.itcx-kal__chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.itcx-kal__chip{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;background:var(--kal-soft);color:var(--kal-main);font-size:.75rem;font-weight:600;line-height:1.5}
.itcx-kal__chip--when{background:#fff;border:1px solid var(--kal-line);color:var(--kal-text)}
.itcx-kal__chip--tag{background:#fff3e0;color:#b45309;text-transform:uppercase;font-size:.68rem;letter-spacing:.03em}
.itcx-kal__price{text-align:right;white-space:nowrap;line-height:1.1}
.itcx-kal__price small{display:block;font-size:.65rem;font-weight:700;color:var(--kal-muted);letter-spacing:.06em;margin-bottom:2px}
.itcx-kal__price span{font-size:1.5rem;font-weight:800;color:var(--kal-green)}
.itcx-kal__price em{display:inline-block;margin-top:8px;padding:6px 14px;border-radius:999px;background:var(--kal-main);color:#fff;font-style:normal;font-size:.78rem;font-weight:700;transition:background .15s}
.itcx-kal__row:hover .itcx-kal__price em{background:#0f2478}
.itcx-kal__legend{display:flex;gap:12px;align-items:flex-start;margin-top:18px;padding:14px 18px;border-radius:12px;background:var(--kal-soft);color:#3b4467;font-size:.82rem;line-height:1.6}
.itcx-kal__legend i{flex:none;width:20px;height:20px;border-radius:50%;background:var(--kal-main);color:#fff;font:700 .75rem/20px serif;text-align:center}
.itcx-kal__empty{padding:18px;margin:0}
@media (max-width:767.98px){
  .itcx-kal__row{grid-template-columns:54px minmax(0,1fr);gap:12px;padding:12px}
  .itcx-kal__date{width:54px;height:54px}.itcx-kal__date b{font-size:1.35rem}
  .itcx-kal__main img{width:64px;height:52px}
  .itcx-kal__price{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;text-align:left;border-top:1px dashed var(--kal-line);padding-top:10px}
  .itcx-kal__price small{display:inline;margin:0 6px 0 0}
  .itcx-kal__price span{font-size:1.25rem}
  .itcx-kal__price em{margin:0 0 0 auto}
}

/* Datum: tema prepisuje boju span/b elemenata, pa je forsiramo */
.itcx-kal .itcx-kal__date b,
.itcx-kal .itcx-kal__date span{color:#fff !important;opacity:1}
.itcx-kal .itcx-kal__date span{font-size:.75rem;letter-spacing:.1em}
.itcx-kal .itcx-kal__price{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.itcx-kal .itcx-kal__price em{margin-top:8px}
@media (max-width:767.98px){
  .itcx-kal .itcx-kal__price{flex-direction:row;align-items:center}
}

/* Mobilni: kompaktna kartica - datum levo, tekst desno, bez slike, cena i dugme u dnu */
@media (max-width:767.98px){
  .itcx-kal .itcx-kal__month{margin:20px 0 10px;font-size:.95rem}
  .itcx-kal .itcx-kal__row{grid-template-columns:52px minmax(0,1fr);align-items:start;gap:6px 12px;padding:12px;border-radius:12px}
  .itcx-kal .itcx-kal__date{width:52px;height:56px;border-radius:10px}
  .itcx-kal .itcx-kal__date b{font-size:1.4rem}
  .itcx-kal .itcx-kal__date span{font-size:.65rem;margin-top:3px}
  .itcx-kal .itcx-kal__main img{display:none}
  .itcx-kal .itcx-kal__text>strong{font-size:1rem}
  .itcx-kal .itcx-kal__text>small{font-size:.76rem;line-height:1.35}
  .itcx-kal .itcx-kal__chips{gap:5px;margin-top:6px}
  .itcx-kal .itcx-kal__chip{font-size:.7rem;padding:2px 8px}
  .itcx-kal .itcx-kal__price{grid-column:1 / -1;margin-top:4px;padding-top:10px}
  .itcx-kal .itcx-kal__price span{font-size:1.2rem}
  .itcx-kal .itcx-kal__price em{margin:0 0 0 auto;padding:6px 16px}
  .itcx-kal .itcx-kal__legend{font-size:.76rem;padding:12px 14px}
}

/* Filter po mesecima */
.itcx-kal .itcx-kal__filter{display:flex;gap:8px;margin:0 0 18px;padding-bottom:4px;overflow-x:auto;scrollbar-width:thin}
.itcx-kal .itcx-kal__filter button{flex:none;display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--kal-line);border-radius:999px;background:#fff;color:var(--kal-text);font-size:.85rem;font-weight:600;line-height:1.2;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.itcx-kal .itcx-kal__filter button:hover{border-color:var(--kal-main);color:var(--kal-main)}
.itcx-kal .itcx-kal__filter button i{font-style:normal;font-size:.7rem;padding:1px 7px;border-radius:999px;background:var(--kal-soft);color:var(--kal-main)}
.itcx-kal .itcx-kal__filter button.is-active{background:var(--kal-main);border-color:var(--kal-main);color:#fff}
.itcx-kal .itcx-kal__filter button.is-active i{background:rgb(255 255 255 / 22%);color:#fff}
.itcx-kal .itcx-kal__month[hidden],.itcx-kal .itcx-kal__row[hidden]{display:none !important}

/* Vrsta prevoza + dva reda filtera */
.itcx-kal .itcx-kal__filters{display:flex;flex-direction:column;gap:10px;margin:0 0 18px}
.itcx-kal .itcx-kal__filters .itcx-kal__filter{margin:0}
.itcx-kal .itcx-kal__chip--t i{font-size:.9rem;line-height:1}
.itcx-kal .itcx-kal__fi{font-size:1rem;line-height:1}
.itcx-kal .itcx-kal__nomatch{padding:18px;margin:0;text-align:center;color:var(--kal-muted)}
.itcx-kal .itcx-kal__nomatch[hidden]{display:none}

/* Ikonica prevoza (autobus/avion): kolona izmedju datuma i slike */
.itcx-kal .itcx-kal__row{grid-template-columns:64px 44px minmax(0,1fr) auto}
.itcx-kal .itcx-kal__ti{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;color:var(--kal-main)}
.itcx-kal .itcx-kal__ti i{font-size:1.6rem;line-height:1;color:var(--kal-main)}

/* Filteri: razmak do scroll trake */
.itcx-kal .itcx-kal__filter{padding-bottom:12px;margin-bottom:6px}

@media (max-width:767.98px){
  .itcx-kal .itcx-kal__row{grid-template-columns:54px minmax(0,1fr);grid-template-areas:"date main" "ti main" "price price"}
  .itcx-kal .itcx-kal__date{grid-area:date}
  .itcx-kal .itcx-kal__main{grid-area:main}
  .itcx-kal .itcx-kal__ti{grid-area:ti;justify-content:center;align-self:start}
  .itcx-kal .itcx-kal__ti i{font-size:1.5rem}
  .itcx-kal .itcx-kal__price{grid-area:price}
}
