:root{
    --ak-bg:#090a0f;
    --ak-bg-2:#101119;
    --ak-card:#14151e;
    --ak-card-2:#191a24;
    --ak-border:rgba(255,255,255,.075);
    --ak-text:#f7f7fa;
    --ak-muted:#999baa;
    --ak-primary:#ff5f91;
    --ak-primary-2:#a56bff;
    --ak-green:#8be7b1;
    --ak-yellow:#ffd36b;
    --ak-radius:18px;
    --ak-container:1440px;
}

*{
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    margin:0;
    background:
        radial-gradient(
            circle at 15% 0%,
            rgba(165,107,255,.09),
            transparent 30%
        ),
        var(--ak-bg);
    color:var(--ak-text);
    font-family:
        Inter,
        ui-sans-serif,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;
    line-height:1.55;
    -webkit-font-smoothing:antialiased;
}

body.ak-menu-open,
body.ak-search-open{
    overflow:hidden;
}

a{
    color:inherit;
    text-decoration:none;
}

img{
    max-width:100%;
    display:block;
}

button,
input{
    font:inherit;
}

button{
    cursor:pointer;
}

.ak-container{
    width:min(
        calc(100% - 48px),
        var(--ak-container)
    );
    margin:auto;
}


/* Header */

.ak-header{
    position:sticky;
    top:0;
    z-index:1000;
    height:74px;
    background:rgba(9,10,15,.82);
    backdrop-filter:blur(18px);
    border-bottom:1px solid var(--ak-border);
}

.ak-header-inner{
    height:100%;
    display:flex;
    align-items:center;
    gap:38px;
}

.ak-logo{
    display:inline-flex;
    align-items:center;
    gap:10px;
    flex-shrink:0;
}

.ak-logo-mark{
    width:37px;
    height:37px;
    border-radius:12px;
    display:grid;
    place-items:center;
    font-size:20px;
    font-weight:900;
    background:
        linear-gradient(
            135deg,
            var(--ak-primary),
            var(--ak-primary-2)
        );
    box-shadow:
        0 8px 30px
        rgba(255,95,145,.24);
}

.ak-logo-text{
    font-size:22px;
    font-weight:850;
    letter-spacing:-.8px;
}

.ak-logo-text span{
    color:var(--ak-primary);
}

.ak-nav{
    display:flex;
    align-items:center;
    gap:8px;
}

.ak-nav a{
    padding:9px 13px;
    color:#b6b7c1;
    font-size:14px;
    font-weight:650;
    border-radius:10px;
    transition:.2s;
}

.ak-nav a:hover{
    color:#fff;
    background:rgba(255,255,255,.06);
}

.ak-header-actions{
    margin-left:auto;
    display:flex;
    gap:9px;
}

.ak-search-button,
.ak-watchlist-button{
    height:40px;
    border:1px solid var(--ak-border);
    background:rgba(255,255,255,.045);
    color:#fff;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
}

.ak-search-button{
    width:42px;
    font-size:23px;
}

.ak-watchlist-button{
    padding:0 15px;
    font-size:13px;
    font-weight:700;
}

.ak-menu-toggle{
    display:none;
    width:40px;
    height:40px;
    border:0;
    background:transparent;
    padding:9px;
}

.ak-menu-toggle span{
    display:block;
    height:2px;
    background:#fff;
    margin:5px 0;
    border-radius:2px;
}


/* Hero */

.ak-hero{
    min-height:650px;
    position:relative;
    overflow:hidden;
    display:flex;
    align-items:center;
}

.ak-hero-bg{
    position:absolute;
    inset:0;
    background-image:var(--hero-bg);
    background-size:cover;
    background-position:center 25%;
    filter:saturate(.85);
    transform:scale(1.02);
}

.ak-hero-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            90deg,
            #090a0f 0%,
            rgba(9,10,15,.93) 28%,
            rgba(9,10,15,.62) 57%,
            rgba(9,10,15,.22) 100%
        ),
        linear-gradient(
            0deg,
            #090a0f 0%,
            transparent 45%
        );
}

.ak-hero-inner{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    min-height:650px;
}

.ak-hero-content{
    width:min(680px,60%);
    padding:80px 0 110px;
}

.ak-hero-kicker,
.ak-section-kicker{
    color:var(--ak-primary);
    text-transform:uppercase;
    letter-spacing:1.7px;
    font-size:11px;
    font-weight:850;
}

.ak-pulse{
    display:inline-block;
    width:7px;
    height:7px;
    margin-right:7px;
    border-radius:50%;
    background:var(--ak-primary);
    box-shadow:
        0 0 0 5px
        rgba(255,95,145,.12);
}

.ak-hero h1{
    margin:15px 0 5px;
    font-size:clamp(45px,5vw,76px);
    line-height:.98;
    letter-spacing:-3px;
    max-width:700px;
}

.ak-hero-alt{
    color:#aaaab4;
    font-size:15px;
    margin-top:13px;
}

.ak-hero-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:23px;
}

.ak-hero-meta > span{
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.08);
    padding:5px 10px;
    border-radius:8px;
    font-size:12px;
    font-weight:700;
}

.ak-hero-rating{
    color:#ffe285;
}

.ak-genre-pills{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:14px;
}

.ak-genre-pills a{
    color:#c8c8d0;
    font-size:12px;
}

.ak-genre-pills a:not(:last-child)::after{
    content:"•";
    margin-left:7px;
    opacity:.35;
}

.ak-hero-description{
    max-width:620px;
    color:#b4b5c0;
    font-size:15px;
    margin-top:19px;
}

.ak-hero-actions{
    display:flex;
    gap:10px;
    margin-top:28px;
}

.ak-btn{
    min-height:46px;
    padding:0 20px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    border-radius:13px;
    font-weight:800;
    font-size:14px;
    transition:
        transform .2s,
        background .2s;
}

.ak-btn:hover{
    transform:translateY(-2px);
}

.ak-btn-primary{
    color:#fff;
    background:
        linear-gradient(
            135deg,
            var(--ak-primary),
            #ee4f82
        );
    box-shadow:
        0 10px 30px
        rgba(255,95,145,.22);
}

.ak-btn-secondary{
    background:rgba(255,255,255,.1);
    backdrop-filter:blur(10px);
}

.ak-hero-poster{
    display:none;
}


/* Sections */

.ak-section{
    padding:28px 0 50px;
}

.ak-section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:21px;
}

.ak-section-head h2{
    margin:3px 0 0;
    font-size:26px;
    letter-spacing:-.8px;
}

.ak-view-all{
    color:#aaaab5;
    font-size:13px;
    font-weight:700;
}

.ak-view-all:hover{
    color:var(--ak-primary);
}


/* Anime Grid */

.ak-anime-grid{
    display:grid;
    grid-template-columns:
        repeat(6,minmax(0,1fr));
    gap:25px 16px;
}

.ak-card{
    min-width:0;
}

.ak-card-poster{
    position:relative;
    display:block;
    overflow:hidden;
    border-radius:var(--ak-radius);
    aspect-ratio:2/3;
    background:var(--ak-card);
    border:1px solid var(--ak-border);
}

.ak-card-poster img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:
        transform .45s cubic-bezier(.2,.7,.2,1),
        filter .3s;
}

.ak-card:hover .ak-card-poster img{
    transform:scale(1.055);
    filter:brightness(.72);
}

.ak-card-gradient{
    position:absolute;
    inset:40% 0 0;
    background:
        linear-gradient(
            transparent,
            rgba(0,0,0,.72)
        );
}

.ak-score{
    position:absolute;
    top:10px;
    left:10px;
    background:rgba(10,10,15,.78);
    backdrop-filter:blur(10px);
    padding:5px 8px;
    border-radius:8px;
    color:#ffe279;
    font-size:11px;
    font-weight:800;
}

.ak-card-play{
    position:absolute;
    top:50%;
    left:50%;
    width:48px;
    height:48px;
    transform:
        translate(-50%,-40%)
        scale(.7);
    border-radius:50%;
    background:rgba(255,255,255,.94);
    color:#111;
    display:grid;
    place-items:center;
    padding-left:3px;
    opacity:0;
    transition:.25s;
}

.ak-card:hover .ak-card-play{
    opacity:1;
    transform:
        translate(-50%,-50%)
        scale(1);
}

.ak-card-badges{
    position:absolute;
    left:9px;
    right:9px;
    bottom:9px;
    display:flex;
    gap:5px;
    flex-wrap:wrap;
}

.ak-badge{
    padding:4px 7px;
    border-radius:6px;
    font-size:10px;
    line-height:1;
    font-weight:900;
    color:#111;
}

.ak-badge-sub{
    background:var(--ak-green);
}

.ak-badge-dub{
    background:var(--ak-yellow);
}

.ak-card-body{
    padding:11px 3px 0;
}

.ak-card-title{
    margin:0;
    font-size:14px;
    line-height:1.35;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.ak-card-title a:hover{
    color:var(--ak-primary);
}

.ak-card-meta{
    display:flex;
    align-items:center;
    gap:6px;
    margin-top:6px;
    color:#888a98;
    font-size:11px;
    font-weight:600;
}

.ak-meta-dot{
    width:3px;
    height:3px;
    background:#555762;
    border-radius:50%;
}


/* Continue watching */

.ak-continue-grid{
    display:grid;
    grid-template-columns:
        repeat(4,minmax(0,1fr));
    gap:14px;
}

.ak-continue-card{
    display:flex;
    background:var(--ak-card);
    border:1px solid var(--ak-border);
    border-radius:15px;
    padding:8px;
    gap:12px;
}

.ak-continue-image{
    width:105px;
    aspect-ratio:16/10;
    border-radius:10px;
    overflow:hidden;
    flex-shrink:0;
    position:relative;
}

.ak-continue-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.ak-continue-play{
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    background:rgba(0,0,0,.25);
}

.ak-continue-info{
    min-width:0;
    flex:1;
    align-self:center;
}

.ak-continue-info strong{
    display:block;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    font-size:13px;
}

.ak-continue-info > span{
    color:var(--ak-muted);
    font-size:11px;
}

.ak-progress{
    margin-top:9px;
    height:3px;
    border-radius:4px;
    background:#33343c;
    overflow:hidden;
}

.ak-progress i{
    height:100%;
    display:block;
    background:var(--ak-primary);
}


/* Discover */

.ak-discover{
    padding:30px 0 70px;
}

.ak-discover-box{
    padding:34px 38px;
    border:1px solid var(--ak-border);
    border-radius:22px;
    background:
        radial-gradient(
            circle at 85% 50%,
            rgba(255,95,145,.12),
            transparent 35%
        ),
        var(--ak-card);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}

.ak-discover h2{
    margin:5px 0;
    font-size:29px;
}

.ak-discover p{
    color:var(--ak-muted);
    margin:0;
}


/* Search */

.ak-search-panel{
    position:fixed;
    inset:0;
    z-index:2000;
    background:rgba(5,5,8,.86);
    backdrop-filter:blur(18px);
    opacity:0;
    visibility:hidden;
    transition:.2s;
}

.ak-search-open .ak-search-panel{
    opacity:1;
    visibility:visible;
}

.ak-search-panel-inner{
    width:min(800px,calc(100% - 30px));
    margin:110px auto 0;
    display:flex;
    gap:10px;
}

.ak-search-panel form{
    flex:1;
    height:64px;
    display:flex;
    align-items:center;
    padding:0 10px 0 20px;
    background:#161720;
    border:1px solid var(--ak-border);
    border-radius:18px;
}

.ak-search-icon{
    font-size:25px;
    color:#8e909b;
}

.ak-search-panel input{
    flex:1;
    min-width:0;
    height:100%;
    border:0;
    outline:0;
    color:#fff;
    background:transparent;
    padding:0 15px;
    font-size:17px;
}

.ak-search-panel form button{
    height:44px;
    border:0;
    border-radius:11px;
    padding:0 18px;
    color:#fff;
    background:var(--ak-primary);
    font-weight:800;
}

.ak-search-close{
    width:55px;
    height:55px;
    border:0;
    background:transparent;
    color:#fff;
    font-size:36px;
}


/* Mobile Menu */

.ak-mobile-menu{
    display:none;
}


/* Footer */

.ak-footer{
    border-top:1px solid var(--ak-border);
    padding:45px 0 25px;
    background:#08090d;
}

.ak-footer-top{
    display:flex;
    justify-content:space-between;
    gap:40px;
}

.ak-footer-top p{
    color:var(--ak-muted);
    font-size:13px;
    margin-top:13px;
}

.ak-footer-links{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:24px;
    color:#aaaab5;
    font-size:13px;
    font-weight:650;
}

.ak-footer-links a:hover{
    color:#fff;
}

.ak-footer-bottom{
    border-top:1px solid var(--ak-border);
    margin-top:35px;
    padding-top:20px;
    display:flex;
    justify-content:space-between;
    color:#686a75;
    font-size:11px;
}


/* Tablet */

@media(max-width:1100px){

    .ak-anime-grid{
        grid-template-columns:
            repeat(5,minmax(0,1fr));
    }

    .ak-nav{
        display:none;
    }

    .ak-menu-toggle{
        display:block;
    }

    .ak-continue-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }
}


/* Mobile */

@media(max-width:760px){

    .ak-container{
        width:min(
            calc(100% - 24px),
            var(--ak-container)
        );
    }

    .ak-header{
        height:62px;
    }

    .ak-header-inner{
        gap:8px;
    }

    .ak-logo-text{
        font-size:19px;
    }

    .ak-logo-mark{
        width:33px;
        height:33px;
        border-radius:10px;
    }

    .ak-watchlist-button{
        width:40px;
        padding:0;
    }

    .ak-desktop-only{
        display:none;
    }


    .ak-hero{
        min-height:570px;
    }

    .ak-hero-inner{
        min-height:570px;
        align-items:flex-end;
    }

    .ak-hero-bg{
        background-position:center top;
    }

    .ak-hero-overlay{
        background:
            linear-gradient(
                0deg,
                #090a0f 0%,
                rgba(9,10,15,.9) 38%,
                rgba(9,10,15,.2) 100%
            );
    }

    .ak-hero-content{
        width:100%;
        padding:190px 0 50px;
    }

    .ak-hero h1{
        font-size:39px;
        letter-spacing:-1.8px;
    }

    .ak-hero-description{
        font-size:13px;
        display:-webkit-box;
        -webkit-line-clamp:3;
        -webkit-box-orient:vertical;
        overflow:hidden;
    }

    .ak-genre-pills{
        display:none;
    }

    .ak-hero-actions{
        display:grid;
        grid-template-columns:1fr 1fr;
    }


    .ak-section{
        padding:20px 0 38px;
    }

    .ak-section-head{
        margin-bottom:15px;
    }

    .ak-section-head h2{
        font-size:21px;
    }

    .ak-anime-grid{
        grid-template-columns:
            repeat(3,minmax(0,1fr));
        gap:20px 9px;
    }

    .ak-card-poster{
        border-radius:12px;
    }

    .ak-card-title{
        font-size:12px;
    }

    .ak-score{
        top:6px;
        left:6px;
        padding:4px 6px;
        font-size:9px;
    }

    .ak-card-badges{
        left:5px;
        right:5px;
        bottom:6px;
        gap:3px;
    }

    .ak-badge{
        padding:4px 5px;
        font-size:8px;
    }

    .ak-card-play{
        display:none;
    }

    .ak-card-meta{
        font-size:9px;
    }


    .ak-continue-grid{
        display:flex;
        overflow:auto;
        scroll-snap-type:x mandatory;
        margin-right:-12px;
        padding-right:12px;
    }

    .ak-continue-card{
        min-width:290px;
        scroll-snap-align:start;
    }


    .ak-discover-box{
        padding:25px 20px;
        display:block;
    }

    .ak-discover h2{
        font-size:24px;
    }

    .ak-discover .ak-btn{
        margin-top:20px;
    }


    .ak-mobile-menu{
        display:block;
        position:fixed;
        top:0;
        bottom:0;
        left:0;
        width:min(320px,85vw);
        z-index:2100;
        background:#101117;
        padding:20px;
        transform:translateX(-105%);
        transition:.28s ease;
    }

    .ak-menu-open .ak-mobile-menu{
        transform:translateX(0);
    }

    .ak-mobile-menu-head{
        display:flex;
        align-items:center;
        justify-content:space-between;
        padding-bottom:25px;
        border-bottom:1px solid var(--ak-border);
    }

    .ak-mobile-close{
        border:0;
        background:transparent;
        color:#fff;
        font-size:32px;
    }

    .ak-mobile-menu nav{
        padding-top:15px;
    }

    .ak-mobile-menu nav a{
        display:block;
        padding:13px 10px;
        border-radius:10px;
        color:#c6c7cf;
        font-size:14px;
        font-weight:700;
    }

    .ak-mobile-menu nav a:hover{
        background:rgba(255,255,255,.05);
        color:#fff;
    }

    .ak-menu-overlay{
        position:fixed;
        inset:0;
        z-index:2050;
        background:rgba(0,0,0,.7);
        opacity:0;
        visibility:hidden;
        transition:.25s;
    }

    .ak-menu-open .ak-menu-overlay{
        opacity:1;
        visibility:visible;
    }


    .ak-search-panel-inner{
        margin-top:75px;
    }

    .ak-search-panel form{
        height:57px;
        padding-left:14px;
    }

    .ak-search-panel form button{
        display:none;
    }

    .ak-search-close{
        width:40px;
    }


    .ak-footer-top{
        display:block;
    }

    .ak-footer-links{
        margin-top:28px;
        gap:15px 20px;
    }

    .ak-footer-bottom{
        display:block;
    }

    .ak-footer-bottom span{
        display:block;
        margin-top:5px;
    }
}


@media(max-width:430px){

    .ak-anime-grid{
        grid-template-columns:
            repeat(3,minmax(0,1fr));
    }

    .ak-card-title{
        font-size:11px;
    }

    .ak-card-meta{
        gap:4px;
    }
}
/* =========================================
   SINGLE ANIME
========================================= */

.ak-single-hero{
    position:relative;
    min-height:610px;
    display:flex;
    align-items:flex-end;
    overflow:hidden;
}

.ak-single-bg{
    position:absolute;
    inset:0;
    background-image:var(--single-bg);
    background-size:cover;
    background-position:center 25%;
    filter:blur(2px);
    transform:scale(1.025);
}

.ak-single-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            90deg,
            rgba(9,10,15,.97),
            rgba(9,10,15,.78) 48%,
            rgba(9,10,15,.45)
        ),
        linear-gradient(
            0deg,
            #090a0f 0%,
            transparent 55%
        );
}

.ak-single-inner{
    position:relative;
    z-index:2;
    display:flex;
    align-items:flex-end;
    gap:38px;
    padding-top:100px;
    padding-bottom:55px;
}

.ak-single-poster{
    width:245px;
    flex-shrink:0;
}

.ak-single-poster img{
    width:100%;
    aspect-ratio:2/3;
    object-fit:cover;
    border-radius:20px;
    box-shadow:
        0 25px 70px
        rgba(0,0,0,.45);
}

.ak-single-info{
    max-width:780px;
    padding-bottom:5px;
}

.ak-single-badges{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}

.ak-single-badges span{
    padding:5px 9px;
    background:rgba(255,255,255,.09);
    border:1px solid rgba(255,255,255,.09);
    border-radius:8px;
    font-size:11px;
    font-weight:750;
}

.ak-single-info h1{
    margin:13px 0 4px;
    font-size:clamp(38px,5vw,65px);
    line-height:1;
    letter-spacing:-2.4px;
}

.ak-single-alt{
    color:#9d9eaa;
    margin-top:9px;
}

.ak-single-stats{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:7px;
    margin-top:19px;
}

.ak-single-stats > span:not(.ak-badge){
    padding:5px 8px;
    font-size:11px;
    font-weight:700;
    border-radius:7px;
    background:rgba(255,255,255,.07);
}

.ak-single-score{
    color:#ffe37b;
}

.ak-single-genres{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:15px;
}

.ak-single-genres a{
    padding:5px 10px;
    border-radius:20px;
    color:#d1d1d8;
    background:rgba(255,255,255,.06);
    font-size:11px;
}

.ak-single-description{
    max-width:700px;
    margin-top:17px;
    color:#b1b2bd;
    font-size:14px;
}

.ak-single-description p{
    margin:0;
}

.ak-single-actions{
    display:flex;
    gap:9px;
    margin-top:24px;
}

.ak-single-actions button{
    border:0;
    color:#fff;
}


/* Single content */

.ak-single-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 300px;
    gap:35px;
}

.ak-episode-tools input{
    height:39px;
    width:170px;
    border:1px solid var(--ak-border);
    outline:0;
    border-radius:10px;
    background:var(--ak-card);
    color:#fff;
    padding:0 12px;
    font-size:12px;
}

.ak-episode-list{
    display:grid;
    grid-template-columns:
        repeat(2,minmax(0,1fr));
    gap:9px;
}

.ak-episode-row{
    display:flex;
    align-items:center;
    gap:12px;
    padding:8px;
    border:1px solid var(--ak-border);
    border-radius:13px;
    background:var(--ak-card);
    transition:.2s;
}

.ak-episode-row:hover{
    border-color:
        rgba(255,95,145,.4);
    background:var(--ak-card-2);
    transform:translateY(-1px);
}

.ak-episode-thumb{
    width:92px;
    aspect-ratio:16/9;
    flex-shrink:0;
    position:relative;
    overflow:hidden;
    border-radius:8px;
}

.ak-episode-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.ak-episode-thumb span{
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    background:rgba(0,0,0,.2);
    font-size:13px;
}

.ak-episode-info{
    min-width:0;
}

.ak-episode-info strong{
    display:block;
    font-size:13px;
}

.ak-episode-info small{
    display:block;
    margin-top:3px;
    color:#858793;
    font-size:10px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.ak-episode-arrow{
    margin-left:auto;
    padding-right:8px;
    color:#6e707b;
    font-size:23px;
}

.ak-info-card{
    position:sticky;
    top:95px;
    padding:20px;
    background:var(--ak-card);
    border:1px solid var(--ak-border);
    border-radius:17px;
}

.ak-info-card h3{
    margin:0 0 15px;
    font-size:16px;
}

.ak-info-card > div{
    display:flex;
    justify-content:space-between;
    gap:15px;
    padding:10px 0;
    border-bottom:1px solid var(--ak-border);
    font-size:12px;
}

.ak-info-card > div:last-child{
    border-bottom:0;
}

.ak-info-card span{
    color:#858793;
}

.ak-info-card strong{
    text-align:right;
}

.ak-empty-state{
    padding:50px 20px;
    border:1px dashed var(--ak-border);
    border-radius:17px;
    text-align:center;
    color:var(--ak-muted);
}

.ak-empty-state strong{
    color:#fff;
}


/* =========================================
   WATCH PAGE
========================================= */

.ak-watch-page{
    min-height:100vh;
    padding:26px 0 70px;
}

.ak-watch-container{
    max-width:1600px;
}

.ak-watch-breadcrumb{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:15px;
    color:#777985;
    font-size:11px;
}

.ak-watch-breadcrumb a:hover{
    color:var(--ak-primary);
}

.ak-watch-breadcrumb strong{
    color:#c8c9d0;
}

.ak-watch-layout{
    display:grid;
    grid-template-columns:
        minmax(0,1fr) 330px;
    gap:14px;
}

.ak-player-shell{
    position:relative;
    overflow:hidden;
    border:1px solid var(--ak-border);
    border-radius:18px;
    background:#050506;
}

.ak-player-stage{
    position:relative;
    width:100%;
    aspect-ratio:16/9;
    background:#050506;
}

.ak-player-stage iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
}

.ak-player-empty{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    color:#858793;
    text-align:center;
}

.ak-player-empty-icon{
    width:65px;
    height:65px;
    margin-bottom:15px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:rgba(255,255,255,.07);
    color:#fff;
    font-size:20px;
}

.ak-player-empty strong{
    color:#fff;
    font-size:16px;
}

.ak-player-empty p{
    margin:5px 0 0;
    font-size:12px;
}

.ak-player-toolbar{
    min-height:51px;
    padding:7px 9px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    background:#101116;
    border-top:1px solid var(--ak-border);
}

.ak-player-toolbar-left,
.ak-player-toolbar-right{
    display:flex;
    gap:6px;
}

.ak-tool-button{
    min-height:34px;
    padding:0 11px;
    border:1px solid var(--ak-border);
    border-radius:8px;
    background:#181920;
    color:#bbbcc5;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:10px;
    font-weight:700;
}

.ak-tool-button:hover{
    color:#fff;
    background:#20212a;
}

.ak-next-button{
    background:var(--ak-primary);
    border-color:transparent;
    color:#fff;
}

.ak-watch-title{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    padding:20px 5px;
}

.ak-watch-title h1{
    margin:2px 0;
    font-size:23px;
    letter-spacing:-.5px;
}

.ak-watch-title p{
    margin:0;
    color:#858793;
    font-size:12px;
}


/* Stream selector */

.ak-stream-selector{
    margin-top:5px;
    padding:20px;
    border:1px solid var(--ak-border);
    border-radius:17px;
    background:var(--ak-card);
}

.ak-stream-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
}

.ak-stream-head h2{
    margin:2px 0 0;
    font-size:18px;
}

.ak-server-help{
    color:#727480;
    font-size:10px;
}

.ak-audio-tabs{
    display:flex;
    gap:7px;
    margin-top:17px;
    padding-bottom:13px;
    border-bottom:1px solid var(--ak-border);
}

.ak-audio-tab{
    min-width:80px;
    height:34px;
    border:1px solid var(--ak-border);
    border-radius:9px;
    background:#1a1b23;
    color:#999aa5;
    font-size:10px;
    font-weight:850;
}

.ak-audio-tab.is-active{
    color:#111;
    background:var(--ak-green);
    border-color:transparent;
}

.ak-audio-tab[data-audio-tab="dub"].is-active{
    background:var(--ak-yellow);
}

.ak-audio-panel{
    display:none;
}

.ak-audio-panel.is-active{
    display:block;
}

.ak-language-server-group{
    display:grid;
    grid-template-columns:130px minmax(0,1fr);
    gap:15px;
    padding:15px 0;
    border-bottom:1px solid var(--ak-border);
}

.ak-language-server-group:last-child{
    border-bottom:0;
    padding-bottom:0;
}

.ak-language-name span{
    display:block;
    font-size:12px;
    font-weight:800;
}

.ak-language-name small{
    color:#737580;
    font-size:9px;
}

.ak-server-buttons{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}

.ak-server-button{
    min-height:38px;
    padding:0 11px;
    border:1px solid var(--ak-border);
    border-radius:9px;
    background:#1c1d25;
    color:#c3c4cc;
    display:flex;
    align-items:center;
    gap:7px;
    font-size:10px;
    font-weight:700;
}

.ak-server-button:hover,
.ak-server-button.is-active{
    color:#fff;
    border-color:rgba(255,95,145,.5);
    background:rgba(255,95,145,.1);
}

.ak-server-button small{
    padding:2px 4px;
    border-radius:4px;
    background:#292a33;
    color:#898b96;
    font-size:8px;
}

.ak-server-play{
    color:var(--ak-primary);
}


/* Watch episodes sidebar */

.ak-watch-sidebar{
    height:calc(100vh - 125px);
    min-height:500px;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    border:1px solid var(--ak-border);
    border-radius:17px;
    background:var(--ak-card);
}

.ak-watch-sidebar-head{
    padding:13px;
    border-bottom:1px solid var(--ak-border);
}

.ak-watch-sidebar-head > div{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:9px;
}

.ak-watch-sidebar-head strong{
    font-size:13px;
}

.ak-watch-sidebar-head span{
    min-width:25px;
    height:22px;
    padding:0 6px;
    border-radius:6px;
    display:grid;
    place-items:center;
    background:#25262e;
    color:#a7a8b1;
    font-size:9px;
}

.ak-watch-sidebar-head input{
    width:100%;
    height:36px;
    padding:0 11px;
    outline:0;
    border:1px solid var(--ak-border);
    border-radius:9px;
    background:#0e0f14;
    color:#fff;
    font-size:10px;
}

.ak-watch-episodes{
    flex:1;
    overflow-y:auto;
    scrollbar-width:thin;
}

.ak-watch-episode{
    display:flex;
    align-items:center;
    gap:10px;
    padding:9px 11px;
    border-bottom:1px solid rgba(255,255,255,.045);
}

.ak-watch-episode:hover{
    background:#191a22;
}

.ak-watch-episode.is-current{
    background:rgba(255,95,145,.09);
    border-left:2px solid var(--ak-primary);
}

.ak-watch-episode-number{
    width:38px;
    height:38px;
    flex-shrink:0;
    display:grid;
    place-items:center;
    border-radius:9px;
    background:#21222a;
    font-size:10px;
    font-weight:850;
}

.ak-watch-episode.is-current
.ak-watch-episode-number{
    color:#fff;
    background:var(--ak-primary);
}

.ak-watch-episode-text{
    min-width:0;
    flex:1;
}

.ak-watch-episode-text strong{
    display:block;
    font-size:11px;
}

.ak-watch-episode-text small{
    display:block;
    margin-top:2px;
    color:#71737e;
    font-size:8px;
}

.ak-watch-episode-icon{
    color:#6c6e78;
}


/* Lights */

.ak-lights-overlay{
    position:fixed;
    inset:0;
    z-index:1050;
    background:rgba(0,0,0,.92);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:.25s;
}

.ak-lights-off
.ak-lights-overlay{
    opacity:1;
    visibility:visible;
}

.ak-lights-off
.ak-player-shell{
    position:relative;
    z-index:1100;
}

.ak-lights-off
.ak-watch-title{
    position:relative;
    z-index:1100;
}


/* Theater */

.ak-theater-mode
.ak-watch-layout{
    display:block;
}

.ak-theater-mode
.ak-watch-sidebar{
    display:none;
}

.ak-theater-mode
.ak-player-column{
    width:100%;
}


/* Responsive */

@media(max-width:1050px){

    .ak-watch-layout{
        display:block;
    }

    .ak-watch-sidebar{
        height:500px;
        margin-top:15px;
    }

    .ak-single-layout{
        grid-template-columns:1fr;
    }

    .ak-single-sidebar{
        display:none;
    }
}


@media(max-width:760px){

    .ak-single-hero{
        min-height:auto;
    }

    .ak-single-bg{
        height:370px;
        bottom:auto;
    }

    .ak-single-overlay{
        background:
            linear-gradient(
                0deg,
                #090a0f 0%,
                rgba(9,10,15,.88) 48%,
                rgba(9,10,15,.18) 100%
            );
    }

    .ak-single-inner{
        display:block;
        padding-top:245px;
        padding-bottom:25px;
    }

    .ak-single-poster{
        width:125px;
        margin-bottom:17px;
    }

    .ak-single-poster img{
        border-radius:13px;
    }

    .ak-single-info h1{
        font-size:32px;
        letter-spacing:-1.3px;
    }

    .ak-single-description{
        font-size:12px;
    }

    .ak-single-actions{
        display:grid;
        grid-template-columns:1fr 1fr;
    }

    .ak-episode-list{
        grid-template-columns:1fr;
    }

    .ak-episode-tools input{
        width:130px;
    }


    .ak-watch-page{
        padding-top:10px;
    }

    .ak-watch-container{
        width:100%;
    }

    .ak-watch-breadcrumb{
        padding:0 12px;
    }

    .ak-player-shell{
        border-left:0;
        border-right:0;
        border-radius:0;
    }

    .ak-player-toolbar{
        padding:6px;
    }

    .ak-tool-button{
        padding:0 8px;
        font-size:9px;
    }

    .ak-watch-title{
        padding:17px 12px;
    }

    .ak-watch-title h1{
        font-size:18px;
    }

    .ak-watch-title .ak-btn{
        min-height:37px;
        padding:0 11px;
        font-size:10px;
    }

    .ak-stream-selector{
        margin:0 12px;
        padding:15px;
    }

    .ak-stream-head{
        display:block;
    }

    .ak-server-help{
        display:block;
        margin-top:4px;
    }

    .ak-language-server-group{
        display:block;
    }

    .ak-language-name{
        margin-bottom:8px;
    }

    .ak-server-buttons{
        display:grid;
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .ak-server-button{
        justify-content:flex-start;
    }

    .ak-watch-sidebar{
        margin:15px 12px 0;
        height:500px;
        min-height:0;
    }
}
/* =========================================
   BROWSE
========================================= */

.ak-browse-page{
    padding-bottom:70px;
}

.ak-browse-heading{
    padding:65px 0 28px;
}

.ak-browse-heading h1{
    margin:4px 0 5px;
    font-size:42px;
    letter-spacing:-1.8px;
}

.ak-browse-heading p{
    margin:0;
    color:var(--ak-muted);
    font-size:13px;
}

.ak-browse-filter{
    padding:18px;
    margin-bottom:18px;
    background:var(--ak-card);
    border:1px solid var(--ak-border);
    border-radius:18px;
}

.ak-filter-search{
    height:50px;
    display:flex;
    align-items:center;
    margin-bottom:15px;
    padding:0 15px;
    border-radius:12px;
    border:1px solid var(--ak-border);
    background:#0d0e13;
}

.ak-filter-search span{
    color:#777986;
    font-size:23px;
}

.ak-filter-search input{
    width:100%;
    height:100%;
    padding:0 12px;
    border:0;
    outline:0;
    background:transparent;
    color:#fff;
}

.ak-filter-grid{
    display:grid;
    grid-template-columns:
        repeat(5,minmax(0,1fr))
        auto;
    gap:10px;
    align-items:end;
}

.ak-filter-grid label > span{
    display:block;
    margin:0 0 5px 2px;
    color:#797b87;
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.8px;
}

.ak-filter-grid select{
    width:100%;
    height:42px;
    padding:0 10px;
    border:1px solid var(--ak-border);
    border-radius:10px;
    outline:0;
    background:#101116;
    color:#c7c8cf;
    font-size:11px;
}

.ak-filter-action .ak-btn{
    height:42px;
    min-height:42px;
    border:0;
    white-space:nowrap;
}

.ak-az-filter{
    display:flex;
    align-items:center;
    gap:5px;
    overflow-x:auto;
    padding:4px 0 18px;
    scrollbar-width:none;
}

.ak-az-filter::-webkit-scrollbar{
    display:none;
}

.ak-az-filter a{
    min-width:34px;
    height:34px;
    padding:0 8px;
    display:grid;
    place-items:center;
    flex-shrink:0;
    border-radius:8px;
    border:1px solid var(--ak-border);
    background:#12131a;
    color:#8f919c;
    font-size:10px;
    font-weight:800;
}

.ak-az-filter a:hover,
.ak-az-filter a.is-active{
    color:#fff;
    border-color:transparent;
    background:var(--ak-primary);
}

.ak-browse-results-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    margin:18px 0;
}

.ak-browse-results-head h2{
    margin:3px 0 0;
    font-size:25px;
}

.ak-result-count{
    color:#777985;
    font-size:11px;
}

.ak-pagination{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:6px;
    margin-top:40px;
}

.ak-pagination .page-numbers{
    min-width:38px;
    height:38px;
    padding:0 10px;
    display:grid;
    place-items:center;
    border-radius:9px;
    border:1px solid var(--ak-border);
    background:var(--ak-card);
    color:#999ba6;
    font-size:11px;
    font-weight:750;
}

.ak-pagination .page-numbers:hover{
    color:#fff;
    background:#20212a;
}

.ak-pagination .current{
    color:#fff;
    border-color:transparent;
    background:var(--ak-primary);
}

.ak-browse-empty{
    margin-top:20px;
    padding:80px 20px;
}

.ak-browse-empty .ak-btn{
    margin-top:13px;
}

.ak-empty-icon{
    margin-bottom:10px;
    font-size:35px;
}


/* Browse tablet */

@media(max-width:1050px){

    .ak-filter-grid{
        grid-template-columns:
            repeat(3,minmax(0,1fr));
    }
}


/* Browse mobile */

@media(max-width:760px){

    .ak-browse-heading{
        padding:35px 0 20px;
    }

    .ak-browse-heading h1{
        font-size:31px;
        letter-spacing:-1px;
    }

    .ak-browse-filter{
        padding:12px;
        border-radius:14px;
    }

    .ak-filter-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .ak-filter-action{
        grid-column:1/-1;
    }

    .ak-filter-action .ak-btn{
        width:100%;
    }

    .ak-browse-results-head h2{
        font-size:20px;
    }
}
/* =========================================
   PAGE BANNERS
========================================= */

.ak-page-banner{
    padding:60px 0 25px;
}

.ak-page-banner h1{
    margin:4px 0;
    font-size:40px;
    letter-spacing:-1.5px;
}

.ak-page-banner p{
    margin:5px 0 0;
    color:var(--ak-muted);
    font-size:13px;
}


/* Search */

.ak-big-search{
    max-width:850px;
    height:60px;
    margin-bottom:35px;
    display:flex;
    align-items:center;
    gap:8px;
    padding:7px 7px 7px 17px;
    border:1px solid var(--ak-border);
    border-radius:16px;
    background:var(--ak-card);
}

.ak-big-search > span{
    color:#7c7e89;
    font-size:25px;
}

.ak-big-search input{
    min-width:0;
    flex:1;
    height:100%;
    border:0;
    outline:0;
    background:transparent;
    color:#fff;
}

.ak-big-search button{
    border:0;
}


/* A-Z */

.ak-az-large{
    display:flex;
    gap:6px;
    overflow-x:auto;
    padding-bottom:15px;
    scrollbar-width:none;
}

.ak-az-large::-webkit-scrollbar{
    display:none;
}

.ak-az-large a{
    min-width:39px;
    height:39px;
    display:grid;
    place-items:center;
    flex-shrink:0;
    border:1px solid var(--ak-border);
    border-radius:10px;
    background:var(--ak-card);
    color:#8d8f9a;
    font-size:11px;
    font-weight:850;
}

.ak-az-large a:hover,
.ak-az-large a.is-active{
    color:#fff;
    border-color:transparent;
    background:var(--ak-primary);
}

.ak-directory-head{
    margin:25px 0 15px;
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
}

.ak-directory-head h2{
    margin:2px 0 0;
    font-size:26px;
}

.ak-directory-head > span{
    color:#747681;
    font-size:10px;
}

.ak-directory-list{
    display:grid;
    grid-template-columns:
        repeat(2,minmax(0,1fr));
    gap:8px;
}

.ak-directory-item{
    min-width:0;
    display:flex;
    align-items:center;
    gap:12px;
    padding:8px;
    border:1px solid var(--ak-border);
    border-radius:13px;
    background:var(--ak-card);
}

.ak-directory-item:hover{
    background:var(--ak-card-2);
    border-color:rgba(255,95,145,.3);
}

.ak-directory-poster{
    width:48px;
    height:65px;
    flex-shrink:0;
    overflow:hidden;
    border-radius:7px;
    background:#202129;
}

.ak-directory-poster img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.ak-directory-info{
    min-width:0;
    flex:1;
}

.ak-directory-info strong{
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:12px;
}

.ak-directory-info div{
    display:flex;
    gap:8px;
    margin-top:4px;
    color:#777985;
    font-size:9px;
}

.ak-directory-badges{
    display:flex;
    gap:4px;
}

.ak-directory-arrow{
    padding-right:5px;
    color:#6d6f7a;
    font-size:22px;
}


/* Schedule */

.ak-schedule-days{
    display:grid;
    gap:15px;
}

.ak-schedule-day{
    overflow:hidden;
    border:1px solid var(--ak-border);
    border-radius:17px;
    background:var(--ak-card);
}

.ak-schedule-day.is-today{
    border-color:rgba(255,95,145,.35);
}

.ak-schedule-day-head{
    min-height:70px;
    display:flex;
    align-items:center;
    gap:14px;
    padding:10px 15px;
    border-bottom:1px solid var(--ak-border);
}

.ak-schedule-day-head > div{
    width:47px;
    text-align:center;
}

.ak-schedule-day-head > div span{
    display:block;
    color:#858793;
    font-size:9px;
    text-transform:uppercase;
}

.ak-schedule-day-head > div strong{
    display:block;
    font-size:21px;
}

.ak-schedule-day-head h2{
    margin:0;
    font-size:17px;
}

.ak-today{
    margin-left:auto;
    padding:4px 8px;
    border-radius:7px;
    background:var(--ak-primary);
    color:#fff;
    font-size:9px;
    font-weight:800;
}

.ak-schedule-item{
    min-height:65px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:8px 14px;
    border-bottom:1px solid rgba(255,255,255,.045);
}

.ak-schedule-item:last-child{
    border-bottom:0;
}

.ak-schedule-item:hover{
    background:#191a22;
}

.ak-schedule-poster{
    width:38px;
    height:50px;
    overflow:hidden;
    flex-shrink:0;
    border-radius:6px;
    background:#22232b;
}

.ak-schedule-poster img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.ak-schedule-info{
    min-width:0;
    flex:1;
}

.ak-schedule-info strong{
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:12px;
}

.ak-schedule-info span{
    display:block;
    margin-top:2px;
    color:#777985;
    font-size:9px;
}

.ak-schedule-time{
    color:#a6a7b0;
    font-size:10px;
}

.ak-schedule-play{
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#22232b;
    color:var(--ak-primary);
    font-size:9px;
}

.ak-schedule-empty{
    padding:25px 15px;
    color:#70727d;
    font-size:11px;
}


/* Calendar */

.ak-calendar-nav{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:15px;
    margin-bottom:15px;
}

.ak-calendar-nav a{
    padding:8px 11px;
    border:1px solid var(--ak-border);
    border-radius:9px;
    background:var(--ak-card);
    color:#a2a4ad;
    font-size:10px;
}

.ak-calendar-nav strong{
    font-size:14px;
}

.ak-calendar{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    overflow:hidden;
    border-top:1px solid var(--ak-border);
    border-left:1px solid var(--ak-border);
    border-radius:15px;
}

.ak-calendar-weekday{
    padding:11px 7px;
    text-align:center;
    border-right:1px solid var(--ak-border);
    border-bottom:1px solid var(--ak-border);
    background:#15161d;
    color:#777985;
    font-size:9px;
    font-weight:850;
}

.ak-calendar-cell{
    min-height:145px;
    padding:8px;
    border-right:1px solid var(--ak-border);
    border-bottom:1px solid var(--ak-border);
    background:#101117;
}

.ak-calendar-cell.is-empty{
    background:#0c0d11;
}

.ak-calendar-cell.is-today{
    background:rgba(255,95,145,.055);
    box-shadow:
        inset 0 0 0 1px
        rgba(255,95,145,.25);
}

.ak-calendar-date{
    width:26px;
    height:26px;
    display:grid;
    place-items:center;
    margin-bottom:6px;
    border-radius:7px;
    color:#aaaab4;
    font-size:10px;
    font-weight:800;
}

.ak-calendar-cell.is-today
.ak-calendar-date{
    color:#fff;
    background:var(--ak-primary);
}

.ak-calendar-releases{
    display:grid;
    gap:4px;
}

.ak-calendar-releases > a{
    min-width:0;
    padding:5px 6px;
    border-radius:6px;
    background:#1c1d25;
    font-size:8px;
}

.ak-calendar-releases > a:hover{
    background:#252630;
}

.ak-calendar-releases > a span{
    display:block;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
}

.ak-calendar-releases > a small{
    color:var(--ak-primary);
    font-size:7px;
    font-weight:800;
}

.ak-calendar-more{
    color:#71737e;
    font-size:8px;
}


/* Responsive */

@media(max-width:760px){

    .ak-page-banner{
        padding:35px 0 15px;
    }

    .ak-page-banner h1{
        font-size:30px;
    }

    .ak-directory-list{
        grid-template-columns:1fr;
    }

    .ak-directory-badges{
        display:none;
    }

    .ak-schedule-time{
        display:none;
    }

    .ak-calendar{
        min-width:780px;
    }

    .ak-calendar-page
    .ak-section
    .ak-container{
        overflow-x:auto;
    }
}
/* =========================================
   STREAMING HOMEPAGE
========================================= */

.ak-latest-grid{
    display:grid;
    grid-template-columns:
        repeat(4,minmax(0,1fr));
    gap:18px;
}

.ak-latest-card{
    min-width:0;
}

.ak-latest-image{
    position:relative;
    display:block;
    aspect-ratio:16/9;
    overflow:hidden;
    border-radius:15px;
    background:var(--ak-card);
    border:1px solid var(--ak-border);
}

.ak-latest-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .35s;
}

.ak-latest-card:hover
.ak-latest-image img{
    transform:scale(1.05);
}

.ak-latest-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            0deg,
            rgba(0,0,0,.72),
            transparent 55%
        );
}

.ak-latest-play{
    position:absolute;
    top:50%;
    left:50%;
    width:45px;
    height:45px;
    display:grid;
    place-items:center;
    padding-left:3px;
    border-radius:50%;
    background:#fff;
    color:#111;
    transform:
        translate(-50%,-40%)
        scale(.8);
    opacity:0;
    transition:.2s;
}

.ak-latest-card:hover
.ak-latest-play{
    opacity:1;
    transform:
        translate(-50%,-50%)
        scale(1);
}

.ak-latest-badges{
    position:absolute;
    left:8px;
    bottom:8px;
    display:flex;
    gap:4px;
}

.ak-latest-content{
    padding:9px 3px 0;
}

.ak-latest-content h3{
    margin:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:13px;
}

.ak-latest-content h3 a:hover{
    color:var(--ak-primary);
}

.ak-latest-meta{
    display:flex;
    align-items:center;
    gap:7px;
    margin-top:5px;
    color:#777985;
    font-size:9px;
}

.ak-latest-meta a{
    color:var(--ak-primary);
    font-weight:800;
}


/* Trending */

.ak-trending-row{
    display:flex;
    gap:13px;
    overflow-x:auto;
    padding:0 0 12px;
    scroll-snap-type:x mandatory;
    scrollbar-width:thin;
}

.ak-trending-item{
    min-width:190px;
    display:flex;
    align-items:flex-end;
    scroll-snap-align:start;
}

.ak-trending-rank{
    width:42px;
    padding-bottom:48px;
    color:rgba(255,255,255,.14);
    font-size:37px;
    line-height:1;
    font-weight:950;
    writing-mode:vertical-rl;
    transform:rotate(180deg);
}

.ak-trending-card{
    width:148px;
}


/* Genre */

.ak-genre-grid{
    display:grid;
    grid-template-columns:
        repeat(5,minmax(0,1fr));
    gap:9px;
}

.ak-genre-box{
    min-height:83px;
    position:relative;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:14px 45px 14px 16px;
    border:1px solid var(--ak-border);
    border-radius:14px;
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(255,95,145,.11),
            transparent 55%
        ),
        var(--ak-card);
    transition:.2s;
}

.ak-genre-box:hover{
    transform:translateY(-2px);
    border-color:rgba(255,95,145,.3);
}

.ak-genre-box strong{
    font-size:13px;
}

.ak-genre-box span{
    margin-top:3px;
    color:#777985;
    font-size:9px;
}

.ak-genre-box i{
    position:absolute;
    right:15px;
    font-style:normal;
    color:var(--ak-primary);
}


/* Languages */

.ak-language-grid{
    display:grid;
    grid-template-columns:
        repeat(4,minmax(0,1fr));
    gap:9px;
}

.ak-language-card{
    min-width:0;
    display:flex;
    align-items:center;
    gap:11px;
    padding:11px;
    border:1px solid var(--ak-border);
    border-radius:13px;
    background:var(--ak-card);
}

.ak-language-card:hover{
    background:var(--ak-card-2);
    border-color:rgba(255,95,145,.25);
}

.ak-language-letter{
    width:39px;
    height:39px;
    flex-shrink:0;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:
        linear-gradient(
            135deg,
            rgba(255,95,145,.2),
            rgba(165,107,255,.2)
        );
    color:var(--ak-primary);
    font-weight:900;
}

.ak-language-card > div{
    min-width:0;
    flex:1;
}

.ak-language-card strong{
    display:block;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
    font-size:11px;
}

.ak-language-card small{
    display:block;
    margin-top:2px;
    color:#737580;
    font-size:8px;
}

.ak-language-arrow{
    color:#666873;
    font-size:20px;
}


/* Random */

.ak-random-box{
    display:flex;
    align-items:center;
    gap:18px;
    padding:28px 30px;
    overflow:hidden;
    border:1px solid var(--ak-border);
    border-radius:20px;
    background:
        radial-gradient(
            circle at 80% 0,
            rgba(165,107,255,.15),
            transparent 35%
        ),
        radial-gradient(
            circle at 20% 100%,
            rgba(255,95,145,.1),
            transparent 35%
        ),
        var(--ak-card);
}

.ak-random-icon{
    width:58px;
    height:58px;
    flex-shrink:0;
    display:grid;
    place-items:center;
    border-radius:17px;
    background:
        linear-gradient(
            135deg,
            var(--ak-primary),
            var(--ak-primary-2)
        );
    font-size:25px;
}

.ak-random-content{
    flex:1;
}

.ak-random-content h2{
    margin:2px 0;
    font-size:22px;
}

.ak-random-content p{
    margin:0;
    color:var(--ak-muted);
    font-size:11px;
}


/* Mobile bottom navigation */

.ak-mobile-bottom-nav{
    display:none;
}


@media(max-width:1100px){

    .ak-latest-grid{
        grid-template-columns:
            repeat(3,minmax(0,1fr));
    }

    .ak-genre-grid{
        grid-template-columns:
            repeat(4,minmax(0,1fr));
    }

    .ak-language-grid{
        grid-template-columns:
            repeat(3,minmax(0,1fr));
    }
}


@media(max-width:760px){

    body{
        padding-bottom:65px;
    }

    .ak-latest-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
        gap:16px 9px;
    }

    .ak-latest-image{
        border-radius:11px;
    }

    .ak-latest-play{
        display:none;
    }

    .ak-latest-content h3{
        font-size:11px;
    }

    .ak-trending-item{
        min-width:148px;
    }

    .ak-trending-rank{
        width:32px;
        font-size:28px;
    }

    .ak-trending-card{
        width:115px;
    }

    .ak-genre-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .ak-genre-box{
        min-height:70px;
    }

    .ak-language-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .ak-language-card{
        padding:8px;
    }

    .ak-language-letter{
        width:34px;
        height:34px;
    }

    .ak-random-box{
        display:grid;
        grid-template-columns:auto 1fr;
        padding:20px;
    }

    .ak-random-content h2{
        font-size:18px;
    }

    .ak-random-box .ak-btn{
        grid-column:1/-1;
    }

    .ak-mobile-bottom-nav{
        position:fixed;
        z-index:1800;
        left:8px;
        right:8px;
        bottom:8px;
        height:57px;
        display:grid;
        grid-template-columns:
            repeat(5,1fr);
        align-items:center;
        padding:4px 5px;
        border:1px solid rgba(255,255,255,.1);
        border-radius:17px;
        background:rgba(15,16,22,.94);
        backdrop-filter:blur(20px);
        box-shadow:
            0 10px 35px
            rgba(0,0,0,.5);
    }

    .ak-mobile-bottom-nav a{
        height:45px;
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:1px;
        color:#7e808c;
    }

    .ak-mobile-bottom-nav a > span{
        font-size:18px;
        line-height:1;
    }

    .ak-mobile-bottom-nav small{
        font-size:7px;
        font-weight:700;
    }

    .ak-mobile-bottom-nav
    .ak-mobile-random{
        width:45px;
        height:45px;
        margin:auto;
        border-radius:14px;
        background:
            linear-gradient(
                135deg,
                var(--ak-primary),
                var(--ak-primary-2)
            );
        color:#fff;
        transform:translateY(-8px);
        box-shadow:
            0 7px 22px
            rgba(255,95,145,.3);
    }
}
/* =========================================================
   ANINEKO WATCH / EPISODE PLAYER
   Desktop + Tablet + Mobile
========================================================= */

.ak-watch-page{
    width:100%;
    min-height:100vh;
    padding:24px 0 70px;
    background:#090a0f;
}

.ak-watch-shell{
    width:min(1600px, calc(100% - 32px));
    margin:0 auto;
    display:grid;
    grid-template-columns:minmax(0, 1fr) 350px;
    gap:16px;
    align-items:start;
}


/* =========================================================
   PLAYER
========================================================= */

.ak-player-column{
    min-width:0;
}

.ak-player-wrap{
    position:relative;
    width:100%;
    aspect-ratio:16 / 9;
    overflow:hidden;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.08);
    background:#000;
    box-shadow:0 18px 50px rgba(0,0,0,.35);
}

.ak-player-wrap iframe{
    position:absolute;
    inset:0;
    display:block;
    width:100%;
    height:100%;
    border:0;
    background:#000;
}

.ak-player-empty{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:30px;
    text-align:center;
    background:
        radial-gradient(
            circle at center,
            rgba(255,95,145,.08),
            transparent 45%
        ),
        #050506;
}

.ak-player-empty strong{
    color:#fff;
    font-size:20px;
}

.ak-player-empty p{
    max-width:400px;
    margin:8px auto 0;
    color:#777985;
    font-size:12px;
    line-height:1.7;
}


/* =========================================================
   PLAYER TOOLBAR
========================================================= */

.ak-watch-toolbar{
    min-height:52px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:8px 12px;
    margin-top:8px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:12px;
    background:#111218;
}

.ak-watch-toolbar-left,
.ak-watch-toolbar-right{
    display:flex;
    align-items:center;
    gap:6px;
}

.ak-watch-toolbar button,
.ak-watch-toolbar a{
    height:34px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:5px;
    padding:0 11px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:8px;
    outline:0;
    background:#191a21;
    color:#9c9ea8;
    font-family:inherit;
    font-size:10px;
    font-weight:700;
    cursor:pointer;
    transition:
        background .2s,
        color .2s,
        border-color .2s;
}

.ak-watch-toolbar button:hover,
.ak-watch-toolbar a:hover{
    color:#fff;
    background:#23242d;
    border-color:rgba(255,95,145,.3);
}


/* =========================================================
   WATCH HEADING
========================================================= */

.ak-watch-heading{
    display:flex;
    align-items:center;
    gap:14px;
    padding:18px 3px;
}

.ak-watch-mini-poster{
    width:50px;
    height:68px;
    flex:0 0 50px;
    overflow:hidden;
    border-radius:8px;
    background:#1b1c23;
}

.ak-watch-mini-poster img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}

.ak-watch-heading > div{
    min-width:0;
}

.ak-watch-heading h1{
    max-width:800px;
    margin:3px 0 4px;
    overflow:hidden;
    color:#fff;
    font-size:20px;
    font-weight:800;
    line-height:1.25;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.ak-watch-heading p{
    margin:0;
    color:#797b86;
    font-size:10px;
}


/* =========================================================
   SERVER PANEL
========================================================= */

.ak-server-panel{
    overflow:hidden;
    margin-top:4px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:16px;
    background:#111218;
}

.ak-server-panel-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:16px 18px;
    border-bottom:1px solid rgba(255,255,255,.06);
}

.ak-server-panel-head h2{
    margin:2px 0 0;
    color:#fff;
    font-size:15px;
}

.ak-server-panel-head > span{
    color:#6f717c;
    font-size:9px;
}

.ak-audio-tabs{
    display:flex;
    align-items:center;
    gap:6px;
    padding:12px 16px 0;
}

.ak-audio-tabs button{
    height:33px;
    padding:0 14px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:8px;
    background:#191a21;
    color:#81838e;
    font-family:inherit;
    font-size:9px;
    font-weight:850;
    cursor:pointer;
}

.ak-audio-tabs button:hover{
    color:#fff;
}

.ak-audio-tabs button.is-active{
    color:#fff;
    border-color:transparent;
    background:var(--ak-primary, #ff5f91);
}

.ak-server-groups{
    padding:14px 16px 16px;
}

.ak-audio-group[hidden]{
    display:none !important;
}

.ak-language-servers + .ak-language-servers{
    margin-top:15px;
}

.ak-server-language{
    margin-bottom:7px;
    color:#777985;
    font-size:9px;
    font-weight:800;
    letter-spacing:.6px;
    text-transform:uppercase;
}

.ak-server-buttons{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}

.ak-server-button{
    min-width:105px;
    min-height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    padding:7px 11px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:9px;
    outline:0;
    background:#191a21;
    color:#9a9ca6;
    font-family:inherit;
    cursor:pointer;
    transition:
        background .2s,
        color .2s,
        border-color .2s,
        transform .2s;
}

.ak-server-button:hover{
    color:#fff;
    border-color:rgba(255,95,145,.3);
    background:#22232c;
    transform:translateY(-1px);
}

.ak-server-button.is-active{
    color:#fff;
    border-color:rgba(255,95,145,.55);
    background:rgba(255,95,145,.13);
}

.ak-server-button > span{
    color:var(--ak-primary, #ff5f91);
    font-size:9px;
}

.ak-server-button strong{
    font-size:10px;
}

.ak-server-button small{
    padding:2px 4px;
    border-radius:4px;
    background:rgba(255,255,255,.06);
    color:#777985;
    font-size:7px;
}

.ak-no-servers{
    padding:25px 16px;
    color:#777985;
    text-align:center;
    font-size:11px;
}


/* =========================================================
   EPISODE SIDEBAR
========================================================= */

.ak-watch-sidebar{
    position:sticky;
    top:85px;
    min-width:0;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.07);
    border-radius:16px;
    background:#111218;
}

.ak-watch-sidebar-head{
    min-height:67px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:12px 14px;
    border-bottom:1px solid rgba(255,255,255,.06);
}

.ak-watch-sidebar-head > div{
    min-width:0;
}

.ak-watch-sidebar-head h2{
    max-width:245px;
    margin:2px 0 0;
    overflow:hidden;
    color:#fff;
    font-size:13px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.ak-watch-sidebar-head > span{
    min-width:27px;
    height:27px;
    display:grid;
    place-items:center;
    padding:0 6px;
    border-radius:7px;
    background:#1d1e26;
    color:#8a8c97;
    font-size:9px;
    font-weight:800;
}


/* Episode search */

.ak-episode-search{
    height:40px;
    display:flex;
    align-items:center;
    gap:6px;
    margin:10px;
    padding:0 10px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:9px;
    background:#0c0d12;
}

.ak-episode-search > span{
    color:#686a75;
    font-size:17px;
}

.ak-episode-search input{
    width:100%;
    height:100%;
    border:0;
    outline:0;
    background:transparent;
    color:#fff;
    font-family:inherit;
    font-size:10px;
}

.ak-episode-search input::placeholder{
    color:#565863;
}


/* Episode list */

.ak-watch-episode-list{
    max-height:calc(100vh - 235px);
    overflow-y:auto;
    overscroll-behavior:contain;
    padding:0 7px 8px;
}

.ak-watch-episode-list::-webkit-scrollbar{
    width:5px;
}

.ak-watch-episode-list::-webkit-scrollbar-track{
    background:transparent;
}

.ak-watch-episode-list::-webkit-scrollbar-thumb{
    border-radius:10px;
    background:#292a33;
}

.ak-watch-episode{
    min-height:53px;
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:4px;
    padding:6px 8px;
    border:1px solid transparent;
    border-radius:9px;
    color:#9b9da7;
    transition:.18s;
}

.ak-watch-episode:hover{
    color:#fff;
    background:#191a21;
}

.ak-watch-episode.is-current{
    color:#fff;
    border-color:rgba(255,95,145,.22);
    background:rgba(255,95,145,.09);
}

.ak-episode-number{
    width:35px;
    height:35px;
    flex:0 0 35px;
    display:grid;
    place-items:center;
    border-radius:8px;
    background:#1d1e25;
    color:#aaaab4;
    font-size:10px;
    font-weight:850;
}

.ak-watch-episode.is-current
.ak-episode-number{
    color:#fff;
    background:var(--ak-primary, #ff5f91);
}

.ak-watch-episode > div{
    min-width:0;
    flex:1;
}

.ak-watch-episode strong{
    display:block;
    overflow:hidden;
    font-size:10px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.ak-watch-episode small{
    display:block;
    margin-top:2px;
    color:#646671;
    font-size:8px;
}

.ak-now-playing{
    width:24px;
    height:24px;
    display:grid;
    place-items:center;
    flex:0 0 24px;
    border-radius:50%;
    color:var(--ak-primary, #ff5f91);
    background:rgba(255,95,145,.1);
    font-size:7px;
}


/* =========================================================
   LIGHTS OFF
========================================================= */

.ak-lights-overlay{
    position:fixed;
    z-index:1900;
    inset:0;
    visibility:hidden;
    background:rgba(0,0,0,.88);
    opacity:0;
    pointer-events:none;
    transition:opacity .2s;
}

body.ak-lights-off
.ak-lights-overlay{
    visibility:visible;
    opacity:1;
    pointer-events:auto;
}

body.ak-lights-off
.ak-player-wrap,
body.ak-lights-off
.ak-watch-toolbar{
    position:relative;
    z-index:1950;
}


/* =========================================================
   THEATER MODE
========================================================= */

body.ak-theater-mode
.ak-watch-shell{
    width:100%;
    max-width:none;
    display:block;
}

body.ak-theater-mode
.ak-player-wrap{
    width:100%;
    max-height:calc(100vh - 90px);
    border-radius:0;
}

body.ak-theater-mode
.ak-watch-sidebar{
    display:none;
}

body.ak-theater-mode
.ak-watch-heading,
body.ak-theater-mode
.ak-server-panel{
    width:min(1200px, calc(100% - 32px));
    margin-left:auto;
    margin-right:auto;
}

body.ak-theater-mode
.ak-watch-toolbar{
    border-left:0;
    border-right:0;
    border-radius:0;
}


/* =========================================================
   WATCH ERROR
========================================================= */

.ak-watch-error{
    min-height:65vh;
    display:flex;
    align-items:center;
    padding:60px 0;
}

.ak-watch-error .ak-empty-state{
    max-width:650px;
    margin:0 auto;
}


/* =========================================================
   LAPTOP / SMALL DESKTOP
========================================================= */

@media (max-width:1200px){

    .ak-watch-shell{
        grid-template-columns:minmax(0,1fr) 300px;
        gap:12px;
    }

    .ak-watch-sidebar-head h2{
        max-width:195px;
    }
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width:900px){

    .ak-watch-page{
        padding-top:12px;
    }

    .ak-watch-shell{
        width:min(100% - 20px, 900px);
        display:block;
    }

    .ak-watch-sidebar{
        position:relative;
        top:auto;
        margin-top:18px;
    }

    .ak-watch-episode-list{
        max-height:500px;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:5px;
        padding:0 10px 10px;
    }

    .ak-watch-episode{
        margin:0;
        border-color:rgba(255,255,255,.04);
        background:#15161c;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width:600px){

    .ak-watch-page{
        padding:0 0 85px;
    }

    .ak-watch-shell{
        width:100%;
        margin:0;
    }

    .ak-player-column{
        width:100%;
    }

    .ak-player-wrap{
        width:100%;
        aspect-ratio:16 / 9;
        border:0;
        border-radius:0;
        box-shadow:none;
    }

    .ak-watch-toolbar{
        min-height:45px;
        margin:0;
        padding:5px 8px;
        border-left:0;
        border-right:0;
        border-radius:0;
    }

    .ak-watch-toolbar button,
    .ak-watch-toolbar a{
        height:31px;
        padding:0 8px;
        font-size:8px;
    }

    .ak-watch-heading{
        gap:10px;
        padding:14px 12px;
    }

    .ak-watch-mini-poster{
        width:43px;
        height:59px;
        flex-basis:43px;
    }

    .ak-watch-heading h1{
        font-size:15px;
    }

    .ak-watch-heading p{
        font-size:9px;
    }

    .ak-server-panel{
        margin:0 10px;
        border-radius:12px;
    }

    .ak-server-panel-head{
        padding:12px;
    }

    .ak-server-panel-head h2{
        font-size:13px;
    }

    .ak-server-groups{
        padding:10px 11px 12px;
    }

    .ak-audio-tabs{
        padding:10px 11px 0;
    }

    .ak-server-buttons{
        display:grid;
        grid-template-columns:
            repeat(2,minmax(0,1fr));
        gap:6px;
    }

    .ak-server-button{
        width:100%;
        min-width:0;
        min-height:39px;
        padding:6px;
    }

    .ak-server-button strong{
        max-width:90px;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
        font-size:9px;
    }

    .ak-watch-sidebar{
        margin:12px 10px 0;
        border-radius:12px;
    }

    .ak-watch-sidebar-head{
        min-height:58px;
        padding:10px 11px;
    }

    .ak-watch-sidebar-head h2{
        max-width:230px;
        font-size:11px;
    }

    .ak-episode-search{
        margin:8px;
    }

    .ak-watch-episode-list{
        max-height:430px;
        display:grid;
        grid-template-columns:
            repeat(2,minmax(0,1fr));
        gap:5px;
        padding:0 8px 8px;
    }

    .ak-watch-episode{
        min-height:47px;
        gap:7px;
        padding:5px;
        border:1px solid rgba(255,255,255,.045);
        background:#15161c;
    }

    .ak-episode-number{
        width:31px;
        height:31px;
        flex-basis:31px;
        font-size:9px;
    }

    .ak-watch-episode strong{
        font-size:9px;
    }

    .ak-watch-episode small{
        font-size:7px;
    }

    .ak-now-playing{
        display:none;
    }

    body.ak-theater-mode
    .ak-player-wrap{
        aspect-ratio:16 / 9;
    }

    body.ak-theater-mode
    .ak-watch-heading,
    body.ak-theater-mode
    .ak-server-panel{
        width:auto;
        margin-left:10px;
        margin-right:10px;
    }
}


/* =========================================================
   VERY SMALL PHONES
========================================================= */

@media (max-width:390px){

    .ak-watch-toolbar-left{
        gap:3px;
    }

    .ak-watch-toolbar button,
    .ak-watch-toolbar a{
        padding:0 6px;
        font-size:7px;
    }

    .ak-server-buttons{
        grid-template-columns:1fr 1fr;
    }

    .ak-watch-episode-list{
        grid-template-columns:1fr;
    }

    .ak-watch-heading h1{
        max-width:250px;
    }
}
/* ==========================================
   ANINEKO WATCH PAGE - CORE LAYOUT
========================================== */

.ak-watch-page {
    width: 100% !important;
    min-height: 100vh;
    padding: 24px 0 80px !important;
    background: #090a0f;
}

.ak-watch-shell {
    width: calc(100% - 40px) !important;
    max-width: 1500px !important;
    margin: 0 auto !important;

    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 340px !important;
    gap: 18px !important;
    align-items: start !important;
}

.ak-player-column {
    min-width: 0 !important;
    width: 100% !important;
}

.ak-player-wrap {
    position: relative !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;

    overflow: hidden !important;

    background: #000 !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 14px !important;
}

.ak-player-wrap iframe {
    position: absolute !important;
    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    display: block !important;

    border: 0 !important;
    background: #000 !important;
}


/* controls */

.ak-watch-toolbar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    min-height: 52px !important;

    margin-top: 8px !important;
    padding: 8px 10px !important;

    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 10px !important;

    background: #111218 !important;
}

.ak-watch-toolbar-left,
.ak-watch-toolbar-right {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
}

.ak-watch-toolbar button,
.ak-watch-toolbar a {
    appearance: none !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 34px !important;

    padding: 0 12px !important;

    border: 1px solid rgba(255,255,255,.09) !important;
    border-radius: 8px !important;

    background: #1a1b22 !important;
    color: #fff !important;

    font: inherit !important;
    font-size: 11px !important;
    font-weight: 700 !important;

    text-decoration: none !important;
    cursor: pointer !important;
}


/* title */

.ak-watch-heading {
    display: flex !important;
    align-items: center !important;

    gap: 13px !important;
    padding: 16px 2px !important;
}

.ak-watch-mini-poster {
    display: block !important;

    width: 48px !important;
    height: 66px !important;
    flex: 0 0 48px !important;

    overflow: hidden !important;
    border-radius: 8px !important;
}

.ak-watch-mini-poster img {
    display: block !important;

    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;
}

.ak-watch-heading > div {
    min-width: 0 !important;
}

.ak-watch-heading h1 {
    margin: 3px 0 4px !important;

    color: #fff !important;

    font-size: 20px !important;
    line-height: 1.25 !important;
}

.ak-watch-heading p {
    margin: 0 !important;
    color: #7d7f89 !important;
    font-size: 11px !important;
}


/* servers */

.ak-server-panel {
    padding: 0 !important;

    overflow: hidden !important;

    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 14px !important;

    background: #111218 !important;
}

.ak-server-panel-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    padding: 15px 16px !important;

    border-bottom: 1px solid rgba(255,255,255,.06) !important;
}

.ak-server-panel-head h2 {
    margin: 3px 0 0 !important;
    color: #fff !important;
    font-size: 15px !important;
}

.ak-audio-tabs {
    display: flex !important;
    gap: 7px !important;
    padding: 12px 14px 0 !important;
}

.ak-audio-tabs button {
    appearance: none !important;

    padding: 8px 14px !important;

    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 8px !important;

    background: #1a1b22 !important;
    color: #aaa !important;

    cursor: pointer !important;
}

.ak-audio-tabs button.is-active {
    background: #ff5f91 !important;
    color: #fff !important;
}

.ak-server-groups {
    padding: 14px !important;
}

.ak-audio-group[hidden] {
    display: none !important;
}

.ak-server-language {
    margin: 10px 0 7px !important;

    color: #888a94 !important;

    font-size: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
}

.ak-server-buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
}

.ak-server-button {
    appearance: none !important;

    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;

    min-height: 40px !important;

    padding: 7px 12px !important;

    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 8px !important;

    background: #1a1b22 !important;
    color: #fff !important;

    cursor: pointer !important;
}

.ak-server-button.is-active {
    border-color: #ff5f91 !important;
    background: rgba(255,95,145,.15) !important;
}


/* sidebar */

.ak-watch-sidebar {
    position: sticky !important;
    top: 82px !important;

    overflow: hidden !important;

    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 14px !important;

    background: #111218 !important;
}

.ak-watch-sidebar-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    padding: 13px !important;

    border-bottom: 1px solid rgba(255,255,255,.06) !important;
}

.ak-watch-sidebar-head h2 {
    margin: 3px 0 0 !important;
    color: #fff !important;
    font-size: 13px !important;
}

.ak-episode-search {
    display: flex !important;
    align-items: center !important;

    gap: 7px !important;

    margin: 10px !important;
    padding: 0 10px !important;

    height: 40px !important;

    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 8px !important;

    background: #090a0f !important;
}

.ak-episode-search input {
    width: 100% !important;
    height: 100% !important;

    border: 0 !important;
    outline: 0 !important;

    background: transparent !important;
    color: #fff !important;
}

.ak-watch-episode-list {
    max-height: 650px !important;

    overflow-y: auto !important;

    padding: 0 8px 8px !important;
}

.ak-watch-episode {
    display: flex !important;
    align-items: center !important;

    gap: 9px !important;

    min-height: 50px !important;

    margin-bottom: 4px !important;
    padding: 6px 8px !important;

    border-radius: 8px !important;

    color: #aaa !important;
    text-decoration: none !important;
}

.ak-watch-episode:hover {
    background: #191a21 !important;
    color: #fff !important;
}

.ak-watch-episode.is-current {
    background: rgba(255,95,145,.11) !important;
    color: #fff !important;
}

.ak-episode-number {
    width: 34px !important;
    height: 34px !important;
    flex: 0 0 34px !important;

    display: grid !important;
    place-items: center !important;

    border-radius: 7px !important;

    background: #1d1e25 !important;

    font-size: 10px !important;
    font-weight: 800 !important;
}

.ak-watch-episode.is-current .ak-episode-number {
    background: #ff5f91 !important;
    color: #fff !important;
}


/* =========================
   TABLET
========================= */

@media (max-width: 950px) {

    .ak-watch-shell {
        width: calc(100% - 20px) !important;
        display: block !important;
    }

    .ak-watch-sidebar {
        position: static !important;
        margin-top: 15px !important;
    }

    .ak-watch-episode-list {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
        gap: 5px !important;

        max-height: 500px !important;
    }

    .ak-watch-episode {
        margin: 0 !important;
        background: #15161c !important;
    }
}


/* =========================
   MOBILE
========================= */

@media (max-width: 600px) {

    .ak-watch-page {
        padding-top: 0 !important;
    }

    .ak-watch-shell {
        width: 100% !important;
    }

    .ak-player-wrap {
        border-left: 0 !important;
        border-right: 0 !important;
        border-radius: 0 !important;
    }

    .ak-watch-toolbar {
        margin-top: 0 !important;

        border-left: 0 !important;
        border-right: 0 !important;
        border-radius: 0 !important;
    }

    .ak-watch-toolbar button,
    .ak-watch-toolbar a {
        min-height: 31px !important;
        padding: 0 8px !important;
        font-size: 9px !important;
    }

    .ak-watch-heading {
        padding: 12px !important;
    }

    .ak-watch-heading h1 {
        font-size: 16px !important;
    }

    .ak-watch-mini-poster {
        width: 43px !important;
        height: 59px !important;
        flex-basis: 43px !important;
    }

    .ak-server-panel {
        margin: 0 10px !important;
        border-radius: 12px !important;
    }

    .ak-server-buttons {
        display: grid !important;
        grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    }

    .ak-server-button {
        width: 100% !important;
        justify-content: center !important;
    }

    .ak-watch-sidebar {
        margin: 12px 10px 0 !important;
        border-radius: 12px !important;
    }

    .ak-watch-episode-list {
        grid-template-columns: repeat(2,minmax(0,1fr)) !important;
        max-height: 430px !important;
    }
}


@media (max-width: 380px) {

    .ak-watch-episode-list {
        grid-template-columns: 1fr !important;
    }
}
.ak-episode-no-results{
    grid-column:1 / -1;
    padding:35px 15px;
    text-align:center;
}

.ak-episode-no-results[hidden]{
    display:none !important;
}

.ak-episode-no-results strong{
    display:block;
    color:#fff;
    font-size:12px;
}

.ak-episode-no-results span{
    display:block;
    margin-top:4px;
    color:#686a75;
    font-size:9px;
}

.ak-text-button{
    padding:7px 10px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:8px;
    background:#15161c;
    color:#858792;
    font:inherit;
    font-size:9px;
    font-weight:700;
    cursor:pointer;
}

.ak-text-button:hover{
    color:#fff;
    border-color:rgba(255,95,145,.3);
}
/* =========================================================
   SINGLE ANIME
========================================================= */

.ak-single-anime{
    min-height:100vh;
    background:#090a0f;
}

.ak-single-hero{
    position:relative;
    min-height:510px;
    overflow:hidden;
}

.ak-single-hero-bg{
    position:absolute;
    inset:0;
    background-image:var(--single-bg);
    background-position:center 20%;
    background-size:cover;
    opacity:.36;
    filter:saturate(.8);
}

.ak-single-hero-shade{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            90deg,
            rgba(9,10,15,.98) 0%,
            rgba(9,10,15,.82) 42%,
            rgba(9,10,15,.4) 75%,
            rgba(9,10,15,.75) 100%
        ),
        linear-gradient(
            0deg,
            #090a0f 0%,
            transparent 55%
        );
}

.ak-single-hero-inner{
    position:relative;
    z-index:2;
    min-height:510px;
    display:flex;
    align-items:flex-end;
    gap:30px;
    padding-top:80px;
    padding-bottom:42px;
}

.ak-single-poster{
    width:220px;
    flex:0 0 220px;
}

.ak-single-poster img{
    display:block;
    width:100%;
    aspect-ratio:2/3;
    object-fit:cover;
    border-radius:16px;
    box-shadow:
        0 25px 60px
        rgba(0,0,0,.55);
}

.ak-single-info{
    max-width:790px;
    min-width:0;
    padding-bottom:5px;
}

.ak-single-info h1{
    margin:5px 0 4px;
    color:#fff;
    font-size:clamp(30px,4vw,52px);
    line-height:1.08;
    letter-spacing:-1.5px;
}

.ak-single-alt{
    margin-bottom:13px;
    color:#8d8f9a;
    font-size:12px;
}

.ak-single-meta{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:7px;
    margin-bottom:13px;
}

.ak-single-meta > span{
    padding:5px 8px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:6px;
    background:rgba(18,19,25,.65);
    color:#c7c8ce;
    font-size:9px;
    font-weight:750;
}

.ak-single-meta
.ak-single-score{
    color:#ffd76a;
}

.ak-single-description{
    max-width:720px;
    margin-top:15px;
    color:#a0a2ac;
    font-size:12px;
    line-height:1.8;
}

.ak-single-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:20px;
}

.ak-single-actions
[data-watchlist-toggle].is-active{
    border-color:rgba(255,95,145,.4);
    color:#ff79a3;
    background:rgba(255,95,145,.1);
}

.ak-single-stream-counts{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:6px;
    margin-top:13px;
}

.ak-single-stream-counts > span:not(.ak-badge){
    color:#747681;
    font-size:9px;
}


/* =========================================================
   SINGLE CONTENT
========================================================= */

.ak-single-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 270px;
    gap:25px;
    align-items:start;
    padding-top:20px;
    padding-bottom:70px;
}

.ak-single-main{
    min-width:0;
}

.ak-single-section{
    margin-bottom:48px;
}


/* =========================================================
   EPISODE TOOLS
========================================================= */

.ak-single-episode-tools{
    display:flex;
    align-items:center;
    gap:7px;
}

.ak-single-episode-tools select{
    height:38px;
    min-width:120px;
    padding:0 30px 0 10px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:8px;
    outline:0;
    background:#14151b;
    color:#d1d2d7;
    font:inherit;
    font-size:9px;
}

.ak-single-episode-search{
    width:180px;
    height:38px;
    display:flex;
    align-items:center;
    gap:6px;
    padding:0 10px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:8px;
    background:#14151b;
}

.ak-single-episode-search span{
    color:#656772;
}

.ak-single-episode-search input{
    width:100%;
    height:100%;
    border:0;
    outline:0;
    background:transparent;
    color:#fff;
    font:inherit;
    font-size:9px;
}

.ak-single-episode-search
input::placeholder{
    color:#5f616c;
}


/* =========================================================
   EPISODE GRID
========================================================= */

.ak-single-episode-grid{
    display:grid;
    grid-template-columns:
        repeat(3,minmax(0,1fr));
    gap:7px;
}

.ak-single-episode-card{
    min-width:0;
    min-height:67px;
    display:flex;
    align-items:center;
    gap:9px;
    padding:8px;
    border:1px solid rgba(255,255,255,.065);
    border-radius:10px;
    background:#111218;
    color:#a8aab3;
    transition:
        transform .18s,
        border-color .18s,
        background .18s;
}

.ak-single-episode-card:hover{
    transform:translateY(-1px);
    border-color:rgba(255,95,145,.28);
    background:#17181f;
    color:#fff;
}

.ak-single-episode-card[hidden]{
    display:none !important;
}

.ak-single-ep-number{
    width:46px;
    height:46px;
    flex:0 0 46px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    border-radius:8px;
    background:#1b1c23;
}

.ak-single-ep-number span{
    color:#666873;
    font-size:6px;
    font-weight:900;
}

.ak-single-ep-number strong{
    margin-top:1px;
    color:#fff;
    font-size:13px;
}

.ak-single-ep-info{
    min-width:0;
    flex:1;
}

.ak-single-ep-info > strong{
    display:block;
    overflow:hidden;
    color:#dddde2;
    font-size:9px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.ak-single-ep-info small{
    display:block;
    margin-top:3px;
    overflow:hidden;
    color:#666873;
    font-size:7px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.ak-single-ep-badges{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:3px;
}

.ak-single-ep-badges
.ak-badge{
    font-size:6px;
}

.ak-single-ep-play{
    width:25px;
    height:25px;
    flex:0 0 25px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#1e1f27;
    color:#777985;
    font-size:7px;
}

.ak-single-episode-card:hover
.ak-single-ep-play{
    background:#ff5f91;
    color:#fff;
}

.ak-single-no-episodes{
    grid-column:1/-1;
    padding:45px 15px;
    text-align:center;
}

.ak-single-no-episodes[hidden]{
    display:none !important;
}

.ak-single-no-episodes strong{
    display:block;
    color:#fff;
    font-size:12px;
}

.ak-single-no-episodes span{
    display:block;
    margin-top:5px;
    color:#696b75;
    font-size:9px;
}


/* =========================================================
   INFORMATION SIDEBAR
========================================================= */

.ak-single-sidebar{
    position:sticky;
    top:85px;
}

.ak-single-side-card{
    padding:17px;
    margin-bottom:12px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:13px;
    background:#111218;
}

.ak-single-side-card h3{
    margin:0 0 14px;
    color:#fff;
    font-size:13px;
}

.ak-single-side-card dl{
    margin:0;
}

.ak-single-side-card dl > div{
    display:flex;
    justify-content:space-between;
    gap:15px;
    padding:8px 0;
    border-bottom:1px solid rgba(255,255,255,.05);
}

.ak-single-side-card dl > div:last-child{
    border-bottom:0;
}

.ak-single-side-card dt{
    color:#6e707b;
    font-size:9px;
}

.ak-single-side-card dd{
    margin:0;
    color:#c0c1c8;
    font-size:9px;
    text-align:right;
}

.ak-single-side-genres{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
}

.ak-single-side-genres a{
    padding:6px 8px;
    border-radius:6px;
    background:#1a1b22;
    color:#94969f;
    font-size:8px;
}

.ak-single-side-genres a:hover{
    color:#fff;
    background:rgba(255,95,145,.12);
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:1000px){

    .ak-single-layout{
        grid-template-columns:1fr;
    }

    .ak-single-sidebar{
        position:static;
        display:grid;
        grid-template-columns:
            repeat(2,minmax(0,1fr));
        gap:10px;
    }

    .ak-single-side-card{
        margin:0;
    }

    .ak-single-episode-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:650px){

    .ak-single-hero{
        min-height:auto;
    }

    .ak-single-hero-bg{
        background-position:center top;
    }

    .ak-single-hero-shade{
        background:
            linear-gradient(
                0deg,
                #090a0f 0%,
                rgba(9,10,15,.9) 52%,
                rgba(9,10,15,.45) 100%
            );
    }

    .ak-single-hero-inner{
        min-height:auto;
        display:block;
        padding-top:170px;
        padding-bottom:25px;
    }

    .ak-single-poster{
        width:115px;
        margin-bottom:15px;
    }

    .ak-single-poster img{
        border-radius:11px;
    }

    .ak-single-info h1{
        font-size:27px;
        letter-spacing:-.6px;
    }

    .ak-single-description{
        font-size:11px;
        line-height:1.7;
    }

    .ak-single-actions{
        display:grid;
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .ak-single-actions .ak-btn{
        width:100%;
    }

    .ak-single-layout{
        width:calc(100% - 20px);
        padding-top:8px;
    }

    .ak-single-section{
        margin-bottom:35px;
    }

    .ak-single-section
    .ak-section-head{
        align-items:flex-start;
        gap:12px;
    }

    .ak-single-episode-tools{
        width:100%;
        display:grid;
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .ak-single-episode-tools select,
    .ak-single-episode-search{
        width:100%;
        min-width:0;
    }

    .ak-single-episode-grid{
        grid-template-columns:1fr;
        gap:5px;
    }

    .ak-single-episode-card{
        min-height:61px;
    }

    .ak-single-sidebar{
        grid-template-columns:1fr;
    }
}
/* =====================================================
   BROWSE
===================================================== */

.ak-browse-page{
    min-height:100vh;
    padding:45px 0 80px;
    background:#090a0f;
}

.ak-browse-header{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:25px;
}

.ak-browse-header h1{
    margin:3px 0 6px;
    color:#fff;
    font-size:32px;
    line-height:1.15;
}

.ak-browse-header p{
    margin:0;
    color:#737580;
    font-size:11px;
}

.ak-browse-layout{
    display:grid;
    grid-template-columns:230px minmax(0,1fr);
    gap:22px;
    align-items:start;
}


/* FILTERS */

.ak-filter-sidebar{
    position:sticky;
    top:85px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:13px;
    background:#111218;
}

.ak-filter-mobile-head{
    display:none;
}

.ak-filter-form{
    padding:15px;
}

.ak-filter-block{
    margin-bottom:13px;
}

.ak-filter-block > label{
    display:block;
    margin-bottom:6px;
    color:#777985;
    font-size:8px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
}

.ak-filter-block select,
.ak-filter-search{
    width:100%;
    height:40px;
    border:1px solid rgba(255,255,255,.075);
    border-radius:8px;
    background:#17181f;
}

.ak-filter-block select{
    padding:0 9px;
    outline:0;
    color:#c8c9cf;
    font:inherit;
    font-size:9px;
}

.ak-filter-search{
    display:flex;
    align-items:center;
    gap:7px;
    padding:0 10px;
}

.ak-filter-search span{
    color:#686a75;
}

.ak-filter-search input{
    width:100%;
    height:100%;
    border:0;
    outline:0;
    background:transparent;
    color:#fff;
    font:inherit;
    font-size:9px;
}

.ak-filter-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px;
}

.ak-filter-submit{
    width:100%;
}

.ak-filter-reset{
    display:block;
    margin-top:10px;
    color:#777985;
    font-size:8px;
    text-align:center;
}

.ak-filter-reset:hover{
    color:#fff;
}


/* A-Z */

.ak-browse-az{
    display:flex;
    flex-wrap:wrap;
    gap:4px;
    margin-bottom:17px;
}

.ak-browse-az a{
    min-width:29px;
    height:29px;
    display:grid;
    place-items:center;
    padding:0 7px;
    border:1px solid rgba(255,255,255,.065);
    border-radius:6px;
    background:#121319;
    color:#777985;
    font-size:8px;
    font-weight:800;
}

.ak-browse-az a:hover,
.ak-browse-az a.is-active{
    border-color:#ff5f91;
    background:#ff5f91;
    color:#fff;
}


/* RESULTS */

.ak-browse-result-head{
    min-height:38px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin-bottom:13px;
}

.ak-browse-result-head strong{
    color:#fff;
    font-size:12px;
}

.ak-browse-result-head span{
    margin-left:3px;
    color:#6d6f79;
    font-size:9px;
}

.ak-browse-result-head > a{
    color:#8d8f99;
    font-size:8px;
}

.ak-browse-result-head > a:hover{
    color:#ff6e9b;
}


/* EMPTY */

.ak-browse-empty{
    padding:90px 20px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:14px;
    background:#111218;
    text-align:center;
}

.ak-browse-empty-icon{
    color:#ff6e9b;
    font-size:30px;
}

.ak-browse-empty h2{
    margin:12px 0 5px;
    color:#fff;
    font-size:18px;
}

.ak-browse-empty p{
    margin:0 0 18px;
    color:#747681;
    font-size:10px;
}


/* PAGINATION */

.ak-pagination{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:5px;
    margin-top:30px;
}

.ak-pagination .page-numbers{
    min-width:34px;
    height:34px;
    display:grid;
    place-items:center;
    padding:0 8px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:7px;
    background:#13141a;
    color:#8e9099;
    font-size:9px;
    font-weight:750;
}

.ak-pagination .page-numbers:hover,
.ak-pagination .page-numbers.current{
    border-color:#ff5f91;
    background:#ff5f91;
    color:#fff;
}


/* MOBILE FILTER BUTTON */

.ak-mobile-filter-button{
    display:none;
    height:38px;
    padding:0 13px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:8px;
    background:#15161c;
    color:#fff;
    font:inherit;
    font-size:9px;
    font-weight:750;
}

.ak-filter-overlay{
    display:none;
}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:900px){

    .ak-browse-layout{
        grid-template-columns:190px minmax(0,1fr);
        gap:15px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:700px){

    body.ak-filter-open{
        overflow:hidden;
    }

    .ak-browse-page{
        padding:25px 0 60px;
    }

    .ak-browse-header{
        align-items:center;
    }

    .ak-browse-header h1{
        font-size:25px;
    }

    .ak-browse-header p{
        display:none;
    }

    .ak-mobile-filter-button{
        display:inline-flex;
        align-items:center;
        justify-content:center;
    }

    .ak-browse-layout{
        display:block;
    }

    .ak-filter-sidebar{
        position:fixed;
        z-index:10002;
        top:0;
        left:0;
        bottom:0;
        width:min(86vw,310px);
        overflow-y:auto;
        border:0;
        border-radius:0 15px 15px 0;
        transform:translateX(-105%);
        transition:transform .22s ease;
        box-shadow:25px 0 60px rgba(0,0,0,.45);
    }

    .ak-filter-sidebar.is-open{
        transform:translateX(0);
    }

    .ak-filter-mobile-head{
        position:sticky;
        z-index:2;
        top:0;
        display:flex;
        align-items:center;
        justify-content:space-between;
        padding:15px;
        border-bottom:1px solid rgba(255,255,255,.06);
        background:#111218;
    }

    .ak-filter-mobile-head strong{
        color:#fff;
        font-size:12px;
    }

    .ak-filter-mobile-head button{
        width:31px;
        height:31px;
        border:0;
        border-radius:7px;
        background:#1b1c23;
        color:#fff;
        font-size:18px;
    }

    .ak-filter-overlay{
        position:fixed;
        z-index:10001;
        inset:0;
        display:block;
        visibility:hidden;
        opacity:0;
        background:rgba(0,0,0,.7);
        transition:
            opacity .2s,
            visibility .2s;
    }

    .ak-filter-overlay.is-active{
        visibility:visible;
        opacity:1;
    }

    .ak-browse-az{
        flex-wrap:nowrap;
        overflow-x:auto;
        padding-bottom:5px;
        scrollbar-width:none;
    }

    .ak-browse-az::-webkit-scrollbar{
        display:none;
    }

    .ak-browse-az a{
        flex:0 0 auto;
    }

    .ak-browse-result-head{
        margin-bottom:10px;
    }

}


/* SMALL MOBILE */

@media(max-width:420px){

    .ak-browse-header{
        margin-bottom:18px;
    }

    .ak-browse-header h1{
        font-size:22px;
    }

    .ak-filter-row{
        grid-template-columns:1fr;
    }

}
/* =====================================================
   USER LIBRARY
===================================================== */

.ak-library-page{
    min-height:75vh;
    padding:50px 0 80px;
    background:#090a0f;
}

.ak-library-header{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:25px;
}

.ak-library-header h1{
    margin:4px 0 6px;
    color:#fff;
    font-size:31px;
}

.ak-library-header p{
    margin:0;
    color:#747681;
    font-size:10px;
}

.ak-library-clear{
    height:36px;
    padding:0 12px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:8px;
    background:#14151b;
    color:#8b8d97;
    font:inherit;
    font-size:8px;
    font-weight:750;
    cursor:pointer;
}

.ak-library-clear:hover{
    border-color:rgba(255,95,145,.3);
    color:#ff719e;
}

.ak-library-grid{
    display:grid;
    grid-template-columns:
        repeat(6,minmax(0,1fr));
    gap:13px;
}

.ak-library-card{
    min-width:0;
}

.ak-library-poster{
    position:relative;
    display:block;
    overflow:hidden;
    aspect-ratio:2/3;
    border-radius:11px;
    background:#15161c;
}

.ak-library-poster img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .25s;
}

.ak-library-card:hover
.ak-library-poster img{
    transform:scale(1.035);
}

.ak-library-play{
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    opacity:0;
    background:rgba(0,0,0,.35);
    color:#fff;
    font-size:22px;
    transition:opacity .2s;
}

.ak-library-card:hover
.ak-library-play{
    opacity:1;
}

.ak-library-placeholder{
    width:100%;
    height:100%;
    display:grid;
    place-items:center;
    color:#4f515b;
    font-size:24px;
}

.ak-library-card-body{
    padding:9px 2px 0;
}

.ak-library-card-body h2{
    margin:0;
    overflow:hidden;
    font-size:10px;
    line-height:1.35;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.ak-library-card-body h2 a{
    color:#e3e4e8;
}

.ak-library-card-meta{
    margin-top:4px;
    color:#6b6d77;
    font-size:8px;
}

.ak-library-card-actions{
    display:flex;
    align-items:center;
    gap:5px;
    margin-top:8px;
}

.ak-library-resume{
    flex:1;
    height:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:6px;
    background:#ff5f91;
    color:#fff;
    font-size:8px;
    font-weight:800;
}

.ak-library-card-actions button{
    width:30px;
    height:30px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:6px;
    background:#17181f;
    color:#777985;
    cursor:pointer;
}

.ak-library-card-actions button:hover{
    color:#fff;
    background:#24252d;
}

.ak-library-empty{
    padding:100px 20px;
    text-align:center;
}

.ak-library-empty[hidden]{
    display:none !important;
}

.ak-library-empty-icon{
    color:#ff6897;
    font-size:32px;
}

.ak-library-empty h2{
    margin:12px 0 6px;
    color:#fff;
    font-size:18px;
}

.ak-library-empty p{
    margin:0 auto 18px;
    max-width:370px;
    color:#747681;
    font-size:10px;
}


/* Homepage continue watching */

.ak-continue-grid{
    display:grid;
    grid-template-columns:
        repeat(6,minmax(0,1fr));
    gap:12px;
}

.ak-continue-card{
    min-width:0;
    color:#fff;
}

.ak-continue-poster{
    position:relative;
    overflow:hidden;
    aspect-ratio:16/10;
    border-radius:9px;
    background:#15161c;
}

.ak-continue-poster img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}

.ak-continue-play{
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    background:rgba(0,0,0,.25);
    color:#fff;
    font-size:18px;
}

.ak-continue-info{
    padding-top:7px;
}

.ak-continue-info strong{
    display:block;
    overflow:hidden;
    color:#e3e4e8;
    font-size:9px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.ak-continue-info span{
    display:block;
    margin-top:3px;
    color:#70727c;
    font-size:8px;
}


/* Tablet */

@media(max-width:1000px){

    .ak-library-grid,
    .ak-continue-grid{
        grid-template-columns:
            repeat(4,minmax(0,1fr));
    }
}


/* Mobile */

@media(max-width:650px){

    .ak-library-page{
        padding:30px 0 60px;
    }

    .ak-library-header{
        align-items:center;
    }

    .ak-library-header h1{
        font-size:24px;
    }

    .ak-library-header p{
        display:none;
    }

    .ak-library-grid{
        grid-template-columns:
            repeat(3,minmax(0,1fr));
        gap:9px;
    }

    .ak-continue-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }
}

@media(max-width:390px){

    .ak-library-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }
}