*{box-sizing:border-box;margin:0;padding:0}body{color:#333;background-color:#f8f9fa;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.hotel-banner{color:#fff;text-align:center;background:linear-gradient(135deg,#2c3e50 0%,#3498db 100%);padding:20px 0;box-shadow:0 2px 10px rgba(0,0,0,.1)}.hotel-banner h1{margin:0;font-size:28px;font-weight:700}.hotel-banner p{opacity:.9;margin:5px 0 0;font-size:14px}.container{min-height:calc(100vh - 80px);display:flex}.sidebar{color:#fff;background:#2c3e50;width:250px;padding:20px 0}.logo{border-bottom:1px solid #34495e;margin-bottom:20px;padding:0 20px 30px}.logo h2{color:#3498db;font-size:18px}.nav-item{cursor:pointer;align-items:center;gap:10px;padding:12px 20px;transition:background .3s;display:flex}.nav-item:hover{background:#34495e}.nav-item.active{background:#3498db}.main-content{flex:1;padding:20px}.header{background:#fff;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;display:flex;box-shadow:0 2px 10px rgba(0,0,0,.1)}.header h1{color:#2c3e50;flex:1;font-size:24px}.header-buttons{align-items:center;gap:10px;display:flex}.btn{cursor:pointer;border:none;border-radius:5px;padding:10px 20px;font-weight:500;transition:all .3s}.btn-primary{color:#fff;background:#3498db}.btn-primary:hover{background:#2980b9}.btn-success{color:#fff;background:#27ae60}.btn-success:hover{background:#219a52}.btn-secondary{color:#fff;background:#95a5a6}.btn-danger{color:#fff;background:#e74c3c}.screen{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 20px rgba(0,0,0,.1);display:none!important}.screen.active{display:block!important}.calendar-screen{padding:0}.calendar-screen.active{display:flex!important}.calendar-sidebar{background:#ecf0f1;width:200px;padding:20px}.month-selector{margin-bottom:20px}.filter-buttons{flex-direction:column;gap:10px;display:flex}.filter-btn{cursor:pointer;color:#2c3e50;background:#bdc3c7;border:none;border-radius:5px;padding:8px 15px}.filter-btn.active{color:#fff;background:#27ae60}.calendar-main{flex:1;padding:20px}.calendar-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.calendar-grid{background:#ddd;border-radius:10px;grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.calendar-day{text-align:center;cursor:pointer;background:#fff;min-height:80px;padding:15px 10px;transition:background .3s;position:relative}.calendar-day:hover{background:#ecf0f1}.calendar-day.header{color:#fff;cursor:default;background:#34495e;font-weight:700}.calendar-day.selected{color:#fff;background:#3498db}.calendar-day.booked{color:#fff;background:#e74c3c}.calendar-day.available{color:#fff;background:#27ae60}.booking-info{color:#fff;background:rgba(0,0,0,.7);border-radius:3px;padding:2px;font-size:10px;position:absolute;bottom:2px;left:2px;right:2px}.booking-form{padding:30px}.booking-form.active{gap:30px;display:flex!important}.form-section{flex:2}.form-group{margin-bottom:20px}.form-group label{color:#2c3e50;margin-bottom:5px;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:5px;width:100%;padding:12px;font-size:14px}.form-group textarea{resize:vertical;height:80px}.form-row{gap:15px;display:flex}.guest-counter{align-items:center;gap:10px;display:flex}.guest-btn{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:5px;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.guest-btn:hover{background:#f0f0f0}.summary-section{background:#f8f9fa;border-radius:10px;flex:1;padding:20px}.summary-item{border-bottom:1px solid #eee;justify-content:space-between;margin-bottom:10px;padding:8px 0;display:flex}.summary-total{color:#2c3e50;border-top:2px solid #3498db;margin-top:15px;padding-top:15px;font-size:18px;font-weight:700}.payment-screen{padding:30px}.payment-screen.active{gap:30px;display:flex!important}.booking-summary{background:#f8f9fa;border-radius:10px;flex:1;padding:20px}.summary-row{border-bottom:1px solid #eee;align-items:center;gap:15px;margin-bottom:15px;padding-bottom:15px;display:flex}.summary-icon{color:#fff;background:#3498db;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.payment-methods{flex:1}.payment-method{cursor:pointer;border:2px solid #ddd;border-radius:10px;align-items:center;gap:15px;margin-bottom:15px;padding:15px;transition:all .3s;display:flex}.payment-method:hover{border-color:#3498db}.payment-method.selected{background:#f8fff8;border-color:#27ae60}.payment-icon{color:#fff;background:#3498db;border-radius:5px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.receipt-screen{background:#fff;max-width:800px;margin:0 auto;padding:40px}.receipt-header{text-align:center;border-bottom:2px solid #3498db;margin-bottom:30px;padding-bottom:20px}.hotel-name{color:#2c3e50;margin-bottom:5px;font-size:24px;font-weight:700}.hotel-address{color:#7f8c8d;font-size:14px}.receipt-title{color:#2c3e50;margin:20px 0;font-size:20px;font-weight:700}.receipt-details{grid-template-columns:1fr 1fr;gap:30px;margin-bottom:30px;display:grid}.detail-section h4{color:#2c3e50;margin-bottom:10px;font-size:16px}.detail-row{justify-content:space-between;margin-bottom:5px;display:flex}.receipt-table{border-collapse:collapse;width:100%;margin:20px 0}.receipt-table th,.receipt-table td{text-align:left;border:1px solid #ddd;padding:12px}.receipt-table th{color:#fff;background:#34495e}.receipt-footer{text-align:center;color:#7f8c8d;margin-top:40px;font-size:12px}.modal-overlay{z-index:1000;background:rgba(0,0,0,.7);justify-content:center;align-items:center;display:none;position:fixed;top:0;bottom:0;left:0;right:0}.modal-overlay.active{display:flex}.modal-content{background:#fff;border-radius:10px;max-width:90%;max-height:90%;overflow:auto}.close-btn{cursor:pointer;color:#e74c3c;background:0 0;border:none;font-size:24px;position:absolute;top:10px;right:15px}.hidden{display:none}.login-container{background:linear-gradient(135deg,#2c3e50 0%,#3498db 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-box{text-align:center;background:#fff;border-radius:15px;width:400px;padding:40px;box-shadow:0 10px 40px rgba(0,0,0,.3)}.login-logo{margin-bottom:10px;font-size:48px}.login-title{color:#2c3e50;margin-bottom:5px;font-size:28px;font-weight:700}.login-subtitle{color:#7f8c8d;margin-bottom:30px;font-size:14px}.login-form{text-align:left}.login-form .form-group{margin-bottom:20px}.login-form label{color:#2c3e50;margin-bottom:8px;font-weight:500;display:block}.login-form input{border:2px solid #ddd;border-radius:8px;width:100%;padding:12px;font-size:14px;transition:border-color .3s}.login-form input:focus{border-color:#3498db;outline:none}.login-btn{color:#fff;cursor:pointer;background:#3498db;border:none;border-radius:8px;width:100%;margin-top:10px;padding:14px;font-size:16px;font-weight:700;transition:background .3s}.login-btn:hover{background:#2980b9}.login-error{color:#e74c3c;background:#fadbd8;border-radius:5px;margin-bottom:15px;padding:10px;display:none}.login-info{color:#7f8c8d;background:#f8f9fa;border-radius:8px;margin-top:20px;padding:15px;font-size:12px}.app-container{display:none}.app-container.active{display:block}.user-info{background:#ecf0f1;border-radius:8px;align-items:center;gap:10px;padding:10px 15px;display:flex}.user-name{color:#2c3e50;font-weight:700}.user-role-badge{border-radius:4px;padding:4px 8px;font-size:11px;font-weight:700}.user-role-badge.manager{color:#fff;background:#e74c3c}.user-role-badge.user{color:#fff;background:#27ae60}.logout-btn{color:#fff;cursor:pointer;background:#e74c3c;border:none;border-radius:5px;margin-left:auto;padding:8px 15px;font-size:14px}.logout-btn:hover{background:#c0392b}.room-management-screen{padding:30px}.room-management-screen.active{display:block!important}.room-management-header{border-bottom:2px solid #3498db;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;display:flex}.room-management-header h2{color:#2c3e50;font-size:26px}.rooms-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-bottom:30px;display:grid}.room-card{background:#fff;border:2px solid #e9ecef;border-radius:10px;padding:20px;transition:all .3s;box-shadow:0 2px 5px rgba(0,0,0,.1)}.room-card:hover{border-color:#3498db;transform:translateY(-3px);box-shadow:0 6px 20px rgba(52,152,219,.3)}.room-card h4{color:#2c3e50;margin-bottom:10px;font-size:20px}.room-card .room-price{color:#27ae60;margin:10px 0;font-size:26px;font-weight:700}.room-card .room-details{color:#7f8c8d;margin-bottom:15px;font-size:14px;line-height:1.6}.room-card-actions{gap:10px;margin-top:15px;display:flex}.room-form{background:#fff;border:2px solid #3498db;border-radius:10px;margin-bottom:30px;padding:30px;box-shadow:0 4px 15px rgba(0,0,0,.1)}.room-form h3{color:#2c3e50;margin-bottom:25px;font-size:22px}.btn-edit{color:#fff;cursor:pointer;background:#f39c12;border:none;border-radius:5px;flex:1;padding:8px 15px}.btn-edit:hover{background:#e67e22}.btn-delete{color:#fff;cursor:pointer;background:#e74c3c;border:none;border-radius:5px;flex:1;padding:8px 15px}.btn-delete:hover{background:#c0392b}.user-management-screen{padding:30px}.user-management-screen.active{display:block!important}.user-management-header{border-bottom:2px solid #3498db;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;display:flex}.user-management-header h2{color:#2c3e50;font-size:26px}.users-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-bottom:30px;display:grid}.user-card{background:#fff;border:2px solid #e9ecef;border-radius:10px;padding:20px;transition:all .3s;box-shadow:0 2px 5px rgba(0,0,0,.1)}.user-card:hover{border-color:#3498db;transform:translateY(-3px);box-shadow:0 6px 20px rgba(52,152,219,.3)}.user-card h4{color:#2c3e50;margin-bottom:10px;font-size:20px}.user-card .user-role{color:#3498db;background:#ecf0f1;border-radius:5px;margin:10px 0;padding:5px 10px;font-size:16px;font-weight:700;display:inline-block}.user-card .user-role.manager{color:#e74c3c;background:#fadbd8}.user-card .user-details{color:#7f8c8d;margin-bottom:15px;font-size:14px;line-height:1.6}.user-card-actions{gap:10px;margin-top:15px;display:flex}.user-form{background:#fff;border:2px solid #3498db;border-radius:10px;margin-bottom:30px;padding:30px;box-shadow:0 4px 15px rgba(0,0,0,.1)}.user-form h3{color:#2c3e50;margin-bottom:25px;font-size:22px}.role-badge{border-radius:4px;margin-left:5px;padding:3px 8px;font-size:12px;font-weight:700;display:inline-block}.role-badge.user{color:#155724;background:#d4edda}.role-badge.manager{color:#721c24;background:#f8d7da}.settings-screen{padding:30px}.settings-screen.active{display:block!important}.settings-header{border-bottom:2px solid #3498db;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;display:flex}.settings-header h2{color:#2c3e50;font-size:26px}.services-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-bottom:30px;display:grid}.service-card{background:#fff;border:2px solid #e9ecef;border-radius:10px;padding:20px;transition:all .3s;box-shadow:0 2px 5px rgba(0,0,0,.1)}.service-card:hover{border-color:#f39c12;transform:translateY(-3px);box-shadow:0 6px 20px rgba(243,156,18,.3)}.service-card h4{color:#2c3e50;margin-bottom:10px;font-size:18px}.service-card .service-rate{color:#f39c12;margin:10px 0;font-size:22px;font-weight:700}.service-card-actions{gap:10px;margin-top:15px;display:flex}.service-form{background:#fff;border:2px solid #f39c12;border-radius:10px;margin-bottom:30px;padding:30px;box-shadow:0 4px 15px rgba(0,0,0,.1)}.service-form h3{color:#2c3e50;margin-bottom:25px;font-size:22px}.add-services-screen{padding:30px}.add-services-screen.active{display:block!important}.add-services-header{border-bottom:2px solid #f39c12;margin-bottom:30px;padding-bottom:20px}.add-services-header h2{color:#2c3e50;font-size:26px}.service-addition-form{background:#fff;border:2px solid #f39c12;border-radius:10px;margin-bottom:30px;padding:30px;box-shadow:0 4px 15px rgba(0,0,0,.1)}.service-addition-form h3{color:#2c3e50;margin-bottom:25px;font-size:22px}.service-records{margin-top:30px}.service-record-card{background:#fff;border:2px solid #e9ecef;border-radius:10px;margin-bottom:15px;padding:20px;box-shadow:0 2px 5px rgba(0,0,0,.1)}.service-record-header{border-bottom:2px solid #f39c12;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;display:flex}.service-record-header h4{color:#2c3e50;margin:0}.service-record-date{color:#7f8c8d;font-size:14px}.service-record-details{grid-template-columns:1fr 1fr 1fr;gap:15px;margin-bottom:15px;display:grid}.service-record-item{flex-direction:column;display:flex}.service-record-label{color:#7f8c8d;margin-bottom:5px;font-size:12px}.service-record-value{color:#2c3e50;font-size:16px;font-weight:700}.service-record-total{text-align:right;color:#f39c12;border-top:2px solid #e9ecef;margin-top:10px;padding-top:10px;font-size:20px;font-weight:700}.reports-screen{padding:30px}.reports-screen.active{display:block!important}.reports-header{border-bottom:2px solid #9b59b6;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;display:flex}.reports-header h2{color:#2c3e50;font-size:26px}.date-filter-section{background:#fff;border:2px solid #9b59b6;border-radius:10px;margin-bottom:30px;padding:25px;box-shadow:0 4px 15px rgba(0,0,0,.1)}.date-filter-section h3{color:#2c3e50;margin-bottom:20px}.date-filter-row{align-items:end;gap:20px;display:flex}.btn-filter{color:#fff;cursor:pointer;background:#9b59b6;border:none;border-radius:5px;padding:12px 25px;font-weight:700}.btn-filter:hover{background:#8e44ad}.reports-tabs{gap:10px;margin-bottom:20px;display:flex}.tab-btn{color:#9b59b6;cursor:pointer;background:#fff;border:2px solid #9b59b6;border-radius:5px;padding:12px 25px;font-weight:700;transition:all .3s}.tab-btn.active{color:#fff;background:#9b59b6}.tab-btn:hover{background:#f3e5f5}.reports-list{gap:15px;display:grid}.report-card{cursor:pointer;background:#fff;border:2px solid #e9ecef;border-radius:10px;padding:20px;transition:all .3s;box-shadow:0 2px 5px rgba(0,0,0,.1)}.report-card:hover{border-color:#9b59b6;transform:translateY(-2px);box-shadow:0 6px 20px rgba(155,89,182,.3)}.report-card.occupied{border-left:5px solid #27ae60}.report-card.checked-out{border-left:5px solid #95a5a6}.report-card-header{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.report-card-header h4{color:#2c3e50;margin:0;font-size:18px}.status-badge{border-radius:20px;padding:5px 12px;font-size:12px;font-weight:700}.status-badge.occupied{color:#155724;background:#d4edda}.status-badge.checked-out{color:#383d41;background:#e2e3e5}.report-card-info{grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:10px;display:grid}.info-item{flex-direction:column;display:flex}.info-label{color:#7f8c8d;margin-bottom:3px;font-size:12px}.info-value{color:#2c3e50;font-size:14px;font-weight:700}.report-card-total{text-align:right;color:#9b59b6;border-top:2px solid #e9ecef;padding-top:10px;font-size:18px;font-weight:700}.detail-modal{z-index:2000;background:rgba(0,0,0,.7);justify-content:center;align-items:center;padding:20px;display:none;position:fixed;top:0;bottom:0;left:0;right:0;overflow-y:auto}.detail-modal.active{display:flex}.detail-modal-content{background:#fff;border-radius:15px;width:100%;max-width:900px;max-height:90vh;position:relative;overflow-y:auto}.detail-modal-header{color:#fff;background:linear-gradient(135deg,#9b59b6 0%,#8e44ad 100%);border-radius:15px 15px 0 0;padding:25px 30px}.detail-modal-header h3{margin:0 0 10px;font-size:24px}.detail-modal-body{padding:30px}.detail-section{margin-bottom:30px}.detail-section h4{color:#2c3e50;border-bottom:2px solid #9b59b6;margin-bottom:15px;padding-bottom:10px;font-size:18px}.detail-grid{grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:20px;display:grid}.detail-item{background:#f8f9fa;border-radius:5px;justify-content:space-between;padding:10px;display:flex}.detail-item-label{color:#7f8c8d;font-weight:500}.detail-item-value{color:#2c3e50;font-weight:700}.services-table{border-collapse:collapse;width:100%;margin-top:15px}.services-table th,.services-table td{text-align:left;border-bottom:1px solid #e9ecef;padding:12px}.services-table th{color:#2c3e50;background:#f8f9fa;font-weight:700}.total-summary{background:#f3e5f5;border-radius:10px;margin-top:20px;padding:20px}.total-row{justify-content:space-between;margin-bottom:10px;font-size:16px;display:flex}.total-row.grand-total{color:#9b59b6;border-top:2px solid #9b59b6;margin-top:15px;padding-top:15px;font-size:20px;font-weight:700}@media (max-width:768px){.container{flex-direction:column}.sidebar{width:100%;height:auto}.booking-form,.payment-screen,.calendar-screen{flex-direction:column}.calendar-sidebar{width:100%}.report-card-info{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr}}@media print{body *{visibility:hidden!important}#receipt-modal,#receipt-modal *{visibility:visible!important}#receipt-modal{background:#fff!important;width:100%!important;position:absolute!important;top:0!important;left:0!important}.modal-overlay{background:#fff!important}.modal-content{overflow:visible!important}.close-btn,.hide_in_print{display:none!important}table{page-break-inside:auto!important}tr,td,th{page-break-inside:avoid!important}body{zoom:75%;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}
