/* =================================
   PREMIUM CSS: Oddech, animacje i subtelne efekty
================================= */

/* GLOBALNE ODDECHY I TRANSITION */
* {
    transition: all 0.3s ease-in-out;
}
body {
    line-height: 1.6;
    scroll-behavior: smooth;
}

/* TOPBAR */
.topbar {
    transition: background-color 0.5s ease;
}
.topbar:hover {
    background-color: rgba(0,0,0,0.85);
}

/* HEADER */
.main-header {
    transition: all 0.5s ease;
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
}
.main-header .logo img {
    transition: transform 0.3s ease;
}
.main-header .logo img:hover {
    transform: scale(1.05);
}
.main-menu a {
    position: relative;
}
.main-menu a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    background-color: #e53935;
    left: 0;
    bottom: -3px;
    transition: width 0.3s ease;
}
.main-menu a:hover::after {
    width: 100%;
}

/* SLIDER */
.slide-caption {
    transform: translateY(-10px);
    opacity: 0;
    animation: slideFadeIn 1s forwards;
}
@keyframes slideFadeIn {
    to { transform: translateY(0); opacity: 1; }
}

/* ON-AIR */
.on-air-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.on-air-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.5);
}

/* NEWS */
.news-item {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.news-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.4);
}

/* TOP5 */
.sidebar-column .top5-list li {
    transition: transform 0.3s ease, background 0.3s ease;
}
.sidebar-column .top5-list li:hover {
    transform: translateX(5px);
    background-color: rgba(60,60,60,0.95);
}

/* POLL */
.poll-widget {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.poll-widget:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 15px rgba(0,0,0,0.4);
}

/* VIDEO */
.video-embed iframe {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.video-embed:hover iframe {
    transform: scale(1.02);
    box-shadow: 0 12px 25px rgba(0,0,0,0.5);
}

/* PREZENTERZY */
.presenter-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.presenter-card:hover {
    transform: translateY(-5px) scale(1.03);
    box-shadow: 0 10px 20px rgba(0,0,0,0.4);
}

/* LISTEN SECTION */
.listen-section h2 {
    margin-bottom: 20px;
    transition: transform 0.3s ease, color 0.3s ease;
}
.listen-section h2:hover {
    transform: translateY(-3px);
    color: #ff4c4c;
}
.listen-buttons .listen-btn {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.listen-buttons .listen-btn:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.5);
}

/* MODAL */
.modal-content {
    transform: scale(0.9);
    opacity: 0;
    animation: modalFadeIn 0.4s forwards;
}
@keyframes modalFadeIn {
    to { transform: scale(1); opacity: 1; }
}

/* FOOTER */
.main-footer {
    transition: background-color 0.5s ease;
}
.main-footer:hover {
    background-color: #222;
}

/* MEDIA QUERIES */
@media (max-width: 768px) {
    .on-air-section { gap: 20px; }
    .content-grid { gap: 20px; }
    .video-grid { gap: 20px; }
    .presenters-grid { gap: 15px; }
    .listen-buttons { gap: 15px; margin-top: 40px; padding-top: 15px; }
    .listen-section h2 { margin-bottom: 15px; }
}
