:root { --red: #ff4757; --dark: #0a0a0a; --gray: #111111; --text: #ffffff; }
* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Segoe UI', sans-serif; }
body { background-color: var(--dark); color: var(--text); padding-bottom: 80px; overflow-x: hidden; }

/* Ticker & Nav */
.top-ticker { background: var(--red); color: white; padding: 10px 0; overflow: hidden; white-space: nowrap; font-weight: bold; }
.ticker-content { display: inline-block; animation: scroll 30s linear infinite; }
@keyframes scroll { 0% { transform: translateX(100%); } 100% { transform: translateX(-100%); } }

.main-nav { background: #000; padding: 15px 0; border-bottom: 3px solid var(--red); position: sticky; top: 0; z-index: 1000; }
.nav-container { max-width: 1400px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; padding: 0 5%; }
.logo { font-size: 26px; font-weight: 900; color: #fff; text-transform: uppercase; }
.logo span { color: var(--red); }
.nav-links a { color: #bbb; text-decoration: none; margin-left: 20px; font-size: 13px; font-weight: 700; transition: 0.3s; }
.nav-links a:hover { color: var(--red); }
.chat-btn { background: var(--red); color: white !important; padding: 8px 15px; border-radius: 5px; }

/* MAIN GRID */
/* OSTAVI ONO ŠTO VEĆ IMAŠ I SAMO DALEPI OVO ISPOD: */

.external-players-sidebar {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* Ređa ikonice 2 po 2 */
    gap: 10px;
    background: #111;
    padding: 15px;
    border-radius: 12px;
    border: 1px solid #222;
    margin-top: 20px; /* Razmak od partnera iznad */
}

.external-players-sidebar a {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #080808;
    padding: 10px;
    border-radius: 8px;
    border: 1px solid #1a1a1a;
    transition: 0.3s;
}

.external-players-sidebar img {
    max-width: 35px;
    height: auto;
    filter: grayscale(40%);
}

.external-players-sidebar a:hover {
    border-color: #ff4757;
    transform: translateY(-3px);
}

.main-grid { 
    display: grid; 
    grid-template-columns: 220px 1fr 320px; 
    gap: 30px; 
    padding: 30px 5%; 
    max-width: 1600px; 
    margin: 0 auto; 
    align-items: start;
}
.center-content { min-width: 0; overflow: hidden; }

/* PARTNERI SA OKVIRIMA (ISPRAVLJENO) */
.partner-list { display: flex; flex-direction: column; gap: 12px; }
.partner-box { 
    background: #111; 
    padding: 15px; 
    border-radius: 10px; 
    border: 1px solid #222; 
    text-align: center; 
    color: #888; 
    text-decoration: none; 
    font-size: 13px; 
    transition: 0.3s;
}
.partner-box:hover { border-color: var(--red); color: white; transform: translateY(-3px); }

/* SLAJDER */
.slider-window { width: 100%; height: 380px; border-radius: 20px; overflow: hidden; position: relative; border: 1px solid #222; background: #000; }
.slider-track { display: flex; width: 100%; height: 100%; transition: transform 0.8s ease-in-out; }
.slider-track img { min-width: 100%; height: 100%; object-fit: contain; flex-shrink: 0; }
.slider-btn { position: absolute; top: 50%; transform: translateY(-50%); background: rgba(0,0,0,0.7); color: white; border: none; width: 40px; height: 40px; border-radius: 50%; cursor: pointer; z-index: 10; }
.prev-btn { left: 15px; } .next-btn { right: 15px; }

/* DESNA KOLONA (Sat, Kalendar, Sonic) */
.info-box-digital { background: var(--gray); padding: 15px; border-radius: 12px; text-align: center; border: 1px solid var(--red); margin-bottom: 15px; }
#digital-clock { font-size: 24px; font-weight: 900; color: var(--red); letter-spacing: 1px; }
#current-date { font-size: 11px; color: #666; text-transform: uppercase; margin-top: 5px; }
.calendar-card { background: var(--gray); padding: 10px; border-radius: 10px; border: 1px solid #222; margin-bottom: 20px; }
.cal-header { display: flex; justify-content: space-between; color: var(--red); font-size: 12px; font-weight: bold; margin-bottom: 5px; border-bottom: 1px solid #222; padding-bottom: 5px; }
.cal-days-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; font-size: 10px; text-align: center; }
.cal-days-grid div { padding: 4px; color: #555; }
.cal-days-grid .today { background: var(--red); color: white; border-radius: 3px; font-weight: bold; }

.sonic-now-playing { background: var(--gray); padding: 15px; border-radius: 12px; border-left: 5px solid var(--red); margin-bottom: 15px; }
.now-card { display: flex; align-items: center; gap: 12px; }
#sonic_art img { width: 60px !important; height: 60px !important; border-radius: 6px; }
.sonic-history-box { background: #080808; padding: 10px; border-radius: 10px; border: 1px solid #222; max-height: 200px; overflow-y: auto; }
#sonic_history td { padding: 8px 5px !important; font-size: 11px !important; color: #555 !important; border-bottom: 1px solid #1a1a1a; }

/* FEATURES (Popunjavanje praznine) */
.features-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; margin-top: 30px; }
.feat-card { background: var(--gray); padding: 20px; border-radius: 15px; text-align: center; border: 1px solid #222; }
.feat-card i { font-size: 24px; color: var(--red); margin-bottom: 10px; }
.feat-card h4 { font-size: 13px; text-transform: uppercase; color: #fff; }

/* FOOTER - 4 KOLONE (ISPRAVLJENO) */
footer { background: #000; padding: 60px 5% 120px; border-top: 2px solid var(--red); }
.footer-grid { 
    display: grid; 
    grid-template-columns: repeat(4, 1fr); 
    gap: 40px; 
    max-width: 1400px; 
    margin: 0 auto; 
}
.footer-col h4 { color: white; font-size: 14px; margin-bottom: 20px; text-transform: uppercase; border-bottom: 1px solid var(--red); display: inline-block; padding-bottom: 5px; }
.footer-col a, .footer-col p { color: #666; text-decoration: none; display: block; margin-bottom: 10px; font-size: 13px; }
.footer-col a:hover { color: var(--red); }
.footer-bottom { text-align: center; margin-top: 50px; font-size: 11px; color: #222; letter-spacing: 2px; }

/* MODERN SLIM PLAYER */
.bottom-player { position: fixed; bottom: 0; left: 0; width: 100%; background: #000; height: 65px; border-top: 2px solid var(--red); z-index: 9999; }
.p-container { max-width: 1400px; margin: 0 auto; width: 100%; height: 100%; display: flex; justify-content: space-between; align-items: center; padding: 0 20px; }
.p-left { display: flex; align-items: center; gap: 12px; }
.p-left i { font-size: 26px; color: var(--red); }
.p-text { line-height: 1.1; }
.p-live { color: var(--red); font-size: 9px; font-weight: 900; }
.p-station { color: #fff; font-size: 14px; font-weight: bold; }
.p-control-btn { background: var(--red); border: none; width: 40px; height: 40px; border-radius: 50%; color: #fff; cursor: pointer; font-size: 16px; margin-right: 8px; transition: 0.3s; }
.p-control-btn:hover { transform: scale(1.1); }
.stop-btn { background: #333; }
.p-volume-box { display: flex; align-items: center; gap: 10px; color: #444; }
#volumeSlider { width: 80px; accent-color: var(--red); }

@media (max-width: 1100px) { .main-grid, .footer-grid { grid-template-columns: 1fr; } .left-sidebar { display: none; } }
