*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Roboto,Arial,sans-serif;background:#f4f6f9;color:#333;line-height:1.5}nav{background:#2c3e50;padding:16px 30px;display:flex;align-items:center;gap:25px;box-shadow:0 2px 8px #00000014}nav a{color:#fff;text-decoration:none;font-weight:500;font-size:15px}nav a:hover{opacity:.85}.container{max-width:1100px;margin:auto;padding:30px 20px}h1,h2{margin-top:0}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.subtext{color:#777;margin-top:4px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.card{background:#fff;border-radius:10px;padding:22px;box-shadow:0 3px 12px #00000014;transition:transform .15s ease,box-shadow .15s ease}.card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000001f}.card-header{font-size:14px;color:#777;margin-bottom:8px}.card-value{font-size:32px;font-weight:700;margin-bottom:6px}.card-footer{font-size:13px;color:#888}.success{color:#27ae60}.danger{color:#e74c3c}.table-container{overflow-x:auto}table{width:100%;border-collapse:collapse;margin-top:20px;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #0000000d}th{background:#34495e;color:#fff;font-weight:600}th,td{padding:12px 14px;text-align:left}tr:nth-child(2n){background:#f7f7f7}button{border:none;padding:8px 16px;border-radius:5px;cursor:pointer;font-size:14px;background:#3498db;color:#fff;transition:background .15s ease}button:hover{background:#2980b9}.delete-btn{background:#e74c3c}.delete-btn:hover{background:#c0392b}form{background:#fff;padding:24px;border-radius:10px;max-width:500px;width:100%;box-shadow:0 3px 12px #00000014}input,select{width:100%;padding:10px;margin-bottom:14px;border-radius:5px;border:1px solid #ccc;font-size:14px}input:focus,select:focus{outline:none;border-color:#3498db}.status-present{color:#27ae60;font-weight:600}.status-absent{color:#e74c3c;font-weight:600}.success-message{color:#27ae60;margin-bottom:10px}.error-message{color:#e74c3c;margin-bottom:10px}.empty-state{text-align:center;color:#777;padding:30px}.loader{text-align:center;padding:30px;font-size:16px;color:#777}@media(max-width:768px){nav{flex-wrap:wrap;gap:12px}.container{padding:20px 16px}.card-value{font-size:26px}.page-header{flex-direction:column;align-items:flex-start;gap:10px}}@media(max-width:500px){table{font-size:13px}th,td{padding:10px}button{width:100%}}
