:root{

            --black:#0a050d;
            --pink:#e3245e;
            --gold:#e8bd40;

            --soft-dark:#1b1220;
            --soft-bg:#f7f5f8;

        }

        *{
            font-family:'Inter', sans-serif;
        }

        body{

            background:
                radial-gradient(circle at top left, #2a1830 0%, transparent 25%),
                radial-gradient(circle at bottom right, #1b1220 0%, transparent 25%),
                var(--black);

            min-height:100vh;
            padding:25px;
        }

        /* MAIN CARD */

        .main-card{

            border-radius:32px;
            overflow:hidden;
            background:white;
            box-shadow:
                0 30px 80px rgba(0,0,0,.45),
                0 0 35px rgba(227,36,94,.12);

            border:1px solid rgba(232,189,64,.15);
            max-width:1400px;
            margin:0 auto;  

        }

        /* RIGHT PANEL */

        .right-panel{

            padding:60px;
            background:white;

        }

        .title{

            font-weight:800;
            color:var(--black);

            font-size:2.5rem;

        }

        .subtitle{

            color:#6b7280;
            margin-top:10px;
            margin-bottom:40px;

            line-height:1.8;

        }

        /* INPUTS */

        .form-label{

            font-weight:700;
            color:var(--black);

        }

        .form-control,
        .form-select{

            background:#fff;

            border:2px solid #f2e7ee;

            padding:16px 18px;

            border-radius:18px;

            transition:.3s;

            min-height:58px;

        }

        .form-control:focus,
        .form-select:focus{

            border-color:var(--pink);

            box-shadow:
                0 0 0 5px rgba(227,36,94,.12),
                0 12px 30px rgba(227,36,94,.12);

        }

        /* SCHEDULE */

        .schedule-title{

            font-weight:800;
            font-size:2rem;

            color:var(--black);

            margin-top:50px;

        }

        .schedule-subtitle{

            color:#6b7280;
            margin-bottom:30px;

            line-height:1.8;

        }

        /* MOBILE SCROLL */

        .schedule-wrapper{

            overflow-x:auto;
            padding-bottom:10px;

        }

        .schedule-wrapper::-webkit-scrollbar{

            height:10px;

        }

        .schedule-wrapper::-webkit-scrollbar-thumb{

            background:var(--pink);
            border-radius:20px;

        }

        .schedule-container{

            min-width:900px;

            display:grid;

            grid-template-columns:120px repeat(5, 1fr);

            gap:12px;

        }

        /* HEADER */

        .day-header{

            height:70px;

            background:
                linear-gradient(
                    145deg,
                    var(--pink),
                    #c61d50
                );

            border-radius:18px;

            display:flex;
            align-items:center;
            justify-content:center;

            color:white;
            font-weight:700;

            box-shadow:
                0 10px 20px rgba(227,36,94,.2);

            position:sticky;
            top:0;

            z-index:5;

        }

        /* HOURS */

        .hour{

            height:70px;

            background:
                linear-gradient(
                    145deg,
                    var(--black),
                    var(--soft-dark)
                );

            color:white;

            border-radius:18px;

            display:flex;
            justify-content:center;
            align-items:center;

            font-size:.9rem;
            font-weight:700;

        }

        .empty{

            background:transparent;
            box-shadow:none;

        }

        /* CELLS */

        .cell{

            height:70px;

            background:var(--gold);

            border-radius:18px;

            cursor:pointer;

            transition:.25s ease;

            box-shadow:
                0 6px 14px rgba(232,189,64,.25);

        }

        .cell:hover{

            transform:translateY(-2px) scale(1.03);

            box-shadow:
                0 12px 25px rgba(232,189,64,.35);

        }

        .cell.active{

            background:
                linear-gradient(
                    145deg,
                    var(--pink),
                    #c51f51
                );

            box-shadow:
                0 12px 25px rgba(227,36,94,.35);

        }

        /* BUTTON */

        .btn-vertice{

            background:
                linear-gradient(
                    145deg,
                    var(--pink),
                    #b81e4b
                );

            border:none;

            color:white;

            padding:18px;

            border-radius:20px;

            font-weight:700;

            font-size:1.1rem;

            transition:.3s;

            width:100%;

            margin-top:45px;

            box-shadow:
                0 15px 30px rgba(227,36,94,.2);

        }

        .btn-vertice:hover{

            transform:translateY(-2px);

            box-shadow:
                0 25px 40px rgba(227,36,94,.3);

            color:white;

        }

        /* MOBILE */

        @media(max-width:992px){

            .right-panel{

                padding:30px;

            }

            .title{

                font-size:2rem;

            }

        }

        @media(max-width:576px){

            body{

                padding:12px;

            }

            .main-card{

                border-radius:24px;

            }

            .right-panel{

                padding:25px;

            }

            .title{

                font-size:1.7rem;

            }

            .schedule-container{

                gap:8px;

            }

            .day-header,
            .hour,
            .cell{

                height:60px;
                border-radius:14px;

                font-size:.8rem;

            }

        }

        .hero-section{

            background:
                 linear-gradient(
                    135deg,
                    #0a050d 0%,
                    #45142f 45%,
                    #e3245e 100%
                );

            color:white;

            border-bottom:6px solid var(--gold);

            text-align:center;

            padding:70px 60px;

            position:relative;

            overflow:hidden;

        }

        .hero-section::before{

        content:'';

        position:absolute;

        width:350px;
        height:350px;

        border-radius:50%;

        background:rgba(232,189,64,.08);

        top:-120px;
        right:-120px;

    }

    .hero-section h1{

        position:relative;
        z-index:2;

        font-size:3rem;

        font-weight:800;

        margin-bottom:25px;

    }

    .hero-section p{

        position:relative;
        z-index:2;

        max-width:850px;

        margin:auto;

        line-height:1.9;

        opacity:.92;

    }

    .admin-access{

        position:fixed;

        top:20px;
        right:20px;

        z-index:9999;

    }
    .admin-access a{

        text-decoration:none;

        background:rgba(255,255,255,.08);

        color:white;

        padding:12px 18px;

        border-radius:16px;

        backdrop-filter:blur(10px);

        transition:.3s;

        font-weight:600;

    }
    .admin-access a:hover{

        background:var(--pink);

        color:white;

    }

    .form-section-title,
    .schedule-header{

        margin-bottom:35px;

    }

    .form-section-title h2,
    .schedule-header h3{

        font-weight:800;
        color:var(--pink);
        font-weight:800;
        margin-bottom:10px;

    }

    .form-section-title p,
    .schedule-header p{

        color:#6b7280;
        line-height:1.8;
        margin-bottom:0;

    }


        