body{
    font-family: Arial, sans-serif;
    background:#f5f5f5;
    -webkit-text-size-adjust:100%;
}

.login-container{
    width:350px;
    margin:100px auto;
    background:white;
    padding:30px;
    border-radius:10px;
    box-shadow:0 0 10px #ccc;
}

input{
    width:100%;
    padding:10px;
    margin-top:10px;
    margin-bottom:10px;
}

button{
    width:100%;
    padding:10px;
    background:#007bff;
    color:white;
    border:none;
    cursor:pointer;
}

button:hover{
    background:#0056b3;
}

img,
canvas,
svg{
    max-width:100%;
}

table{
    max-width:100%;
}

@media (max-width:800px){
    body{
        margin:10px;
    }

    .login-container{
        width:auto;
        max-width:390px;
        margin:55px 12px;
        padding:22px;
    }

    input,
    select,
    textarea,
    button{
        font-size:16px;
        box-sizing:border-box;
    }

    .card,
    .table-card,
    .summary-card,
    .filter-card,
    .form-card,
    section,
    main{
        max-width:100%;
        overflow-x:auto;
    }

    .summary-grid,
    .quick-actions,
    .overview-grid,
    .stats-grid,
    .cards-grid{
        grid-template-columns:1fr !important;
    }

    .summary-value,
    .overview-value,
    .amount,
    .money{
        white-space:nowrap;
        overflow-wrap:normal;
        word-break:normal;
    }

    .page-header,
    .header{
        max-width:100%;
        overflow:hidden;
    }

    .header-content{
        min-width:0 !important;
        width:100%;
    }

    .association-name,
    .page-header h1,
    .header h1{
        white-space:normal !important;
        overflow-wrap:anywhere;
        word-break:normal;
    }

    table{
        width:max-content;
        min-width:720px;
        max-width:none;
        border-collapse:collapse;
    }

    th,
    td{
        white-space:nowrap;
    }

    .responsive-table-wrap{
        width:100%;
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
        border-radius:8px;
    }

    .responsive-table-wrap table{
        margin-bottom:0;
    }
}
