*{box-sizing:border-box}body{color:#1f2937;background:#f4f6f8;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}input,textarea,select,button{font:inherit}.login-wrap{place-items:center;min-height:100vh;padding:24px;display:grid}.layout{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#0f172a;flex-direction:column;gap:8px;padding:18px;display:flex}.sidebar h2{margin:0 0 10px;font-size:18px}.sidebar button{color:#fff;text-align:left;cursor:pointer;background:#1e293b;border:0;border-radius:10px;padding:10px 12px}.sidebar button.active{background:#f97316}.content{padding:18px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:12px}.list{gap:10px;display:grid}.row{align-items:center;gap:8px;display:flex}input,textarea,select{background:#fff;border:1px solid #d1d5db;border-radius:10px;width:100%;padding:8px 10px}textarea{resize:vertical;min-height:86px}button{color:#fff;cursor:pointer;background:#f97316;border:0;border-radius:10px;padding:8px 12px}button.danger{background:#dc2626}.error{color:#991b1b;background:#fee2e2;border:1px solid #fca5a5;border-radius:10px;margin:10px 0;padding:10px}.login-card{gap:8px;width:min(420px,100%);display:grid}.panel{gap:10px;display:grid}.panel-form{gap:8px;max-width:720px;display:grid}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.toolbar-search{flex:240px;min-width:200px}.table-wrap{overflow-x:auto}.table-card{padding:0}.data-table{border-collapse:collapse;width:100%;font-size:14px}.data-table th,.data-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e5e7eb;padding:10px 12px}.data-table th{color:#475569;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;background:#f8fafc;font-size:12px;font-weight:600}.data-table tbody tr:hover{background:#f8fafc}.data-table tbody tr:last-child td{border-bottom:0}.empty-cell{text-align:center;color:#64748b;padding:28px 12px!important}.cell-title{max-width:220px;font-weight:600}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.nowrap{white-space:nowrap}.actions-cell{white-space:nowrap;text-align:right}.actions-cell .btn-ghost+.btn-ghost{margin-left:4px}.input-sm,.select-sm{min-width:120px;padding:6px 8px;font-size:13px}.badge{text-transform:lowercase;border-radius:999px;padding:3px 8px;font-size:12px;font-weight:600;display:inline-block}.badge-muted{color:#475569;background:#e2e8f0}.badge-success{color:#166534;background:#dcfce7}.badge-warning{color:#9a3412;background:#ffedd5}.badge-danger{color:#991b1b;background:#fee2e2}.btn-ghost{color:#334155;background:#f1f5f9;padding:6px 10px;font-size:13px}.btn-ghost:hover{background:#e2e8f0}.btn-ghost:disabled{opacity:.5;cursor:not-allowed}.danger-text{color:#dc2626}.pagination{color:#64748b;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.pagination-controls{align-items:center;gap:10px;display:flex}.modal-overlay{z-index:1000;background:#0f172a73;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border:1px solid #e5e7eb;border-radius:14px;flex-direction:column;width:min(520px,100%);max-height:min(90vh,900px);display:flex;box-shadow:0 20px 50px #0f172a2e}.modal-wide{width:min(720px,100%)}.modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.modal-header h3{margin:0;font-size:18px}.modal-body{padding:16px;overflow:auto}.form-stack{gap:8px;display:grid}.form-stack label,.field-label{color:#64748b;text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:600}.field-grow{flex:1;gap:8px;display:grid}.modal-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.detail-image,.rep-photo{object-fit:cover;border:1px solid #e5e7eb;border-radius:12px;width:100%;max-height:260px}.muted{color:#64748b;margin:6px 0 0}@media (width<=900px){.layout{grid-template-columns:1fr}.sidebar{flex-flow:wrap}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:1fr}}
