/* Custom styles for BRILink System dengan Skema Warna Baru */
body {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background-color: #ffffff;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

#app {
    flex: 1;
    display: flex;
    flex-direction: column;
}

main {
    flex: 1;
    padding: 0;
}

.footer {
    margin-top: auto;
}

/* Mobile-first approach */
.container {
    padding: 0;
    max-width: 100%;
}

/* Flat Design Elements dengan Skema Warna */
.card {
    border: none;
    border-radius: 20px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
    background-color: #ffffff;
}

.btn {
    border-radius: 25px;
    border: 2px solid #3a3737;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

.btn-primary {
    background-color: #72dad3;
    border-color: #72dad3;
    color: #ffffff;
}

.btn-primary:hover {
    background-color: #5bc5be;
    border-color: #5bc5be;
}

.btn-secondary {
    background-color: transparent;
    border-color: #3a3737;
    color: #3a3737;
}

.btn-secondary:hover {
    background-color: #fff3d6;
}

/* Remove hover effects for mobile */
@media (max-width: 768px) {
    .card:hover {
        transform: none;
        box-shadow: 0 4px 20px rgba(0,0,0,0.1);
    }
    
    /* Full screen on mobile */
    main {
        padding: 20px 0;
    }
    
    .container {
        padding: 0px;
    }
}

/* Utility classes */
.text-shadow {
    text-shadow: 0 1px 3px rgba(0,0,0,0.3);
}

.no-select {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* Background Colors */
.bg-primary-custom {
    background-color: #fff3d6;
}

.bg-secondary-custom {
    background-color: #ffffff;
}

.bg-accent-custom {
    background-color: #72dad3;
}

/* Text Colors */
.text-primary-custom {
    color: #3a3737;
}

.text-secondary-custom {
    color: #666666;
}

.text-accent-custom {
    color: #72dad3;
}