@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap');
:root { --primary: #0f172a; --accent: #2563eb; --success: #10b981; --bg: #f8fafc; }
* { box-sizing: border-box; }
body { font-family: 'Inter', sans-serif; background: var(--bg); margin: 0; display: flex; min-height: 100vh; color: #1e293b; }

.sidebar { width: 300px; background: var(--primary); color: white; padding: 40px 20px; flex-shrink: 0; box-shadow: 4px 0 15px rgba(0,0,0,0.1); }
.main { flex: 1; padding: 25px; width: 100%; overflow-x: hidden; }

.card { background: #fff; padding: 25px; border-radius: 20px; box-shadow: 0 10px 15px -3px rgba(0,0,0,0.05); margin-bottom: 25px; border: 1px solid #e2e8f0; }
input, textarea { width: 100%; padding: 14px; margin: 8px 0; border: 1px solid #cbd5e1; border-radius: 12px; font-size: 16px; outline: none; }
input:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1); }

button, .btn { display: block; width: 100%; padding: 16px; border: none; border-radius: 12px; font-weight: 700; cursor: pointer; text-decoration: none; text-align: center; font-size: 16px; transition: 0.2s; }
.btn-s { background: var(--accent); color: white; }
.btn-g { background: var(--success); color: white; }
.btn-p { background: #1e293b; color: white; width: auto; padding: 8px 12px; font-size: 12px; display: inline-block; }

.table-res { overflow-x: auto; background: #fff; border-radius: 15px; border: 1px solid #e2e8f0; }
table { width: 100%; border-collapse: collapse; min-width: 600px; }
th, td { padding: 15px; text-align: left; border-bottom: 1px solid #f1f5f9; }
th { background: #f8fafc; font-size: 11px; color: #64748b; text-transform: uppercase; }

.grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
@media (max-width: 1024px) { body { flex-direction: column; } .sidebar { width: 100%; text-align: center; } .grid { grid-template-columns: 1fr; } }