/* RK mega panel: izgled panela u Gantry padajućem meniju (it_medical).
   Boje prate temu: akcent #af9a7d, tamno braon #5c4c35, naslovi Montserrat.
   Ispod 48rem (mobilni meni) panel se ne prikazuje, meni ostaje čista lista. */

.rk-mpanel {
    --rk-accent: #af9a7d;
    --rk-dark: #5c4c35;
    --rk-text: #333;
    --rk-muted: #8a8a8a;
    --rk-line: rgba(92, 76, 53, 0.12);
    --rk-radius: 8px;
    display: none;
    box-sizing: border-box;
    width: 100%;
    padding: 1.25rem 1.25rem 1rem;
    color: var(--rk-text);
    font-family: 'Open Sans', sans-serif;
    text-align: left;
}

@media (min-width: 48rem) {
    .rk-mpanel { display: block; }
}

/* Gantry: stavka tipa particle u koloni padajućeg menija, bez podrazumevanog razmaka */
.g-main-nav .g-dropdown .g-menu-item-type-particle,
.g-main-nav .g-dropdown .g-menu-item-type-particle > .menu-item-particle {
    padding: 0 !important;
    margin: 0 !important;
    width: 100%;
}

.g-main-nav .g-dropdown .g-menu-item-type-particle .platform-content { width: 100%; }

.rk-mpanel *,
.rk-mpanel *::before,
.rk-mpanel *::after { box-sizing: border-box; }

.rk-mpanel a {
    color: inherit;
    text-decoration: none;
}

.rk-mpanel__grid {
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
}

.rk-mpanel__zone {
    flex: 0 1 var(--rk-w, 33%);
    min-width: 0;
}

.rk-mpanel__zone + .rk-mpanel__zone {
    border-left: 1px solid var(--rk-line);
    padding-left: 1.5rem;
}

.rk-mpanel__title {
    margin: 0 0 0.75rem;
    padding-bottom: 0.45rem;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--rk-dark);
    border-bottom: 2px solid var(--rk-accent);
}

.rk-mpanel__footer {
    margin-top: 1rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--rk-line);
    text-align: right;
}

.rk-mpanel__more {
    font-family: 'Montserrat', sans-serif;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--rk-dark);
    transition: color 0.2s;
}

.rk-mpanel__more:hover { color: var(--rk-accent); }
.rk-mpanel__more span { margin-left: 0.25rem; }

/* skeleton dok zona čeka com_ajax */
.rk-mp-skeleton span {
    display: block;
    height: 0.9rem;
    margin: 0.55rem 0;
    border-radius: 4px;
    background: linear-gradient(90deg, #f0ebe4 25%, #f8f5f1 50%, #f0ebe4 75%);
    background-size: 200% 100%;
    animation: rk-mp-shimmer 1.2s infinite;
}

.rk-mp-skeleton span:nth-child(2) { width: 80%; }
.rk-mp-skeleton span:nth-child(3) { width: 60%; }

@keyframes rk-mp-shimmer {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.rk-mp-empty {
    margin: 0;
    font-size: 0.8rem;
    color: var(--rk-muted);
}

/* oznaka (Video, Novo) */
.rk-mp-badge {
    position: absolute;
    left: 0.35rem;
    top: 0.35rem;
    padding: 0.1rem 0.4rem;
    border-radius: 3px;
    background: var(--rk-dark);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    line-height: 1.4;
}

.rk-mp-badge--hero {
    position: static;
    display: inline-block;
    margin-bottom: 0.35rem;
    background: var(--rk-accent);
}

/* stil links: podmeni i kategorije */
.rk-mp-links {
    list-style: none;
    margin: 0;
    padding: 0;
}

.rk-mp-links__item { margin: 0; padding: 0; }

.rk-mp-links__link {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.32rem 0.25rem;
    border-radius: 6px;
    font-size: 0.84rem;
    line-height: 1.3;
    transition: background 0.2s, color 0.2s;
}

a.rk-mp-links__link:hover {
    background: rgba(175, 154, 125, 0.12);
    color: var(--rk-dark);
}

.rk-mp-links__item--heading .rk-mp-links__link {
    font-family: 'Montserrat', sans-serif;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--rk-muted);
    cursor: default;
}

.rk-mp-links__img {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 0 0 2px #fff, 0 0 0 3px var(--rk-line);
}

.rk-mp-links__icon {
    flex: 0 0 1.4rem;
    width: 1.4rem;
    text-align: center;
    color: var(--rk-accent);
    font-size: 0.95rem;
}

.rk-mp-links__title { flex: 1 1 auto; }

.rk-mp-links__count {
    flex: 0 0 auto;
    min-width: 1.6rem;
    padding: 0 0.4rem;
    border-radius: 999px;
    background: rgba(175, 154, 125, 0.18);
    color: var(--rk-dark);
    font-size: 0.68rem;
    font-weight: 600;
    text-align: center;
    line-height: 1.5rem;
}

/* stil list: recepti i članci sa sličicom */
.rk-mp-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.rk-mp-list__item + .rk-mp-list__item { margin-top: 0.55rem; }

.rk-mp-list__link {
    display: flex;
    gap: 0.75rem;
    align-items: center;
}

.rk-mp-list__thumb {
    position: relative;
    flex: 0 0 64px;
    width: 64px;
    height: 64px;
    border-radius: var(--rk-radius);
    overflow: hidden;
    background: #f1ede8;
}

.rk-mp-list__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.35s ease;
}

.rk-mp-list__link:hover .rk-mp-list__thumb img { transform: scale(1.06); }

.rk-mp-list__text {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
}

.rk-mp-list__title {
    font-family: 'Montserrat', sans-serif;
    font-size: 0.82rem;
    font-weight: 600;
    line-height: 1.3;
    color: var(--rk-text);
    transition: color 0.2s;
}

.rk-mp-list__link:hover .rk-mp-list__title { color: var(--rk-accent); }

.rk-mp-list__meta,
.rk-mp-card__meta,
.rk-mp-hero__meta {
    font-size: 0.7rem;
    color: var(--rk-muted);
}

/* stil cards: dve kolone, slika 16:9 */
.rk-mp-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9rem 1rem;
}

.rk-mp-card { display: block; }

.rk-mp-card__media {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9;
    border-radius: var(--rk-radius);
    overflow: hidden;
    background: #f1ede8;
    margin-bottom: 0.45rem;
}

.rk-mp-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.35s ease;
}

.rk-mp-card:hover .rk-mp-card__media img { transform: scale(1.05); }

.rk-mp-card__title {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.8rem;
    font-weight: 600;
    line-height: 1.3;
    transition: color 0.2s;
}

.rk-mp-card:hover .rk-mp-card__title { color: var(--rk-accent); }
.rk-mp-card__meta { display: block; margin-top: 0.1rem; }

/* stil hero: jedna velika slika sa naslovom preko */
.rk-mp-hero {
    position: relative;
    display: block;
    aspect-ratio: 4 / 3;
    border-radius: var(--rk-radius);
    overflow: hidden;
    background: var(--rk-dark);
}

.rk-mp-hero__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.rk-mp-hero:hover .rk-mp-hero__img { transform: scale(1.05); }

.rk-mp-hero__overlay {
    position: absolute;
    inset: auto 0 0 0;
    padding: 2.5rem 0.9rem 0.85rem;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%);
    color: #fff;
}

.rk-mp-hero__title {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.25;
}

.rk-mp-hero__meta { display: block; margin-top: 0.2rem; color: rgba(255, 255, 255, 0.8); }

.rk-mp-hero__rest {
    list-style: none;
    margin: 0.6rem 0 0;
    padding: 0;
    font-size: 0.8rem;
}

.rk-mp-hero__rest li { padding: 0.2rem 0; }
.rk-mp-hero__rest a:hover { color: var(--rk-accent); }

/* stil card: ručna kartica */
.rk-mp-promo__img {
    display: block;
    width: 100%;
    border-radius: var(--rk-radius);
    margin-bottom: 0.6rem;
}

.rk-mp-promo__text {
    font-size: 0.82rem;
    line-height: 1.5;
}

.rk-mp-promo__text p { margin: 0 0 0.5rem; }

.rk-mp-promo__btn {
    display: inline-block;
    margin-top: 0.5rem;
    padding: 0.45rem 0.95rem;
    border-radius: 999px;
    background: var(--rk-accent);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    transition: background 0.2s;
}

.rk-mp-promo__btn:hover { background: var(--rk-dark); color: #fff; }

/* Poništavanje Gantry pravila za linkove i stavke unutar panela (tema daje svakom <a> u meniju
   padding 12px 20px, white-space: nowrap i linije između stavki). Isti prefiks kao tema, da nadjača. */
#g-navigation .g-main-nav .rk-mpanel a,
#g-navigation .g-main-nav .rk-mpanel a:hover,
#g-navigation .g-main-nav .rk-mpanel a:focus {
    display: block;
    padding: 0 !important;
    margin: 0 !important;
    border: 0;
    background: none;
    white-space: normal !important;
    line-height: 1.35;
    text-transform: none;
    letter-spacing: normal;
}

#g-navigation .g-main-nav .rk-mpanel li {
    display: block;
    padding: 0;
    margin: 0;
    border: 0;
    background: none;
    float: none;
    width: auto;
}

#g-navigation .g-main-nav .rk-mpanel img {
    display: block;
    max-width: 100%;
}

#g-navigation .g-main-nav .rk-mpanel a.rk-mp-links__link { display: flex; padding: 0.32rem 0.25rem !important; }
#g-navigation .g-main-nav .rk-mpanel a.rk-mp-links__link:hover { background: rgba(175, 154, 125, 0.12); }
#g-navigation .g-main-nav .rk-mpanel a.rk-mp-list__link { display: flex; }
#g-navigation .g-main-nav .rk-mpanel a.rk-mp-promo__btn { display: inline-block; padding: 0.45rem 0.95rem !important; }
#g-navigation .g-main-nav .rk-mpanel a.rk-mpanel__more { display: inline-block; }
#g-navigation .g-main-nav .rk-mpanel .rk-mp-hero__rest a:hover { color: var(--rk-accent); }

/* Puna širina: Gantry pozicionira .g-dropdown u odnosu na najbliži pozicionirani predak.
   Tema drži li u position: relative, pa se meni širi samo koliko i stavka. Za stavku koja
   nosi naš panel, li postaje static, a širina ide preko celog .g-main-nav (JS upiše inline width). */
.g-main-nav { position: relative; }

#g-navigation .g-main-nav .g-toplevel > li.g-menu-item.g-fullwidth:has(.rk-mpanel) { position: static !important; }

#g-navigation .g-main-nav .g-toplevel > li.g-menu-item.g-fullwidth:has(.rk-mpanel) > .g-dropdown {
    left: 0 !important;
    right: auto !important;
    /* širina .g-container teme (75rem), a na užim ekranima do ivice prozora */
    width: min(75rem, calc(100vw - 2rem)) !important;
    max-width: none;
    transform: none !important;
}

/* link ispod zone */
.rk-mpanel__zone-more {
    display: inline-block;
    margin-top: 0.6rem;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--rk-dark);
}

.rk-mpanel__zone-more:hover { color: var(--rk-accent); }

/* stil dan: crkveni kalendar danas */
.rk-mp-day__link {
    display: flex;
    gap: 0.8rem;
    align-items: center;
}

.rk-mp-day__img {
    flex: 0 0 72px;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 0 0 2px #fff, 0 0 0 3px var(--rk-line);
}

.rk-mp-day__date-box {
    flex: 0 0 64px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border-radius: var(--rk-radius);
    background: var(--rk-dark);
    color: #fff;
}

.rk-mp-day--red .rk-mp-day__date-box { background: #8e1b16; }

.rk-mp-day__num {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
}

.rk-mp-day__mon {
    font-size: 0.62rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-top: 0.2rem;
}

.rk-mp-day__text { display: flex; flex-direction: column; gap: 0.15rem; min-width: 0; }
.rk-mp-day__date { font-size: 0.7rem; color: var(--rk-muted); }

.rk-mp-day__name {
    font-family: 'Montserrat', sans-serif;
    font-size: 0.86rem;
    font-weight: 700;
    line-height: 1.3;
    color: var(--rk-text);
}

.rk-mp-day--red .rk-mp-day__name { color: #8e1b16; }

.rk-mp-day__fast {
    display: inline-block;
    align-self: flex-start;
    margin-top: 0.15rem;
    padding: 0.1rem 0.5rem;
    border-radius: 999px;
    font-size: 0.64rem;
    font-weight: 600;
    background: rgba(175, 154, 125, 0.18);
    color: var(--rk-dark);
}

.rk-mp-day__fast--voda { background: rgba(55, 128, 179, 0.14); color: #2b5f86; }
.rk-mp-day__fast--ulje { background: rgba(193, 144, 28, 0.16); color: #7a5a0e; }
.rk-mp-day__fast--riba { background: rgba(38, 152, 99, 0.14); color: #1d6b48; }
.rk-mp-day__fast--beli { background: rgba(150, 150, 150, 0.18); color: #555; }

.rk-mp-day__desc {
    margin: 0.6rem 0 0;
    font-size: 0.78rem;
    line-height: 1.5;
    color: var(--rk-text);
}

.rk-mp-day__tomorrow {
    margin: 0.7rem 0 0;
    padding-top: 0.6rem;
    border-top: 1px dashed var(--rk-line);
    font-size: 0.76rem;
    color: var(--rk-muted);
}

.rk-mp-day__tomorrow strong { color: var(--rk-dark); }

/* stil godine: dogodilo se na današnji dan */
.rk-mp-years {
    list-style: none;
    margin: 0;
    padding: 0;
}

.rk-mp-years__item + .rk-mp-years__item { margin-top: 0.55rem; }

.rk-mp-years__link {
    display: flex;
    gap: 0.7rem;
    align-items: flex-start;
}

.rk-mp-years__year {
    flex: 0 0 auto;
    min-width: 3.2rem;
    padding: 0.2rem 0.45rem;
    border-radius: 4px;
    background: var(--rk-dark);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.68rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.3;
}

.rk-mp-years__text { display: flex; flex-direction: column; gap: 0.1rem; min-width: 0; }

.rk-mp-years__title {
    font-family: 'Montserrat', sans-serif;
    font-size: 0.8rem;
    font-weight: 600;
    line-height: 1.3;
    transition: color 0.2s;
}

a.rk-mp-years__link:hover .rk-mp-years__title { color: var(--rk-accent); }

.rk-mp-years__desc {
    font-size: 0.72rem;
    line-height: 1.45;
    color: var(--rk-muted);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* stil modul: tuđi modul u zoni */
.rk-mp-modul { font-size: 0.84rem; line-height: 1.5; }
.rk-mp-modul > * { margin-top: 0; }
