@charset "UTF-8";

:root {
    --red: #c8ff19;
    --lime: #c8ff19;
    --dark: #061626;
    --black: #03111f;
    --paper: #f4f5f1
}

* {
    box-sizing: border-box;
    font-weight: 500 !important
}

html {
    scroll-behavior: smooth
}

body {
    margin: 0;
    background: var(--paper);
    color: var(--dark);
    font: 500 15px Inter,Arial,sans-serif
}

a {
    text-decoration: none;
    color: inherit
}

img {
    display: block;
    width: 100%
}

.wrap {
    width: min(1240px,calc(100% - 80px));
    margin: auto
}

.top {
    background: var(--black);
    color: #fff;
    font-size: 12px
}

    .top .wrap {
        height: 38px;
        display: flex;
        align-items: center;
        gap: 45px
    }

header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(246,243,238,.96);
    border-bottom: 1px solid #d6d1ca;
    backdrop-filter: blur(12px)
}

.nav {
    height: 88px;
    display: flex;
    align-items: center;
    gap: 28px
}

.brand {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-right: auto
}

    .brand strong {
        font: italic 500 48px/.8 "Barlow Condensed";
        color: var(--red);
        padding-right: 12px;
        border-right: 2px solid currentColor
    }

    .brand span {
        font: 500 22px/.85 "Barlow Condensed"
    }

.nav nav {
    display: flex;
    gap: 18px
}

    .nav nav a {
        font: 500 15px "Barlow Condensed";
        text-transform: uppercase;
        position: relative
    }

        .nav nav a:after {
            content: "";
            position: absolute;
            left: 0;
            bottom: -10px;
            width: 0;
            height: 3px;
            background: var(--red);
            transition: .2s
        }

        .nav nav a:hover:after {
            width: 100%
        }

#menu, .hamb {
    display: none
}

.btn {
    min-height: 56px;
    padding: 0 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--red);
    color: #fff;
    border: 0;
    font: 500 18px "Barlow Condensed";
    text-transform: uppercase;
    letter-spacing: .04em;
    cursor: pointer;
    clip-path: polygon(7px 0,100% 0,calc(100% - 7px) 100%,0 100%)
}

    .btn.small {
        min-height: 46px;
        font-size: 16px
    }

.outline {
    background: transparent;
    border: 1px solid #fff;
    clip-path: none
}

.hero {
    min-height: 710px;
    background: var(--dark);
    color: #fff;
    display: grid;
    grid-template-columns: 46% 54%;
    position: relative;
    overflow: hidden
}

.hero-copy {
    padding: 110px max(40px,calc((100vw - 1240px)/2)) 180px;
    position: relative;
    z-index: 2
}

    .hero-copy:after {
        content: "";
        position: absolute;
        z-index: -1;
        right: -85px;
        top: 0;
        width: 145px;
        height: 100%;
        background: var(--red);
        transform: skewX(-10deg)
    }

.hero-photo {
    background: url("https://rkbcricketacademy.com/wp-content/uploads/2025/01/rkb-cricket-academy.jpg") center/cover
}

.eye {
    color: var(--red);
    font: 500 16px "Barlow Condensed";
    text-transform: uppercase;
    letter-spacing: .15em;
    margin: 0 0 22px
}

.hero h1, h2, .contact h2 {
    font: 500 clamp(64px,7vw,116px)/.8 "Barlow Condensed";
    text-transform: uppercase;
    letter-spacing: -.035em;
    margin: 0
}

.hero-copy > p:not(.eye) {
    font: 500 19px/1.5 "Barlow Condensed";
    color: #ddd;
    margin: 30px 0
}

.actions {
    display: flex;
    gap: 14px
}

.stats {
    position: absolute;
    z-index: 3;
    left: max(40px,calc((100vw - 1240px)/2));
    bottom: 0;
    width: min(790px,calc(100% - 80px));
    background: var(--paper);
    color: var(--dark);
    display: grid;
    grid-template-columns: repeat(4,1fr);
    padding: 23px 30px
}

    .stats div {
        padding: 0 22px;
        border-right: 1px solid #ccc;
        display: flex;
        flex-direction: column
    }

    .stats b {
        color: var(--red);
        font: 500 40px/.9 "Barlow Condensed"
    }

    .stats span {
        font: 500 11px "Barlow Condensed";
        text-transform: uppercase;
        margin-top: 9px
    }

.ticker {
    height: 58px;
    background: var(--red);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;
    font: 500 18px "Barlow Condensed";
    text-transform: uppercase;
    overflow: hidden;
    white-space: nowrap
}

.section {
    padding: 105px 0
}

h2, .contact h2 {
    font-size: clamp(48px,5.7vw,80px);
    line-height: .9
}

    h2 em {
        font-style: normal;
        color: var(--red)
    }

.body {
    color: #62666a;
    line-height: 1.8
}

.about {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 85px;
    align-items: center
}

.about-img {
    position: relative
}

    .about-img > img {
        height: 570px;
        object-fit: cover
    }

    .about-img aside {
        position: absolute;
        right: -15px;
        bottom: 35px;
        background: var(--red);
        color: #fff;
        padding: 20px 25px;
        display: flex;
        align-items: center;
        gap: 12px
    }

        .about-img aside b {
            font: 500 56px/.8 "Barlow Condensed"
        }

        .about-img aside span {
            text-transform: uppercase
        }

.text-link {
    display: inline-block;
    color: var(--red);
    font: 500 16px "Barlow Condensed";
    text-transform: uppercase;
    margin-top: 20px
}

.dark {
    background: var(--dark);
    color: #fff
}

.soft {
    background: #ebe7e0
}

.head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 50px;
    margin-bottom: 50px
}

    .head > p {
        max-width: 420px;
        color: #aaa;
        line-height: 1.7
    }

.programs {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    border-block: 1px solid #484a4d
}

    .programs article {
        padding: 34px 27px;
        border-right: 1px solid #484a4d
    }

    .programs h3, .coach-grid h3, .values h3 {
        font: 500 27px "Barlow Condensed";
        text-transform: uppercase
    }

    .programs p {
        color: #aaa;
        line-height: 1.6
    }

.page-hero {
    min-height: 410px;
    display: flex;
    align-items: end;
    padding: 90px 0 70px;
    color: #fff;
    background: linear-gradient(90deg,rgba(11,13,15,.96),rgba(11,13,15,.55)),url("https://rkbcricketacademy.com/wp-content/uploads/2025/01/rkb-cricket-academy.jpg") center/cover
}

    .page-hero h1 {
        max-width: 950px;
        font: 500 clamp(58px,7vw,98px)/.84 "Barlow Condensed";
        text-transform: uppercase;
        margin: 0
    }

    .page-hero p:last-child {
        max-width: 680px;
        color: #ddd;
        line-height: 1.7
    }

.values {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 20px
}

    .values article {
        background: var(--paper);
        padding: 38px;
        border-top: 4px solid var(--red)
    }

    .values span, .rule-list span {
        color: var(--red)
    }

    .values p {
        color: #666;
        line-height: 1.7
    }

.program-detail {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    background: #444
}

    .program-detail article {
        background: var(--dark);
        padding: 45px
    }

    .program-detail small {
        float: right;
        color: #aaa
    }

    .program-detail h2 {
        font-size: 46px;
        margin: 60px 0 18px
    }

    .program-detail p {
        color: #aaa;
        line-height: 1.7
    }

.coach-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 34px 24px
}

    .coach-grid article > div {
        height: 380px;
        overflow: hidden
    }

    .coach-grid img {
        height: 100%;
        object-fit: cover;
        filter: grayscale(1)
    }

    .coach-grid h3 {
        margin: 18px 0 6px
    }

    .coach-grid p {
        color: #777;
        padding-bottom: 18px;
        border-bottom: 1px solid #bbb
    }

.academy-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 28px
}

    .academy-cards article {
        background: #ebe7e0
    }

    .academy-cards img {
        height: 270px;
        object-fit: cover
    }

    .academy-cards article > div {
        padding: 28px
    }

    .academy-cards h2 {
        font-size: 38px;
        margin: 25px 0 8px
    }

.gallery-page {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    grid-auto-rows: 300px;
    gap: 16px
}

    .gallery-page img {
        height: 100%;
        object-fit: cover
    }

    .gallery-page .featured {
        grid-column: span 2
    }

.rule-list {
    max-width: 900px
}

    .rule-list article {
        display: grid;
        grid-template-columns: 70px 1fr;
        padding: 25px 0;
        border-bottom: 1px solid #bbb
    }

    .rule-list p {
        margin: 0;
        color: #555;
        line-height: 1.75
    }
.contact {
    padding: 100px 0;
    background: #5e7124;
    color: #fff
}
/*.contact {
    padding: 100px 0;
    background: var(--red);
    color: #fff
}*/

.contact-grid {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 90px
}

.contact .eye {
    color: #111
}

.contact-grid > div:first-child > a {
    display: flex;
    flex-direction: column;
    margin-top: 20px
}

.contact small {
    color: #551018
}

.enquiry {
    background: var(--paper);
    color: var(--dark);
    padding: 36px;
    display: grid;
    gap: 21px;
    box-shadow: 16px 16px #111
}

    .enquiry label {
        font: 500 13px "Barlow Condensed";
        text-transform: uppercase
    }

    .enquiry input, .enquiry select, .enquiry textarea {
        display: block;
        width: 100%;
        margin-top: 7px;
        padding: 11px 2px;
        border: 0;
        border-bottom: 1px solid #999;
        background: transparent
    }

.formrow {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 24px
}

.status {
    display: block;
    margin-top: 14px
}

.success {
    color: #167a36
}

.error {
    color: #b00020
}

footer {
    background: var(--black);
    color: #fff;
    padding: 70px 0 25px
}

.foot {
    display: grid;
    grid-template-columns: 1.6fr .7fr 1fr .7fr;
    gap: 55px
}

    .foot > div {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 10px
    }

    .foot .brand {
        margin: 0
    }

    .foot h4 {
        color: var(--red);
        font: 500 17px "Barlow Condensed";
        text-transform: uppercase
    }

    .foot a, .foot p {
        color: #aaa;
        font-size: 13px;
        line-height: 1.7;
        margin: 0
    }

.copy {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #292b2e;
    margin-top: 50px;
    padding-top: 22px;
    color: #777;
    font-size: 12px
}

@media(max-width:1050px) {
    .wrap {
        width: calc(100% - 44px)
    }

    .nav nav {
        gap: 10px
    }

        .nav nav a {
            font-size: 13px
        }

    .nav > .small {
        display: none
    }
}

@media(max-width:760px) {
    .wrap {
        width: calc(100% - 32px)
    }

    .top a:nth-child(2), .top span {
        display: none
    }

    .top .wrap {
        justify-content: center
    }

    .nav {
        height: 72px
    }

    .hamb {
        display: flex;
        width: 40px;
        flex-direction: column;
        gap: 5px
    }

        .hamb i {
            height: 2px;
            width: 25px;
            background: #111
        }

    .nav nav {
        display: none;
        position: absolute;
        top: 72px;
        left: 0;
        right: 0;
        background: #111;
        color: #fff;
        padding: 25px;
        flex-direction: column;
        align-items: flex-start;
        gap: 20px
    }

    .nav #menu:checked ~ nav {
        display: flex
    }

    .hero {
        display: flex;
        flex-direction: column
    }

    .hero-photo {
        height: 300px;
        order: 0
    }

    .hero-copy {
        order: 1;
        padding: 55px 20px 170px
    }

        .hero-copy:after {
            display: none
        }

    .stats {
        left: 16px;
        width: calc(100% - 32px);
        grid-template-columns: 1fr 1fr;
        padding: 14px
    }

        .stats div {
            padding: 8px 12px
        }

    .section {
        padding: 75px 0
    }

    .about, .contact-grid, .program-detail, .academy-cards {
        grid-template-columns: 1fr
    }

    .head {
        display: block
    }

    .programs {
        grid-template-columns: 1fr
    }

    .coach-grid {
        grid-template-columns: 1fr 1fr
    }

    .page-hero {
        min-height: 330px
    }

    .values {
        grid-template-columns: 1fr
    }

    .gallery-page {
        grid-template-columns: 1fr 1fr;
        grid-auto-rows: 220px
    }

    .foot {
        grid-template-columns: 1fr 1fr
    }

        .foot > div:first-child {
            grid-column: 1/3
        }

    .formrow {
        grid-template-columns: 1fr
    }
}

@media(max-width:480px) {
    .actions {
        display: grid
    }

    .btn {
        width: 100%
    }

    .coach-grid, .gallery-page {
        grid-template-columns: 1fr
    }

        .gallery-page .featured {
            grid-column: auto
        }

    .foot {
        grid-template-columns: 1fr
    }

        .foot > div:first-child {
            grid-column: auto
        }
}

/* Expanded public website */
.drop {
    position: relative
}

.drop-menu {
    display: none;
    position: absolute;
    top: 28px;
    left: -20px;
    width: 250px;
    padding: 10px;
    background: #111;
    color: #fff;
    box-shadow: 0 18px 35px #0004
}

.drop:hover .drop-menu {
    display: block
}

.drop-menu a {
    display: block !important;
    padding: 10px 12px;
    font-size: 13px !important
}

    .drop-menu a:hover {
        background: var(--red)
    }

    .drop-menu a:after {
        display: none
    }

.story-grid, .coach-profiles {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px
}

    .story-grid article, .coach-profiles article {
        padding: 30px;
        background: #ebe7e0;
        border-left: 4px solid var(--red)
    }

    .story-grid h2, .coach-profiles h2 {
        font-size: 36px
    }

    .story-grid p, .coach-profiles p {
        line-height: 1.75;
        color: #62666a
    }

    .coach-profiles span {
        color: var(--red);
        text-transform: uppercase;
        font-family: "Barlow Condensed"
    }

.academy-hero {
    min-height: 570px;
    display: flex;
    align-items: end;
    padding: 90px 0;
    color: #fff;
    background: linear-gradient(90deg,#0b0d0fe8,#0b0d0f55),url("https://rkbcricketacademy.com/wp-content/uploads/2025/01/about-banner.jpg") center/cover
}

    .academy-hero.rkb {
        background-image: linear-gradient(90deg,#0b0d0fe8,#0b0d0f55),url("https://rkbcricketacademy.com/wp-content/uploads/2025/01/rkb-cricket-academy.jpg")
    }

    .academy-hero h1 {
        font: 500 clamp(60px,7vw,100px)/.84 "Barlow Condensed";
        text-transform: uppercase;
        max-width: 850px;
        margin: 0
    }

    .academy-hero p:not(.eye) {
        font-size: 17px;
        line-height: 1.7;
        max-width: 650px
    }

.academy-detail {
    display: grid;
    grid-template-columns: 1.3fr .7fr;
    gap: 80px
}

    .academy-detail h2 {
        font-size: 58px
    }

    .academy-detail p, .academy-detail li {
        line-height: 1.8;
        color: #60646a
    }

    .academy-detail aside {
        padding: 35px;
        background: #ebe7e0;
        border-top: 5px solid var(--red)
    }

        .academy-detail aside h3 {
            font: 500 23px "Barlow Condensed";
            text-transform: uppercase
        }

.registration-layout {
    display: grid;
    grid-template-columns: .7fr 1.3fr;
    gap: 55px;
    align-items: start
}

.registration-note {
    background: var(--dark);
    color: #fff;
    padding: 38px;
    position: sticky;
    top: 125px
}

    .registration-note h2 {
        font-size: 60px
    }

    .registration-note p, .registration-note li {
        color: #bbb;
        line-height: 1.75
    }

.registration-form {
    background: #ebe7e0;
    padding: 42px;
    display: grid;
    gap: 22px
}

    .registration-form h2 {
        font-size: 48px
    }

    .registration-form label {
        font: 500 13px "Barlow Condensed";
        text-transform: uppercase
    }

    .registration-form input, .registration-form select, .registration-form textarea {
        display: block;
        width: 100%;
        margin-top: 7px;
        padding: 12px;
        border: 1px solid #bbb;
        background: #fff
    }

        .registration-form input[type=checkbox] {
            display: inline;
            width: auto
        }

/* Admin panel */
.admin-body {
    background: #edf0f2;
    color: #1b1d20
}

.admin-side {
    position: fixed;
    inset: 0 auto 0 0;
    width: 260px;
    background: #0b0d0f;
    color: #fff;
    padding: 28px 18px;
    display: flex;
    flex-direction: column;
    z-index: 60
}

.admin-logo {
    font: 500 34px "Barlow Condensed";
    color: var(--red);
    padding: 0 12px 25px
}

    .admin-logo span {
        color: #fff
    }

.admin-side nav {
    display: flex;
    flex-direction: column;
    gap: 4px
}

    .admin-side nav a {
        padding: 12px 14px;
        color: #b8bcc1;
        border-radius: 4px
    }

        .admin-side nav a:hover {
            background: #e21d2f;
            color: #fff
        }

.admin-site {
    margin-top: auto;
    padding: 12px;
    color: #aaa
}

.admin-main {
    margin-left: 260px;
    min-height: 100vh
}

.admin-top {
    height: 76px;
    background: #fff;
    border-bottom: 1px solid #ddd;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 30px
}

    .admin-top > div {
        display: flex;
        flex-direction: column
    }

    .admin-top small {
        color: #999;
        font-size: 10px;
        letter-spacing: .12em
    }

.side-toggle {
    display: none
}

.admin-content {
    padding: 32px
}

.admin-title {
    display: flex;
    justify-content: space-between;
    align-items: end;
    margin-bottom: 28px
}

    .admin-title small {
        color: var(--red);
        letter-spacing: .12em
    }

    .admin-title h1 {
        font: 500 46px "Barlow Condensed";
        text-transform: uppercase;
        margin: 4px 0 0
    }

.admin-action {
    background: var(--red);
    color: #fff;
    border: 0;
    padding: 12px 18px;
    cursor: pointer
}

.metric-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 18px
}

    .metric-grid article {
        background: #fff;
        padding: 24px;
        border-top: 4px solid var(--red)
    }

    .metric-grid span, .metric-grid small {
        display: block;
        color: #777
    }

    .metric-grid b {
        display: block;
        font: 500 42px "Barlow Condensed";
        margin: 16px 0
    }

.admin-panels {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: 22px
}

    .admin-panels article, .feature-grid article, .table-card, .admin-form {
        background: #fff;
        padding: 25px
    }

        .admin-panels h2, .table-card h2, .feature-grid h2 {
            font: 500 27px "Barlow Condensed";
            text-transform: uppercase
        }

    .admin-panels li {
        margin: 9px 0;
        color: #666
    }

.quick-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px
}

    .quick-grid a {
        padding: 16px;
        background: #f1f2f3;
        border-left: 3px solid var(--red)
    }

.table-card {
    margin-top: 22px;
    overflow: auto
}

.admin-table {
    width: 100%;
    border-collapse: collapse
}

    .admin-table th {
        background: #17191c;
        color: #fff;
        text-align: left;
        padding: 13px;
        white-space: nowrap
    }

    .admin-table td {
        padding: 12px;
        border-bottom: 1px solid #ddd;
        vertical-align: middle
    }

    .admin-table tr:hover td {
        background: #faf5f5
    }

.student-thumb {
    width: 52px;
    height: 52px;
    object-fit: cover;
    border-radius: 50%
}

.approve, .reject {
    display: inline-block;
    padding: 7px 10px;
    color: #fff;
    margin: 2px
}

.approve {
    background: #168241
}

.reject {
    background: #b3242c
}

.admin-filter {
    display: flex;
    gap: 8px
}

    .admin-filter input {
        padding: 11px;
        width: 260px;
        border: 1px solid #ccc
    }

.admin-form {
    display: grid;
    gap: 18px
}

    .admin-form label {
        font: 500 13px "Barlow Condensed";
        text-transform: uppercase
    }

    .admin-form input, .admin-form select {
        display: block;
        width: 100%;
        padding: 11px;
        margin-top: 6px;
        border: 1px solid #ccc
    }

.feature-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 18px
}

    .feature-grid article {
        border-top: 4px solid var(--red)
    }

    .feature-grid p {
        color: #666;
        line-height: 1.7
    }

    .feature-grid.reports {
        grid-template-columns: repeat(2,1fr)
    }

.login-body {
    min-height: 100vh;
    display: grid;
    place-items: center;
    background: linear-gradient(#0b0d0fdd,#0b0d0fdd),url("https://rkbcricketacademy.com/wp-content/uploads/2025/01/rkb-cricket-academy.jpg") center/cover
}

.login-card {
    width: min(430px,calc(100% - 32px));
    background: #fff;
    padding: 42px;
    display: grid;
    gap: 18px
}

    .login-card h1 {
        font: 500 45px "Barlow Condensed";
        text-transform: uppercase;
        margin: 0
    }

    .login-card p {
        color: #666;
        line-height: 1.6
    }

    .login-card label {
        font: 500 13px "Barlow Condensed";
        text-transform: uppercase
    }

    .login-card input {
        display: block;
        width: 100%;
        padding: 12px;
        margin-top: 6px;
        border: 1px solid #bbb
    }

@media(max-width:900px) {
    .drop-menu {
        position: static;
        width: 100%;
        box-shadow: none
    }

    .drop:hover .drop-menu {
        display: block
    }

    .registration-layout, .academy-detail {
        grid-template-columns: 1fr
    }

    .registration-note {
        position: static
    }

    .story-grid, .coach-profiles {
        grid-template-columns: 1fr
    }

    .admin-side {
        transform: translateX(-100%);
        transition: .2s
    }

    .side-open .admin-side {
        transform: none
    }

    .admin-main {
        margin-left: 0
    }

    .side-toggle {
        display: block
    }

    .metric-grid {
        grid-template-columns: 1fr 1fr
    }

    .feature-grid {
        grid-template-columns: 1fr
    }

    .admin-content {
        padding: 20px
    }
}

@media(max-width:560px) {
    .metric-grid, .admin-panels, .feature-grid.reports {
        grid-template-columns: 1fr
    }

    .admin-title {
        align-items: start;
        gap: 15px;
        flex-direction: column
    }

    .admin-filter {
        width: 100%
    }

        .admin-filter input {
            width: 100%
        }

    .registration-form {
        padding: 24px
    }

    .academy-hero {
        min-height: 470px
    }
}

/* Layout 1 */
.layout-one header {
    border-top: 4px solid var(--red);
    box-shadow: 0 10px 35px #0b0d0f12
}

.layout-one .hero {
    grid-template-columns: 43% 57%
}

.layout-one .hero-photo {
    clip-path: polygon(9% 0,100% 0,100% 100%,0 100%);
    margin-left: -5vw
}

.layout-one .page-hero, .layout-one .academy-hero {
    border-bottom: 8px solid var(--red)
}

.top i {
    width: 16px;
    color: var(--red);
    text-align: center;
    margin-right: 5px
}

.nav .fa-chevron-down {
    font-size: 9px;
    margin-left: 3px
}

.coach-grid article {
    background: #fff;
    box-shadow: 0 16px 38px #0b0d0f12;
    transition: transform .3s ease,box-shadow .3s ease
}

    .coach-grid article:hover {
        transform: translateY(-8px);
        box-shadow: 0 24px 48px #0b0d0f22
    }

    .coach-grid article h3, .coach-grid article p {
        margin-left: 22px;
        margin-right: 22px
    }

.coach-grid img {
    transition: filter .4s ease,transform .6s ease
}

.coach-grid article:hover img {
    filter: grayscale(0);
    transform: scale(1.04)
}

/* Full-screen animated gallery */
.gallery-page img {
    cursor: zoom-in;
    transition: transform .35s ease,filter .35s ease,box-shadow .35s ease
}

    .gallery-page img:hover, .gallery-page img:focus {
        transform: translateY(-6px) scale(1.015);
        filter: saturate(1.1);
        box-shadow: 0 24px 50px #0b0d0f35;
        outline: 3px solid var(--red);
        outline-offset: 3px
    }

.lightbox-active {
    overflow: hidden
}

.image-lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: grid;
    grid-template-columns: 80px minmax(0,1fr) 80px;
    align-items: center;
    padding: 36px;
    background: #08090bed;
    backdrop-filter: blur(18px);
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease,visibility .3s ease
}

    .image-lightbox.open {
        opacity: 1;
        visibility: visible
    }

    .image-lightbox figure {
        margin: 0;
        display: grid;
        place-items: center;
        gap: 18px
    }

        .image-lightbox figure img {
            width: auto;
            max-width: 100%;
            max-height: 82vh;
            object-fit: contain;
            border: 1px solid #ffffff2b;
            box-shadow: 0 35px 100px #000;
            opacity: 0;
            transform: scale(.88) translateY(25px);
            transition: opacity .4s ease,transform .55s cubic-bezier(.16,1,.3,1)
        }

    .image-lightbox.open figure img.is-ready {
        opacity: 1;
        transform: scale(1) translateY(0)
    }

    .image-lightbox figcaption {
        color: #fff;
        text-transform: uppercase;
        letter-spacing: .12em;
        font-family: "Barlow Condensed";
        font-size: 17px
    }

.lightbox-close, .lightbox-nav {
    border: 0;
    color: #fff;
    background: #ffffff16;
    cursor: pointer;
    display: grid;
    place-items: center;
    transition: background .2s ease,transform .2s ease
}

    .lightbox-close:hover, .lightbox-nav:hover {
        background: var(--red);
        transform: scale(1.08)
    }

.lightbox-close {
    position: absolute;
    right: 28px;
    top: 28px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    font-size: 22px
}

.lightbox-nav {
    width: 54px;
    height: 76px;
    border-radius: 4px;
    font-size: 20px
}

.lightbox-prev {
    justify-self: start
}

.lightbox-next {
    justify-self: end
}

@media(max-width:760px) {
    .layout-one .hero-photo {
        clip-path: none;
        margin-left: 0
    }

    .image-lightbox {
        grid-template-columns: 50px minmax(0,1fr) 50px;
        padding: 20px 8px
    }

    .lightbox-close {
        right: 14px;
        top: 14px
    }

    .lightbox-nav {
        width: 44px;
        height: 60px
    }

    .image-lightbox figure img {
        max-height: 75vh
    }
}

/* Option 1 navy and lime website */
.announce-bar {
    background: #020f1d;
    color: #aeb9c3;
    border-bottom: 1px solid #c8ff1955;
    font-size: 11px
}

.announce-inner {
    height: 42px;
    display: flex;
    align-items: center;
    gap: 28px
}

    .announce-inner > div {
        display: flex;
        align-items: center;
        gap: 18px
    }

        .announce-inner > div:first-child b {
            background: var(--lime);
            color: #071523;
            text-transform: uppercase;
            letter-spacing: .08em;
            padding: 5px 11px
        }

.announce-contact {
    margin-right: auto
}

    .announce-contact a {
        padding-left: 18px;
        border-left: 1px solid #ffffff2c
    }

    .announce-contact i {
        color: var(--lime);
        margin-right: 8px
    }

.social {
    gap: 13px !important
}

    .social a {
        color: #fff
    }

.layout-one header {
    top: 0;
    background: #03111ff7;
    border-top: 0;
    border-bottom: 1px solid #ffffff12;
    box-shadow: none;
    color: #fff
}

.nav {
    height: 92px
}

.brand {
    flex-direction: column;
    align-items: flex-start;
    gap: 1px
}

    .brand strong {
        border: 0;
        padding: 0;
        font: 500 46px/.82 "Barlow Condensed";
        color: #fff
    }

        .brand strong:after {
            content: "";
            display: inline-block;
            width: 12px;
            height: 32px;
            margin-left: 8px;
            background: var(--lime);
            clip-path: polygon(20% 0,100% 0,72% 100%,0 100%);
            transform: skew(-10deg)
        }

    .brand span {
        font: 500 14px "Barlow Condensed";
        letter-spacing: .08em;
        color: #fff
    }

.nav nav {
    gap: 35px
}

    .nav nav a {
        font-size: 16px;
        text-transform: none
    }

        .nav nav a:after {
            background: var(--lime)
        }

.nav-cta {
    border: 1px solid var(--lime);
    background: transparent !important;
    color: var(--lime) !important;
    clip-path: none !important
}

.drop-menu {
    background: #061626;
    border: 1px solid #c8ff1940
}

    .drop-menu a:hover {
        background: var(--lime);
        color: #061626
    }

.btn {
    background: var(--lime);
    color: #061626
}

    .btn i {
        margin-left: 12px
    }

    .btn.lime {
        background: var(--lime);
        color: #061626
    }

    .btn.ghost {
        background: transparent;
        color: #fff;
        border: 1px solid #fff;
        clip-path: none
    }

.eye, .text-link {
    color: #7e9f08
}

.dark .eye, .page-hero .eye, .academy-hero .eye {
    color: var(--lime)
}

.hero-v2 {
    height: 695px;
    background: #03111f;
    color: #fff;
    display: grid;
    grid-template-columns: 45% 55%;
    position: relative;
    overflow: hidden
}

.hero-panel {
    position: relative;
    z-index: 2;
    background: radial-gradient(circle at 30% 40%,#0c2940 0,#03111f 58%);
    display: flex;
    align-items: center
}

    .hero-panel:after {
        content: "";
        position: absolute;
        right: -72px;
        top: 0;
        width: 135px;
        height: 100%;
        background: var(--lime);
        clip-path: polygon(78% 0,100% 0,45% 100%,0 100%,64% 50%,28% 28%)
    }

.hero-content {
    width: min(590px,calc(100% - 70px));
    margin-left: max(48px,calc((100vw - 1240px)/2));
    padding-bottom: 80px
}

.eyebrow {
    color: var(--lime);
    text-transform: uppercase;
    letter-spacing: .13em;
    font: 500 17px "Barlow Condensed"
}

    .eyebrow span {
        display: inline-block;
        width: 40px;
        height: 2px;
        background: var(--lime);
        vertical-align: middle;
        margin-left: 15px
    }

.hero-v2 h1 {
    font: 500 clamp(62px,5.3vw,88px)/.92 "Barlow Condensed";
    text-transform: uppercase;
    margin: 24px 0
}

    .hero-v2 h1 em {
        font-style: normal;
        color: var(--lime);
        display: block
    }

.hero-content > p:not(.eyebrow) {
    max-width: 470px;
    color: #afbac5;
    font-size: 17px;
    line-height: 1.65
}

.hero-actions {
    display: flex;
    gap: 18px;
    margin-top: 28px
}

.hero-visual {
    background: linear-gradient(90deg,#03111f05,#03111f22),url("https://rkbcricketacademy.com/wp-content/uploads/2025/01/rkb-cricket-academy.jpg") center/cover
}

.hero-stats {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 4;
    height: 105px;
    padding-left: max(48px,calc((100vw - 1300px)/2));
    padding-right: max(48px,calc((100vw - 1300px)/2));
    background: #03111ff2;
    border-block: 1px solid #ffffff30;
    display: grid;
    grid-template-columns: repeat(4,1fr)
}

    .hero-stats div {
        display: grid;
        grid-template-columns: 72px 1fr;
        grid-template-rows: 1fr 1fr;
        align-items: end;
        padding: 18px 28px;
        border-right: 1px solid #ffffff28
    }

    .hero-stats i {
        grid-row: 1/3;
        align-self: center;
        width: 54px;
        height: 54px;
        border: 1px solid #ffffff55;
        border-radius: 50%;
        display: grid;
        place-items: center;
        color: var(--lime);
        font-size: 20px
    }

    .hero-stats b {
        color: var(--lime);
        font: 500 34px/1 "Barlow Condensed"
    }

    .hero-stats span {
        align-self: start;
        text-transform: uppercase;
        color: #fff;
        font: 500 12px "Barlow Condensed";
        letter-spacing: .04em
    }

.intro-v2 {
    background: #f5f6f1
}

.about-img aside {
    background: var(--lime);
    color: #061626
}

    .about-img aside i {
        font-size: 22px
    }

.why .programs article > i {
    font-size: 30px;
    color: var(--lime)
}

.why .programs h3 {
    color: #fff
}

.home-academies article {
    background: #fff
}

.academy-cards article {
    border-bottom: 3px solid var(--lime)
}

    .academy-cards article > div > span {
        color: #7e9f08;
        text-transform: uppercase;
        font: 500 13px "Barlow Condensed";
        letter-spacing: .1em
    }

.page-hero {
    background: linear-gradient(90deg,#03111ff2,#03111f99),url("https://rkbcricketacademy.com/wp-content/uploads/2025/01/rkb-cricket-academy.jpg") center/cover;
    border-bottom: 6px solid var(--lime)
}

.academy-hero, .academy-hero.rkb {
    background-image: linear-gradient(90deg,#03111ff2,#03111f55),url("https://rkbcricketacademy.com/wp-content/uploads/2025/01/rkb-cricket-academy.jpg");
    border-bottom: 6px solid var(--lime)
}

.academy-detail aside {
    background: #061626;
    color: #fff;
    border-top-color: var(--lime)
}

    .academy-detail aside p {
        color: #b5c0ca
    }

    .academy-detail aside h3 {
        color: var(--lime)
    }

.academy-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin: 28px 0
}

    .academy-features span {
        padding: 17px;
        background: #e8ebe5;
        color: #183143
    }

    .academy-features i {
        width: 28px;
        color: #7e9f08
    }

.player-list {
    columns: 2;
    padding-left: 20px
}

    .player-list li {
        margin: 9px 0
    }

.academy-list article {
    overflow: hidden;
    transition: transform .3s ease,box-shadow .3s ease
}

    .academy-list article:hover {
        transform: translateY(-7px);
        box-shadow: 0 24px 60px #03111f20
    }

.academy-list img {
    transition: transform .6s ease
}

.academy-list article:hover img {
    transform: scale(1.04)
}

.coach-directory {
    display: grid;
    gap: 48px
}

.coach-detail {
    display: grid;
    grid-template-columns: 380px 1fr;
    min-height: 390px;
    background: #fff;
    box-shadow: 0 16px 45px #03111f14
}

    .coach-detail.reverse {
        grid-template-columns: 1fr 380px
    }

        .coach-detail.reverse .coach-photo {
            order: 2
        }

    .coach-detail > div:last-child {
        padding: 52px;
        align-self: center
    }

.coach-photo {
    overflow: hidden
}

    .coach-photo img {
        height: 100%;
        object-fit: cover;
        filter: saturate(.8);
        transition: .5s
    }

.coach-detail:hover .coach-photo img {
    transform: scale(1.04);
    filter: saturate(1)
}

.coach-detail h2 {
    font-size: 55px;
    margin: 10px 0 22px
}

.coach-detail p {
    color: #62707b;
    line-height: 1.75
}

.coach-role {
    color: #7e9f08 !important;
    text-transform: uppercase;
    letter-spacing: .12em;
    font: 500 14px "Barlow Condensed" !important
}

footer {
    border-top: 4px solid var(--lime)
}

.foot h4 {
    color: var(--lime)
}

@media(max-width:1050px) {
    .nav nav {
        gap: 15px
    }

    .hero-v2 {
        grid-template-columns: 50% 50%
    }

    .hero-stats div {
        padding: 14px
    }

    .hero-content {
        margin-left: 30px
    }

    .announce-inner .social {
        display: none
    }
}

@media(max-width:760px) {
    .announce-inner {
        height: 44px
    }

        .announce-inner > div:first-child span, .announce-contact a:nth-child(2) {
            display: none
        }

    .announce-contact {
        margin-left: auto
    }

    .layout-one .nav nav {
        background: #03111f
    }

    .hero-v2 {
        height: auto;
        display: flex;
        flex-direction: column
    }

    .hero-visual {
        height: 330px;
        order: 1
    }

    .hero-panel {
        min-height: 520px;
        order: 2
    }

        .hero-panel:after {
            display: none
        }

    .hero-content {
        width: calc(100% - 32px);
        margin: auto;
        padding: 60px 0 145px
    }

    .hero-v2 h1 {
        font-size: 58px
    }

    .hero-actions {
        display: grid
    }

    .hero-stats {
        height: auto;
        grid-template-columns: 1fr 1fr;
        padding: 10px 16px
    }

        .hero-stats div {
            grid-template-columns: 52px 1fr;
            padding: 12px 5px
        }

        .hero-stats i {
            width: 42px;
            height: 42px
        }

        .hero-stats b {
            font-size: 27px
        }

        .hero-stats span {
            font-size: 10px
        }

    .coach-detail, .coach-detail.reverse {
        grid-template-columns: 1fr
    }

        .coach-detail.reverse .coach-photo {
            order: 0
        }

    .coach-photo {
        height: 420px
    }

    .coach-detail > div:last-child {
        padding: 30px
    }

    .coach-detail h2 {
        font-size: 43px
    }

    .academy-features {
        grid-template-columns: 1fr
    }

    .player-list {
        columns: 1
    }
}

@media(max-width:480px) {
    .announce-contact {
        display: none !important
    }

    .hero-v2 h1 {
        font-size: 50px
    }

    .hero-stats {
        grid-template-columns: 1fr
    }

    .hero-panel {
        min-height: 670px
    }

    .coach-photo {
        height: 340px
    }
}

/* Header and hero alignment fixes */
.fa-solid, .fas {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important
}

.fa-regular, .far {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 400 !important
}

.fa-brands, .fab {
    font-family: "Font Awesome 6 Brands" !important;
    font-weight: 400 !important
}

.hero-panel:after {
    display: none
}

.hero-visual {
    position: relative
}
.hero-edge {
    position: absolute;
    z-index: 3;
    left: -77px;
    top: 0;
    width: 136px;
    height: 100%;
    background: var(--lime);
    clip-path: polygon(59% 0,90% 0,53% 100%,0 100%,54% 50%,28% 28%)
}
/*.hero-edge {
    position: absolute;
    z-index: 3;
    left: -68px;
    top: 0;
    width: 136px;
    height: 100%;
    background: var(--lime);
    clip-path: polygon(78% 0,100% 0,45% 100%,0 100%,64% 50%,28% 28%)
}*/

@media(max-width:760px) {
    .announce-bar {
        display: block !important
    }

    .announce-inner {
        width: calc(100% - 24px);
        justify-content: space-between;
        gap: 10px
    }

        .announce-inner > div:first-child {
            display: flex !important;
            min-width: max-content;
            gap: 8px
        }

            .announce-inner > div:first-child b {
                display: inline-flex !important;
                padding: 5px 8px;
                font-size: 10px
            }

    .announce-contact {
        display: flex !important;
        margin-left: auto;
        margin-right: 0
    }

        .announce-contact a:first-child {
            display: inline-flex !important;
            align-items: center;
            padding-left: 0;
            border-left: 0;
            font-size: 10px
        }

    .hamb {
        display: flex !important;
        position: relative;
        z-index: 80;
        width: 42px;
        height: 42px;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 6px;
        cursor: pointer
    }

        .hamb i {
            display: block !important;
            width: 27px;
            height: 2px;
            background: #fff !important;
            border-radius: 2px
        }

    .hero-edge {
        display: none
    }
}

@media(max-width:480px) {
    .announce-contact {
        display: none !important
    }

    .announce-inner {
        justify-content: center
    }
}

/* Modern compact admin theme */
.admin-body {
    --admin-primary: #2563eb;
    --admin-primary-dark: #1d4ed8;
    --admin-navy: #0f172a;
    --admin-side: #111827;
    --admin-muted: #64748b;
    --admin-border: #e2e8f0;
    --admin-bg: #f1f5f9;
    --admin-card: #fff;
    margin: 0;
    background: var(--admin-bg);
    color: #1e293b;
    font: 500 14px/1.45 Inter,Arial,sans-serif
}

    .admin-body * {
        font-size: 14px
    }

.admin-side {
    position: fixed;
    inset: 0 auto 0 0;
    width: 238px;
    background: linear-gradient(180deg,#111827,#0b1220);
    color: #fff;
    padding: 14px 10px;
    display: flex;
    flex-direction: column;
    z-index: 60;
    border-right: 1px solid #ffffff12;
    box-shadow: 8px 0 28px #0f172a12
}

.admin-logo {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 4px 6px 14px;
    color: #fff
}

    .admin-logo .logo-mark {
        width: 38px;
        height: 38px;
        border-radius: 9px;
        display: grid;
        place-items: center;
        background: linear-gradient(135deg,var(--admin-primary),#38bdf8);
        font: 500 24px "Barlow Condensed";
        box-shadow: 0 7px 16px #2563eb3d
    }

    .admin-logo > span:last-child {
        display: flex;
        flex-direction: column
    }

    .admin-logo b {
        font-size: 15px
    }

    .admin-logo small {
        font-size: 10px;
        color: #94a3b8;
        letter-spacing: .04em
    }

.admin-nav-label {
    padding: 10px 10px 5px;
    color: #64748b;
    font-size: 9px !important;
    text-transform: uppercase;
    letter-spacing: .14em
}

.admin-side nav {
    display: flex;
    flex-direction: column;
    gap: 2px
}

    .admin-side nav a {
        min-height: 38px;
        padding: 8px 10px;
        color: #aeb9c9;
        border-radius: 7px;
        display: flex;
        align-items: center;
        gap: 10px;
        transition: .18s ease
    }

        .admin-side nav a i {
            width: 18px;
            text-align: center;
            color: #718096
        }

        .admin-side nav a:hover, .admin-side nav a:focus {
            background: #ffffff0d;
            color: #fff;
            transform: translateX(2px)
        }

            .admin-side nav a:hover i, .admin-side nav a:focus i {
                color: #60a5fa
            }

.admin-site {
    margin-top: auto;
    min-height: 38px;
    padding: 8px 10px;
    border-radius: 7px;
    background: #ffffff0b;
    color: #94a3b8;
    display: flex;
    align-items: center;
    gap: 10px
}

    .admin-site:hover {
        background: #2563eb;
        color: #fff
    }

.admin-main {
    margin-left: 238px;
    min-height: 100vh
}

.admin-top {
    height: 62px;
    background: #fff;
    border-bottom: 1px solid var(--admin-border);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 18px;
    position: sticky;
    top: 0;
    z-index: 45;
    box-shadow: 0 4px 15px #0f172a08
}

.admin-top-left, .admin-top-actions {
    display: flex;
    align-items: center
}

.admin-top-left {
    gap: 10px
}

    .admin-top-left > div {
        display: flex;
        flex-direction: column
    }

    .admin-top-left small {
        font-size: 9px !important;
        color: var(--admin-muted);
        letter-spacing: .1em
    }

    .admin-top-left strong {
        font-size: 14px
    }

.admin-top-actions {
    gap: 9px
}

.top-icon, .side-toggle {
    width: 34px;
    height: 34px;
    border: 1px solid var(--admin-border);
    border-radius: 8px;
    background: #fff;
    color: #475569;
    display: grid;
    place-items: center;
    cursor: pointer
}

    .top-icon:hover, .side-toggle:hover {
        color: var(--admin-primary);
        border-color: #bfdbfe;
        background: #eff6ff
    }

.admin-avatar {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    background: #dbeafe;
    color: var(--admin-primary);
    display: grid;
    place-items: center
}

.admin-user {
    display: flex;
    flex-direction: column;
    min-width: 90px
}

    .admin-user strong {
        font-size: 12px
    }

    .admin-user small {
        font-size: 10px !important;
        color: var(--admin-muted)
    }

.logout-link {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 7px 9px;
    border-radius: 7px;
    color: #475569
}

    .logout-link:hover {
        background: #fef2f2;
        color: #dc2626
    }

.admin-content {
    padding: 16px 18px
}

.admin-title {
    display: flex;
    justify-content: space-between;
    align-items: end;
    margin-bottom: 14px
}

    .admin-title small {
        color: var(--admin-primary);
        font-size: 9px !important;
        letter-spacing: .12em
    }

    .admin-title h1 {
        font: 500 28px/1.1 "Barlow Condensed";
        text-transform: uppercase;
        margin: 2px 0 0;
        color: var(--admin-navy)
    }

.admin-action {
    background: var(--admin-primary);
    color: #fff;
    border: 0;
    border-radius: 7px;
    padding: 8px 12px;
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    box-shadow: 0 6px 14px #2563eb24
}

    .admin-action:hover {
        background: var(--admin-primary-dark);
        transform: translateY(-1px)
    }

.metric-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 10px
}

    .metric-grid article {
        background: var(--admin-card);
        padding: 14px;
        border: 1px solid var(--admin-border);
        border-top: 0;
        border-radius: 10px;
        box-shadow: 0 5px 15px #0f172a08;
        position: relative;
        overflow: hidden
    }

        .metric-grid article:before {
            content: "";
            position: absolute;
            inset: 0 auto 0 0;
            width: 3px;
            background: var(--admin-primary)
        }

    .metric-grid span, .metric-grid small {
        display: block;
        color: var(--admin-muted);
        font-size: 11px !important
    }

    .metric-grid b {
        display: block;
        font: 500 28px/1 "Barlow Condensed";
        margin: 10px 0 6px;
        color: var(--admin-navy)
    }

.admin-panels {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 10px
}

    .admin-panels article, .feature-grid article, .table-card, .admin-form {
        background: var(--admin-card);
        padding: 14px;
        border: 1px solid var(--admin-border);
        border-radius: 10px;
        box-shadow: 0 5px 15px #0f172a08
    }

        .admin-panels h2, .table-card h2, .feature-grid h2 {
            font: 500 19px "Barlow Condensed";
            text-transform: uppercase;
            margin: 0 0 10px;
            color: var(--admin-navy)
        }

    .admin-panels li {
        margin: 5px 0;
        color: var(--admin-muted)
    }

.quick-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 7px
}

    .quick-grid a {
        padding: 9px 10px;
        background: #f8fafc;
        border: 1px solid var(--admin-border);
        border-left: 3px solid var(--admin-primary);
        border-radius: 6px
    }

        .quick-grid a:hover {
            background: #eff6ff;
            color: var(--admin-primary)
        }

.table-card {
    margin-top: 10px;
    overflow: auto
}

.admin-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px
}

    .admin-table th {
        background: #f8fafc;
        color: #475569;
        text-align: left;
        padding: 9px 10px;
        white-space: nowrap;
        border-bottom: 1px solid var(--admin-border);
        font-size: 11px !important;
        text-transform: uppercase;
        letter-spacing: .03em
    }

    .admin-table td {
        padding: 8px 10px;
        border-bottom: 1px solid #edf2f7;
        vertical-align: middle;
        font-size: 12px !important
    }

    .admin-table tr:hover td {
        background: #f8fbff
    }

.student-thumb {
    width: 38px;
    height: 38px;
    object-fit: cover;
    border-radius: 8px
}

.approve, .reject {
    display: inline-flex;
    padding: 5px 8px;
    color: #fff;
    margin: 1px;
    border-radius: 5px;
    font-size: 11px !important
}

.approve {
    background: #16a34a
}

.reject {
    background: #dc2626
}

.admin-filter {
    display: flex;
    gap: 6px
}

    .admin-filter input {
        padding: 8px 10px;
        width: 230px;
        border: 1px solid var(--admin-border);
        border-radius: 7px;
        background: #fff
    }

.admin-form {
    display: grid;
    gap: 10px
}

    .admin-form label {
        font: 500 11px "Inter";
        text-transform: none;
        color: #475569
    }

    .admin-form input, .admin-form select {
        display: block;
        width: 100%;
        padding: 8px 10px;
        margin-top: 4px;
        border: 1px solid var(--admin-border);
        border-radius: 7px;
        background: #fff;
        min-height: 36px
    }

        .admin-form input:focus, .admin-form select:focus, .admin-filter input:focus {
            outline: 2px solid #bfdbfe;
            border-color: var(--admin-primary)
        }

.admin-body .btn {
    min-height: 36px;
    padding: 7px 14px;
    border-radius: 7px;
    clip-path: none;
    background: var(--admin-primary);
    color: #fff;
    font: 500 12px Inter;
    text-transform: none;
    letter-spacing: 0
}

    .admin-body .btn:hover {
        background: var(--admin-primary-dark)
    }

.feature-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 10px
}

    .feature-grid article {
        border-top: 0
    }

    .feature-grid p {
        color: var(--admin-muted);
        line-height: 1.55
    }

    .feature-grid.reports {
        grid-template-columns: repeat(2,1fr)
    }

.admin-body .status {
    margin-top: 6px;
    font-size: 12px !important
}

.admin-body .success {
    color: #15803d
}

.admin-body .error {
    color: #b91c1c
}

@media(max-width:900px) {
    .admin-side {
        width: 238px;
        transform: translateX(-100%);
        transition: transform .22s ease
    }

    .side-open .admin-side {
        transform: none
    }

    .side-open:after {
        content: "";
        position: fixed;
        inset: 0;
        background: #0f172a99;
        z-index: 55
    }

    .side-open .admin-side {
        z-index: 65
    }

    .admin-main {
        margin-left: 0
    }

    .side-toggle {
        display: grid
    }

    .metric-grid {
        grid-template-columns: 1fr 1fr
    }

    .admin-content {
        padding: 12px
    }

    .admin-user {
        display: none
    }
}

@media(max-width:560px) {
    .admin-top {
        height: 56px;
        padding: 0 10px
    }

    .admin-top-left > div {
        display: none
    }

    .admin-top-actions {
        gap: 5px
    }

    .logout-link span {
        display: none
    }

    .admin-content {
        padding: 10px
    }

    .metric-grid, .admin-panels, .feature-grid, .feature-grid.reports {
        grid-template-columns: 1fr
    }

    .admin-title {
        align-items: flex-start;
        gap: 8px;
        flex-direction: column
    }

        .admin-title h1 {
            font-size: 25px
        }

    .admin-filter {
        width: 100%
    }

        .admin-filter input {
            width: 100%
        }

    .admin-form, .table-card, .admin-panels article, .feature-grid article {
        padding: 10px
    }

    .quick-grid {
        grid-template-columns: 1fr
    }
}

/* Compact admin sign-in */
.login-body {
    min-height: 100vh;
    margin: 0;
    display: grid;
    place-items: center;
    padding: 18px;
    background: linear-gradient(135deg,#0f172aee,#172554dd),url("https://rkbcricketacademy.com/wp-content/uploads/2025/01/rkb-cricket-academy.jpg") center/cover;
    font: 500 14px Inter,Arial,sans-serif
}

.login-shell {
    width: min(900px,100%);
    min-height: 500px;
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 28px 80px #02061766
}

.login-intro {
    padding: 34px;
    background: linear-gradient(145deg,#111827,#1e3a8a);
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.login-badge {
    align-self: flex-start;
    padding: 6px 9px;
    border: 1px solid #60a5fa66;
    border-radius: 20px;
    background: #ffffff0c;
    color: #bfdbfe;
    font-size: 10px !important;
    text-transform: uppercase;
    letter-spacing: .08em
}

.login-intro h1 {
    font: 500 45px/.95 "Barlow Condensed";
    text-transform: uppercase;
    margin: 18px 0 12px
}

.login-intro p {
    max-width: 440px;
    margin: 0;
    color: #cbd5e1;
    line-height: 1.6
}

.login-points {
    display: grid;
    gap: 8px;
    margin-top: 22px
}

    .login-points span {
        font-size: 12px
    }

    .login-points i {
        color: #60a5fa;
        margin-right: 7px
    }

.login-card {
    width: auto;
    padding: 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 13px;
    background: #fff
}

.login-brand {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 7px
}

    .login-brand > span {
        width: 36px;
        height: 36px;
        border-radius: 8px;
        background: linear-gradient(135deg,#2563eb,#38bdf8);
        color: #fff;
        display: grid;
        place-items: center;
        font: 500 22px "Barlow Condensed"
    }

    .login-brand > div {
        display: flex;
        flex-direction: column
    }

    .login-brand b {
        font-size: 14px
    }

    .login-brand small {
        font-size: 9px !important;
        color: #64748b;
        text-transform: uppercase;
        letter-spacing: .08em
    }

.login-card h2 {
    font: 500 30px "Barlow Condensed";
    text-transform: uppercase;
    margin: 0;
    color: #0f172a
}

.login-card > div > p {
    margin: 1px 0 0;
    color: #64748b;
    font-size: 12px
}

.login-card label {
    font-size: 11px;
    color: #475569
}

.login-input {
    position: relative;
    margin-top: 4px
}

    .login-input i {
        position: absolute;
        left: 11px;
        top: 50%;
        transform: translateY(-50%);
        color: #94a3b8
    }

.login-card .login-input input {
    width: 100%;
    height: 38px;
    margin: 0;
    padding: 8px 10px 8px 34px;
    border: 1px solid #dbe3ee;
    border-radius: 7px;
    background: #f8fafc;
    font: 500 13px Inter
}

    .login-card .login-input input:focus {
        outline: 2px solid #bfdbfe;
        border-color: #2563eb;
        background: #fff
    }

.login-body .btn {
    width: 100%;
    min-height: 39px;
    padding: 8px 14px;
    border: 0;
    border-radius: 7px;
    clip-path: none;
    background: #2563eb;
    color: #fff;
    font: 500 13px Inter;
    text-transform: none;
    letter-spacing: 0
}

    .login-body .btn:hover {
        background: #1d4ed8
    }

.login-body .status {
    margin: 0;
    font-size: 11px !important
}

.back-site {
    align-self: center;
    color: #64748b;
    font-size: 11px;
    margin-top: 2px
}

    .back-site:hover {
        color: #2563eb
    }

@media(max-width:700px) {
    .login-body {
        padding: 10px
    }

    .login-shell {
        grid-template-columns: 1fr;
        min-height: 0
    }

    .login-intro {
        display: none
    }

    .login-card {
        padding: 24px;
        min-height: 470px
    }
}

.admin-side nav a.active {
    background: #2563eb;
    color: #fff;
    transform: translateX(2px)
}

    .admin-side nav a.active i {
        color: #fff
    }

/* Mobile-app admin experience */
.admin-body, .admin-body input, .admin-body select, .admin-body textarea, .admin-body button, .login-body, .login-body input, .login-body button {
    font-family: "Open Sans",Arial,sans-serif !important;
    font-weight: 500 !important
}

    .admin-body h1, .admin-body h2, .admin-body h3, .login-body h1, .login-body h2 {
        font-family: "Open Sans",Arial,sans-serif !important;
        font-size: 18px !important;
        line-height: 1.35 !important;
        font-weight: 500 !important;
        letter-spacing: 0 !important;
        text-transform: none !important
    }

.mobile-app-dock {
    display: none
}

.student-title-actions {
    display: flex;
    align-items: center;
    gap: 7px
}

.admin-action.secondary {
    background: #fff;
    color: #334155;
    border: 1px solid var(--admin-border);
    box-shadow: none
}

    .admin-action.secondary:hover {
        background: #f8fafc;
        color: var(--admin-primary)
    }

.app-form-shell {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 10px
}

.app-form-card {
    background: #fff;
    border: 1px solid var(--admin-border);
    border-radius: 14px;
    padding: 14px;
    box-shadow: 0 6px 18px #0f172a08
}

.app-card-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px
}

    .app-card-head > span {
        width: 38px;
        height: 38px;
        border-radius: 11px;
        background: #eff6ff;
        color: #2563eb;
        display: grid;
        place-items: center;
        font-size: 15px
    }

    .app-card-head h2 {
        margin: 0 !important;
        color: #0f172a
    }

    .app-card-head p {
        margin: 1px 0 0;
        color: #64748b;
        font-size: 11px !important
    }

.compact-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px
}

    .compact-form-grid label {
        font-size: 11px;
        color: #475569
    }

    .compact-form-grid input, .compact-form-grid select {
        display: block;
        width: 100%;
        height: 38px;
        margin-top: 4px;
        padding: 7px 10px;
        border: 1px solid #dbe3ee;
        border-radius: 9px;
        background: #f8fafc;
        font-size: 13px
    }

        .compact-form-grid input:focus, .compact-form-grid select:focus {
            outline: 2px solid #bfdbfe;
            border-color: #2563eb;
            background: #fff
        }

        .compact-form-grid input[readonly] {
            background: #eef2f7;
            color: #475569
        }

    .compact-form-grid label > small {
        display: block;
        margin-top: 3px;
        color: #94a3b8;
        font-size: 9px !important
    }

.span-2 {
    grid-column: span 2
}

.auto-note {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-top: 11px;
    padding: 9px 10px;
    border-radius: 9px;
    background: #eff6ff;
    color: #1e40af;
    font-size: 11px
}

    .auto-note i {
        margin-top: 2px
    }

.fee-setup-card {
    align-self: start
}

.sticky-form-action {
    position: sticky;
    bottom: 10px;
    z-index: 20;
    margin-top: 10px;
    padding: 9px 10px;
    background: #ffffffed;
    border: 1px solid var(--admin-border);
    border-radius: 12px;
    box-shadow: 0 10px 30px #0f172a18;
    display: flex;
    align-items: center;
    gap: 10px
}

.fee-entry-card {
    max-width: 820px
}

    .fee-entry-card > .btn {
        margin-top: 10px
    }

.approval-sheet {
    margin-top: 10px;
    padding: 14px;
    background: #fff;
    border: 1px solid var(--admin-border);
    border-radius: 14px;
    box-shadow: 0 14px 38px #0f172a18
}

.sheet-handle {
    display: none
}

.sheet-actions {
    display: flex;
    gap: 7px;
    margin-top: 12px
}

.admin-body .btn-muted {
    background: #e2e8f0;
    color: #334155
}

    .admin-body .btn-muted:hover {
        background: #cbd5e1
    }

.mobile-app-dock a, .mobile-app-dock button {
    font-family: "Open Sans",Arial,sans-serif
}

@media(max-width:900px) {
    .app-form-shell {
        grid-template-columns: 1fr
    }

    .admin-content {
        padding-bottom: 82px
    }

    .mobile-app-dock {
        position: fixed;
        z-index: 54;
        left: 10px;
        right: 10px;
        bottom: 8px;
        height: 62px;
        padding: 5px 8px;
        display: grid;
        grid-template-columns: repeat(5,1fr);
        align-items: end;
        background: #fffffff2;
        border: 1px solid #dbe3ee;
        border-radius: 18px;
        box-shadow: 0 16px 45px #0f172a35;
        backdrop-filter: blur(14px)
    }

        .mobile-app-dock a, .mobile-app-dock button {
            height: 50px;
            border: 0;
            background: transparent;
            color: #64748b;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 3px;
            font-size: 9px !important
        }

        .mobile-app-dock i {
            font-size: 16px
        }

        .mobile-app-dock .dock-add {
            width: 52px;
            height: 52px;
            justify-self: center;
            align-self: center;
            margin-top: -18px;
            border-radius: 17px;
            background: #2563eb;
            color: #fff;
            box-shadow: 0 8px 20px #2563eb55
        }

            .mobile-app-dock .dock-add span {
                font-size: 8px !important
            }

    .approval-sheet {
        position: fixed;
        z-index: 75;
        left: 8px;
        right: 8px;
        bottom: 8px;
        max-height: 86vh;
        overflow: auto;
        border-radius: 20px;
        padding: 14px;
        box-shadow: 0 -18px 60px #0f172a55
    }

        .approval-sheet:before {
            content: "";
            position: fixed;
            inset: 0;
            background: #0f172a99;
            z-index: -1
        }

    .sheet-handle {
        display: block;
        width: 38px;
        height: 4px;
        margin: 0 auto 12px;
        border-radius: 4px;
        background: #cbd5e1
    }
}

.mobile-app-dock a.active:not(.dock-add) {
    color: #2563eb
}

.mobile-app-dock a.active i {
    transform: translateY(-1px)
}

@media(max-width:560px) {
    .student-title-actions {
        width: 100%;
        align-items: stretch;
        flex-direction: column
    }

    .compact-form-grid {
        grid-template-columns: 1fr
    }

    .span-2 {
        grid-column: auto
    }

    .app-form-card {
        padding: 11px;
        border-radius: 12px
    }

    .sticky-form-action {
        bottom: 78px;
        align-items: stretch;
        flex-direction: column
    }

    .admin-body h1, .admin-body h2, .admin-body h3 {
        font-size: 18px !important
    }

    .login-intro h1, .login-card h2 {
        font-size: 18px !important
    }
}
