
        :root {
            --bg: #0f1221;
            --card: #f3f4f6;
            --accent: #ff5a5f;
            --glass: rgba(255, 255, 255, 0.06);
        }

        /* Reset + Body */
        html,
        body {
            height: 100%;
            margin: 0;
            font-family: "Poppins", sans-serif;
            background: #0b0f1a;
            color: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            box-sizing: border-box;
            padding: 40px;
            user-select: none;
        }

        h1 {
            width: 100%;
            max-width: 1100px;
            margin: 0 0 24px 0;
            font-weight: 800;
            letter-spacing: 0.12em;
            color: #fff;
            text-transform: uppercase;
            text-align: center;
            filter: drop-shadow(0 6px 18px rgba(0, 0, 0, 0.6));
        }

        .container {
            display: flex;
            flex-wrap: wrap;
            gap: 20px;
            max-width: 1100px;
            justify-content: center;
        }

        /* Card styles + entrance animation */
        .box {
            position: relative;
            flex: 1 1 calc(25% - 20px);
            min-width: 180px;
            max-width: 240px;
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.02));
            border-radius: 14px;
            padding: 14px;
            box-shadow: 0 8px 30px rgba(2, 6, 23, 0.6);
            transition: transform .35s cubic-bezier(.2, .9, .2, 1), box-shadow .35s;
            cursor: pointer;
            overflow: hidden;
            transform-origin: center;
            backdrop-filter: blur(6px);
            animation: rise .7s ease forwards;
            will-change: transform, opacity;
            opacity: 0;
        }

        .box:hover {
            transform: translateY(-12px) scale(1.02);
            box-shadow: 0 22px 40px rgba(0, 0, 0, 0.6);
        }

        .box img {
            width: 100%;
            height: 140px;
            border-radius: 10px;
            object-fit: cover;
            display: block;
            box-shadow: inset 0 -20px 40px rgba(0, 0, 0, 0.25);
            border: 4px solid transparent;
        }

        .box .name {
            margin-top: 10px;
            font-weight: 700;
            color: #fff;
            font-size: 0.95rem;
            letter-spacing: 0.06em;
        }

        .box .tag {
            font-size: 0.75rem;
            color: rgba(255, 255, 255, 0.8);
            margin-top: 6px;
        }

        @keyframes rise {
            from {
                transform: translateY(18px) scale(.98);
                opacity: 0;
            }

            to {
                transform: translateY(0) scale(1);
                opacity: 1;
            }
        }

        /* Modal / overlay */
        .overlay {
            position: fixed;
            inset: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            background: linear-gradient(180deg, rgba(2, 6, 23, 0.6), rgba(2, 6, 23, 0.85));
            backdrop-filter: blur(8px);
            z-index: 1200;
            opacity: 0;
            pointer-events: none;
            transition: opacity .25s;
        }

        .overlay.open {
            opacity: 1;
            pointer-events: auto;
        }

        .modal {
            width: min(980px, 95%);
            max-height: 86vh;
            overflow: hidden;
            border-radius: 14px;
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(255, 255, 255, 0.01));
            padding: 20px;
            display: grid;
            grid-template-columns: 360px 1fr;
            gap: 20px;
            box-shadow: 0 30px 80px rgba(0, 0, 0, 0.7);
            border: 5px solid var(--accent, rgba(255, 255, 255, 0.04)); /* Dynamische Border-Farbe */
            transform: translateY(24px) scale(.98);
            transition: transform .35s cubic-bezier(.2, .9, .2, 1), opacity .3s;
        }

        .overlay.open .modal {
            transform: translateY(0) scale(1);
        }

        .modal .left {
            position: relative;
            border-radius: 10px;
            overflow: hidden;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            padding: 16px;
        }

        .modal .left img {
            width: auto;
            height: 250px;
            object-fit: cover;
            border-radius: 10px;
        }

        .modal .left .play {
            margin-top: 12px;
            display: flex;
            gap: 10px;
            align-items: center;
        }

        .btn {
            font-family: "Poppins", sans-serif;
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 10px 14px;
            border-radius: 10px;
            background: linear-gradient(90deg, var(--accent), #ff7a7f);
            color: #fff;
            font-weight: 700;
            border: none;
            cursor: pointer;
            box-shadow: 0 12px 30px rgba(255, 90, 95, 0.12);
            transition: opacity .25s;
            text-decoration: none;
        }

        .btn:hover {
            opacity: 0.7;
        }

        .btn.secondary {
            background: rgba(255, 255, 255, 0.06);
            color: #fff;
            font-weight: 600;
        }

        .modal .right {
            padding: 6px 2px 6px 2px;
            display: flex;
            flex-direction: column;
            gap: 12px;
        }

        .modal .title {
            font-size: 1.6rem;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 0.12em;
        }

        .modal .desc {
            color: rgba(255, 255, 255, 0.85);
            min-height: 74px;
            line-height: 1.35;
            white-space: pre-wrap;
        }

        .badges {
            display: flex;
            gap: 8px;
            flex-wrap: wrap;
        }

        .badge {
            background: rgba(255, 255, 255, 0.04);
            padding: 6px 10px;
            border-radius: 999px;
            font-size: 0.8rem;
            color: #fff;
        }

        .close {
            position: absolute;
            right: 14px;
            top: 12px;
            background: rgba(255, 255, 255, 0.04);
            border: none;
            border-radius: 8px;
            width: 38px;
            height: 38px;
            display: inline-grid;
            place-items: center;
            cursor: pointer;
            z-index: 10;
            transition: opacity .25s;
            text-decoration: none;
        }

        .close:hover {
            opacity: 0.7;
        }

        .close-icon {
            font-size: 1.2rem;
            color: #fff;
        }

        /* equalizer */
        .eq {
            display: flex;
            align-items: center;
            gap: 5px;
            height: 60px;
            margin-bottom: 10px;
        }

        .bar {
            width: 8px;
            background: #ffffff;
            border-radius: 5px;
            animation: bounce 800ms infinite ease-in-out;
            transform-origin: center center;
        }

        /* Höhen der Bars anpassen */
        .bar:nth-child(1) {
            height: 35px;
            animation-delay: 0ms;
        }

        .bar:nth-child(2) {
            height: 25px;
            animation-delay: 120ms;
        }

        .bar:nth-child(3) {
            height: 35px;
            animation-delay: 240ms;
        }

        .bar:nth-child(4) {
            height: 25px;
            animation-delay: 360ms;
        }

        .bar:nth-child(5) {
            height: 35px;
            animation-delay: 480ms;
        }

        @keyframes bounce {
            0% {
                transform: scaleY(0.8);
            }

            50% {
                transform: scaleY(1.5);
            }

            100% {
                transform: scaleY(0.8);
            }
        }

        @media (max-width: 1500px) {
            body {
                flex-direction: column;
                align-items: center;
                justify-content: flex-start;
                padding: 10px;
            }

            /* Karten-Layout für kleinere Bildschirme */
            .container {
                gap: 10px;
                margin-top: 20px;
            }

            .box {
                flex: 1 1 calc(40% - 10px);
                min-width: 100px;
            }

            /* Überschrift weiter verkleinern */
            h1 {
                font-size: 1.4rem;
                letter-spacing: 0.06em;
                margin-bottom: 10px;
            }

            /* Modal einspaltig und kompakter */
            .modal {
                grid-template-columns: 1fr;
                padding: 12px;
            }

            .modal .title {
                font-size: 1.2rem;
            }

            .modal .desc {
                font-size: 0.9rem;
            }

            .close {
                width: 30px;
                height: 30px;
            }

            .eq {
                height: 28px;
            }

            .bar {
                width: 4px;
            }

            .modal .right {
                align-items: center;
                text-align: center;
            }
        }