:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;color-scheme:light dark}body{margin:0;min-height:100vh;transition:background-color .3s ease,color .3s ease}#root{width:100%;min-height:100vh}*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary: #f5f7fa;--bg-secondary: #ffffff;--bg-tertiary: #f8f9fa;--text-primary: #333333;--text-secondary: #666666;--text-muted: #999999;--border-color: #e1e5eb;--border-light: #f0f2f5;--shadow: rgba(0,0,0,.08);--shadow-hover: rgba(0,0,0,.12);--accent-primary: #3498db;--accent-primary-hover: #2980b9;--accent-success: #27ae60;--accent-success-hover: #219a52;--accent-warning: #f39c12;--accent-danger: #e74c3c;--accent-danger-hover: #c0392b;--gradient-primary: linear-gradient(135deg, #2c3e50, #3498db)}[data-theme=dark]{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-tertiary: #3a3a3a;--text-primary: #ffffff;--text-secondary: #cccccc;--text-muted: #888888;--border-color: #404040;--border-light: #505050;--shadow: rgba(0,0,0,.3);--shadow-hover: rgba(0,0,0,.4);--accent-primary: #4a9eff;--accent-primary-hover: #3d8bdb;--accent-success: #2ecc71;--accent-success-hover: #27ae60;--accent-warning: #f1c40f;--accent-danger: #e74c3c;--accent-danger-hover: #c0392b;--gradient-primary: linear-gradient(135deg, #34495e, #4a9eff)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-tertiary: #3a3a3a;--text-primary: #ffffff;--text-secondary: #cccccc;--text-muted: #888888;--border-color: #404040;--border-light: #505050;--shadow: rgba(0,0,0,.3);--shadow-hover: rgba(0,0,0,.4);--accent-primary: #4a9eff;--accent-primary-hover: #3d8bdb;--accent-success: #2ecc71;--accent-success-hover: #27ae60;--accent-warning: #f1c40f;--accent-danger: #e74c3c;--accent-danger-hover: #c0392b;--gradient-primary: linear-gradient(135deg, #34495e, #4a9eff)}}html{font-size:16px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}.app{min-height:100vh}.theme-toggle{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);padding:.5rem;border-radius:8px;cursor:pointer;font-size:1.2rem;transition:all .3s ease;display:flex;align-items:center;justify-content:center;width:40px;height:40px}.theme-toggle:hover{background:var(--bg-primary);transform:scale(1.05)}.header{background:var(--gradient-primary);color:#fff;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.header h1{font-size:1.5rem;margin-bottom:0}.header p{opacity:.9;font-size:.85rem;margin-left:.5rem;display:none}.header>div:last-child{display:flex;align-items:center;gap:1rem}.nav{display:flex;gap:.5rem;padding:.75rem 1rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);overflow-x:auto;-webkit-overflow-scrolling:touch;transition:background-color .3s ease,border-color .3s ease}.nav::-webkit-scrollbar{height:4px}.nav::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.nav button{padding:.5rem .75rem;border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .3s ease;color:var(--text-primary);font-weight:500;white-space:nowrap;flex-shrink:0}.nav button:hover{background:var(--bg-tertiary);border-color:var(--accent-primary)}.nav button.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.main{padding:1rem;max-width:1400px;margin:0 auto}.card{background:var(--bg-secondary);border-radius:10px;padding:1rem;box-shadow:0 2px 8px var(--shadow);margin-bottom:1rem;overflow-x:auto;transition:all .3s ease;border:1px solid var(--border-color)}.card:hover{box-shadow:0 4px 12px var(--shadow-hover)}.card h2{margin-bottom:.75rem;color:var(--text-primary);font-size:1rem}.card h3{font-size:.95rem;color:var(--text-primary)}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1rem}.stat-card{background:var(--bg-secondary);border-radius:10px;padding:1rem;text-align:center;box-shadow:0 2px 8px var(--shadow);border:1px solid var(--border-color);transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-hover)}.stat-card .number{font-size:1.5rem;font-weight:700;color:var(--accent-primary)}.stat-card .label{color:var(--text-secondary);margin-top:.25rem;font-size:.75rem}.stat-card.available .number{color:var(--accent-success)}.stat-card.booked .number{color:var(--accent-warning)}.stat-card.maintenance .number{color:var(--accent-danger)}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}table{width:100%;border-collapse:collapse;min-width:600px}th,td{padding:.6rem .5rem;text-align:left;border-bottom:1px solid var(--border-color);font-size:.8rem;transition:border-color .3s ease}th{background:var(--bg-tertiary);font-weight:600;color:var(--text-primary);white-space:nowrap}tr:hover{background:var(--bg-tertiary)}td{color:var(--text-primary)}.badge{display:inline-block;padding:.2rem .5rem;border-radius:20px;font-size:.7rem;font-weight:500}.badge.available{background:#d4edda;color:#155724}.badge.booked{background:#fff3cd;color:#856404}.badge.maintenance{background:#f8d7da;color:#721c24}.badge.pending{background:#e2e3e5;color:#383d41}.badge.confirmed{background:#cce5ff;color:#004085}.badge.admin{background:#e8d4f8;color:#6b21a8}.badge.staff{background:#dbeafe;color:#1e40af}[data-theme=dark] .badge.available{background:#1e4620;color:#4ade80}[data-theme=dark] .badge.booked{background:#451a03;color:#fbbf24}[data-theme=dark] .badge.maintenance{background:#450a0a;color:#f87171}[data-theme=dark] .badge.pending{background:#1f2937;color:#d1d5db}[data-theme=dark] .badge.confirmed{background:#1e3a8a;color:#60a5fa}[data-theme=dark] .badge.admin{background:#581c87;color:#c084fc}[data-theme=dark] .badge.staff{background:#1e3a8a;color:#60a5fa}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .badge.available{background:#1e4620;color:#4ade80}:root:not([data-theme=light]) .badge.booked{background:#451a03;color:#fbbf24}:root:not([data-theme=light]) .badge.maintenance{background:#450a0a;color:#f87171}:root:not([data-theme=light]) .badge.pending{background:#1f2937;color:#d1d5db}:root:not([data-theme=light]) .badge.confirmed{background:#1e3a8a;color:#60a5fa}:root:not([data-theme=light]) .badge.admin{background:#581c87;color:#c084fc}:root:not([data-theme=light]) .badge.staff{background:#1e3a8a;color:#60a5fa}}.form-group{margin-bottom:.75rem}.form-group label{display:block;margin-bottom:.35rem;font-weight:500;font-size:.8rem;color:var(--text-primary)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:6px;font-size:.85rem;background:var(--bg-secondary);color:var(--text-primary);transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3498db1a}.form-group input:disabled{background:var(--bg-tertiary);color:var(--text-muted)}.form-row{display:grid;grid-template-columns:1fr;gap:.75rem}.btn{padding:.5rem .75rem;border:none;border-radius:6px;cursor:pointer;font-size:.8rem;transition:all .3s ease;font-weight:500}.btn-primary{background:var(--accent-primary);color:#fff}.btn-primary:hover{background:var(--accent-primary-hover);transform:translateY(-1px)}.btn-success{background:var(--accent-success);color:#fff}.btn-success:hover{background:var(--accent-success-hover);transform:translateY(-1px)}.btn-danger{background:var(--accent-danger);color:#fff}.btn-danger:hover{background:var(--accent-danger-hover);transform:translateY(-1px)}.btn-small{padding:.3rem .5rem;font-size:.75rem}.btn:not(.btn-primary):not(.btn-success):not(.btn-danger){background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn:not(.btn-primary):not(.btn-success):not(.btn-danger):hover{background:var(--bg-primary)}.checklist{list-style:none}.checklist li{display:flex;align-items:center;gap:.75rem;padding:.6rem 0;border-bottom:1px solid var(--border-light);font-size:.85rem;color:var(--text-primary)}.checklist input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--accent-primary)}.loading{text-align:center;padding:2rem;color:var(--text-secondary)}.error{color:var(--accent-danger);padding:1rem;background:var(--bg-tertiary);border-radius:8px;border:1px solid var(--accent-danger)}.auth-container{min-height:100vh;background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;padding:1rem}.auth-card{background:var(--bg-secondary);border-radius:16px;box-shadow:0 20px 40px var(--shadow);width:100%;max-width:400px;overflow:hidden;border:1px solid var(--border-color)}.auth-header{background:var(--gradient-primary);color:#fff;padding:2rem 1.5rem;text-align:center}.auth-header h1{font-size:1.75rem;margin-bottom:.5rem}.auth-header p{opacity:.9;font-size:.9rem;margin:0}.auth-card form{padding:1.5rem}.auth-btn{width:100%;padding:.75rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .3s ease}.auth-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3498db4d}.auth-footer{padding:1rem;text-align:center;background:var(--bg-tertiary);border-top:1px solid var(--border-color)}.auth-toggle{background:none;border:none;color:var(--accent-primary);cursor:pointer;text-decoration:underline;transition:color .3s ease}.auth-toggle:hover{color:var(--accent-primary-hover)}div[style*="linear-gradient(135deg, #dc3545"]{background:var(--accent-danger)!important}div[style*="position: fixed"]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}div[style*="position: fixed"]>div{background:var(--bg-secondary)!important;border:1px solid var(--border-color);color:var(--text-primary)}@media(min-width:768px){.header{padding:1.25rem 2rem}.header h1{font-size:1.75rem}.header p{display:inline}.nav{padding:.75rem 2rem}.nav button{padding:.6rem 1rem;font-size:.85rem}.main{padding:1.5rem 2rem}.card{padding:1.25rem}.card h2{font-size:1.1rem}.stats-grid{grid-template-columns:repeat(4,1fr);gap:1rem}.stat-card{padding:1.25rem}.stat-card .number{font-size:1.75rem}.stat-card .label{font-size:.85rem}.form-row{grid-template-columns:repeat(2,1fr)}th,td{padding:.75rem;font-size:.85rem}.badge{font-size:.75rem;padding:.25rem .6rem}}@media(min-width:1024px){.header{padding:1.5rem 3rem}.nav{padding:.75rem 3rem;gap:.5rem}.main{padding:1.5rem 3rem}.form-row{grid-template-columns:repeat(3,1fr)}.stats-grid{gap:1.5rem}.stat-card .number{font-size:2rem}}@media(min-width:1280px){.stats-grid[style*="repeat(5"]{grid-template-columns:repeat(5,1fr)!important}}@media(max-width:767px){.header>div:first-child{width:100%}.header>div:last-child{width:100%;justify-content:space-between;font-size:.85rem}.stats-grid[style]{grid-template-columns:repeat(2,1fr)!important}div[style*="grid-template-columns: 1fr 1fr"]{grid-template-columns:1fr!important}div[style*="position: fixed"]>div{width:95%!important;max-width:none!important;margin:.5rem;max-height:85vh!important}div[style*="display: flex"][style*=gap]{flex-wrap:wrap}.form-row[style*=alignItems]{grid-template-columns:1fr!important}}
