*{box-sizing:border-box;margin:0;padding:0}body{background:#f5f6fa;color:#2d3748;font-family:Inter,sans-serif}.layout{display:flex;min-height:100vh}.sidebar{background:#1a1f36;color:#fff;display:flex;flex-direction:column;height:100vh;overflow-y:auto;position:fixed;width:250px;z-index:100}.sidebar-logo{align-items:center;border-bottom:1px solid #2d3748;display:flex;gap:12px;padding:20px}.sidebar-logo img{border-radius:8px;height:45px;object-fit:cover;width:45px}.sidebar-logo-text h2{color:#fff;font-size:14px;font-weight:700}.sidebar-logo-text p{color:#718096;font-size:11px}.sidebar-nav{flex:1 1;padding:12px 0}.nav-section-title{color:#4a5568;font-size:10px;font-weight:600;letter-spacing:1px;padding:12px 20px 6px;text-transform:uppercase}.nav-item{align-items:center;border-left:3px solid #0000;color:#a0aec0;cursor:pointer;display:flex;font-size:13px;gap:10px;padding:10px 20px;text-decoration:none;transition:all .2s}.nav-item:hover{background:#2d3748;color:#fff}.nav-item.active{background:#2d3748;border-left-color:#63b3ed;color:#63b3ed}.nav-item .nav-icon{font-size:16px;text-align:center;width:20px}.main-content{display:flex;flex:1 1;flex-direction:column;margin-left:250px;min-height:100vh}.topbar{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:14px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:50}.topbar-title{color:#2d3748;font-size:18px;font-weight:600}.topbar-right{align-items:center;display:flex;gap:12px}.admin-badge{background:#ebf8ff;border-radius:20px;color:#2b6cb0;font-size:12px;font-weight:600;padding:4px 12px}.logout-btn{background:#fff5f5;border:1px solid #fed7d7;border-radius:6px;color:#c53030;cursor:pointer;font-size:12px;font-weight:500;padding:6px 14px}.logout-btn:hover{background:#fed7d7}.page-content{flex:1 1;padding:24px}.card{background:#fff;border-radius:10px;box-shadow:0 1px 3px #00000014;margin-bottom:20px;padding:20px}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.card-title{color:#2d3748;font-size:15px;font-weight:600}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:24px}.stat-card{background:#fff;box-shadow:0 1px 3px #00000014;gap:14px;padding:20px}.stat-card,.stat-icon{align-items:center;border-radius:10px;display:flex}.stat-icon{font-size:22px;height:48px;justify-content:center;width:48px}.stat-info h3{color:#2d3748;font-size:22px;font-weight:700}.stat-info p{color:#718096;font-size:12px}.btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.btn-primary{background:#3182ce;color:#fff}.btn-primary:hover{background:#2b6cb0}.btn-success{background:#38a169;color:#fff}.btn-success:hover{background:#2f855a}.btn-danger{background:#e53e3e;color:#fff}.btn-danger:hover{background:#c53030}.btn-warning{background:#d69e2e;color:#fff}.btn-warning:hover{background:#b7791f}.btn-secondary{background:#718096;color:#fff}.btn-secondary:hover{background:#4a5568}.btn-outline{background:#0000;border:1px solid #e2e8f0;color:#4a5568}.btn-outline:hover{background:#f7fafc}.btn-sm{font-size:12px;padding:5px 10px}.form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.form-group{display:flex;flex-direction:column;gap:5px}.form-group label{color:#4a5568;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;font-family:inherit;font-size:13px;padding:9px 12px;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#63b3ed;box-shadow:0 0 0 3px #63b3ed1a;outline:none}.form-group textarea{min-height:80px;resize:vertical}.form-actions{border-top:1px solid #e2e8f0;display:flex;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:16px}.table-wrapper{overflow-x:auto}table{border-collapse:collapse;font-size:13px;width:100%}table th{background:#f7fafc;border-bottom:1px solid #e2e8f0;color:#718096;font-size:11px;font-weight:600;letter-spacing:.5px;padding:10px 14px;text-align:left;text-transform:uppercase}table td{border-bottom:1px solid #f0f4f8;color:#4a5568;padding:12px 14px}table tr:hover td{background:#f7fafc}.badge{border-radius:12px;font-size:11px;font-weight:600;padding:3px 8px}.badge-success{background:#c6f6d5;color:#276749}.badge-danger{background:#fed7d7;color:#9b2c2c}.badge-warning{background:#fefcbf;color:#744210}.badge-info{background:#bee3f8;color:#2a4365}.badge-secondary{background:#e2e8f0;color:#4a5568}.modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.modal{background:#fff;border-radius:12px;max-height:90vh;max-width:700px;overflow-y:auto;width:100%}.modal-header{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:18px 24px;position:-webkit-sticky;position:sticky;top:0}.modal-header h3{font-size:16px;font-weight:600}.modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#718096;cursor:pointer;display:flex;font-size:20px;height:28px;justify-content:center;padding:0;width:28px}.modal-close:hover{background:#f7fafc}.modal-body{padding:20px 24px}.filters-bar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.filters-bar input,.filters-bar select{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;font-size:13px;padding:8px 12px}.filters-bar input:focus,.filters-bar select:focus{border-color:#63b3ed;outline:none}.login-page{align-items:center;background:linear-gradient(135deg,#1a1f36,#2d3748);display:flex;justify-content:center;min-height:100vh}.login-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:400px;padding:40px;width:100%}.login-logo{margin-bottom:28px;text-align:center}.login-logo img{border-radius:12px;height:70px;margin-bottom:10px;width:70px}.login-logo h1{color:#2d3748;font-size:20px;font-weight:700}.login-logo p{color:#718096;font-size:12px;margin-top:2px}.login-form{display:flex;flex-direction:column;gap:14px}.login-form input{border:1px solid #e2e8f0;border-radius:8px;font-size:14px;padding:11px 14px;transition:border-color .2s}.login-form input:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.login-btn{background:#3182ce;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:6px;padding:12px}.login-btn:hover{background:#2b6cb0}.error-msg{background:#fff5f5;border:1px solid #fed7d7;border-radius:6px;color:#c53030;font-size:13px;padding:10px 14px}.room-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}.room-cell{border-radius:8px;cursor:pointer;font-size:12px;font-weight:600;padding:12px 8px;text-align:center;transition:transform .1s}.room-cell:hover{transform:scale(1.05)}.room-available{background:#c6f6d5;border:2px solid #9ae6b4;color:#276749}.room-occupied{background:#fed7d7;border:2px solid #fc8181;color:#9b2c2c}.room-number{font-size:14px;font-weight:700}.room-status-text{font-size:10px;margin-top:2px}.photo-upload-preview{border:2px solid #e2e8f0;border-radius:8px;height:100px;object-fit:cover;width:100px}.photo-placeholder{align-items:center;background:#f7fafc;border:2px dashed #e2e8f0;border-radius:8px;color:#a0aec0;display:flex;font-size:28px;height:100px;justify-content:center;width:100px}.alert{border-radius:6px;font-size:13px;margin-bottom:14px;padding:10px 16px}.alert-success{background:#c6f6d5;color:#276749}.alert-error{background:#fff5f5;color:#c53030}.alert-info{background:#ebf8ff;color:#2b6cb0}@media (max-width:768px){.sidebar{width:200px}.main-content{margin-left:200px}.stats-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}}@media (max-width:600px){.sidebar{display:none}.main-content{margin-left:0}}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:#718096;font-size:12px}.mb-0{margin-bottom:0}.mt-10{margin-top:10px}.flex{display:flex}.gap-10{gap:10px}.items-center{align-items:center}.justify-between{justify-content:space-between}.flex-wrap{flex-wrap:wrap}
/*# sourceMappingURL=main.b53a3aaa.css.map*/