*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary:#1e40af;--color-primary-light:#3b82f6;--color-primary-dark:#1e3a8a;--color-success:#16a34a;--color-warning:#eab308;--color-danger:#dc2626;--color-info:#0ea5e9;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--sidebar-width:240px;--status-vacant-clean:#22c55e;--status-vacant-dirty:#eab308;--status-occupied-clean:#3b82f6;--status-occupied-dirty:#f97316;--status-ooo:#ef4444;--status-oos:#9ca3af;--status-office-use:#8b5cf6;--status-under-construction:#78716c}body{color:var(--color-gray-800);background:var(--color-gray-50);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5}#root{min-height:100vh}a{color:var(--color-primary);text-decoration:none}button{cursor:pointer;font-family:inherit;font-size:inherit}input,select,textarea{font-family:inherit;font-size:inherit}.btn{border:none;border-radius:6px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-dark)}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover{background:#15803d}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover{background:#b91c1c}.btn-outline{color:var(--color-gray-700);border:1px solid var(--color-gray-300);background:#fff}.btn-outline:hover{background:var(--color-gray-50)}.btn-sm{padding:4px 10px;font-size:13px}.form-group{margin-bottom:16px}.form-label{color:var(--color-gray-700);margin-bottom:4px;font-size:13px;font-weight:500;display:block}.form-input{border:1px solid var(--color-gray-300);background:#fff;border-radius:6px;width:100%;padding:8px 12px;transition:border-color .15s}.form-input:focus{border-color:var(--color-primary-light);outline:none;box-shadow:0 0 0 3px #3b82f61a}.card{border:1px solid var(--color-gray-200);background:#fff;border-radius:8px;padding:20px}.data-table{border-collapse:collapse;width:100%}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-500);border-bottom:2px solid var(--color-gray-200);padding:10px 12px;font-size:12px;font-weight:600}.data-table td{border-bottom:1px solid var(--color-gray-100);padding:10px 12px}.data-table tbody tr:hover{background:var(--color-gray-50)}.badge{border-radius:12px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.badge-confirmed{color:#1d4ed8;background:#dbeafe}.badge-checked-in{color:#166534;background:#dcfce7}.badge-checked-out{color:#374151;background:#f3f4f6}.badge-cancelled{color:#991b1b;background:#fee2e2}.badge-no-show{color:#92400e;background:#fef3c7}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:85vh;padding:24px;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-header h2{font-size:18px;font-weight:600}.modal-close{color:var(--color-gray-400);background:0 0;border:none;padding:4px;font-size:20px}.modal-close:hover{color:var(--color-gray-600)}.page-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.page-header h1{color:var(--color-gray-900);font-size:24px;font-weight:700}@media print{body *{visibility:hidden}.print-report,.print-report *{visibility:visible}.print-report{width:100%;position:absolute;top:0;left:0;max-width:100%!important;max-height:none!important;box-shadow:none!important;border-radius:0!important;padding:20px!important;overflow:visible!important}.modal-overlay{background:#fff!important}.no-print{display:none!important}}
