:root{
    --bg:#f5f5f5;
    --card:#ffffff;
    --text:#222;
    --primary:#0078D4;
    --danger:#dc3545;
    --success:#28a745;
}

@media (prefers-color-scheme: dark){

:root{
    --bg:#121212;
    --card:#1e1e1e;
    --text:#ffffff;
}

}

*{
    box-sizing:border-box;
}

body{
    font-family:"Segoe UI",sans-serif;
    background:var(--bg);
    color:var(--text);
    margin:0;
    padding:20px;
}

.container{
    max-width:1200px;
    margin:auto;
}

.card{
    background:var(--card);
    padding:20px;
    margin-bottom:20px;
    border-radius:12px;
    box-shadow:0 2px 8px rgba(0,0,0,.1);
}

.grid{
    display:grid;
    gap:10px;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
}

label{
    display:block;
    margin-bottom:5px;
    font-weight:600;
}

input{
    width:100%;
    padding:10px;
}

button{
    border:none;
    border-radius:8px;
    padding:12px 16px;
    cursor:pointer;
    margin-top:10px;
    font-weight:bold;
}

.btn-primary{
    background:var(--primary);
    color:white;
}

.btn-export{
    background:var(--success);
    color:white;
    margin-left:10px;
}

.btn-danger{
    background:var(--danger);
    color:white;
}

.stats{
    display:grid;
    gap:15px;
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    margin-bottom:20px;
}

.stat{
    background:var(--card);
    text-align:center;
    padding:20px;
    border-radius:12px;
}

.stat-value{
    font-size:26px;
    font-weight:bold;
    color:var(--primary);
}

table{
    width:100%;
    border-collapse:collapse;
}

th,td{
    border:1px solid #dcdcdc;
    padding:10px;
    text-align:center;
}

th{
    background:#f0f0f0;
}

@media (prefers-color-scheme: dark){

th{
    background:#2a2a2a;
}

}

@media(max-width:768px){

table{
    font-size:12px;
}

th,td{
    padding:5px;
}

}