    * {
    box-sizing: border-box;
    font-family: 'Segoe UI', Tahoma, sans-serif;
    }

    body {
    margin: 0;
    min-height: 100vh;
    /* background: #44779470; */
    background: #223e56;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0.75rem;
    }

    /* ================= MESSAGES ================= */
    .messages-nav {
    width: 100%;
    max-width: 480px;
    margin-bottom: 1rem;
    text-align: center;
    }
    .messages{
        display: flex;
        justify-content: center;
        align-items: center;

    }
    .messages-nav ul {
    padding: 0;
    text-align: center;
    }

    .messages-nav ul li {
    list-style: none;
    }

    .sms {
    padding: 12px 16px;
    border-radius: 8px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 500;
    text-align: center;
    }

    .msg-success { color: #16a34a; background: #dcfce7; }
    .msg-info    { color: #2563eb; background: #dbeafe; }
    .msg-warning { color: #92400e; background: #fef3c7; }
    .msg-error   { color: #991b1b; background: #fee2e2; }

    .row {
    display: flex;
    gap: 1rem;
    }
    /* ================= CARD ================= */
    .auth-card {
    background: white;
    width: 100%;
    max-width: 480px;
    padding: 1.8rem;
    border-radius: 18px;
    box-shadow: 0 25px 45px rgba(15, 23, 42, 0.15);
    }

    .auth-card h1 {
    margin: 0;
    text-align: center;
    color: #0a2540;
    }

    .subtitle {
    text-align: center;
    color: #64748b;
    margin-bottom: 1.5rem;
    }

    /* ================= INPUTS ================= */
    .input-group {
    margin-bottom: 1rem;
    }

    .input-group label {
    display: block;
    margin-bottom: 6px;
    font-size: 0.9rem;
    }

    .input-group input {
    width: 100%;
    padding: 0.85rem 1rem;
    border-radius: 12px;
    border: 1px solid #c7d2fe;
    background: #eef2ff;
    font-size: 1rem;
    outline: none;
    }

    .input-group input:focus {
    border-color: #4f46e5;
    background: white;
    box-shadow: 0 0 0 3px rgba(79,70,229,.15);
    }

    .show-password {
    display: flex;
    gap: 8px;
    font-size: 0.9rem;
    margin-bottom: 1.2rem;
    }

    /* ================= BUTTON ================= */
    .btn-primary {
    width: 100%;
    padding: 0.95rem;
    border-radius: 14px;
    border: none;
    background: linear-gradient(135deg, #4f46e5, #1d4ed8);
    color: white;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    }

    .btn-primary:hover {
    box-shadow: 0 12px 28px rgba(79,70,229,.35);
    }

    .switch {
    margin-top: 1.5rem;
    text-align: center;
    font-size: 0.9rem;
    }

    .switch a {
    color: #4f46e5;
    font-weight: 600;
    text-decoration: none;
    }

    /* ================= OVERLAY ================= */
    #overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #071125cc;
        display: none;
        justify-content: center;
        align-items: center;
    }
    .loading {
            width: 100px;
            height: 100px;
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 6px;
        }

    .loading span {
    width: 4px;
    height: 10px;
    background: white;
    
    }
    .start span {
            animation: scale 0.9s ease-in-out infinite;
        }

    .loading span:nth-child(1) { background: blue; animation-delay: -0.1s; }
    .loading span:nth-child(2) { background: violet; animation-delay: -0.8s; }
    .loading span:nth-child(3) { background: red; animation-delay: -0.6s; }
    .loading span:nth-child(4) { background: orange; animation-delay: -0.4s; }
    .loading span:nth-child(5) { background: green; animation-delay: -0.2s; }

    @keyframes scale {
    0%,100% { height: 10px; }
    50% { height: 50px; }
    }
