:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-light: #dbeafe;--color-danger: #ef4444;--color-danger-hover: #dc2626;--color-success: #059669;--color-warning: #d97706;--color-nav-bg: #1a1a2e;--color-nav-text: rgba(255, 255, 255, .7);--color-nav-active: #ffffff;--color-bg: #f3f4f6;--color-surface: #ffffff;--color-border: #e5e7eb;--color-border-light: #f3f4f6;--color-text-primary: #111827;--color-text-secondary: #374151;--color-text-muted: #6b7280;--color-text-placeholder: #9ca3af;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.375rem;--font-size-2xl: 1.5rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 24px rgba(0, 0, 0, .15);--touch-target-min: 44px;--touch-target-nav: 48px;--fab-size: 56px;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--bottom-nav-height: 56px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans SC,sans-serif;color:var(--color-text-primary);background:var(--color-bg);line-height:1.5;font-size:var(--font-size-base)}a{color:inherit;text-decoration:none}button{font-family:inherit}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.form-group{margin-bottom:var(--spacing-md)}.form-label{display:block;margin-bottom:var(--spacing-xs);font-weight:500;font-size:var(--font-size-base);color:var(--color-text-secondary)}.form-input,.form-select,.form-textarea{width:100%;min-height:var(--touch-target-nav);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb26}.form-error{color:var(--color-danger);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:.75rem 1.25rem;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:background var(--transition-fast)}.btn-primary{background:var(--color-primary);color:var(--color-surface)}.btn-primary:hover{background:var(--color-primary-hover)}.btn-secondary{background:var(--color-text-muted);color:var(--color-surface)}.btn-secondary:hover{background:#4b5563}.btn-danger{background:var(--color-danger);color:var(--color-surface)}.btn-danger:hover{background:var(--color-danger-hover)}.btn-outline{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary)}.btn-outline:hover{background:var(--color-bg)}.btn-icon{display:inline-flex;align-items:center;gap:.5rem}.card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-lg)}.table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.status-pending{color:var(--color-warning);background:#fef3c7}.status-checked_in{color:var(--color-success);background:#d1fae5}.status-checked_out{color:var(--color-text-muted);background:var(--color-bg)}.status-urgent{color:var(--color-danger);background:#fee2e2}.status-normal{color:var(--color-primary);background:var(--color-primary-light)}.status-active{color:var(--color-success);background:#d1fae5}.status-maintenance{color:var(--color-text-muted);background:var(--color-bg)}.status-completed{color:var(--color-success);background:#d1fae5}.status-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:.25rem .75rem;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500}.status-badge svg{flex-shrink:0}.page-title{font-size:var(--font-size-xl);font-weight:700;margin-bottom:var(--spacing-lg);color:var(--color-text-primary)}.filter-bar{display:flex;flex-direction:column;gap:.75rem;margin-bottom:var(--spacing-md);align-items:stretch}@media(min-width:640px){.filter-bar{flex-direction:row;flex-wrap:wrap;align-items:flex-end}}
