@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";
:root{--bg:#f8f9fa;--surface:#fff;--border:#e5e7eb;--border-strong:#d1d5db;--text:#111827;--text-muted:#6b7280;--text-light:#9ca3af;--primary:#2563eb;--primary-hover:#1d4ed8;--danger:#dc2626;--danger-hover:#b91c1c;--success:#16a34a;--radius:8px;--radius-sm:4px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);padding:7px 14px;font-family:inherit;font-size:13px;font-weight:500;line-height:1}button:hover:not(:disabled){background:var(--bg)}button:disabled{opacity:.55;cursor:not-allowed}button.btn-primary{background:var(--primary);border-color:var(--primary);color:#fff}button.btn-primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}button.btn-danger{border-color:var(--danger);color:var(--danger);background:0 0}button.btn-danger:hover:not(:disabled){background:#fef2f2}input[type=text],input[type=email],input[type=password],textarea,select{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text);outline:none;padding:8px 10px;font-family:inherit;font-size:14px}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 2px #2563eb1f}table{border-collapse:collapse;width:100%;font-size:13px}thead{background:var(--bg)}th{text-align:left;color:var(--text-muted);border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.04em;padding:9px 12px;font-size:12px;font-weight:600}td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 12px}tr:last-child td{border-bottom:none}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}label{color:var(--text);margin-bottom:5px;font-size:13px;font-weight:500;display:block}.badge{border-radius:10px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-block}.badge-completed{color:var(--success);background:#dcfce7}.badge-pending{color:#a16207;background:#fef9c3}.badge-default{background:var(--bg);color:var(--text-muted)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0006;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--surface);border-radius:var(--radius);width:100%;max-width:500px;max-height:90vh;animation:.3s ease-out slideUp;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h2{font-size:18px;font-weight:600}.modal-body{padding:24px}.modal-footer{border-top:1px solid var(--border);background:#f9fafb;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.close-btn{color:var(--text-muted);background:0 0;border:none;padding:4px;font-size:20px;line-height:1}.close-btn:hover{color:var(--text);background:var(--bg)}
