@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:ital,wght@0,100..700;1,100..700&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
/* ================================================================
           MASTER RESPONSIVE DESIGN - NAVBAR + FOOTER + LAYOUT
           ================================================================ */

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        html, body {
            height: 100%;
            overflow-x: hidden;
        }

        body {
            display: flex;
            flex-direction: column;
            background-color: #0f0422;
            color: #eee;
            font-family: 'Poppins', 'Arial', sans-serif;
            min-height: 100vh;
        }

/* Prilagođeni scrollbar - AnimeKai stil */
::-webkit-scrollbar {
    width: 12px; /* Širina skrolbara */
}

::-webkit-scrollbar-track {
    background: #1a1a1a; /* Tamna pozadina skrolbara */
    border-radius: 6px;
}

::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #6a0dad, #9b30ff); /* Ljubičasti gradijent */
    border-radius: 6px;
    border: 3px solid #1a1a1a; /* Ostavlja tamni okvir za efekat */
}

::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, #9b30ff, #6a0dad); /* Efekat pri hoveru */
}

::-webkit-scrollbar-corner {
    background: transparent; /* Uklanja ćošak */
}

#preloader {
    position: fixed;
    width: 100%;
    height: 100%;
    background: #010101;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
}
.spinner {
    border: 6px solid rgba(255, 255, 255, 0.2);
    border-top: 6px solid #6a0dad;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 1s linear infinite;
}
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}



/* ================================================================
           HEADER - NAVBAR (FIKSNO NA VRHU)
           ================================================================ */
        header {
            position: fixed;
            top: 0%;
            left: 0;
            right: 0;
            width: 100%;
            z-index: 10000;
            padding: 10px 0;
            background: transparent; 
            backdrop-filter: none; 
        }

        .navbar {
            width: 80%;
            margin: 0 auto;
            top: 20px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 12px 25px;
            background: linear-gradient(to left, #370242, #5e1b96, rgba(0, 0, 0, 0.8));
            backdrop-filter: blur(8px);
            border-radius: 20px;
            box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.5);
            transition: all 0.3s ease;
        }

        /* ===== NAV-LEFT ===== */
        .nav-left {
            display: flex;
            align-items: center;
            gap: 14px;
            flex-shrink: 0;
        }

        .dropdown-button {
            background: none;
            border: none;
            color: white;
            font-size: 28px;
            cursor: pointer;
            transition: all 0.3s ease;
            padding: 5px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .dropdown-button:hover {
            color: #a855f7;
            transform: scale(1.15);
        }

        .logo {
            display: flex;
            align-items: center;
            height: 50px; 
        }

        .logo img {
            width: 170px; 
            height: auto;
            cursor: pointer;
            display: block;
            margin-top: 13px;
    
        }

        /* ===== NAV-SEARCH ===== */
        .nav-search {
            width: 450px;
            position: relative;
            display: flex;
            align-items: center;
            background: rgba(3, 3, 3, 0.5);
            border-radius: 20px;
            padding: 5px 15px;
            height: 30px;
            transition: all 0.3s ease;
        }

        .nav-search input {
            background: transparent;
            outline: none;
            border: none;
            color: white;
            padding-left: 30px;
            flex: 1;
            font-size: 14px;
        }

        .nav-search input::placeholder {
            color: rgba(255, 255, 255, 0.7);
        }

        .nav-search::before {
            content: '\f002';
            font-family: "Font Awesome 5 Free";
            font-weight: 900;
            position: absolute;
            left: 10px;
            color: white;
        }

        #search-results {
            position: absolute;
            top: 100%;
            left: 0;
            background: #1a1a1a;
            border-radius: 8px;
            max-height: 300px;
            overflow-y: auto;
            width: 100%;
            z-index: 500;
            display: none;
            box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.3);
        }

        #search-results.show {
            display: block;
        }

        .search-item {
            display: flex;
            align-items: center;
            padding: 10px;
            cursor: pointer;
            transition: background 0.2s;
        }

        .search-item:hover {
            background: #333;
        }

        .search-thumbnail {
            width: 40px;
            height: 60px;
            margin-right: 10px;
            border-radius: 4px;
            object-fit: cover;
        }

        .search-title {
            font-size: 14px;
            color: white;
        }

        /* ===== LANGUAGE SWITCH ===== */
        .lang-switch {
            display: flex;
            gap: 8px;
            flex-shrink: 0;
        }

        .lang-switch button {
            background-color: rgba(255, 255, 255, 0.6);
            border: 2px solid transparent;
            padding: 0;
            cursor: pointer;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #800080;
            font-size: 13px;
            font-weight: bold;
            transition: all 0.3s ease;
        }

        .lang-switch button.active {
            background-color: #800080;
            color: #fff;
            box-shadow: 0 0 15px rgba(128, 0, 128, 0.6);
            transform: scale(1.1);
        }

        .lang-switch button:hover {
            transform: scale(1.05);
            opacity: 0.85;
        }

        /* ===== NAV-RIGHT ===== */
        .nav-right {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 12px;
            height: 44px;
            flex-shrink: 0;
        }

/* NOTIFICATION BELL */
        .notification-bell {
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            flex-shrink: 0;
        }

        .notification-bell i {
            font-size: 22px;
            color: #fff;
            transition: all 0.3s ease;
        }

        .notification-bell:hover i {
            color: #ffd25f;
            transform: scale(1.15);
        }

        .notif-count {
            position: absolute;
            top: -8px;
            right: -8px;
            background: #ff4747;
            color: #fff;
            font-size: 10px;
            padding: 2px 5px;
            border-radius: 50%;
            font-weight: bold;
            z-index: 10;
        }

.notif-dropdown {
  position: absolute;
  right: 0;
  top: 35px;
  width: 280px;
  background: #1f1f1f;
  border: 1px solid #333;
  border-radius: 10px;
  display: none;
  flex-direction: column;
  box-shadow: 0 4px 10px rgba(0,0,0,0.6);
  z-index: 500;
}


.notif-dropdown .notif-header {
  padding: 10px;
  font-weight: bold;
  border-bottom: 1px solid #333;
  color: #ffd25f;
  text-align: center;
}

.notif-dropdown ul {
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: 220px;
  overflow-y: auto;
}

.notif-dropdown ul li {
  padding: 10px;
  border-bottom: 1px solid #2c2c2c;
  color: #ddd;
  font-size: 14px;
  cursor: pointer;
}

.notif-dropdown ul li.unread {
  background-color: rgba(255, 210, 95, 0.1);
  font-weight: 600;
}

.notif-dropdown ul li:hover {
  background: #2c2c2c;
}

.notif-footer {
  text-align: center;
  padding: 10px;
}

.notif-footer a {
  color: #ffd25f;
  font-weight: bold;
  text-decoration: none;
}

.notif-footer a:hover {
 color: #dfa616;
}


/* LOGIN ICON / USER ICON */
        .login-icon {
            font-size: 24px;
            color: white;
            cursor: pointer;
            transition: all 0.3s ease;
            background: none;
            border: none;
            padding: 5px;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
        }

        .login-icon:hover {
            color: #ffd25f;
            transform: scale(1.15);
        }

        .nav-right #userIcon {
            width: 44px;
            height: 44px;
            border-radius: 50%;
            object-fit: cover;
            border: 2px solid #4b0082;
            cursor: pointer;
            transition: all 0.3s ease;
            flex-shrink: 0;
            display: none;
        }

        .nav-right #userIcon:hover {
            transform: scale(1.1);
            border-color: #a855f7;
        }

/* ===== DROPDOWN MENU (HAMBURGER) ===== */
        .dropdown-content {
            position: absolute;
            top: 60px;
            left: 0;
            background-color: #222;
            min-width: 200px;
            border-radius: 10px;
            box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.3);
            z-index: 500;
            display: none;
            flex-direction: column;
            animation: slideDown 0.3s ease;
        }

        .dropdown-content.show {
            display: flex;
        }

        .dropdown-content a {
            color: white;
            padding: 12px 16px;
            text-decoration: none;
            display: block;
            transition: all 0.3s;
            font-size: 14px;
            border-bottom: 1px solid #333;
        }

        .dropdown-content a:last-child {
            border-bottom: none;
        }

        .dropdown-content a:hover {
            background-color: #6a0dad;
            padding-left: 20px;
        }
.modal {
    display: none;
    position: fixed;
    overflow: hidden;
    margin-top: -140px;
    z-index: 9999999 !important;
    left: 0;
    top: 0;
    width: 100%;
    height: 120%;
    background: rgba(0, 0, 0, 0.7);
    transform: translateY(-30px);
    filter: blur(0px);
    opacity: 0;
    animation: showContent .3s .3s ease-in-out 1 forwards;
}


.modal-content {
    background: whitesmoke; 
    margin: 17% auto;
    padding: 30px 20px;
    width: 400px;
    height: 500px;
    max-width: 90%;
    position: relative;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 8px 30px rgba(128, 0, 128, 0.4);
    overflow: hidden; 
    z-index: 10000000 !important;
}


@keyframes modalSlideIn {
    from {
        opacity: 0;
        transform: scale(0.9) translateY(-50px);
        filter: blur(10px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
        filter: blur(0);
    }
}

@keyframes showContent {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

.modal-content h2 {
    color: #800080;
    margin-bottom: 20px;
    font-size: 22px;
    margin-left: -7px;
}

.modal-content input {
    width: 90%; 
    padding: 12px 15px;
    margin: 10px auto;
    border: 1px solid #d1b3e0;
    border-radius: 8px;
    background-color: #ffffff;
    color: #4b0082;
    display: block;
    box-sizing: border-box;
}

.modal-content input::placeholder {
    color: #aa6ac9;
    opacity: 1;
}

.modal-content button {
    width: 90%;
    padding: 12px;
    margin: 20px auto 0;
    background-color: #800080;
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    display: block;
    box-sizing: border-box;
}

.modal-content button:hover {
    background: #9932cc;
}

.modal-content p {
    color: #4b0082;
    font-size: 16px;
    margin-bottom: 20px;
}

.modal-content .zaboravljenaLozinka{
    color: #4b0082;
    font-size: 16px;
    margin-top: -10px;
}

.modal-content a {
    color: #9932cc;
    text-decoration: none;
    font-weight: bold;
}



.modal-content textarea {
    width: 100%;
    min-height: 80px;
    border: 1px solid #d1b3e0;
    border-radius: 8px;
    padding: 10px;
    resize: vertical;
    background: #fff;
    color: #4b0082;
}

.modal-content a:hover {
    text-decoration: underline;
}

.close-button {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 28px;
    color: #800080;
    cursor: pointer;
}

.logo-container {
    margin-bottom: 10px;
}

.body-no-scroll {
    overflow: hidden !important;
}

.profile-dropdown {
    position: absolute;
    right: 10px;
    top: 70px;
    background-color: #222;
    min-width: 200px;
    border-radius: 10px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.3);
    z-index: 999;
    display: flex;
    flex-direction: column;
    padding: 10px 0;
    animation: slideDown 0.3s ease;
}

.profile-dropdown.show {
            display: flex;
        }

        .profile-dropdown a, .profile-dropdown button {
            display: block;
            width: 100%;
            color: white;
            padding: 12px 16px;
            background: none;
            border: none;
            text-align: left;
            font-size: 14px;
            text-decoration: none;
            cursor: pointer;
            transition: all 0.3s;
            box-sizing: border-box;
            border-bottom: 1px solid #333;
        }

        .profile-dropdown a:last-child,
        .profile-dropdown button:last-child {
            border-bottom: none;
        }

        .profile-dropdown a:hover,
        .profile-dropdown button:hover {
            background-color: #6a0dad;
            padding-left: 20px;
        }

        .profile-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 12px 16px;
            border-bottom: 1px solid #444;
        }

        .profile-header a {
            color: white;
            font-weight: bold;
            text-decoration: none;
            font-size: 14px;
        }

        .logout-button {
            border: none;
            color: white;
            font-size: 16px;
            cursor: pointer;
            padding: 0;
            background: none;
        }

.logout-button:hover {
    color: #6a0dad;
}
/* Animacija za dropdown otvaranje */
@keyframes dropdownFadeSlide {
    0% {
      opacity: 0;
      transform: translateY(-10px);
    }
    100% {
      opacity: 1;
      transform: translateY(0);
    }
  }
  
 /* ===== SEARCH ICON (MOBILE) ===== */
        .search-icon-mobile {
            display: none;
            font-size: 22px;
            color: white;
            cursor: pointer;
            background: none;
            border: none;
            padding: 5px;
            transition: all 0.3s ease;
            flex-shrink: 0;
        }

        .search-icon-mobile:hover {
            color: #ffd25f;
            transform: scale(1.15);
        }

        /* ===== SEARCH BAR MOBILE ===== */
        .search-bar-mobile {
            display: none;
            position: absolute;
            top: 60px;
            left: 0;
            right: 0;
            background: rgba(0, 0, 0, 0.95);
            padding: 10px 15px;
            z-index: 500;
            border-radius: 10px;
            width: 95%;
            left: 50%;
            transform: translateX(-50%);
        }

        .search-bar-mobile.show {
            display: block;
        }

        .search-bar-mobile input {
            width: 100%;
            padding: 10px 15px;
            background: rgba(255, 255, 255, 0.1);
            border: 1px solid #6a0dad;
            border-radius: 8px;
            color: white;
            font-size: 14px;
        }

        .search-bar-mobile input::placeholder {
            color: rgba(255, 255, 255, 0.6);
        }

        #markAllBellBtn {
            background: none;
            border: none;
            color: #fff;
            cursor: pointer;
            float: right;
            margin-top: -2px;
            transition: 0.2s;
        }
        #markAllBellBtn:hover {
            color: #3ad86b;
        }
/* ================================================================
           MAIN CONTENT
           ================================================================ */
        main {
  flex: 1;
  padding-top: 0px; 
  background-color: #0f0422;
  z-index: 1;
}

/* Osnovni stil za filtere */
.filters {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: center;
    align-items: center;
    margin: 120px auto 30px auto;
    padding: 10px;
    width: 90%;
    max-width: 1200px;
}

/* Stil za svaku filter grupu */
.filter-group {
    position: relative;
}

/* Stil za filter dugmad */
.filter-group button {
    font-family: 'Josefin Sans', sans-serif;
    width: 180px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #721bc4;
    box-shadow: 0 0 15px rgba(155, 48, 255, 0.3);
    color: white;
    padding: 12px;
    padding-left: -100px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 15px;
    transition: 0.3s;
}

/* Kada se klikne na dugme, strelica se okreće */
.filter-group button.active::after {
    content: " ▲";
}

.filter-group button:not(.active)::after {
    content: " ▼";
}

/* Lista filtera - sakrivena dok se ne otvori */
.tip-list, .status-list, .genre-list, .studio-list {
    display: none;
    position: absolute;
    width: 220px;
    top: 100%;
    left: 0;
    background-color: rgba(20, 20, 20, 0.95);;
    border-radius: 6px;
    padding: 10px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
    min-width: 150px;
    z-index: 10;
}

/* Stil za svaku opciju unutar filtera */
.tip-list label, .status-list label, .genre-list label, .studio-list label {
    font-family: 'Josefin Sans', sans-serif;
    display: block;
    color: white;
    padding: 8px 0;
    cursor: pointer;
    transition: color 0.3s ease-in-out;
}

/* Kada pređeš mišem, opcija postaje ljubičasta */
.tip-list label:hover,
.status-list label:hover,
.genre-list label:hover,
.studio-list label:hover{
    background-color: #800080; /* Ljubičasta */
}


/* DUGME ZA ŽANR FILTER */
#genre-toggle {
    background: linear-gradient(135deg, #6a0dad, #9b30ff);
    border: none;
    padding: 12px 20px;
    font-size: 16px;
    color: white;
    font-weight: bold;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
    box-shadow: 0 4px 10px rgba(155, 48, 255, 0.3);
}

/* Hover efekat */
#genre-toggle:hover {
    background: linear-gradient(135deg, #9b30ff, #6a0dad);
    transform: scale(1.05);
}

/* ŽANR LISTA */
.genre-list {
    display: none;
    position: absolute;
    top: 45px;
    left: 0;
    background: rgba(20, 20, 20, 0.95);
    padding: 15px;
    border-radius: 10px;
    width: 250px;
    box-shadow: 0px 4px 10px rgba(155, 48, 255, 0.5);
    flex-direction: column;
    max-height: 300px;
    overflow-y: auto;
}


.genre-list::-webkit-scrollbar {
    width: 6px;
}


.genre-list::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #6a0dad, #9b30ff);
    border-radius: 6px;
}

.genre-list label {
    font-family: 'Josefin Sans', sans-serif;
    display: block;
    color: white;
    padding: 8px 0;
    cursor: pointer;
    transition: color 0.3s ease-in-out;
}

/* Hover efekat na opcijama */
.genre-list label:hover {
    color: #ffffff;
    transform: scale(1.05);
}

.studio-list {
    display: none;
    position: absolute;
    top: 45px;
    left: 0;
    background: rgba(20, 20, 20, 0.95);
    padding: 15px;
    border-radius: 10px;
    width: 250px;
    box-shadow: 0px 4px 10px rgba(155, 48, 255, 0.5);
    flex-direction: column;
    max-height: 300px;
    overflow-y: auto;
}


.studio-list::-webkit-scrollbar {
    width: 6px;
}



input[type="checkbox"] + label::before {
    content: "✓";
    display: inline-block;
    width: 16px;
    height: 16px;
    text-align: center;
    line-height: 16px;
    border: 2px solid white;
    border-radius: 3px;
    margin-right: 8px;
    transition: 0.3s;
}

/* Kada je čekirano, kvačica postaje ljubičasta */
input[type="checkbox"]:checked + label::before {
    background-color: #800080; /* Ljubičasta */
    color: white;
}

/* Dugme ikonica */
#apply-filters {
    width: 55px;
    height: 55px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #721bc4;
    box-shadow: 0 0 15px rgba(155, 48, 255, 0.3);
    font-size: 24px;
    color: white;
    padding: 10px;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
    box-shadow: 0 0 10px rgba(155, 48, 255, 0.3);
}

/* Hover efekat na dugme */
#apply-filters:hover {
    background: #9b30ff;
    color: #fff;
    transform: rotate(10deg) scale(1.1);
}

/* 🔹 Dugme za reset filtera - isti stil kao ostala dugmad */
#reset-filters {
    font-family: 'Josefin Sans', sans-serif;
    width: 180px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #721bc4;
    box-shadow: 0 0 15px rgba(155, 48, 255, 0.3);
    color: white;
    padding: 12px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 15px;
    transition: 0.3s;
}

/* 🔹 Hover efekat - isti kao na drugim dugmadima */
#reset-filters:hover {
    background: linear-gradient(135deg, #9b30ff, #6a0dad);
    color: white;
    transform: scale(1.05);
}

@media (min-width: 1440px) {
    
    .filters {
        width: 70%;
        gap: 22px;
    }
    
    .filter-group button,
    #reset-filters {
        width: 210px;
        font-size: 17px;
        padding: 14px;
    }

    #apply-filters {
        width: 65px;
        height: 65px;
        font-size: 26px;
    }

    .tip-list, .status-list, .genre-list, .studio-list {
        width: 260px;
    }
}

/* ✅ Laptop / normal monitor (max 1024px) */
@media (max-width: 1024px) {
    .filters {
        width: 90%;
        gap: 14px;
    }

    .filter-group button,
    #reset-filters {
        width: 160px;
        font-size: 14px;
        padding: 10px;
    }

    #apply-filters {
        width: 50px;
        height: 50px;
        font-size: 20px;
    }

    .tip-list, .status-list, .genre-list, .studio-list {
        width: 200px;
    }
}

/* ✅ TABLET layout (max 768px) — 2 reda */
@media (max-width: 768px) {
    .filters {
        margin-top: 80px;
        gap: 10px;
        width: 95%;
    }

    .filter-group button,
    #reset-filters {
        width: 48%;
        font-size: 13px;
        padding: 8px;
    }

    #apply-filters {
        width: 45px;
        height: 45px;
        font-size: 18px;
    }

    .tip-list, .status-list, .genre-list, .studio-list {
        width: 180px;
        font-size: 13px;
    }
}
/* ✅ Srednje rezolucije — 2 reda po 3 filtera (npr. 770x672, tableti u landscape) */
@media (min-width: 480px) and (max-width: 768px) {

    .filters {
        width: 95%;
        display: grid;
        grid-template-columns: repeat(3, 1fr); /* 3 u redu */
        gap: 12px;
        margin-top: 80px;
        justify-content: center;
        align-items: center;
    }

    .filter-group button,
    #reset-filters {
        width: 100%;
        font-size: 14px;
        padding: 10px;
    }

    /* Apply filter dugme malo i desno */
    #apply-filters {
        width: 45px;
        height: 45px;
        font-size: 18px;
        display: flex;
        align-items: center;
        justify-content: center;
        justify-self: end;
        margin: 0;
    }

    .tip-list, .status-list, .genre-list, .studio-list {
        width: 200px;
        font-size: 13px;
    }
}

/* ✅ PHONE layout (max 480px) — 3 reda */
@media (max-width: 480px) {
    .filters {
        flex-wrap: wrap;
        gap: 8px;
        margin-top: 60px;
    }

    .filter-group button,
    #reset-filters {
        width: 46%;
        font-size: 12px;
        padding: 7px;
    }

    #apply-filters {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }

    .tip-list, .status-list, .genre-list, .studio-list {
        width: 160px;
        font-size: 12px;
    }
}

/* ✅ 480x672 - bolje poravnanje, 2 reda × 3 dugmeta, veća dugmad */
@media (min-width: 420px) and (max-width: 520px) and (max-height: 750px) {

    .filters {
        width: 95%;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 14px;
        margin-top: 75px;
        justify-content: center;
        align-items: center;
    }

    .filter-group button,
    #reset-filters {
        width: 100%;
        font-size: 14px;
        padding: 10px;
        border-radius: 8px;
    }

    #apply-filters {
        width: 46px;
        height: 46px;
        font-size: 18px;
        display: flex;
        align-items: center;
        justify-content: center;
        justify-self: end;
        border-radius: 50%;
        padding: 0;
        margin: 0;
    }

    .tip-list, .status-list, .genre-list, .studio-list {
        width: 200px;
        font-size: 13px;
    }
}
/* ✅ 414x672 — 2 reda × 3 dugmeta, lep raspored */
@media (min-width: 401px) and (max-width: 430px) and (max-height: 750px) {

    .filters {
        width: 95%;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 14px;
        margin-top: 75px;
        justify-content: center;
        align-items: center;
    }

    .filter-group button,
    #reset-filters {
        width: 100%;
        font-size: 14px;
        padding: 12px;
        border-radius: 8px;
    }

    #apply-filters {
        width: 48px;
        height: 48px;
        font-size: 18px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        justify-self: end;
        padding: 0;
        margin: 0;
    }

    .tip-list, .status-list, .genre-list, .studio-list {
        width: 210px;
        font-size: 13px;
    }
}

/* 📱 Modern phones 381px–480px (iPhone 11/12/13/14, Samsung A/M itd.) */
@media (min-width: 381px) and (max-width: 480px) {

     .filters {
        width: 95%;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 14px;
        margin-top: 75px;
        justify-content: center;
        align-items: center;
    }

    .filter-group button,
    #reset-filters {
        width: 100%;
        font-size: 14px;
        padding: 12px;
        border-radius: 8px;
    }

    #apply-filters {
        width: 48px;
        height: 48px;
        font-size: 18px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        justify-self: end;
        padding: 0;
        margin: 0;
    }

    .tip-list, .status-list, .genre-list, .studio-list {
        width: 210px;
        font-size: 13px;
    }
    
    
}

@media (max-width: 390px) and (max-height: 700px) {

    .filters {
        width: 95%;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
        margin-top: 70px;
        justify-content: center;
        align-items: center;
    }

    .filter-group button {
        width: 100%;
        font-size: 12px;
        padding: 8px;
    }

    /* ✅ Reset zauzima ceo red (2 kolone) */
    #reset-filters {
        grid-column: 1 / span 2;
        width: 85% !important;
        font-size: 12px;
        padding: 10px;
        text-align: center;
    }

    /* ✅ Apply ide u dodatni mini red, ali ga guramo u DESNO */
    #apply-filters {
        grid-column: 2 / 3;
        justify-self: end;
        width: 42px;
        height: 42px;
        font-size: 16px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: -55px;
    }

    .tip-list, .status-list, .genre-list, .studio-list {
        width: 150px;
        font-size: 11px;
    }
}





/* ✅ FullHD 1920x1080 — svi filteri u jednom redu */
@media (min-width: 1200px) and (max-width: 2559px) {
    .modal {
        z-index: 9999999 !important;
    }

    .modal-content {
        width: 80% !important;
            max-width: 350px;
            height: auto;
            padding: 22px 15px;
            margin-top: 20%;
            border-radius: 12px;
        z-index: 10000000 !important;
    }
.modal-content input,
            .modal-content button {
            width: 95% !important;
             }

            .logo-container img {
             width: 120px !important;
            }
    .filters {
        width: 80%;
        max-width: 1650px;
        gap: 18px;
        margin-top: 120px;
        margin-left: auto;
        margin-right: auto;
        flex-wrap: nowrap;
        justify-content: center;
    }

    .filter-group button,
    #reset-filters {
        width: 180px;
        font-size: 15px;
        padding: 10px 14px;
    }

    #apply-filters {
        width: 55px;
        height: 55px;
        font-size: 22px;
    }

    .tip-list, .status-list, .genre-list, .studio-list {
        width: 230px;
    }
}


/* 🔹 Anime Grid - prikaz svih animea */
.anime-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    
}


/* 🔹 Kartica animea */
.anime-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 200px;
    cursor: pointer;
    position: relative;
}

.anime-card:hover{
    transform: translateY(-8px);
    transition: transform 0.3s ease;
}



/* 🔹 Slika animea */
.anime-image {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 200px;
    cursor: pointer;
    position: relative;
    
}

.anime-image img {
    aspect-ratio: 2 / 3; /* Proporcija slike (primer: 2:3) */
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 8px;
}

.anime-overlay {
    position: absolute;
    bottom: 4px;       /* bliže dnu */
    left: 4px;         /* bliže levom uglu */
    display: flex;
    flex-direction: row;
    gap: 4px;          /* manji razmak */
    z-index: 1;
}

.anime-type,
.cc-icon {
    background-color: #800080;
    color: white;
    padding: 1px 4px;     /* manji padding */
    border-radius: 3px;
    font-weight: bold;
    font-size: 12px;      /* manji font */
    border: none;
    display: flex;
    align-items: center;
    height: 16px;         /* ista visina za sve */
}

.cc-icon {
    background-color: #c06a07;
}

.cc-icon::before {
    content: "CC";
    color: white;
    font-size: 12px;
    font-weight: bold;
    padding: 0 3px;
    border-radius: 2px;
    margin-right: 2px;
    display: inline-block;
}
.anime-info-row {
    display: flex;
    gap: 8px;
    align-items: center;
}

/* Efekat blur pri hover-u */
.anime-image:hover img {
    filter: blur(1.5px);
}

/* 🔹 Dugme za reprodukciju */
.play-button {
    position: absolute;
    top: 48%;
    left: 52%;
    transform: translate(-50%, -50%);
    background-color: transparent;
    color: #951bec;
    border: none;
    padding: 10px 15px;
    border-radius: 5px;
    font-size: 50px;
    font-weight: bold;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
    cursor: pointer;
}

/* Prikaz dugmeta pri hover-u */
.anime-image:hover .play-button {
    opacity: 1;
}

/* 🔹 Info ikonica */
.info-icon {
    position: absolute;
    top: 10px;
    right: 10px;
    background-color: #8a2be2;
    color: white;
    border-radius: 60%;
    padding: 5px 12px;
    font-size: 18px;
    cursor: pointer;
    transition: background 0.3s;
}

/* 🔹 Tooltip - detalji animea */
.tooltip {
    position: absolute;
    background: rgba(20, 20, 20, 0.95);
    color: white;
    padding: 12px;
    border-radius: 8px;
    max-width: 320px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.3);
    z-index: 1000;
    word-wrap: break-word;
}

/* 🔹 Stilizacija teksta u tooltip-u */
.tooltip p {
    font-size: 13px;
    color: #ccc;
    line-height: 1.4;
    margin-top: 4px;
    font-family: 'Josefin Sans', sans-serif;
}

/* 🔹 Naslov tooltip-a */
.tooltip strong {
    font-size: 15px;
    color: #fff;
}

/* 🔹 Informacije o žanru i statusu */
.tooltip strong, .tooltip em {
    display: block;
    margin-top: 5px;
}

/* 🔹 Dugmad unutar tooltip-a */
.tooltip-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: rgba(248, 247, 250, 0.998);
    padding: 10px 15px;
    border-radius: 18px;
    width: 150px;
}

.watch-button {
    background: none;
    border: none;
    color: #6a0dad;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    transition: color 0.3s ease;
}

.gledaj-button {
    background: none;
    border: none;
    color: #6a0dad;
    font-size: 20px;
    cursor: pointer;
    transition: transform 0.3s ease, color 0.3s ease;
}

/* Hover efekti na dugmad */
.tooltip-controls:hover .watch-button {
    color: purple;
}

.tooltip-controls:hover .gledaj-button {
    transform: translateX(-5px);
    color: purple;
}

/* Prikaz tooltip-a pri hoveru na info ikonicu */
.info-icon:hover .tooltip {
    display: block;
}

/* 🔹 Tekst u anime karticama */
.anime-text h2 {
    margin-top: 10px;
    font-size: 16px;
    text-align: center;
    font-family: 'Poppins', sans-serif;
}

/* Default (računar) — desno */
.anime-count-display {
  color: white;
  font-size: 18px;
  margin-top: 0;
  margin-bottom: 10px;
  font-family: 'Josefin Sans', sans-serif;
  text-align: right;
  width: 100%;
  padding-right: 10px; /* mali razmak od desne ivice */
}

/* TABLET (centrirano) */
@media (max-width: 1024px) {
    .modal {
        z-index: 9999999 !important;
    }

    .modal-content {
        width: 80% !important;
            max-width: 350px;
            height: auto;
            padding: 22px 15px;
            margin-top: 70%;
            border-radius: 12px;
        z-index: 10000000 !important;
    }
.modal-content input,
            .modal-content button {
            width: 95% !important;
             }

            .logo-container img {
             width: 120px !important;
            }
  .anime-count-display {
    text-align: end;
    padding-right: 0;
    margin-top: -10px;
  }
}

/* TELEFON (centrirano i bliže filterima) */
@media (max-width: 768px) {
  .anime-count-display {
    text-align: center;
    margin-top: -26px;
    margin-bottom: 12px;
    width: 100%;
  }
}

/* ❌ Sakrij info button na svim ekranima manjim od laptopa */
@media (max-width: 1024px) {
    .info-icon {
        display: none !important;
    }
}
/* 📱 Modern phones 381px–480px (iPhone 11/12/13/14, Samsung A/M itd.) */
@media (min-width: 381px) and (max-width: 480px) {
.modal {
        z-index: 9999999 !important;
    }

    .modal-content {
        width: 80% !important;
            max-width: 350px;
            height: auto;
            padding: 22px 15px;
            margin-top: 70%;
            border-radius: 12px;
        z-index: 10000000 !important;
    }
.modal-content input,
            .modal-content button {
            width: 95% !important;
             }

            .logo-container img {
             width: 120px !important;
            }
    .anime-grid {
        gap: 14px;
        justify-content: center;
    }

    .anime-card {
        width: 45%;
    }

    .anime-image img {
        border-radius: 6px;
         width: 87%;
    }

    .play-button {
        font-size: 40px;
        top: 50%;
        left: 50%;
    }

    .anime-type
   {
        font-size: 11px;
        padding: 2px 4px;
        height: 15px;
        margin-left: 15%;
       
    }
    
     .cc-icon {
          font-size: 11px;
        padding: 2px 4px;
        height: 15px;
       
      
     }

    .anime-text h2 {
        font-size: 13px;
        margin-top: 6px;
        line-height: 1.25;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        white-space: normal;
        word-break: break-word;
        text-align: center;
    }
}

/* 📱 375x667 — iPhone SE layout */
@media (max-width: 380px) and (max-height: 700px) {
.modal {
        z-index: 9999999 !important;
    }

    .modal-content {
        width: 80% !important;
            max-width: 350px;
            height: auto;
            padding: 22px 15px;
            margin-top: 70%;
            border-radius: 12px;
        z-index: 10000000 !important;
    }
.modal-content input,
            .modal-content button {
            width: 95% !important;
             }

            .logo-container img {
             width: 120px !important;
            }
    .anime-grid {
        gap: 12px;
        justify-content: center;
    }

    /* 2 kartice u redu */
    .anime-card {
        width: 46%;
    }

    .anime-image {
        width: 100%;
    }

    .anime-image img {
        border-radius: 6px;
    }

    /* Hide info icon & tooltips on mobile */
    .info-icon,
    .tooltip {
        display: none !important;
    }

    /* Play button manji da ne smeta */
    .play-button {
        font-size: 38px;
        top: 50%;
        left: 50%;
    }

    /* Tip + Episode bubble manji */
    .anime-type,
    .cc-icon {
        font-size: 10px;
        padding: 1px 3px;
        height: 14px;
    }

    .anime-text h2 {
    font-size: 12px;
    margin-top: 6px;
    line-height: 1.2;
    max-width: 100%;
    text-align: center;
    display: -webkit-box;
    line-clamp: 2; /* max 2 reda */
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-wrap: break-word;
    white-space: normal; /* dozvoli prelazak u red */
}

}

/* 📱 Ultra-small phones (< 375px širina) */
@media (max-width: 374px) {
.modal {
        z-index: 9999999 !important;
    }

    .modal-content {
        width: 80% !important;
            max-width: 350px;
            height: auto;
            padding: 22px 15px;
            margin-top: 70%;
            border-radius: 12px;
        z-index: 10000000 !important;
    }
.modal-content input,
            .modal-content button {
            width: 95% !important;
             }

            .logo-container img {
             width: 120px !important;
            }
    .anime-grid {
        gap: 10px;
        justify-content: center;
    }

    /* 2 u redu ali manje */
    .anime-card {
        width: 44%;
    }

    .anime-image {
        width: 100%;
    }

    .anime-image img {
        border-radius: 6px;
    }

    /* Sakrij info ikone */
    .info-icon,
    .tooltip {
        display: none !important;
    }

    /* Manje play dugme */
    .play-button {
        font-size: 32px;
        top: 50%;
        left: 50%;
    }

    /* Bubble info */
    .anime-type,
    .cc-icon {
        font-size: 9px;
        padding: 1px 2px;
        height: 13px;
    }

    /* ✅ Tekst naslova da ide u 2 reda, bez preklapanja */
    .anime-text h2 {
        font-size: 11px;
        margin-top: 4px;
        line-height: 1.25;
        max-width: 100%;
        text-align: center;
        display: -webkit-box;
        -webkit-line-clamp: 2; /* dozvoli 2 reda */
        line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        white-space: normal; /* tekst može u više linija */
        word-break: break-word; /* spreči izletanje teksta */
    }
}


.pagination {
    display: flex;
    justify-content: center; /* Centrira paginaciju */
    align-items: center;
    gap: 8px;
    margin-top: 20px;
    padding: 10px;
}

.pagination-btn {
    background: none; /* Uklonjena pozadina */
    color: white;
    border: none;
    padding: 14px 18px; /* Veće dugmiće */
    font-size: 30px; /* Veći font */
    cursor: pointer;
    border-radius: 6px; /* Malo zaobljenje */
    transition: color 0.3s ease;
}

.pagination-btn.active {
    background-color: purple; /* Samo aktivan broj ima pozadinu */
    color: white;
    font-weight: bold;
    border-radius: 6px;
}

.pagination-btn:hover {
    color: #6a0dad; /* Svetlija ljubičasta */
}

#page-numbers {
    display: flex;
    gap: 6px;
}

#page-numbers button {
    background: none; /* Uklonjena pozadina */
    color: white;
    border: none;
    padding: 14px 18px;
    font-size: 20px;
    cursor: pointer;
    border-radius: 6px;
    transition: color 0.3s ease;
}

#page-numbers button.active {
    background-color: purple; /* Aktivni broj dobija pozadinu */
    color: white;
    font-weight: bold;
}

#page-numbers button:hover {
    color: #6a0dad;
}

/* Samo strelice (prvo, prethodno, sledeće, poslednje) */
#first-page,
#prev-page,
#next-page,
#last-page {
    transform: translateY(-3px);
    font-size: 26px; /* mrvicu smanji da izgleda balansirano */
}

/* 🔔 ANIMACIJA ZA ZVONCE KAD STIGNU NOVA OBAVEŠTENJA */

@keyframes shake {
  0%, 100% { transform: rotate(0deg); }
  10%, 30%, 50%, 70%, 90% { transform: rotate(-10deg); }
  20%, 40%, 60%, 80% { transform: rotate(10deg); }
}

@keyframes pulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.15); }
  100% { transform: scale(1); }
}

@keyframes glow {
  0%, 100% { 
    filter: drop-shadow(0 0 2px #ffd25f);
  }
  50% { 
    filter: drop-shadow(0 0 10px #ffd25f) drop-shadow(0 0 20px #ff9f00);
  }
}

.notification-bell.shake {
  animation: 
    shake 0.6s ease-in-out,
    pulse 0.6s ease-in-out,
    glow 0.6s ease-in-out;
}

.notif-count {
  animation: countPop 0.3s ease-out;
}

@keyframes countPop {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.notif-dropdown {
  animation: dropdownSlide 0.3s ease-out;
}

@keyframes dropdownSlide {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes pulseDot {
  0%, 100% { 
    box-shadow: 0 0 0 0 rgba(255, 71, 71, 0.7);
  }
  50% { 
    box-shadow: 0 0 0 6px rgba(255, 71, 71, 0);
  }
}

.notif-count {
  animation: pulseDot 2s infinite;
}

.notification-bell:hover i {
  animation: swing 0.5s ease-in-out;
}

@keyframes swing {
  20% { transform: rotate(15deg); }
  40% { transform: rotate(-10deg); }
  60% { transform: rotate(5deg); }
  80% { transform: rotate(-5deg); }
  100% { transform: rotate(0deg); }
}

 #markAllBellBtn {
  background: none;
  border: none;
  color: #fff;
  cursor: pointer;
  float: right;
  margin-top: -2px;
  transition: 0.2s;
}
#markAllBellBtn:hover {
  color: #3ad86b;
}
/* ================================================================
           FOOTER (FIKSNO NA DNO)
           ================================================================ */
        footer {
    position: relative;
    width: 100%;
    background: #0b0218; /* neprovidna pozadina */
    border-top: 2px solid rgba(155, 48, 255, 0.2);
    padding: 20px 15px;
    text-align: center;
    font-size: 13px;
    color: #bbb;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.5);
    margin-top: 60px; /* da ne nalegne odmah na sadržaj */
}


        .footer-content {
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
            gap: 10px;
            max-width: 1200px;
            margin: 0 auto;
        }

        .footer-logo {
            width: 100px;
            height: auto;
            opacity: 0.7;
            transition: opacity 0.3s;
        }

        .footer-logo:hover {
            opacity: 1;
        }

        .footer-text {
            flex: 1;
            font-size: 11px;
            color: #888;
        }

        .footer-socials {
            display: flex;
            gap: 10px;
            align-items: center;
        }

        .footer-socials a {
            width: 32px;
            height: 32px;
            display: flex;
            align-items: center;
            justify-content: center;
            background: rgba(155, 48, 255, 0.1);
            border-radius: 50%;
            color: #aaa;
            text-decoration: none;
            transition: all 0.3s ease;
            font-size: 14px;
        }

        .footer-socials a:hover {
            background: rgba(155, 48, 255, 0.3);
            color: #fff;
            transform: translateY(-3px);
        }

        .footer-links {
            font-size: 11px;
        }

        .footer-links a {
            color: #aaa;
            text-decoration: none;
            margin: 0 8px;
            transition: color 0.3s;
        }

        .footer-links a:hover {
            color: #9b30ff;
        }

        /* ================================================================
           ANIMACIJE
           ================================================================ */
        @keyframes slideDown {
            from {
                opacity: 0;
                transform: translateY(-10px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        /* ================================================================
           RESPONSIVE - TABLET (481px - 768px)
           ================================================================ */
        @media screen and (max-width: 768px) {
            .navbar {
                width: 92%;
                padding: 10px 15px;
                border-radius: 15px;
                gap: 8px;
            }

            .nav-left {
                gap: 10px;
                flex: 1;
                min-width: 0;
            }

            .logo img {
                width: 110px;
            }

            /* SKRIVANJE NA TABLET */
            .nav-search {
                display: none;
            }

            .lang-switch {
                display: none;
            }

            /* PRIKAZI SEARCH ICON */
            .search-icon-mobile {
                display: flex;
            }

            .nav-right {
                gap: 10px;
            }
        }

        /* ================================================================
           RESPONSIVE - MOBILNI (max-width: 480px)
           ================================================================ */
        @media screen and (max-width: 480px) {
            header {
                padding: 8px 0;
            }

            .navbar {
                width: 95%;
                padding: 8px 12px;
                border-radius: 12px;
                gap: 5px;
            }

            .nav-left {
                gap: 8px;
                flex: 1;
                min-width: 0;
            }

            .dropdown-button {
                font-size: 22px;
                padding: 3px;
            }

            .logo {
                height: 38px;
            }

            .logo img {
                width: 120px;
                margin-top: 8px;
            }

            /* SKRIVANJE */
            .nav-search {
                display: none !important;
            }

            .lang-switch {
                display: none !important;
            }

            /* PRIKAZI SEARCH ICON */
            .search-icon-mobile {
                display: flex;
                font-size: 18px;
            }

            .nav-right {
                gap: 8px;
                height: 38px;
            }

            .notification-bell i {
                font-size: 18px;
            }

            .login-icon {
                font-size: 18px;
            }

            .nav-right #userIcon {
                width: 36px;
                height: 36px;
            }

            /* DROPDOWN POZICIJE */
            .dropdown-content {
                left: -10px;
                top: 50px;
                width: 160px;
            }

            
            .notif-dropdown {
            position: absolute !important;
            top: 35px !important;
            right: -8px !important;
            left: auto !important;
            transform: none !important;
            width: 250px !important;
            opacity: 1 !important;
            visibility: visible !important;
            z-index: 9999;
            }

            .notif-dropdown::before {
            right: 22px !important; 
            left: auto !important;
            transform: none !important;
            }

  
            .profile-dropdown {
            position: absolute !important;
            top: 52px !important;
            right: 8px !important;
            left: auto !important;
            transform: none !important;
            width: 230px !important;
            opacity: 1 !important;
            visibility: visible !important;
            z-index: 9999;
            }

            .profile-dropdown::before {
            right: 22px !important; /* strelica ispod avatara */
            left: auto !important;
            transform: none !important;
            }

            .modal-content {
            width: 80% !important;
            max-width: 350px;
            height: auto;
            padding: 22px 15px;
            margin-top: 70%;
            border-radius: 12px;
            }

            .modal-content input,
            .modal-content button {
            width: 95% !important;
             }

            .logo-container img {
             width: 120px !important;
            }

            /* SEARCH BAR MOBILE */
            .search-bar-mobile {
                top: 55px;
                width: 90%;
            }

            .search-bar-mobile input {
                font-size: 13px;
            }

            /* FOOTER */
            main {
                margin-bottom: 100px;
            }

            footer {
                padding: 8px 10px;
            }

            .footer-content {
                gap: 5px;
            }

            .footer-logo {
                width: 40px;
                display: none;
            }

            .footer-text {
                font-size: 10px;
            }

            .footer-socials {
                gap: 8px;
            }

            .footer-socials a {
                width: 28px;
                height: 28px;
                font-size: 12px;
            }

            .footer-links {
                display: none;
            }
        }

        /* ================================================================
           ZEER MALI EKRANI (< 320px)
           ================================================================ */
        @media screen and (max-width: 319px) {
            .navbar {
                width: 96%;
                padding: 6px 10px;
            }

            .logo img {
                width: 80px;
            }

            .dropdown-button {
                font-size: 20px;
            }

            .nav-right #userIcon {
                width: 32px;
                height: 32px;
            }
        }
