    :root {
        --aspect: calc(9 / 16 * 100%);
        --radius: 12px;
    }

    .player {
        position: relative;
        width: 100%;
        border-radius: var(--radius);
        overflow: hidden;
        background: #0b1020;
        box-shadow: 0 10px 30px rgba(0, 0, 0, .25);
    }

    .player::before {
        content: "";
        display: block;
        padding-top: var(--aspect);
    }

    .player iframe {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        border: 0;
    }

    .grid {
        margin-top: 18px;
        display: grid;
        gap: 14px;
        grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    }

    .card {
        position: relative;
        border-radius: var(--radius);
        overflow: hidden;
        background: #0e1530;
        cursor: pointer;
        transition: transform .12s ease, box-shadow .12s ease;
    }

    .card:hover {
        transform: translateY(-2px);
        box-shadow: 0 8px 20px rgba(0, 0, 0, .3);
    }

    .thumb {
        position: relative;
        width: 100%;
        background: #0b1020;
    }

    .thumb::before {
        content: "";
        display: block;
        padding-top: var(--aspect);
    }

    .thumb img {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform .2s ease;
    }

    .card:hover .thumb img {
        transform: scale(1.03);
    }

    .play {
        position: absolute;
        inset: 0;
        display: grid;
        place-items: center;
        pointer-events: none;
    }

    .play svg {
        width: 60px;
        height: 60px;
        opacity: .95;
        filter: drop-shadow(0 6px 16px rgba(0, 0, 0, .6));
    }

    .meta {
        padding: 10px 12px 12px;
        font-size: 13px;
        line-height: 1.35;
    }

    .title {
        font-weight: 600;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .badge {
        margin-left: 6px;
        padding: 2px 6px;
        border-radius: 999px;
        background: #1a244a;
        font-size: 12px;
    }

    .page-summary {
        background: #f8f9fa;
        padding: 20px;
        border-left: 4px solid #27ae60;
        margin-bottom: 25px;
        border-radius: 4px;
        color: #34495e;
    }