body{
    font-family: Arial, Helvetica, sans-serif;
    min-height: 100vh;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    color: #1e293b;

    background: linear-gradient(
        -45deg,
        #dbeafe,
        #e0f2fe,
        #d6e9ff,
        #c7e6ff
    );

    background-size: 400% 400%;
    animation: gradientBG 15s ease infinite;
}

/* BACKGROUND ANIMATION */
@keyframes gradientBG{
    0%{ background-position: 0% 50%; }
    50%{ background-position: 100% 50%; }
    100%{ background-position: 0% 50%; }
}

/* FLOATING LIGHTS */
body::before,
body::after{
    content: "";
    position: fixed;
    border-radius: 50%;
    filter: blur(90px);
    z-index: -1;
}

body::before{
    width: 350px;
    height: 350px;

    top: -100px;
    left: -100px;

    background: rgba(147,197,253,0.35);

    animation: float1 10s ease-in-out infinite alternate;
}

body::after{
    width: 400px;
    height: 400px;

    bottom: -120px;
    right: -120px;

    background: rgba(191,219,254,0.35);

    animation: float2 12s ease-in-out infinite alternate;
}

@keyframes float1{
    from{ transform: translateY(0px); }
    to{ transform: translateY(40px); }
}

@keyframes float2{
    from{ transform: translateX(0px); }
    to{ transform: translateX(-40px); }
}

/* NAVBAR */
.navbar{
    display: flex;
    justify-content: space-between;
    align-items: center;

    padding: 12px 25px;

    background: rgba(255,255,255,0.18);

    backdrop-filter: blur(14px);

    box-shadow: 0 5px 20px rgba(0,0,0,0.08);

    width: 100%;
    box-sizing: border-box;
}

/* LOGO */
.logo{
    font-size: 30px;
    font-weight: bold;
    color: white;
}

/* NAV LINKS */
.nav-links{
    display: flex;
    gap: 25px;
}

.nav-links a{
    text-decoration: none;
    color: white;
    font-weight: 600;
    position: relative;
}

/* HOVER EFFECT */
.nav-links a::after{
    content: "";
    position: absolute;

    left: 0;
    bottom: -5px;

    width: 0%;
    height: 2px;

    background: white;

    transition: 0.3s;
}

.nav-links a:hover::after{
    width: 100%;
}

/* CARD */
.card{
    width: 90%;
    max-width: 1000px;

    margin: 40px auto;
    padding: 30px;

    background: rgba(255,255,255,0.18);

    border: 1px solid rgba(255,255,255,0.25);

    backdrop-filter: blur(18px);

    border-radius: 25px;

    box-shadow: 0 10px 30px rgba(0,0,0,0.1);

    animation: fadeUp 0.7s ease;

    transition: 0.3s ease;
}

.card:hover{
    transform: translateY(-5px);
}

/* CARD ANIMATION */
@keyframes fadeUp{
    from{
        opacity: 0;
        transform: translateY(20px);
    }

    to{
        opacity: 1;
        transform: translateY(0);
    }
}

/* TABLE */
table{
    width: 100%;
    border-collapse: collapse;
    overflow: hidden;
    border-radius: 15px;
}

/* TABLE HEADER */
th{
    background: rgba(59,130,246,0.8);
    color: white;

    padding: 14px;
    text-align: center;
}

/* TABLE DATA */
td{
    background: rgba(255,255,255,0.2);

    padding: 14px;
    text-align: center;

    border-bottom: 1px solid rgba(255,255,255,0.2);
}

/* ROW HOVER */
tr{
    transition: 0.3s ease;
}

tr:hover{
    background: rgba(255,255,255,0.15);
}

/* SECTION TITLE */
h5{
    text-align: center;

    background: rgba(37,99,235,0.75);

    color: white;

    padding: 10px;

    border-radius: 12px;
}

/* TABLE RESPONSIVE */
.table-responsive{
    border-radius: 15px;
    overflow: hidden;
}

/* LOGOUT */
.logout{
    position: absolute;
    top: 90px;
    right: 20px;
}

/* STATUS COLORS */
.status-waiting{
    color: orange;
    font-weight: bold;
}

.status-serving{
    color: green;
    font-weight: bold;
}

.status-done{
    color: red;
    font-weight: bold;
}

/* ===== LANDING PAGE ===== */

.landing-page{
    min-height: 100vh;

    display: flex;
    justify-content: center;
    align-items: center;

    padding: 40px;
}

/* MAIN GLASS CARD */
.landing-card{
    width: 100%;
    max-width: 1200px;
    min-height: 600px;

    display: flex;

    overflow: hidden;

    border-radius: 35px;

    background: linear-gradient(
        135deg,
        rgba(255,255,255,0.15),
        rgba(173,216,230,0.18)
    );

    border: 1px solid rgba(255,255,255,0.25);

    backdrop-filter: blur(20px);

    box-shadow: 0 10px 40px rgba(0,0,0,0.15);
}

/* LEFT SIDE */
.landing-left{
    flex: 1;

    padding: 70px;

    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* LOGO SECTION */
.logo-section{
    display: flex;
    align-items: center;
    gap: 20px;
}

.system-logo{
    width: 100px;
    height: 100px;
    object-fit: cover;
}

/* TITLE */
.logo-section h1{
    font-size: 60px;
    font-weight: bold;

    color: #1e293b;
}

.logo-section p{
    margin-top: 10px;

    color: #475569;

    font-size: 18px;

    max-width: 500px;
}

/* BUTTONS */
.landing-buttons{
    margin-top: 40px;

    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

.landing-buttons a{
    padding: 15px 28px;

    border-radius: 15px;

    text-decoration: none;
    font-weight: bold;

    transition: 0.3s ease;
}

/* SYSTEM TITLE SECTION */
.system-title h1{
    font-size: 55px;
    font-weight: bold;
     font-family: lydian;
    color: #1d4ed8;

    letter-spacing: 1px;

    text-shadow: 0 4px 15px rgba(0,0,0,0.15);
    margin-bottom: 10px;
}

/* DESCRIPTION */
.system-title p{
    font-size: 17px;
    color: #334155;

    max-width: 500px;

    line-height: 1.6;

    background: rgba(255,255,255,0.25);

    padding: 12px 16px;

    border-radius: 12px;

    backdrop-filter: blur(10px);

    border-left: 4px solid #2563eb;
}


.user-btn{
    background: #2563eb;
    color: white;

    box-shadow: 0 5px 15px rgba(37,99,235,0.35);
}

.admin-btn{
    background: #38bdf8;
    color: white;

    box-shadow: 0 5px 15px rgba(56,189,248,0.35);
}

.landing-buttons a:hover{
    transform: translateY(-5px) scale(1.03);
}

/* RIGHT SIDE */
.landing-right{
    flex: 1;

    position: relative;

    display: flex;
    justify-content: center;
    align-items: center;

    overflow: hidden;
}

/* CIRCLES */
.circle{
    position: absolute;
    border-radius: 50%;
}

/* BIG CIRCLE */
.big-circle{
    width: 320px;
    height: 320px;

    background: rgba(147,197,253,0.45);

    top: 60px;
    right: 60px;
}

/* SMALL CIRCLE */
.small-circle{
    width: 220px;
    height: 220px;

    background: rgba(191,219,254,0.5);

    bottom: 70px;
    left: 70px;
}

/* DESIGN TEXT STYLE */
.design-text{
    text-align: center;
    padding: 20px;
}

/* WELCOME TEXT */
.design-text h2{
    font-size: 50px;
    font-weight: bold;
    font-family: lydian;
    color: #1d4ed8; /* BLUE COLOR */
    letter-spacing: 2px;

    text-shadow: 0 4px 10px rgba(0,0,0,0.2);
}

/* PARAGRAPH */
.design-text p{
    font-size: 18px;
    color: #272221;

    margin-top: 10px;

    background: rgba(255,255,255,0.25);
    padding: 12px 18px;

    border-radius: 12px;

    backdrop-filter: blur(10px);
}


/* GLASS TEXT BOX */
.glass-box{
    position: relative;
    z-index: 2;

    width: 75%;

    padding: 40px;

    border-radius: 25px;

    text-align: center;

    background: rgba(255,255,255,0.18);

    border: 1px solid rgba(255,255,255,0.25);

    backdrop-filter: blur(15px);
}

.glass-box h2{
    font-size: 45px;
    font-weight: bold;

    color: white;
}

.glass-box p{
    margin-top: 15px;

    color: white;

    font-size: 17px;
}

/* RESPONSIVE */
@media(max-width:900px){

    .landing-card{
        flex-direction: column;
    }

    .landing-left{
        padding: 40px;
    }

    .logo-section{
        flex-direction: column;
        text-align: center;
    }

    .landing-buttons{
        justify-content: center;
    }

    .landing-right{
        min-height: 350px;
    }

    .logo-section h1{
        font-size: 40px;
    }
}