body{
    font-family: Arial, sans-serif;
    background:#f5f5f5;
    margin:20px;
    color:#333;
}

.login-box,
.form-box{
    background:#fff;
    padding:20px;
    border-radius:8px;
    max-width:700px;
    margin:auto;
    box-shadow:0 2px 10px rgba(0,0,0,0.08);
}

input,
select,
textarea,
button{
    width:100%;
    padding:10px;
    margin-bottom:10px;
    box-sizing:border-box;
    border:1px solid #ccc;
    border-radius:5px;
}

button{
    cursor:pointer;
    background:#007bff;
    color:white;
    border:none;
}

button:hover{
    background:#0069d9;
}

table{
    width:100%;
    border-collapse:collapse;
    background:white;
    margin-top:20px;
    box-shadow:0 2px 10px rgba(0,0,0,0.08);
}

th{
    background:#f0f0f0;
}

th,
td{
    border:1px solid #ddd;
    padding:10px;
    text-align:left;
}

table tr:hover{
    background:#f8f8f8;
}

.topbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:20px;
}

.topbar a{
    text-decoration:none;
    color:#333;
    font-weight:bold;
}

.topbar a:hover{
    color:#000;
}

.error{
    background:#ffdddd;
    padding:10px;
    margin-bottom:10px;
    border-radius:5px;
}

.top-actions{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    margin:20px 0;
}

.search-box{
    flex:1;
}

.search-box input{
    width:100%;
    padding:10px;
    border:1px solid #ccc;
    border-radius:5px;
    margin-bottom:0;
}

.btn-new{
    background:#28a745;
    color:white;
    padding:10px 15px;
    border-radius:5px;
    text-decoration:none;
    font-weight:bold;
    white-space:nowrap;
}

.btn-new:hover{
    background:#218838;
}

.btn-edit{
    text-decoration:none;
    font-size:18px;
}

.btn-delete{
    text-decoration:none;
    font-size:18px;
}

.btn-edit:hover,
.btn-delete:hover{
    opacity:0.7;
}

@media (max-width:768px){

    body{
        margin:10px;
    }

    .top-actions{
        flex-direction:column;
        align-items:stretch;
    }

    .btn-new{
        text-align:center;
    }

    table{
        font-size:14px;
    }

    th,
    td{
        padding:6px;
    }
}
