body{-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}#root{width:100%;min-height:100vh}*{box-sizing:border-box;margin:0;padding:0}body{color:#333;background:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.login{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.login h1{color:#1e3a5f;margin-bottom:24px}.login form{flex-direction:column;gap:12px;width:320px;display:flex}.login input{border:2px solid #ddd;border-radius:8px;padding:12px;font-size:14px}.login button{color:#fff;cursor:pointer;background:#1e3a5f;border:none;border-radius:8px;padding:12px;font-size:14px;font-weight:600}.login button:hover{opacity:.9}.error{color:#e53e3e;font-size:13px}.success{color:#38a169;margin:8px 0;font-size:13px}.admin-layout{min-height:100vh;display:flex}.sidebar{color:#fff;background:#1e3a5f;flex-direction:column;width:160px;min-width:160px;padding:20px 0;display:flex}.sidebar h1{border-bottom:1px solid #ffffff1a;padding:0 20px 20px;font-size:20px}.sidebar ul{flex:1;padding:8px 0;list-style:none}.sidebar li{cursor:pointer;padding:12px 20px;font-size:14px;transition:background .2s}.sidebar li:hover{background:#ffffff1a}.sidebar li.active{background:#fff3;font-weight:600}.sidebar .logout{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:6px;margin:12px 16px;padding:10px;font-size:13px}.sidebar .logout:hover{background:#fff3}.content{flex:1;width:0;max-width:calc(100vw - 160px);padding:16px 12px;overflow-x:auto}.content h2{color:#1e3a5f;margin-bottom:20px}.content h3{color:#2d4a6f;margin:16px 0 8px}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:24px;display:grid}.stat{text-align:center;background:#fff;border-radius:10px;padding:16px;box-shadow:0 1px 3px #00000014}.stat .num{color:#1e3a5f;font-size:28px;font-weight:700;display:block}.stat .label{color:#888;text-transform:uppercase;letter-spacing:.5px;font-size:12px}table{border-collapse:collapse;table-layout:auto;background:#fff;border-radius:8px;width:100%;margin-bottom:16px;font-size:12px;overflow:hidden;box-shadow:0 1px 3px #00000014}th{text-align:left;color:#555;white-space:nowrap;background:#f8f9fa;border-bottom:2px solid #eee;padding:8px;font-weight:600}td{border-bottom:1px solid #f0f0f0;padding:6px 8px}tr:hover{background:#fafafa}td input{border:1px solid #ccc;border-radius:4px;width:100%;padding:4px 8px;font-size:13px}.search-bar{gap:8px;margin-bottom:16px;display:flex}.search-bar input{border:2px solid #ddd;border-radius:8px;flex:1;padding:10px 14px;font-size:14px}.search-bar button{color:#fff;cursor:pointer;background:#1e3a5f;border:none;border-radius:8px;padding:10px 20px;font-weight:600}.pagination{justify-content:center;align-items:center;gap:16px;margin-top:12px;display:flex}.pagination button{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:6px;padding:6px 16px}.pagination button:disabled{opacity:.4;cursor:default}.btn-sm{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:4px;padding:4px 10px;font-size:12px}.btn-sm:hover{background:#f0f0f0}.btn-danger{color:#e53e3e;border-color:#feb2b2}.btn-danger:hover{background:#fff5f5}.tabs{gap:4px;margin-bottom:16px;display:flex}.tabs button{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:6px;padding:8px 16px;font-size:13px}.tabs button.active{color:#fff;background:#1e3a5f;border-color:#1e3a5f}.tools-grid{gap:8px;margin-bottom:16px;display:flex}.tools-grid button{cursor:pointer;background:#fff;border:2px solid #ddd;border-radius:8px;padding:10px 20px;font-weight:600}.tools-grid button:hover{color:#1e3a5f;border-color:#1e3a5f}.type-badge{border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.type-badge.hdb{color:#be123c;background:#ffe4e6}.type-badge.condo{color:#1d4ed8;background:#dbeafe}.type-badge.ec{color:#065f46;background:#d1fae5}.section{margin-bottom:24px}.empty{color:#888;padding:16px;font-style:italic}.tfa-hint{color:#666;text-align:center;font-size:14px}.audit-log{max-height:500px;overflow-y:auto}.audit-log .entry{border-bottom:1px solid #f0f0f0;gap:12px;padding:8px 12px;font-size:13px;display:flex}.audit-log .entry:hover{background:#fafafa}.audit-log .time{color:#888;white-space:nowrap;min-width:140px}.audit-log .user{color:#1e3a5f;min-width:160px;font-weight:600}.audit-log .action{flex:1}
