*{box-sizing:border-box;margin:0;padding:0}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color:#1f2937;background-color:#f9fafb;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{min-height:100vh}a{text-decoration:none;color:inherit}button{border:none;background:none;font-family:inherit;cursor:pointer}.front-office-page{display:flex;gap:1.5rem;padding:1.5rem;min-height:calc(100vh - 80px)}.front-office-sidebar{width:25%;min-width:280px;max-width:320px;background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;padding:.75rem;height:fit-content;position:sticky;top:1.5rem}.sidebar-header{display:none}.sidebar-header h3{font-size:1rem;font-weight:600;color:#1f2937;margin:0}.sidebar-header svg{color:#6b7280}.filter-section{display:flex;flex-direction:column;gap:.75rem}.filter-group{display:flex;flex-direction:column;gap:.25rem}.filter-group label{font-size:.75rem;font-weight:500;color:#374151}.filter-row{display:flex;gap:.5rem}.filter-row .filter-group{flex:1}.date-input-wrapper{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:.375rem;background-color:#f9fafb;transition:all .2s ease}.date-input-wrapper.compact{padding:.375rem .5rem;gap:.25rem}.date-input-wrapper.compact input{font-size:.75rem}.date-input-wrapper:focus-within{border-color:#3b82f6;background-color:#fff;box-shadow:0 0 0 2px #3b82f61a}.date-input-wrapper svg{color:#9ca3af;flex-shrink:0}.date-input-wrapper input{flex:1;border:none;background:transparent;font-size:.813rem;color:#374151;outline:none}.date-range{display:flex;flex-direction:column;gap:.375rem}.date-range .date-input-wrapper{width:100%}.date-separator{display:none}.filter-group select{padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:.375rem;background-color:#f9fafb;font-size:.813rem;color:#374151;cursor:pointer;transition:all .2s ease}.filter-group select:focus{outline:none;border-color:#3b82f6;background-color:#fff;box-shadow:0 0 0 2px #3b82f61a}.front-office-sidebar .searchable-select,.front-office-sidebar .search-input-wrapper{border:none!important;box-shadow:none!important;outline:none!important}.front-office-sidebar .search-input-wrapper{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:none!important;border-radius:.375rem;background-color:#f9fafb;transition:all .2s ease}.front-office-sidebar .search-input-wrapper:hover{background-color:#f3f4f6}.front-office-sidebar .search-input-wrapper:focus-within{background-color:#e5e7eb}.front-office-sidebar .search-input-wrapper svg{color:#9ca3af;flex-shrink:0}.front-office-sidebar .search-input-wrapper input{flex:1;border:none!important;background:transparent;font-size:.813rem;color:#374151;outline:none!important;box-shadow:none!important}.front-office-sidebar .search-input-wrapper input:focus{border:none!important;outline:none!important;box-shadow:none!important}.dropdown-list{position:absolute;top:100%;left:0;right:0;background-color:#fff;border:1px solid #e5e7eb;border-radius:.375rem;box-shadow:0 4px 6px -1px #0000001a;max-height:200px;overflow-y:auto;z-index:100;margin-top:.25rem}.dropdown-item{padding:.5rem .75rem;font-size:.813rem;color:#374151;cursor:pointer;transition:background-color .15s ease}.dropdown-item:hover{background-color:#f3f4f6}.dropdown-item.selected{background-color:#eff6ff;color:#3b82f6}.status-section{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.status-section>label{display:block;font-size:.813rem;font-weight:500;color:#374151;margin-bottom:.75rem}.status-list{display:flex;flex-direction:column;gap:.375rem}.status-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border:none;border-left:3px solid;border-radius:.375rem;background-color:#fff;cursor:pointer;transition:all .2s ease;text-align:left}.status-item:hover{background-color:#f9fafb}.status-item.active{box-shadow:0 1px 3px #0000001a}.status-label{font-size:.813rem;font-weight:500}.status-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 .375rem;border-radius:9999px;font-size:.75rem;font-weight:600;color:#fff}.clear-filters-btn{width:100%;margin-top:1.5rem;padding:.625rem 1rem;border:1px solid #e5e7eb;border-radius:.375rem;background-color:#fff;font-size:.813rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease}.clear-filters-btn:hover{background-color:#f9fafb;color:#374151}.front-office-content{flex:1;display:flex;flex-direction:column;gap:1.5rem}.fo-widgets-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.fo-widget{display:flex;flex-direction:column;background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.fo-widget-main{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem}.fo-widget-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:.75rem;flex-shrink:0}.fo-widget-icon.staying{background-color:#dbeafe;color:#3b82f6}.fo-widget-icon.arrivals{background-color:#dcfce7;color:#22c55e}.fo-widget-icon.departures{background-color:#fef3c7;color:#f59e0b}.fo-widget-icon.stayovers{background-color:#ede9fe;color:#8b5cf6}.fo-widget-info{flex:1}.fo-widget-info h3{font-size:.813rem;font-weight:500;color:#6b7280;margin:0 0 .375rem}.fo-widget-stats{display:flex;align-items:baseline;gap:.375rem}.fo-widget-value{font-size:1.75rem;font-weight:700;color:#1f2937;line-height:1}.fo-widget-label{font-size:.813rem;color:#9ca3af}.fo-widget-footer{padding:.625rem 1.25rem;background-color:#f9fafb;border-top:1px solid #e5e7eb;font-size:.75rem;color:#6b7280}.reservation-list-card{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.reservation-list-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.reservation-list-header h3{font-size:1rem;font-weight:600;color:#1f2937;margin:0}.reservation-list-actions{display:flex;align-items:center;gap:.75rem}.reservation-search{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:.375rem;background-color:#f9fafb}.reservation-search svg{color:#9ca3af}.reservation-search input{border:none;background:transparent;font-size:.813rem;color:#374151;outline:none;width:200px}.reservation-search input::placeholder{color:#9ca3af}.reservation-table-container{overflow-x:auto}.reservation-table{width:100%;border-collapse:collapse}.reservation-table th,.reservation-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e5e7eb;vertical-align:middle}.reservation-table th{background-color:#f9fafb;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.025em;white-space:nowrap}.reservation-table tbody tr:hover{background-color:#f9fafb}.reservation-table tbody tr:last-child td{border-bottom:none}.checkbox-col input[type=checkbox]{width:16px;height:16px;cursor:pointer}.agency-cell .agency-name{font-size:.813rem;font-weight:600;color:#1f2937}.agency-cell .agency-id{font-size:.688rem;color:#9ca3af;margin-top:.125rem}.guest-cell .guest-info{display:flex;align-items:center;gap:.75rem}.guest-avatar{width:36px;height:36px;border-radius:50%;background-color:#dbeafe;color:#3b82f6;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0}.guest-details .guest-name{font-size:.813rem;font-weight:500;color:#1f2937}.guest-details .guest-nationality{font-size:.688rem;color:#6b7280;margin-top:.125rem}.nationality-flag{background-color:#f3f4f6;padding:.125rem .375rem;border-radius:.25rem;font-size:.625rem;font-weight:500}.room-no-cell{font-size:.875rem;font-weight:600;color:#3b82f6}.dates-cell .dates-info{display:flex;align-items:flex-start;gap:.5rem}.dates-cell svg{color:#9ca3af;margin-top:.125rem}.dates-stack{display:flex;flex-direction:column;gap:.125rem}.dates-stack span{font-size:.75rem;color:#374151}.room-type-cell .room-type-name{font-size:.75rem;font-weight:500;color:#1f2937}.room-type-cell .room-type-guests{font-size:.688rem;color:#6b7280;margin-top:.125rem}.concept-cell .concept-name{font-size:.75rem;font-weight:500;color:#1f2937}.concept-cell .concept-code{font-size:.688rem;color:#9ca3af;margin-top:.125rem}.total-cell .total-price{font-size:.875rem;font-weight:700;color:#1f2937}.total-cell .price-breakdown{font-size:.688rem;color:#6b7280;margin-top:.125rem}.room-status-badge{display:inline-block;padding:.25rem .5rem;border-radius:9999px;font-size:.688rem;font-weight:500}.actions-wrapper{display:flex;align-items:center;gap:.25rem;min-width:100px}.reservation-table td:last-child{min-width:110px}.actions-wrapper .action-btn,.reservation-table .action-btn,.hotel-action-btn{display:flex!important;align-items:center!important;justify-content:center!important;width:32px!important;height:32px!important;border:none!important;border-radius:.375rem!important;background-color:transparent!important;color:#1f2937!important;cursor:pointer!important;transition:all .15s ease!important}.actions-wrapper .action-btn:hover,.hotel-action-btn:hover{background-color:#f3f4f6;color:#374151}.actions-wrapper .action-btn.delete:hover,.hotel-action-btn.delete:hover{background-color:#fef2f2;color:#ef4444}.reservation-row{cursor:context-menu}.context-menu{position:fixed;z-index:1000;min-width:220px;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 10px 25px #00000026;padding:.375rem 0;max-height:80vh;overflow:visible}.context-menu.open-upward .context-submenu{top:auto;bottom:0}.context-menu-category{position:relative}.context-menu-category.active{z-index:10;background-color:#f9fafb}.context-menu-category-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;font-size:.813rem;font-weight:500;color:#374151;cursor:pointer;transition:background-color .15s ease}.context-menu-category-header:hover,.context-menu-category.active .context-menu-category-header{background-color:#f3f4f6}.context-menu-category-header svg{color:#9ca3af}.category-label{display:flex;align-items:center;gap:.5rem}.category-label svg{color:#6b7280}.context-submenu{position:absolute;left:calc(100% + 2px);top:-1px;min-width:260px;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 10px 25px #00000026;padding:.375rem 0;max-height:none;overflow:visible;visibility:hidden;opacity:0;transition:opacity .15s ease,visibility .15s ease;z-index:1001}.context-menu-category:hover .context-submenu{visibility:visible;opacity:1}.context-menu-category:hover .context-menu-category-header{background-color:#f3f4f6}.context-menu-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.75rem;color:#4b5563;cursor:pointer;transition:background-color .15s ease;white-space:nowrap}.context-menu-item svg{color:#9ca3af;flex-shrink:0}.context-menu-item:hover{background-color:#f3f4f6;color:#374151}.context-menu-item:hover svg{color:#6b7280}.context-menu-category+.context-menu-category{border-top:1px solid #e5e7eb}.content-header{display:flex;justify-content:space-between;align-items:center}.currency-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:#fff;border:1px solid #e5e7eb;border-radius:.375rem}.currency-code{font-size:.75rem;font-weight:600;color:#6b7280}.pagination-container{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-top:1px solid #e5e7eb;background:#f9fafb}.pagination-info{font-size:.813rem;color:#6b7280}.pagination-controls{display:flex;align-items:center;gap:.25rem}.pagination-btn{min-width:32px;height:32px;padding:0 .5rem;border:1px solid #e5e7eb;background:#fff;border-radius:.375rem;font-size:.813rem;color:#374151;cursor:pointer;transition:all .15s ease}.pagination-btn.active{background:#1a1a1a;border-color:#1a1a1a;color:#fff}.pagination-ellipsis{padding:0 .25rem;color:#9ca3af}.currency-value{font-size:.875rem;font-weight:600;color:#1f2937}.modal-overlay{position:fixed;inset:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content{background-color:#fff;border-radius:.75rem;box-shadow:0 25px 50px #00000040;width:100%;max-width:480px;overflow:hidden}.modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.modal-body p{font-size:.938rem;color:#374151;margin:0 0 1.25rem;line-height:1.6}.modal-reservation-details{background-color:#f9fafb;border-radius:.5rem;padding:1rem}.detail-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #e5e7eb}.detail-label{font-size:.813rem;color:#6b7280}.detail-value{font-size:.813rem;font-weight:500;color:#1f2937}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background-color:#f9fafb}.modal-btn{padding:.625rem 1.25rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.modal-btn.cancel{background-color:#fff;border:1px solid #e5e7eb;color:#6b7280}.modal-btn.cancel:hover{background-color:#f3f4f6;color:#374151}.modal-btn.confirm{background-color:#1f2937;border:none;color:#fff}.modal-btn.confirm:hover{background-color:#374151}.toast-notification{position:fixed;bottom:24px;right:24px;z-index:3000;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-content{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background-color:#ecfdf5;border:1px solid #a7f3d0;border-radius:.5rem;box-shadow:0 4px 12px #0000001a}.toast-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background-color:#10b981;color:#fff;border-radius:50%;font-size:.75rem;font-weight:600}.toast-message{font-size:.875rem;font-weight:500;color:#065f46}.cancel-modal .modal-header.cancel-header{background-color:#fef2f2;border-bottom:1px solid #fecaca}.cancel-modal .modal-header h3{color:#dc2626}.cancel-warning{font-size:.938rem;color:#dc2626;font-weight:500;margin:0 0 1rem}.cancel-confirm-text{font-size:.875rem;color:#6b7280;margin:1rem 0 0;font-style:italic}.modal-btn.danger{background-color:#dc2626;border:none;color:#fff}.modal-btn.danger:hover{background-color:#b91c1c}.empty-rooms-modal{max-width:800px}.empty-rooms-info{font-size:.875rem;color:#6b7280;margin:0 0 1rem}.empty-rooms-table-wrapper{max-height:400px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:.5rem}.empty-rooms-table{width:100%;border-collapse:collapse;font-size:.813rem}.empty-rooms-table thead{position:sticky;top:0;background-color:#f9fafb;z-index:1}.empty-rooms-table th{padding:.75rem .5rem;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb}.empty-rooms-table td{padding:.75rem .5rem;color:#4b5563;border-bottom:1px solid #f3f4f6}.empty-rooms-table tbody tr:hover{background-color:#f9fafb}.empty-rooms-table .room-no-cell{font-weight:600;color:#3b82f6}.select-room-btn{padding:.375rem .75rem;background-color:#1f2937;color:#fff;border:none;border-radius:.25rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:background-color .15s ease}.select-room-btn:hover{background-color:#374151}.folio-lock-modal{max-width:420px;text-align:center}.folio-lock-modal .modal-header.lock-header{background-color:#fef3c7;border-bottom:1px solid #fcd34d}.folio-lock-modal .modal-header.lock-header h3{color:#92400e}.folio-lock-modal .modal-header.unlock-header{background-color:#ecfdf5;border-bottom:1px solid #a7f3d0}.folio-lock-modal .modal-header.unlock-header h3{color:#065f46}.folio-lock-icon{font-size:3rem;margin-bottom:1rem}.folio-lock-message{font-size:.938rem;color:#374151;margin:0 0 .5rem}.folio-lock-question{font-size:.875rem;color:#6b7280;margin:0}.room-change-modal{max-width:1100px;width:95%}.room-change-info{font-size:.875rem;color:#6b7280;margin-bottom:1rem}.room-change-actions{margin-bottom:1rem}.create-plan-btn{padding:.5rem 1rem;background-color:#1f2937;color:#fff;border:none;border-radius:.375rem;font-size:.813rem;font-weight:500;cursor:pointer;transition:background-color .15s ease}.create-plan-btn:hover{background-color:#374151}.room-change-table-wrapper{max-height:300px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:.5rem}.room-change-table{width:100%;border-collapse:collapse;font-size:.813rem}.room-change-table thead{position:sticky;top:0;background-color:#f9fafb;z-index:1}.room-change-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb;white-space:nowrap}.room-change-table td{padding:.75rem 1rem;color:#4b5563;border-bottom:1px solid #f3f4f6;white-space:nowrap}.room-change-table tbody tr:hover{background-color:#f9fafb}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:9999px;font-size:.688rem;font-weight:500}.status-badge.beklemede{background-color:#fef3c7;color:#92400e}.status-badge.onaylandi{background-color:#dbeafe;color:#1e40af}.status-badge.tamamlandi{background-color:#dcfce7;color:#166534}.status-badge.iptal{background-color:#fee2e2;color:#dc2626}.action-btn-small{padding:.25rem;background:none;border:none;color:#1f2937;cursor:pointer;border-radius:.25rem;transition:all .15s ease}.action-btn-small:hover{background-color:#f3f4f6;color:#374151}.action-btn-small.delete:hover{background-color:#fee2e2;color:#dc2626}.inner-modal-overlay{z-index:2100}.create-plan-modal{max-width:500px}.form-group label{display:block;font-size:.813rem;font-weight:500;color:#374151;margin-bottom:.375rem}.form-input,.form-select{width:100%;padding:.625rem .75rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.875rem;color:#1f2937;background-color:#fff;transition:border-color .15s ease}.form-input:focus,.form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-input.disabled{background-color:#f3f4f6;color:#6b7280;cursor:not-allowed}.form-row .form-group{flex:1}.search-select-container{position:relative}.search-select-input{width:100%;cursor:text}.search-select-dropdown{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;background-color:#fff;border:1px solid #e5e7eb;border-top:none;border-radius:0 0 .375rem .375rem;box-shadow:0 4px 12px #00000026;z-index:10000}.search-select-option{padding:.625rem .75rem;font-size:.875rem;color:#374151;cursor:pointer;transition:background-color .15s ease}.search-select-option:hover{background-color:#f3f4f6}.wake-up-modal{max-width:500px}.wake-up-info{font-size:.875rem;color:#6b7280;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.form-textarea{width:100%;padding:.625rem .75rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.875rem;color:#1f2937;background-color:#fff;resize:vertical;font-family:inherit;transition:border-color .15s ease}.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.room-info-modal{max-width:550px}.room-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.room-info-item{display:flex;flex-direction:column;gap:.25rem}.room-info-item.full-width{grid-column:1 / -1}.room-info-label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.025em}.room-info-value{font-size:.938rem;color:#1f2937;font-weight:500}.room-info-value.highlight{color:#3b82f6;font-size:1.25rem;font-weight:600}.room-status-badge{display:inline-block;padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500}.room-status-badge.temiz{background-color:#dcfce7;color:#166534}.room-status-badge.kirli{background-color:#fee2e2;color:#dc2626}.room-status-badge.clean{background-color:#dcfce7;color:#166534}.room-status-badge.dirty{background-color:#fee2e2;color:#dc2626}.room-features-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.feature-tag{display:inline-block;padding:.375rem .75rem;background-color:#f3f4f6;color:#374151;border-radius:9999px;font-size:.75rem;font-weight:500}.assign-room-modal{max-width:600px}.assign-room-info{font-size:.875rem;color:#6b7280;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.assigned-history-section{margin-bottom:1.5rem}.assigned-history-section h4,.new-assignment-section h4{font-size:.875rem;font-weight:600;color:#374151;margin:0 0 .75rem}.assigned-history-table-wrapper{max-height:150px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:.375rem}.assigned-history-table{width:100%;border-collapse:collapse;font-size:.813rem}.assigned-history-table thead{position:sticky;top:0;background-color:#f9fafb}.assigned-history-table th{padding:.5rem;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb}.assigned-history-table td{padding:.5rem;color:#4b5563;border-bottom:1px solid #f3f4f6}.status-badge.aktif{background-color:#dcfce7;color:#166534}.status-badge.geçmiş,.status-badge.gecmis{background-color:#f3f4f6;color:#6b7280}.new-assignment-section{padding-top:.5rem}.room-option-no{font-weight:600;color:#1f2937;margin-right:.5rem}.room-option-details{font-size:.75rem;color:#6b7280}.search-select-option{display:flex;align-items:center;gap:.5rem}.modal-btn:disabled{opacity:.5;cursor:not-allowed}.copy-reservation-modal{max-width:550px}.copy-reservation-info{font-size:.875rem;color:#6b7280;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.copy-reservation-original{margin-bottom:1.5rem;padding:1rem;background-color:#f9fafb;border-radius:.5rem}.copy-reservation-original h4,.copy-reservation-new h4{font-size:.875rem;font-weight:600;color:#374151;margin:0 0 .75rem}.original-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.original-info-item{display:flex;flex-direction:column;gap:.25rem}.original-info-item .label{font-size:.75rem;color:#6b7280}.original-info-item .value{font-size:.875rem;font-weight:500;color:#1f2937}.copy-reservation-new{padding-top:.5rem}.deposit-modal{max-width:800px}.deposit-info{font-size:.875rem;color:#6b7280;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.deposit-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem}.add-deposit-btn{padding:.5rem 1rem;background-color:#1f2937;color:#fff;border:none;border-radius:.375rem;font-size:.813rem;font-weight:500;cursor:pointer;transition:background-color .15s ease;white-space:nowrap}.add-deposit-btn:hover{background-color:#374151}.deposit-search{flex:1;max-width:250px}.deposit-search .form-input{width:100%}.deposit-table-wrapper{max-height:250px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:.5rem}.deposit-table{width:100%;border-collapse:collapse;font-size:.813rem}.deposit-table thead{position:sticky;top:0;background-color:#f9fafb;z-index:1}.deposit-table th{padding:.75rem .5rem;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb}.deposit-table td{padding:.75rem .5rem;color:#4b5563;border-bottom:1px solid #f3f4f6}.deposit-table tbody tr:hover{background-color:#f9fafb}.amount-cell{font-weight:600;color:#1f2937}.status-badge.iade{background-color:#dbeafe;color:#1e40af}.add-deposit-modal{max-width:500px}.slide-panel-overlay{position:fixed;inset:0;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;overflow:hidden}.slide-panel-overlay~*{overflow:hidden}.slide-panel{position:fixed;top:0;right:0;width:50%;height:100vh;background-color:#eef2f7;box-shadow:-4px 0 20px #00000026;z-index:9999;display:flex;flex-direction:column;animation:slideIn .3s ease-out}.slide-panel-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;background-color:#fff;border-bottom:1px solid #e5e7eb}.slide-panel-header h2{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.slide-panel-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;border-radius:.375rem;transition:all .15s ease}.slide-panel-close:hover{background-color:#f3f4f6;color:#1f2937}.slide-panel-content{flex:1;overflow-y:auto;padding:1.5rem;overscroll-behavior:contain}.slide-panel-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;background-color:#fff;border-top:1px solid #e5e7eb}.reservation-card{background-color:#fff;border-radius:.5rem;padding:1.25rem;margin-bottom:1rem;box-shadow:0 1px 3px #0000001a}.card-title{font-size:.875rem;font-weight:600;color:#374151;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.radio-group{display:flex;flex-direction:row;gap:1rem}.radio-group.horizontal{flex-direction:row;gap:1rem}.radio-card{flex:1;display:flex;align-items:center;justify-content:flex-start;gap:.75rem;padding:1rem 1.25rem;background-color:#f8fafc;border:2px solid #e2e8f0;border-radius:.5rem;cursor:pointer;transition:all .2s ease}.slide-panel .radio-group{display:flex;flex-direction:row;gap:1rem}.slide-panel .radio-card{flex:1;display:flex;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:.75rem!important}.slide-panel .radio-card span{flex:none!important;text-align:left!important}.slide-panel .radio-card input[type=radio]{flex-shrink:0!important;margin:0!important}.radio-card span{font-size:.875rem;font-weight:500;color:#374151;text-align:left;flex:none}.radio-card.selected span{color:#1e40af}.radio-card:hover{border-color:#cbd5e1;background-color:#f1f5f9}.radio-card.selected{background-color:#eff6ff;border-color:#3b82f6}.radio-card.disabled{opacity:.5;cursor:not-allowed}.radio-card.disabled:hover{border-color:#e2e8f0;background-color:#f8fafc}.radio-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:#374151;font-weight:500}.radio-label.disabled{opacity:.5;cursor:not-allowed}.radio-label input[type=radio]{width:18px;height:18px;accent-color:#3b82f6;cursor:pointer}.radio-label.disabled input[type=radio]{cursor:not-allowed}.form-input:disabled{background-color:#f3f4f6;cursor:not-allowed;opacity:.7}.slide-panel.wide-panel{width:70%;z-index:10000}.new-guest-layout{display:flex;flex:1;overflow:hidden;min-height:0}.new-guest-sidebar{width:33%;min-width:300px;padding:1.5rem;overflow-y:auto;background-color:#f1f5f9;border-right:1px solid #e2e8f0}.new-guest-content{width:67%;flex:1;display:flex;flex-direction:column;overflow:hidden;background-color:#eef2f7;min-height:0}.guest-tabs{display:flex;gap:0;background-color:#fff;border-bottom:1px solid #e5e7eb;padding:0 1.5rem}.guest-tab{padding:1rem 1.5rem;background:none;border:none;font-size:.875rem;font-weight:500;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s ease}.guest-tab:hover{color:#374151}.guest-tab.active{color:#3b82f6;border-bottom-color:#3b82f6}.guest-tab-content{flex:1;overflow-y:auto;padding:1.5rem;background-color:#eef2f7}.analytics-content{display:flex;flex-direction:column;gap:1.5rem}.widgets-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.widget-card{background-color:#fff;border-radius:.5rem;padding:1rem;box-shadow:0 1px 3px #0000001a;text-align:center}.widget-value{font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:.25rem}.widget-title{font-size:.75rem;font-weight:600;color:#374151;margin-bottom:.25rem}.widget-desc{font-size:.625rem;color:#9ca3af}.analytics-bottom-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.scan-card,.documents-card{display:flex;flex-direction:column}.card-description{font-size:.813rem;color:#6b7280;margin-bottom:1rem;line-height:1.5}.scan-btn,.view-docs-btn{padding:.625rem 1rem;background-color:#1f2937;color:#fff;border:none;border-radius:.375rem;font-size:.813rem;font-weight:500;cursor:pointer;transition:background-color .15s ease;margin-top:auto}.scan-btn:hover,.view-docs-btn:hover{background-color:#374151}.total-docs{font-size:.75rem;color:#6b7280;margin-top:.75rem}.address-card{margin-top:0}.address-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.checkbox-group{display:flex;gap:1.5rem;margin-top:.5rem;padding-top:.75rem;border-top:1px solid #e5e7eb}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.813rem;color:#374151;cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:#3b82f6}.verification-toggles{display:flex;gap:2rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.toggle-label{display:flex;align-items:center;gap:.75rem;font-size:.813rem;color:#374151;cursor:pointer}.toggle-input{position:relative;width:40px;height:20px;appearance:none;background-color:#d1d5db;border-radius:9999px;cursor:pointer;transition:background-color .2s ease}.toggle-input:checked{background-color:#3b82f6}.toggle-input:before{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background-color:#fff;border-radius:50%;transition:transform .2s ease}.toggle-input:checked:before{transform:translate(20px)}.empty-tab-message{text-align:center;color:#6b7280;padding:3rem;font-size:.875rem}.content-header h2{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.add-reservation-btn{padding:.625rem 1.25rem;background-color:#3b82f6;color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s ease}.add-reservation-btn:hover{background-color:#2563eb}.reservations-table-container{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.reservations-table th,.reservations-table td{padding:.875rem 1rem;text-align:left;border-bottom:1px solid #e5e7eb}.reservations-table th{background-color:#f9fafb;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.025em}.reservations-table td{font-size:.875rem;color:#374151}.reservations-table tbody tr:last-child td{border-bottom:none}.guest-name{font-weight:500;color:#1f2937}.room-no{font-weight:600;color:#3b82f6}.status-badge{display:inline-block;padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500}@media(max-width:1024px){.front-office-page{flex-direction:column}.front-office-sidebar{width:100%;max-width:none;position:static}.status-buttons{flex-wrap:wrap}}@media(max-width:768px){.reservations-table-container{overflow-x:auto}.reservations-table{min-width:800px}}.modal-overlay-blur{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1100}.update-status-modal{background:#fff;border-radius:12px;width:480px;max-width:90vw;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;animation:modalSlideIn .2s ease-out}.update-status-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.update-status-modal .modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.update-status-modal .modal-close-btn{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;line-height:1;padding:0;transition:color .15s ease}.update-status-modal .modal-close-btn:hover{color:#1f2937}.update-status-modal .modal-content{padding:1.5rem}.reservation-info-summary{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.reservation-info-summary p{margin:0 0 .5rem;font-size:.875rem;color:#4b5563}.reservation-info-summary p:last-child{margin-bottom:0}.reservation-info-summary strong{color:#1f2937}.status-selection label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.75rem}.status-options{display:flex;flex-wrap:wrap;gap:.5rem}.status-option-btn{padding:.5rem 1rem;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-size:.813rem;font-weight:500;color:#4b5563;cursor:pointer;transition:all .15s ease}.status-option-btn:hover{border-color:#d1d5db;background:#f9fafb}.status-option-btn.active{background:#1a1a1a;border-color:#1a1a1a;color:#fff}.update-status-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.update-status-modal .btn-cancel{padding:.625rem 1.25rem;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-size:.875rem;font-weight:500;color:#4b5563;cursor:pointer;transition:all .15s ease}.update-status-modal .btn-cancel:hover{background:#f3f4f6;border-color:#9ca3af}.update-status-modal .btn-save{padding:.625rem 1.25rem;border:none;border-radius:8px;background:#1a1a1a;font-size:.875rem;font-weight:500;color:#fff;cursor:pointer;transition:all .15s ease}.update-status-modal .btn-save:hover:not(:disabled){background:#333}.update-status-modal .btn-save:disabled{opacity:.5;cursor:not-allowed}.notification{position:fixed;bottom:1.5rem;right:1.5rem;padding:1rem 1.5rem;border-radius:8px;font-size:.875rem;font-weight:500;z-index:1200;animation:notificationSlideIn .3s ease-out;box-shadow:0 10px 25px #00000026}.notification.success{background:#10b981;color:#fff}.notification.error{background:#ef4444;color:#fff}.notes-modal{background:#fff;border-radius:12px;width:700px;max-width:90vw;max-height:80vh;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;animation:modalSlideIn .2s ease-out;display:flex;flex-direction:column}.notes-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.notes-modal .modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.notes-modal .modal-content{padding:1.5rem;overflow-y:auto;flex:1}.notes-toolbar{margin-bottom:1rem}.add-note-btn{padding:.625rem 1.25rem;background:#1a1a1a;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.add-note-btn:hover{background:#333}.notes-table-container{overflow-x:auto}.notes-table{width:100%;border-collapse:collapse;font-size:.875rem}.notes-table th,.notes-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e5e7eb}.notes-table th{background:#f9fafb;font-weight:600;color:#374151;font-size:.813rem}.notes-table td{color:#4b5563}.notes-table tbody tr:hover{background:#f9fafb}.note-type-badge{display:inline-block;padding:.25rem .625rem;background:#e5e7eb;border-radius:9999px;font-size:.75rem;font-weight:500;color:#374151}.delete-note-btn{background:none;border:none;cursor:pointer;font-size:1rem;padding:.25rem;opacity:.6;transition:opacity .15s ease}.delete-note-btn:hover{opacity:1}.notes-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.add-note-modal{background:#fff;border-radius:12px;width:480px;max-width:90vw;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;animation:modalSlideIn .2s ease-out}.add-note-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.add-note-modal .modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.add-note-modal .modal-content{padding:1.5rem}.add-note-modal .form-group{margin-bottom:1rem}.add-note-modal .form-group:last-child{margin-bottom:0}.add-note-modal .form-group label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.5rem}.add-note-modal .form-select{width:100%;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;color:#1f2937;background:#fff;cursor:pointer}.add-note-modal .form-select:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 3px #1a1a1a1a}.add-note-modal .form-textarea{width:100%;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;color:#1f2937;resize:vertical;min-height:100px;font-family:inherit}.add-note-modal .form-textarea:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 3px #1a1a1a1a}.add-note-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.add-note-modal .btn-cancel{padding:.625rem 1.25rem;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-size:.875rem;font-weight:500;color:#4b5563;cursor:pointer;transition:all .15s ease}.add-note-modal .btn-cancel:hover{background:#f3f4f6;border-color:#9ca3af}.add-note-modal .btn-save{padding:.625rem 1.25rem;border:none;border-radius:8px;background:#1a1a1a;font-size:.875rem;font-weight:500;color:#fff;cursor:pointer;transition:all .15s ease}.add-note-modal .btn-save:hover:not(:disabled){background:#333}.add-note-modal .btn-save:disabled{opacity:.5;cursor:not-allowed}.scanned-docs-modal{background:#fff;border-radius:12px;width:800px;max-width:90vw;max-height:80vh;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;animation:modalSlideIn .2s ease-out;display:flex;flex-direction:column}.scanned-docs-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.scanned-docs-modal .modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.scanned-docs-modal .modal-content{padding:1.5rem;overflow-y:auto;flex:1}.upload-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.upload-row{display:flex;gap:1rem;align-items:flex-end}.upload-section .form-group{margin-bottom:0}.upload-section .form-group label{display:block;font-size:.813rem;font-weight:600;color:#374151;margin-bottom:.5rem}.upload-section .form-select{width:100%;padding:.625rem 1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;color:#1f2937;background:#fff}.file-input{width:100%;padding:.5rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;background:#fff}.file-input:disabled{opacity:.5;cursor:not-allowed}.docs-table-container{overflow-x:auto}.docs-table{width:100%;border-collapse:collapse;font-size:.875rem}.docs-table th,.docs-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e5e7eb}.docs-table th{background:#f9fafb;font-weight:600;color:#374151;font-size:.813rem}.docs-table td{color:#4b5563}.docs-table tbody tr:hover{background:#f9fafb}.doc-type-badge{display:inline-block;padding:.25rem .625rem;background:#e5e7eb;border-radius:9999px;font-size:.75rem;font-weight:500;color:#374151}.doc-actions{display:flex;gap:.5rem}.doc-action-btn{background:none;border:none;cursor:pointer;padding:.375rem;color:#1a1a1a;transition:opacity .15s ease}.doc-action-btn:hover{opacity:.7}.scanned-docs-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.view-doc-modal{background:#fff;border-radius:12px;width:600px;max-width:90vw;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;animation:modalSlideIn .2s ease-out}.view-doc-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.view-doc-modal .modal-header h3{margin:0;font-size:1rem;font-weight:600;color:#1f2937;word-break:break-all}.view-doc-modal .modal-content{padding:1.5rem}.doc-preview{min-height:300px;display:flex;align-items:center;justify-content:center}.doc-preview-placeholder{text-align:center;color:#6b7280}.doc-preview-placeholder p{margin:1rem 0 0;font-size:.938rem;font-weight:500}.doc-info{margin-top:1.5rem;text-align:left;background:#f9fafb;padding:1rem;border-radius:8px}.doc-info p{margin:.5rem 0;font-size:.875rem;color:#4b5563}.doc-info strong{color:#1f2937}.view-doc-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.delete-confirm-modal{background:#fff;border-radius:12px;width:420px;max-width:90vw;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;animation:modalSlideIn .2s ease-out}.delete-confirm-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.delete-confirm-modal .modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.delete-confirm-modal .modal-content{padding:1.5rem}.delete-warning{text-align:center}.delete-message{margin:1rem 0 .5rem;font-size:.938rem;color:#4b5563}.delete-doc-name{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#1f2937;word-break:break-all}.delete-warning-text{margin:0;font-size:.813rem;color:#ef4444;font-weight:500}.delete-confirm-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.btn-delete{padding:.625rem 1.25rem;border:none;border-radius:8px;background:#ef4444;font-size:.875rem;font-weight:500;color:#fff;cursor:pointer;transition:all .15s ease}.btn-delete:hover{background:#dc2626}@media(max-width:1024px){.slide-panel{width:70%}.slide-panel.wide-panel{width:85%}.reservation-card{padding:1rem}.card-title{font-size:.813rem}.radio-card{padding:.75rem 1rem}.radio-card span{font-size:.813rem}.form-row{flex-direction:column;gap:.75rem}.form-row .form-group{flex:1 1 100%!important;max-width:100%!important}.radio-group-row{flex-wrap:wrap!important}.radio-group-row .radio-card{flex:1 1 45%!important;max-width:48%!important}.radio-group-row .search-select-container{flex:1 1 100%!important;max-width:100%!important;margin-left:0!important;margin-top:.75rem}}@media(max-width:767px){.slide-panel,.slide-panel.wide-panel{width:100%}.slide-panel-header{padding:1rem}.slide-panel-header h2{font-size:1rem}.slide-panel-content,.slide-panel-footer{padding:1rem}.reservation-card{padding:.875rem;margin-bottom:.75rem}.card-title{font-size:.75rem;margin-bottom:.75rem;padding-bottom:.5rem}.radio-group{flex-direction:column;gap:.5rem}.radio-group-row{flex-direction:column!important;gap:.5rem!important}.radio-group-row .radio-card{flex:1 1 100%!important;max-width:100%!important}.radio-group-row .search-select-container{flex:1 1 100%!important;max-width:100%!important;margin-left:0!important;margin-top:.5rem}.radio-card{padding:.625rem .875rem}.radio-card span,.form-group label{font-size:.75rem}.form-input,.form-select{font-size:.813rem;padding:.5rem .75rem}.search-select-input{font-size:.813rem}.search-select-dropdown{max-height:150px}.search-select-option{padding:.5rem .75rem;font-size:.75rem}.slide-panel-footer .btn-secondary,.slide-panel-footer .btn-primary{padding:.5rem 1rem;font-size:.813rem}}@media(max-width:480px){.slide-panel-header{padding:.75rem}.slide-panel-header h2{font-size:.875rem}.slide-panel-content{padding:.75rem}.slide-panel-footer{padding:.75rem;gap:.5rem}.reservation-card{padding:.75rem;margin-bottom:.5rem;border-radius:.375rem}.card-title{font-size:.688rem}.radio-card{padding:.5rem .75rem;gap:.5rem}.radio-card span{font-size:.688rem}.radio-card input[type=radio]{width:14px;height:14px}.form-group{margin-bottom:.5rem}.form-group label{font-size:.688rem;margin-bottom:.25rem}.form-input,.form-select{font-size:.75rem;padding:.5rem .625rem;border-radius:.375rem}.slide-panel-footer .btn-secondary,.slide-panel-footer .btn-primary{padding:.5rem .875rem;font-size:.75rem;flex:1}}.guest-modal-overlay{position:fixed;inset:0;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:99998}.guest-modal-panel{position:fixed;top:0;right:0;width:70%;height:100vh;background-color:#fff;z-index:99999;box-shadow:-4px 0 20px #0000004d;display:flex;flex-direction:column}.guest-modal-header{padding:16px 24px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;background-color:#fff;flex-shrink:0}.guest-modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#1f2937}.guest-modal-close-btn{font-size:24px;background:none;border:none;cursor:pointer;color:#6b7280}.guest-modal-body{flex:1;display:flex;overflow:hidden}.guest-modal-sidebar{width:33%;padding:20px;background-color:#f1f5f9;overflow-y:auto;border-right:1px solid #e2e8f0;flex-shrink:0}.guest-modal-content{width:67%;display:flex;flex-direction:column;overflow:hidden;background-color:#eef2f7}.guest-modal-tabs{display:flex;background-color:#fff;border-bottom:1px solid #e5e7eb;padding:0 24px;flex-shrink:0}.guest-modal-tabs button{padding:16px 24px;background:none;border:none;font-size:.875rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;color:#6b7280;transition:all .2s ease}.guest-modal-tabs button:hover{color:#3b82f6}.guest-modal-tabs button.active{border-bottom-color:#3b82f6;color:#3b82f6}.guest-modal-tab-content{flex:1;overflow-y:auto;padding:20px;position:relative}.guest-sidebar-card{background-color:#fff;border-radius:8px;padding:16px;margin-bottom:16px;box-shadow:0 1px 3px #0000001a}.guest-sidebar-card:last-child{margin-bottom:0}.guest-sidebar-title{font-size:.875rem;font-weight:600;color:#374151;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.guest-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.guest-checkbox-row{display:flex;gap:24px;margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb}.guest-checkbox-label{display:flex;align-items:center;gap:8px;font-size:.813rem;color:#374151;cursor:pointer}.guest-checkbox-label input[type=checkbox]{width:16px;height:16px}@media(max-width:1024px){.guest-modal-panel{width:85%}.guest-modal-sidebar{width:40%;padding:16px}.guest-modal-content{width:60%}.guest-modal-tabs{padding:0 16px}.guest-modal-tabs button{padding:12px 16px;font-size:.813rem}.guest-modal-tab-content{padding:16px}}@media(max-width:767px){.guest-modal-panel{width:100%}.guest-modal-header{padding:12px 16px}.guest-modal-header h2{font-size:1rem}.guest-modal-body{flex-direction:column}.guest-modal-sidebar{width:100%;max-height:none;border-right:none;border-bottom:1px solid #e2e8f0;overflow-y:visible}.guest-modal-content{width:100%;flex:1}.guest-modal-tabs{padding:0 12px;overflow-x:auto}.guest-modal-tabs button{padding:10px 12px;font-size:.75rem;white-space:nowrap}.guest-modal-tab-content{padding:12px}.guest-form-grid{grid-template-columns:1fr;gap:10px}.guest-sidebar-card{padding:12px;margin-bottom:12px}.guest-sidebar-title{font-size:.813rem;margin-bottom:12px;padding-bottom:10px}.guest-checkbox-row{flex-direction:column;gap:10px}}@media(max-width:480px){.guest-modal-header{padding:10px 12px}.guest-modal-header h2{font-size:.875rem}.guest-modal-sidebar{padding:10px}.guest-modal-tabs button{padding:8px 10px;font-size:.688rem}.guest-modal-tab-content{padding:10px}.guest-sidebar-card{padding:10px;margin-bottom:10px}.guest-sidebar-title{font-size:.75rem;margin-bottom:10px;padding-bottom:8px}.guest-form-grid{gap:8px}.guest-checkbox-label{font-size:.75rem}}@media(max-width:1400px){.fo-widgets-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:1200px){.front-office-page{padding:1rem;gap:1rem}.front-office-sidebar{width:260px;min-width:240px;max-width:280px}.fo-widget-main{padding:.875rem 1rem}.fo-widget-icon{width:40px;height:40px}.fo-widget-value{font-size:1.5rem}.reservation-search input{width:160px}}@media(max-width:1024px){.front-office-page{flex-direction:column}.front-office-sidebar{width:100%;max-width:100%;min-width:auto;position:relative;top:0}.sidebar-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:.75rem;margin-bottom:.75rem;border-bottom:1px solid #e5e7eb}.filter-section{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.filter-row{grid-column:span 2}.status-section{margin-top:0;padding-top:0;border-top:none;grid-column:span 1}.status-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.clear-filters-btn{grid-column:span 3;margin-top:.5rem}.fo-widgets-row{grid-template-columns:repeat(4,1fr)}.reservation-list-header{flex-wrap:wrap;gap:.75rem}.reservation-list-actions{width:100%;justify-content:space-between}.reservation-search{flex:1}.reservation-search input{width:100%}}@media(max-width:768px){.front-office-page{padding:.75rem;gap:.75rem}.front-office-sidebar{padding:.75rem}.filter-section{grid-template-columns:repeat(2,1fr)}.filter-row,.status-section{grid-column:span 2}.status-list{grid-template-columns:repeat(3,1fr)}.clear-filters-btn{grid-column:span 2}.fo-widgets-row{grid-template-columns:repeat(2,1fr);gap:.75rem}.fo-widget-main{padding:.75rem;gap:.75rem}.fo-widget-icon{width:36px;height:36px}.fo-widget-icon svg{width:18px;height:18px}.fo-widget-value{font-size:1.25rem}.fo-widget-info h3{font-size:.75rem}.fo-widget-footer{padding:.5rem .75rem;font-size:.688rem}.reservation-list-card{border-radius:.5rem}.reservation-list-header{padding:.75rem 1rem}.reservation-list-header h3{font-size:.875rem}.reservation-table th,.reservation-table td{padding:.625rem .75rem;font-size:.75rem}.reservation-table th:nth-child(7),.reservation-table td:nth-child(7),.reservation-table th:nth-child(8),.reservation-table td:nth-child(8){display:none}}@media(max-width:576px){.front-office-page{padding:.5rem;gap:.5rem}.front-office-sidebar{padding:.5rem}.filter-section{grid-template-columns:1fr}.filter-row{grid-column:span 1;flex-direction:column}.status-section{grid-column:span 1}.status-list{grid-template-columns:repeat(2,1fr)}.clear-filters-btn{grid-column:span 1}.fo-widgets-row{grid-template-columns:1fr}.fo-widget-main{padding:1rem;gap:1rem}.fo-widget-icon{width:44px;height:44px}.fo-widget-value{font-size:1.5rem}.reservation-list-header{padding:.625rem .75rem}.reservation-list-header h3{font-size:.813rem;width:100%}.reservation-list-actions{flex-direction:column;gap:.5rem}.reservation-search{width:100%}.reservation-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.reservation-table{min-width:600px}.reservation-table th,.reservation-table td{padding:.5rem .625rem;font-size:.688rem}.reservation-table th:nth-child(5),.reservation-table td:nth-child(5),.reservation-table th:nth-child(6),.reservation-table td:nth-child(6),.reservation-table th:nth-child(7),.reservation-table td:nth-child(7),.reservation-table th:nth-child(8),.reservation-table td:nth-child(8){display:none}}@media(max-width:400px){.front-office-page,.front-office-sidebar{padding:.375rem}.status-list{grid-template-columns:1fr}.status-item{padding:.375rem .5rem}.status-label{font-size:.75rem}.fo-widget-footer{padding:.375rem .5rem}.reservation-list-header h3{font-size:.75rem}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#00321e66,#00502859,#00321e66),url(https://images.unsplash.com/photo-1441974231531-c6227db76b6e?w=1920&q=80&fm=webp) center/cover no-repeat fixed;position:relative;overflow:hidden}.login-bg-pattern{position:absolute;inset:0;background-image:radial-gradient(circle at 25% 25%,rgba(255,255,255,.02) 0%,transparent 50%),radial-gradient(circle at 75% 75%,rgba(255,255,255,.02) 0%,transparent 50%);pointer-events:none}.login-language-selector{position:absolute;top:1.5rem;right:1.5rem;display:flex;gap:.5rem;z-index:10}.lang-btn{padding:.5rem 1rem;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;color:#ffffffb3;border-radius:.5rem;font-size:.813rem;font-weight:600;cursor:pointer;transition:all .2s ease}.lang-btn:hover{background:#ffffff1a;border-color:#ffffff4d;color:#fff}.lang-btn.active{background:#fff;border-color:#fff;color:#1a1a1a}.login-card{width:100%;max-width:420px;background:#fff;border-radius:1.5rem;padding:2.5rem;box-shadow:0 25px 50px #0000004d;position:relative;z-index:1}.login-logo{display:flex;justify-content:center;margin-bottom:1.5rem}.login-logo img{height:32px;width:auto}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{font-size:1.75rem;font-weight:700;color:#1a1a1a;margin:0 0 .5rem}.login-header p{font-size:.938rem;color:#6b7280;margin:0}.login-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:.75rem 1rem;border-radius:.5rem;font-size:.875rem;margin-bottom:1.5rem;text-align:center}.login-form{display:flex;flex-direction:column;gap:1.25rem}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:1rem;color:#9ca3af;pointer-events:none}.input-wrapper input{width:100%;padding:.875rem 1rem .875rem 3.25rem;border:1px solid #e5e7eb;border-radius:.75rem;font-size:.938rem;color:#1a1a1a;background:#f9fafb;transition:all .2s ease}.input-wrapper input:focus{outline:none;border-color:#1a1a1a;background:#fff;box-shadow:0 0 0 3px #1a1a1a1a}.input-wrapper input::placeholder{color:#9ca3af}.password-toggle{position:absolute;right:1rem;background:none;border:none;color:#9ca3af;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.password-toggle:hover{color:#6b7280}.form-options{display:flex;justify-content:space-between;align-items:center}.remember-me{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:#4b5563}.remember-me input{display:none}.remember-me .checkmark{width:18px;height:18px;border:2px solid #d1d5db;border-radius:.25rem;position:relative;transition:all .2s ease}.remember-me input:checked+.checkmark{background:#1a1a1a;border-color:#1a1a1a}.remember-me input:checked+.checkmark:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.forgot-password{font-size:.875rem;color:#1a1a1a;text-decoration:none;font-weight:500;transition:color .2s ease}.forgot-password:hover{color:#4b5563;text-decoration:underline}.login-btn{width:100%;padding:1rem;background:#1a1a1a;color:#fff;border:none;border-radius:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem}.login-btn:hover:not(:disabled){background:#333;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{opacity:.7;cursor:not-allowed}.loading-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-footer{margin-top:2rem;text-align:center}.login-footer p{font-size:.813rem;color:#9ca3af;margin:0}@media(max-width:480px){.login-card{margin:1rem;padding:2rem 1.5rem}.login-header h1{font-size:1.5rem}}.header-nav{display:flex;justify-content:center;align-items:center;gap:1rem}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.375rem 1rem;text-decoration:none;color:#6b7280;border-radius:.5rem;transition:all .2s ease;cursor:pointer;min-width:80px;border:none;background:none;font-family:inherit}.dropdown-menu{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.5rem;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 4px 6px #0000001a;min-width:220px;z-index:1000;overflow:hidden;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.tables-page{padding:1.5rem 2rem;min-height:100vh;background-color:#f9fafb;max-width:1920px;margin:0 auto}.categories-section{display:flex;gap:1rem;margin-bottom:1.5rem;align-items:center}.category-btn{flex-shrink:0;padding:.75rem 1.5rem;border:none;border-radius:.5rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;box-shadow:0 2px 4px #0000000d}.category-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.terminal-btn{flex-shrink:0;padding:.75rem 1.5rem;background-color:#1f2937;color:#fff;border:none;border-radius:.5rem;font-size:.9375rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s ease;white-space:nowrap;box-shadow:0 2px 4px #0000001a}.terminal-btn:hover{background-color:#111827;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.lock-btn{flex-shrink:0;padding:.75rem 1.5rem;background-color:#dc2626;color:#fff;border:none;border-radius:.5rem;font-size:.9375rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s ease;white-space:nowrap;box-shadow:0 2px 4px #0000001a}.lock-btn:hover{background-color:#b91c1c;transform:translateY(-2px);box-shadow:0 4px 8px #dc26264d}.tables-grid{display:flex;flex-direction:column}.tables-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.table-card{background-color:#fff;border-radius:.75rem;padding:1rem;cursor:pointer;transition:all .2s ease;border:2px solid transparent;box-shadow:0 2px 8px #00000014}.table-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f;border-color:#1f2937}.table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:.625rem;background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:.5rem;box-shadow:0 2px 4px #00000014}.table-name{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0}.table-status{padding:.25rem .625rem;border-radius:.375rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.025em}.table-status.active{background-color:#d1fae5;color:#065f46}.table-status.ready-to-leave{background-color:#fdba74;color:#7c2d12}.table-status.empty{background-color:#e5e7eb;color:#4b5563}.table-status.dirty{background-color:#fee2e2;color:#b91c1c}.table-info{display:flex;flex-direction:column;gap:.625rem}.info-row{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.info-label{color:#6b7280;font-weight:500;display:flex;align-items:center;gap:.375rem}.info-label svg{color:#9ca3af}.info-value{color:#1f2937;font-weight:600}.amount-row{margin-top:.75rem;padding-top:.75rem;border-top:2px solid #e5e7eb}.info-value.amount{font-size:1.25rem;font-weight:700;color:#059669}.placeholder-text{text-align:center;padding:4rem 2rem;color:#9ca3af;font-size:1rem;font-style:italic}@media(max-width:1280px){.tables-container{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media(max-width:1024px){.tables-container{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.table-card{padding:1.25rem}}@media(max-width:768px){.tables-page{padding:1rem}.tables-container{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.875rem}.category-btn,.terminal-btn{font-size:.875rem;padding:.625rem 1rem}}@media(max-width:640px){.tables-container{grid-template-columns:1fr}.categories-section{flex-direction:column;align-items:stretch}.terminal-btn,.lock-btn{width:100%;justify-content:center}}.lock-screen-overlay{position:fixed;inset:0;background:linear-gradient(135deg,#0f172a,#1e3a8a,#3b82f6 60%,#60a5fa,#dbeafe);z-index:9999;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.lock-screen-header{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:2rem 3rem;z-index:10}.lock-screen-logo{height:35px;width:auto;display:block}.lock-screen-datetime{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.lock-screen-time{font-size:2.5rem;font-weight:700;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.2)}.lock-screen-date{font-size:1.125rem;font-weight:500;color:#fffffff2;text-shadow:0 1px 2px rgba(0,0,0,.1)}.lock-screen-content{width:100%;max-width:400px;padding:2rem;position:relative}.lock-screen-restaurant-name{position:absolute;bottom:3rem;left:50%;transform:translate(-50%);text-align:center;font-size:1.25rem;font-weight:600;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3);width:100%;padding:0 2rem;pointer-events:none}.slide-to-unlock-container{display:flex;flex-direction:column;align-items:center;gap:2rem}.lock-icon-container{width:100px;height:100px;background:linear-gradient(135deg,#1f2937,#111827);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 10px 40px #1f29374d;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.lock-title{font-size:1.5rem;font-weight:700;color:#fff;margin:0;text-align:center}.slide-to-unlock-track{width:100%;height:60px;background:#ffffff1a;border:2px solid rgba(255,255,255,.2);border-radius:30px;position:relative;cursor:pointer;overflow:hidden;user-select:none;-webkit-user-select:none}.slide-to-unlock-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff9;font-size:.875rem;font-weight:500;pointer-events:none;white-space:nowrap}.slide-to-unlock-button{position:absolute;top:4px;left:0;width:52px;height:52px;background:linear-gradient(135deg,#1f2937,#111827);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;cursor:grab;transition:left .1s linear;box-shadow:0 4px 12px #dc262666}.slide-to-unlock-button:active{cursor:grabbing}.pin-entry-container{display:flex;flex-direction:column;align-items:center;gap:2rem;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.pin-title{font-size:1.25rem;font-weight:600;color:#fff;margin:0;text-align:center}.pin-dots{display:flex;gap:1rem;justify-content:center;margin:1rem 0;transition:all .3s ease}.pin-dots.error{animation:pin-shake .5s cubic-bezier(.36,.07,.19,.97) both}@keyframes pin-shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.pin-error-message{color:#fca5a5;font-size:.9rem;font-weight:500;text-align:center;margin-bottom:1rem;animation:fadeIn .3s ease;text-shadow:0 1px 2px rgba(0,0,0,.2)}.pin-dot{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.4);background-color:transparent;transition:all .2s ease}.pin-dot.filled{background-color:#fff;border-color:#fff;box-shadow:0 0 10px #ffffff80}.pin-dots.error .pin-dot{border-color:#ef444480}.pin-dots.error .pin-dot.filled{background-color:#ef4444;border-color:#ef4444;box-shadow:0 0 12px #ef444499}.pin-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;width:100%}.pin-key{width:70px;height:70px;background:#ffffff1a;border:2px solid rgba(255,255,255,.2);border-radius:50%;color:#fff;font-size:1.5rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;margin:0 auto}.pin-key:hover{background:#fff3;border-color:#fff6;transform:scale(1.05)}.pin-key:active{transform:scale(.95);background:#ffffff4d}.pin-key.delete-key{background:#dc262633;border-color:#dc262666}.pin-key.delete-key:hover{background:#dc26264d;border-color:#dc262699}.table-detail-page{min-height:100vh;background-color:#f9fafb}.detail-content{display:grid;grid-template-columns:3fr 1fr;gap:1.5rem;padding:1.5rem;max-width:1920px;margin:0 auto;min-height:100vh}.products-section{display:flex;flex-direction:column;gap:1.5rem}.products-categories{display:flex;align-items:center;gap:1rem}.categories-carousel-wrapper{flex:1;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.categories-carousel-wrapper::-webkit-scrollbar{display:none}.categories-carousel{display:flex;gap:.75rem;padding:.25rem 0}.category-btn{flex-shrink:0;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;font-size:.875rem;border:none;cursor:pointer;transition:all .2s ease;white-space:nowrap}.category-btn:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.category-btn.active{box-shadow:0 4px 12px #00000026}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.25rem}.product-card{background-color:#fff;border-radius:.75rem;overflow:hidden;box-shadow:0 2px 4px #00000014;transition:all .2s ease;display:flex;flex-direction:column;cursor:pointer;position:relative}.product-card:before{content:"";position:absolute;inset:0;background-color:#1f293726;opacity:0;pointer-events:none;z-index:1}.product-card:hover{transform:translateY(-4px);box-shadow:0 6px 12px #0000001f}.product-card:active:before{animation:clickEffect 1s ease-out}@keyframes clickEffect{0%{opacity:1}to{opacity:0}}.product-image{width:100%;height:150px;overflow:hidden;background-color:#f3f4f6}.product-image img{width:100%;height:100%;object-fit:cover}.product-info{padding:.75rem;flex:1;display:flex;justify-content:space-between;align-items:center;gap:.5rem}.product-details{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.product-name{font-size:.875rem;font-weight:600;color:#1f2937;margin:0;line-height:1.2;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.product-category{font-size:.7rem;color:#6b7280;margin:0}.product-price{font-size:.9rem;font-weight:700;color:#059669;margin:0;white-space:nowrap;flex-shrink:0}.cart-section{background-color:#fff;border-radius:.75rem;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;height:calc(100vh - 3rem - 65px);position:sticky;top:1.5rem}.cart-header{padding:1.5rem;border-bottom:2px solid #e5e7eb}.cart-header-content{display:flex;align-items:center;justify-content:space-between;gap:1rem}.cart-header h2{margin:0;font-size:1.5rem;color:#1f2937}.cart-header-actions{display:flex;align-items:center;gap:.5rem}.guest-select-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;background:none;border:none;color:#4b5563;font-size:.875rem;font-weight:500;cursor:pointer;transition:color .2s ease}.guest-select-btn:hover{color:#1f2937}.transfer-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:.375rem;color:#4b5563;cursor:pointer;transition:all .2s ease}.transfer-btn:hover{background-color:#e5e7eb;color:#1f2937}.cart-items{flex:1;overflow-y:auto;padding:.375rem}.cart-empty{display:flex;align-items:center;justify-content:center;padding:3rem 1rem}.cart-empty p{color:#9ca3af;font-size:1rem}.cart-item{padding:.375rem;border-bottom:1px solid #e5e7eb;display:flex;flex-direction:column;gap:.375rem}.cart-item:last-child{border-bottom:none}.cart-item-row{display:flex;gap:.75rem;align-items:center}.cart-item-image{width:60px;height:60px;border-radius:.5rem;overflow:hidden;flex-shrink:0;background-color:#f3f4f6}.cart-item-image img{width:100%;height:100%;object-fit:cover}.cart-item-info-section{flex:1;display:flex;justify-content:space-between;align-items:center;gap:.5rem}.cart-item-details{display:flex;flex-direction:column;gap:.25rem}.cart-item-name{margin:0;font-size:.875rem;font-weight:600;color:#1f2937;line-height:1.2}.cart-item-price-row{display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap}.cart-item-unit-price{font-size:.75rem;color:#6b7280;font-weight:500;white-space:nowrap}.cart-item-quantity-badge{font-size:.75rem;color:#4b5563;font-weight:600;background-color:#f3f4f6;padding:.125rem .5rem;border-radius:.25rem;white-space:nowrap}.cart-item-total-price{font-size:.875rem;font-weight:700;color:#059669;white-space:nowrap;margin-left:auto}.cart-item-actions{display:flex;align-items:center;gap:.375rem}.action-icon-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:.375rem;color:#4b5563;cursor:pointer;transition:all .2s ease;flex-shrink:0}.action-icon-btn:hover{background-color:#e5e7eb;color:#1f2937}.note-btn:hover{background-color:#dbeafe;color:#1e40af;border-color:#bfdbfe}.edit-btn:hover{background-color:#fef3c7;color:#d97706;border-color:#fde68a}.quantity-controls{display:flex;gap:.25rem}.quantity-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background-color:#1f2937;border:none;border-radius:.375rem;color:#fff;cursor:pointer;transition:all .2s ease}.quantity-btn:hover{background-color:#111827;transform:scale(1.05)}.cart-footer{padding:1rem;border-top:2px solid #e5e7eb;background-color:#fff}.cart-totals{margin-bottom:1rem;padding:1rem;background-color:#f9fafb;border-radius:8px}.cart-subtotal,.cart-service-fee,.cart-tax{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.875rem;color:#6b7280;border-bottom:1px dashed #e5e7eb}.subtotal-amount,.service-fee-amount,.tax-amount{font-weight:500;color:#374151}.cart-service-fee,.service-fee-amount{color:#059669}.cart-total{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;margin-top:.5rem;font-size:1.125rem;font-weight:700;color:#1f2937;border-top:2px solid #1f2937}.total-amount{font-size:1.25rem;font-weight:700;color:#1f2937}.cart-actions{display:flex;align-items:center;gap:.5rem}.cart-actions .action-icon-btn{width:36px;height:36px}.invoice-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;background-color:#1f2937;color:#fff;border:none;border-radius:.375rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease}.invoice-btn:hover{background-color:#111827;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.modal-content{background-color:#fff;border-radius:.75rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:100%;max-width:500px;max-height:90vh;display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:2px solid #e5e7eb}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#1f2937}.modal-tabs{display:flex;border-bottom:1px solid #e5e7eb;padding:0 1.5rem}.modal-tab{flex:1;padding:1rem;background:none;border:none;border-bottom:2px solid transparent;font-size:.875rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease}.modal-tab:hover{color:#1f2937}.modal-tab.active{color:#1f2937;border-bottom-color:#1f2937}.modal-search{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb}.modal-search input{flex:1;padding:.5rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.875rem;outline:none;transition:border-color .2s ease}.modal-search input:focus{border-color:#1f2937}.modal-list{flex:1;overflow-y:auto;padding:.5rem;max-height:400px}.modal-list-item{width:100%;padding:.75rem 1rem;margin-bottom:.25rem;background:none;border:2px solid transparent;border-radius:.375rem;text-align:left;font-size:.875rem;color:#4b5563;cursor:pointer;transition:all .2s ease}.modal-list-item:hover{background-color:#f3f4f6;color:#1f2937}.modal-list-item.selected{background-color:#e5e7eb;border-color:#1f2937;color:#1f2937;font-weight:600}.modal-footer{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:2px solid #e5e7eb}.modal-cancel-btn,.modal-confirm-btn{flex:1;padding:.75rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-cancel-btn{background-color:#f3f4f6;border:1px solid #e5e7eb;color:#4b5563}.modal-cancel-btn:hover{background-color:#e5e7eb;color:#1f2937}.modal-confirm-btn{background-color:#1f2937;border:none;color:#fff}.modal-confirm-btn:hover:not(:disabled){background-color:#111827}.modal-confirm-btn:disabled{opacity:.5;cursor:not-allowed}.transfer-modal{max-width:400px}.transfer-options{padding:1rem;display:flex;flex-direction:column;gap:.75rem}.transfer-option-btn{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:#fff;border:2px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;font-weight:500;color:#1f2937;cursor:pointer;transition:all .2s ease}.transfer-option-btn:hover{background-color:#f3f4f6;border-color:#1f2937}.confirmation-modal{max-width:450px}.confirmation-content{padding:2rem 1.5rem;text-align:center}.confirmation-content p{font-size:1rem;color:#4b5563;line-height:1.6;margin:0}.modal-confirm-btn.danger{background-color:#dc2626}.modal-confirm-btn.danger:hover:not(:disabled){background-color:#b91c1c}.payment-modal{max-width:400px}.payment-options{padding:1rem;display:flex;flex-direction:column;gap:.75rem}.payment-option-btn{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:1rem;padding:1.25rem 1.5rem;background-color:#fff;border:2px solid #e5e7eb;border-radius:.5rem;font-size:.9375rem;font-weight:600;color:#1f2937;cursor:pointer;transition:all .2s ease}.payment-option-btn:hover{background-color:#f3f4f6;border-color:#1f2937;transform:translateY(-2px)}@media(max-width:1280px){.detail-content{grid-template-columns:2fr 1fr}.products-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media(max-width:1024px){.detail-content{grid-template-columns:1fr}.cart-section{position:static;max-height:none;height:auto}.products-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}@media(max-width:768px){.detail-content{padding:1rem;gap:1rem}.products-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem}.cart-actions{flex-wrap:wrap}.invoice-btn{flex:1 1 100%}}.payment-method-modal{max-width:450px}.payment-method-options{padding:1rem;display:flex;flex-direction:column;gap:.75rem}.payment-method-btn{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background-color:#fff;border:2px solid #e5e7eb;border-radius:.5rem;font-size:1rem;font-weight:600;color:#1f2937;cursor:pointer;transition:all .2s ease}.payment-method-btn:hover{background-color:#f3f4f6;border-color:#1f2937;transform:translateY(-2px)}.payment-method-icon{font-size:1.75rem}.partial-payment-modal{max-width:600px;max-height:85vh}.partial-payment-list{flex:1;overflow-y:auto;padding:.5rem;max-height:400px}.partial-payment-item{display:flex;align-items:center;gap:1rem;padding:1rem;margin-bottom:.5rem;border:2px solid #e5e7eb;border-radius:.5rem;cursor:pointer;transition:all .2s ease}.partial-payment-item:hover{background-color:#f9fafb;border-color:#d1d5db}.partial-payment-item.selected{background-color:#eff6ff;border-color:#3b82f6}.partial-payment-checkbox{display:flex;align-items:center}.partial-payment-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer}.partial-payment-item-image{width:60px;height:60px;border-radius:.5rem;overflow:hidden;flex-shrink:0;background-color:#f3f4f6}.partial-payment-item-image img{width:100%;height:100%;object-fit:cover}.partial-payment-item-details{flex:1;min-width:0}.partial-payment-item-details h4{margin:0 0 .25rem;font-size:.9375rem;font-weight:600;color:#1f2937}.partial-payment-item-details p{margin:0;font-size:.8125rem;color:#6b7280}.partial-payment-item-total{font-size:1rem;font-weight:700;color:#059669;white-space:nowrap}.partial-payment-footer{border-top:2px solid #e5e7eb;background-color:#fff}.partial-payment-total{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;font-size:1.125rem;font-weight:600;color:#1f2937}.partial-payment-total .total-amount{font-size:1.25rem;font-weight:700;color:#059669}.split-payment-modal{max-width:450px}.split-payment-content{padding:2rem 1.5rem;display:flex;flex-direction:column;gap:2rem}.split-payment-info{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;background-color:#f9fafb;border-radius:.5rem}.split-info-row{display:flex;justify-content:space-between;align-items:center;font-size:1rem}.split-info-row span:first-child{color:#6b7280;font-weight:500}.split-total{font-size:1.25rem;font-weight:700;color:#1f2937}.split-per-person{font-size:1.5rem;font-weight:700;color:#059669}.split-person-selector{display:flex;align-items:center;justify-content:center;gap:2rem}.split-person-btn{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background-color:#1f2937;border:none;border-radius:.5rem;color:#fff;cursor:pointer;transition:all .2s ease}.split-person-btn:hover:not(:disabled){background-color:#111827;transform:scale(1.05)}.split-person-btn:disabled{background-color:#e5e7eb;color:#9ca3af;cursor:not-allowed}.split-person-count{display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:100px}.person-count-number{font-size:3rem;font-weight:700;color:#1f2937;line-height:1}.person-count-label{font-size:.875rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.table-transfer-modal,.table-merge-modal{max-width:550px}.transfer-table-selection{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.current-table-info{display:flex;align-items:center;justify-content:space-between;padding:1rem;background-color:#f9fafb;border-radius:.5rem;font-size:1rem;font-weight:500;color:#4b5563}.table-badge,.waiter-badge{padding:.5rem 1rem;background-color:#1f2937;color:#fff;border-radius:.375rem;font-weight:600;font-size:.9375rem}.target-table-list h4,.waiter-list h4,.product-selection-section h4,.target-table-section h4{margin:0 0 1rem;font-size:.9375rem;font-weight:600;color:#1f2937}.table-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.75rem}.table-select-btn{padding:1rem;background-color:#fff;border:2px solid #e5e7eb;border-radius:.5rem;font-size:.9375rem;font-weight:600;color:#4b5563;cursor:pointer;transition:all .2s ease}.table-select-btn:hover{background-color:#f9fafb;border-color:#d1d5db}.table-select-btn.selected{background-color:#eff6ff;border-color:#3b82f6;color:#1e40af}.product-transfer-modal{max-width:650px;max-height:85vh}.product-transfer-content{padding:1rem;display:flex;flex-direction:column;gap:1.5rem;max-height:500px;overflow-y:auto}.product-transfer-list{display:flex;flex-direction:column;gap:.5rem;max-height:250px;overflow-y:auto}.product-transfer-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border:2px solid #e5e7eb;border-radius:.5rem;cursor:pointer;transition:all .2s ease}.product-transfer-item:hover{background-color:#f9fafb;border-color:#d1d5db}.product-transfer-item.selected{background-color:#eff6ff;border-color:#3b82f6}.product-transfer-checkbox{display:flex;align-items:center}.product-transfer-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.product-transfer-image{width:50px;height:50px;border-radius:.375rem;overflow:hidden;flex-shrink:0;background-color:#f3f4f6}.product-transfer-image img{width:100%;height:100%;object-fit:cover}.product-transfer-details{flex:1;min-width:0}.product-transfer-details h5{margin:0 0 .25rem;font-size:.875rem;font-weight:600;color:#1f2937}.product-transfer-details p{margin:0;font-size:.75rem;color:#6b7280}.product-transfer-quantity{display:flex;align-items:center;gap:.5rem;margin-left:auto;padding:.5rem;background-color:#f9fafb;border-radius:.375rem}.quantity-btn-small{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background-color:#1f2937;border:none;border-radius:.375rem;color:#fff;cursor:pointer;transition:all .2s ease}.quantity-btn-small:hover{background-color:#111827;transform:scale(1.05)}.quantity-display{font-size:.875rem;font-weight:600;color:#1f2937;min-width:60px;text-align:center}.waiter-change-modal{max-width:450px}.waiter-selection{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.current-waiter-info{display:flex;align-items:center;justify-content:space-between;padding:1rem;background-color:#f9fafb;border-radius:.5rem;font-size:1rem;font-weight:500;color:#4b5563}.waiter-list{display:flex;flex-direction:column;gap:.5rem}.waiter-select-btn{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background-color:#fff;border:2px solid #e5e7eb;border-radius:.5rem;font-size:.9375rem;font-weight:600;color:#4b5563;cursor:pointer;transition:all .2s ease}.waiter-select-btn:hover{background-color:#f9fafb;border-color:#d1d5db}.waiter-select-btn.selected{background-color:#eff6ff;border-color:#3b82f6;color:#1e40af}.service-fee-modal{max-width:450px}.service-fee-content{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.fee-type-selector{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.fee-type-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem;background-color:#fff;border:2px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;font-weight:600;color:#4b5563;cursor:pointer;transition:all .2s ease}.fee-type-btn span:first-child{font-size:1.75rem}.fee-type-btn:hover{background-color:#f9fafb;border-color:#d1d5db}.fee-type-btn.active{background-color:#eff6ff;border-color:#3b82f6;color:#1e40af}.fee-input-section{display:flex;flex-direction:column;gap:.75rem}.fee-input-section label{font-size:.9375rem;font-weight:600;color:#1f2937}.fee-input-wrapper{position:relative;display:flex;align-items:center}.fee-input-wrapper input{flex:1;padding:.875rem 3rem .875rem 1rem;border:2px solid #e5e7eb;border-radius:.5rem;font-size:1.125rem;font-weight:600;color:#1f2937;outline:none;transition:border-color .2s ease}.fee-input-wrapper input:focus{border-color:#3b82f6}.fee-input-suffix{position:absolute;right:1rem;font-size:1.125rem;font-weight:600;color:#6b7280;pointer-events:none}.fee-preview{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:#f0fdf4;border:2px solid #86efac;border-radius:.5rem;font-size:1rem;font-weight:600}.fee-preview span:first-child{color:#166534}.fee-amount{font-size:1.25rem;color:#059669}.note-modal{max-width:450px}.note-item-info{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background-color:#f3f4f6;border-radius:.5rem;margin-bottom:1rem}.note-item-name{font-weight:600;color:#1f2937}.note-item-quantity{font-size:.875rem;color:#6b7280;background-color:#e5e7eb;padding:.25rem .5rem;border-radius:.25rem}.note-input-wrapper{margin-bottom:.5rem}.note-textarea{width:100%;padding:.875rem;border:2px solid #e5e7eb;border-radius:.5rem;font-size:.9375rem;color:#1f2937;resize:vertical;outline:none;transition:border-color .2s ease;font-family:inherit}.note-textarea:focus{border-color:#3b82f6}.cart-item-note{font-size:.75rem;color:#f59e0b;margin:.25rem 0;padding:.25rem .5rem;background-color:#fef3c7;border-radius:.25rem;display:inline-block}.overview-page{padding:1.25rem;max-width:1920px;margin:0 auto;background-color:#f9fafb;min-height:100vh;overflow-x:hidden}.overview-header{margin-bottom:1.25rem}.overview-header h1{font-size:1.75rem;font-weight:700;color:#1f2937;margin:0 0 .375rem}.overview-subtitle{font-size:.875rem;color:#6b7280;margin:0}.overview-actions{display:flex;flex-direction:row;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.overview-actions .action-btn{display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#1f2937,#374151);border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;color:#fff;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a;white-space:nowrap;min-width:fit-content}.overview-actions .action-btn:hover{background:#fff;color:#1f2937;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.overview-actions .action-btn svg{flex-shrink:0}.overview-actions .action-btn span{white-space:nowrap}.overview-content{display:grid;grid-template-columns:1fr 2fr;gap:1rem;align-items:start}.summary-cards{display:flex;flex-direction:column;gap:1rem}.summary-card{background-color:#fff;border-radius:.75rem;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:all .2s ease}.summary-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.summary-card-header{background:linear-gradient(135deg,#1f2937,#374151);padding:.75rem 1rem}.summary-card-header h3{font-size:.9rem;font-weight:700;color:#fff;margin:0}.summary-card-body{padding:1rem;display:flex;flex-direction:column;gap:.625rem}.summary-row{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}.summary-label{display:flex;align-items:center;gap:.3rem;color:#6b7280;font-weight:500}.summary-label svg{color:#9ca3af;width:13px;height:13px}.summary-value{font-weight:600;color:#1f2937;font-size:.75rem}.summary-divider{height:1px;background-color:#e5e7eb;margin:.3rem 0}.summary-row.total{font-size:.8rem;padding-top:.3rem}.summary-row.total .summary-label{color:#1f2937}.total-value{font-size:1rem;font-weight:700;color:#059669}.chart-section{background-color:#fff;border-radius:.75rem;box-shadow:0 2px 8px #00000014;padding:1rem;display:flex;flex-direction:column;height:100%;overflow:hidden;max-width:100%}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.chart-header h3{font-size:1rem;font-weight:700;color:#1f2937;margin:0}.chart-controls{display:flex;gap:.75rem;align-items:center}.date-range-select{padding:.5rem 1rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.875rem;font-weight:500;color:#4b5563;background-color:#fff;cursor:pointer;transition:all .2s ease;outline:none}.date-range-select:hover{border-color:#1f2937}.date-range-select:focus{border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.chart-legend{display:flex;gap:1rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.legend-item{display:flex;align-items:center;gap:.375rem;font-size:.8rem;font-weight:500;color:#6b7280}.legend-color{width:14px;height:14px;border-radius:.25rem}.legend-color.income{background:linear-gradient(135deg,#86efac,#4ade80)}.legend-color.expense{background:linear-gradient(135deg,#fdba74,#fb923c)}.chart-container{display:flex;gap:.75rem;margin-bottom:1.25rem;flex:1;overflow-x:auto;overflow-y:hidden;max-width:100%;padding-bottom:.5rem}.chart-container::-webkit-scrollbar{height:6px}.chart-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.chart-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.chart-container::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.chart-y-axis{display:flex;flex-direction:column;justify-content:space-between;padding:.75rem 0;font-size:.7rem;color:#6b7280;font-weight:500;min-width:70px;text-align:right}.chart-bars{display:flex;gap:.5rem;align-items:flex-end;padding:.75rem;background-color:#f9fafb;border-radius:.5rem;min-height:250px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden}.chart-bars::-webkit-scrollbar{height:6px}.chart-bars::-webkit-scrollbar-track{background:#e5e7eb;border-radius:3px}.chart-bars::-webkit-scrollbar-thumb{background:#9ca3af;border-radius:3px}.chart-bar-group{min-width:50px;flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:.5rem}.chart-bars-wrapper{width:100%;display:flex;gap:.25rem;align-items:flex-end;height:200px}.chart-bar{flex:1;border-radius:.375rem .375rem 0 0;position:relative;transition:all .3s ease;cursor:pointer;min-height:20px;display:flex;align-items:flex-start;justify-content:center;padding-top:.375rem}.chart-bar.income{background:linear-gradient(180deg,#86efac,#4ade80)}.chart-bar.expense{background:linear-gradient(180deg,#fdba74,#fb923c)}.chart-bar:hover{filter:brightness(1.1);transform:scaleY(1.02)}.bar-value{font-size:.7rem;font-weight:600;color:#1f2937;opacity:0;transition:opacity .2s ease;text-shadow:none}.chart-bar:hover .bar-value{opacity:1}.chart-x-label{font-size:.75rem;color:#6b7280;font-weight:500;text-align:center}.chart-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;padding-top:1rem;border-top:1px solid #e5e7eb}.summary-stat{display:flex;gap:.75rem;padding:.75rem;border-radius:.5rem;background-color:#f9fafb;transition:all .2s ease}.summary-stat:hover{background-color:#f3f4f6;transform:translateY(-2px)}.summary-stat svg{flex-shrink:0;width:18px;height:18px}.income-stat svg{color:#10b981}.expense-stat svg{color:#f59e0b}.profit-stat svg{color:#3b82f6}.stat-content{display:flex;flex-direction:column;gap:.2rem}.stat-label{font-size:.75rem;color:#6b7280;font-weight:500}.stat-value{font-size:.95rem;font-weight:700;color:#1f2937}.modal-overlay{position:fixed;inset:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background-color:#fff;border-radius:.75rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.end-of-day-modal{max-width:700px}.end-of-day-modal .modal-body{padding:1.5rem}.end-of-day-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.25rem}.end-of-day-modal .form-group{display:flex;flex-direction:column;gap:.5rem;width:100%}.end-of-day-modal .form-group label{font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.25rem}.end-of-day-modal .form-input,.end-of-day-modal .form-select{width:100%;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;color:#1f2937;background-color:#fff;transition:all .2s ease;outline:none;box-sizing:border-box}.end-of-day-modal .form-input:focus,.end-of-day-modal .form-select:focus{border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.end-of-day-modal .form-group.full-width{grid-column:1 / -1}.end-of-day-modal .form-textarea{width:100%;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;color:#1f2937;background-color:#fff;transition:all .2s ease;outline:none;resize:vertical;font-family:inherit;box-sizing:border-box}.end-of-day-modal .form-textarea:focus{border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.end-of-day-modal .session-info{background-color:#f0fdf4;border:1px solid #86efac;border-radius:.5rem;padding:1rem;margin-bottom:1rem}.end-of-day-modal .session-info h4{font-size:.875rem;font-weight:600;color:#166534;margin:0 0 .75rem}.end-of-day-modal .session-details{display:flex;flex-direction:column;gap:.5rem}.end-of-day-modal .session-item{display:flex;justify-content:space-between;align-items:center}.end-of-day-modal .session-label{font-size:.8rem;color:#374151}.end-of-day-modal .session-value{font-size:.875rem;font-weight:600;color:#166534}.modal-content.logs-modal{max-width:1200px!important;width:90%!important}.notes-modal{max-width:900px}.preview-modal{max-width:700px}.preview-modal .modal-header,.preview-modal .modal-body{padding:.75rem 1rem}.preview-modal .modal-footer{padding:.5rem 1rem}.confirm-modal{max-width:500px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:2px solid #e5e7eb;background-color:#f9fafb}.modal-header h3{margin:0;font-size:1.25rem;font-weight:700;color:#1f2937}.modal-close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:.375rem;background:none;border:none;color:#6b7280;cursor:pointer;transition:all .2s ease}.modal-close-btn:hover{background-color:#e5e7eb;color:#1f2937}.modal-body{flex:1;overflow-y:auto;padding:1.5rem}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}.form-group label{font-size:.875rem;font-weight:600;color:#374151}.form-input,.form-select{padding:.75rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;color:#1f2937;background-color:#fff;transition:all .2s ease;outline:none}.form-input:focus,.form-select:focus{border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.form-textarea{padding:.75rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;color:#1f2937;background-color:#fff;transition:all .2s ease;outline:none;resize:vertical;font-family:inherit}.form-textarea:focus{border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.modal-footer{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:2px solid #e5e7eb;background-color:#f9fafb;justify-content:flex-end}.modal-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.modal-btn.primary-btn{background-color:#1f2937;color:#fff}.modal-btn.primary-btn:hover{background-color:#111827;transform:translateY(-1px);box-shadow:0 4px 6px #0000001a}.modal-btn.secondary-btn{background-color:#3b82f6;color:#fff}.modal-btn.secondary-btn:hover{background-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px #3b82f64d}.modal-btn.cancel-btn{background-color:#f3f4f6;color:#4b5563;border:1px solid #e5e7eb}.modal-btn.cancel-btn:hover{background-color:#e5e7eb;color:#1f2937}.logs-content,.notes-content{min-height:400px;display:flex;align-items:center;justify-content:center}.placeholder-text{color:#9ca3af;font-size:1rem;text-align:center}.logs-widgets{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.logs-widget{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb}.widget-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:.5rem;color:#fff}.widget-icon.total-icon{background-color:#059669}.widget-icon.payment-icon{background-color:#3b82f6}.widget-icon.product-icon{background-color:#f59e0b}.widget-icon.table-icon{background-color:#8b5cf6}.widget-content{display:flex;flex-direction:column;gap:.125rem}.widget-label{font-size:.6875rem;color:#6b7280;font-weight:500}.widget-value{display:flex;align-items:baseline;gap:.25rem}.widget-value .value-number{font-size:.8125rem;font-weight:600;color:#1f2937}.widget-value .value-unit{font-size:.6875rem;font-weight:500;color:#6b7280}.logs-filter-section{background-color:#f9fafb;padding:1rem;border-radius:.5rem;margin-bottom:1.5rem;border:1px solid #e5e7eb}.filter-group{display:flex;flex-direction:column;gap:.375rem;min-width:120px}.filter-group label{font-size:.75rem;font-weight:600;color:#374151}.filter-group .form-select,.filter-group .form-input{padding:.5rem .75rem;font-size:.875rem}.search-group{flex:1;min-width:200px}.search-input-wrapper .form-input{padding-left:2.25rem;width:100%}.filter-btn-group{min-width:auto}.filter-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#1f2937;color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.filter-btn:hover{background-color:#111827}.logs-table-container{overflow-x:auto;border:1px solid #e5e7eb;border-radius:.5rem}.logs-table{width:100%;border-collapse:collapse;font-size:.875rem}.logs-table thead{background-color:#f9fafb;position:sticky;top:0;z-index:10}.logs-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;white-space:nowrap;background-color:#f9fafb}.logs-table td{padding:.75rem 1rem;border-bottom:1px solid #e5e7eb;color:#4b5563}.logs-table tbody tr:hover{background-color:#f9fafb}.logs-table tbody tr:last-child td{border-bottom:none}.log-type{display:inline-block;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600}.log-type.sale{background-color:#d1fae5;color:#059669}.log-type.cancel{background-color:#fee2e2;color:#dc2626}.logs-table td.positive{color:#059669;font-weight:600}.logs-table td.negative{color:#dc2626;font-weight:600}.note-form{background-color:#f9fafb;padding:1rem;border-radius:.5rem;margin-bottom:1.5rem;border:1px solid #e5e7eb}.note-form-row{display:grid;grid-template-columns:2fr 1fr;gap:1rem;margin-bottom:1rem}.add-note-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background-color:#1f2937;color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:1rem}.add-note-btn:hover{background-color:#111827}.notes-list{margin-top:1rem}.notes-list-title{font-size:1rem;font-weight:700;color:#1f2937;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}.no-notes-text{color:#9ca3af;font-size:.875rem;text-align:center;padding:2rem}.note-item{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;margin-bottom:.75rem;transition:all .2s ease}.note-item:hover{box-shadow:0 2px 8px #00000014}.note-item:last-child{margin-bottom:0}.note-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.note-item-title{margin:0;font-size:.9375rem;font-weight:600;color:#1f2937}.note-item-date{font-size:.75rem;color:#6b7280;background-color:#f3f4f6;padding:.25rem .5rem;border-radius:.25rem}.note-item-description{margin:0 0 .75rem;font-size:.875rem;color:#4b5563;line-height:1.5}.note-item-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.5rem;border-top:1px solid #f3f4f6}.note-item-author{font-size:.75rem;color:#059669;font-weight:500}.note-item-created{font-size:.75rem;color:#9ca3af}.preview-section{margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.preview-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.preview-title{font-size:.9rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.preview-info p{margin:.25rem 0;font-size:.8rem;color:#4b5563}.preview-info strong{color:#1f2937;font-weight:600}.preview-summary{background-color:#f9fafb;padding:.5rem .75rem;border-radius:.5rem;margin-bottom:.5rem}.preview-row{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.8rem}.preview-row.total{padding-top:.5rem;font-size:.9rem;font-weight:700}.preview-label{color:#6b7280;font-weight:500}.preview-row.total .preview-label{color:#1f2937}.preview-value{font-weight:600;color:#1f2937}.preview-value.income{color:#059669}.preview-value.expense{color:#f59e0b}.preview-value.profit{color:#3b82f6;font-size:1.125rem}.preview-divider{height:1px;background-color:#e5e7eb;margin:.5rem 0}.preview-breakdown{background-color:#fff;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:.5rem}.breakdown-title{font-size:.8rem;font-weight:600;color:#1f2937;margin:0 0 .4rem;padding-bottom:.3rem;border-bottom:1px solid #e5e7eb}.preview-notes{background-color:#f9fafb;padding:.5rem .75rem;border-radius:.5rem;font-size:.8rem;color:#4b5563;line-height:1.5;white-space:pre-wrap}.confirm-content{padding:2rem 1rem;text-align:center}.confirm-text{font-size:1rem;color:#4b5563;line-height:1.6;margin:0 0 1rem}.confirm-warning{font-size:1.125rem;color:#1f2937;margin:0}.confirm-warning strong{color:#dc2626}.eadisyon-section{margin-top:2rem}.eadisyon-card{background-color:#fff;border-radius:.75rem;box-shadow:0 2px 8px #00000014;overflow:hidden}.eadisyon-header,.e-adisyon-header{background:linear-gradient(135deg,#1f2937,#374151);padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center}.eadisyon-header h3,.e-adisyon-header h3{font-size:1.125rem;font-weight:700;color:#fff;margin:0}.eadisyon-header-controls{display:flex;gap:.75rem;align-items:center}.date-range-filters{display:flex;gap:.5rem}.date-filter-input{padding:.5rem .75rem;border:1px solid rgba(255,255,255,.3);border-radius:.375rem;font-size:.875rem;color:#fff;background-color:#ffffff1a;outline:none;transition:all .2s ease}.date-filter-input:focus{border-color:#ffffff80;background-color:#ffffff26}.export-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;color:#fff;cursor:pointer;transition:all .2s ease}.export-btn.excel-btn{background-color:#10b981}.export-btn.excel-btn:hover{background-color:#059669}.export-btn.pdf-btn{background-color:#ef4444}.export-btn.pdf-btn:hover{background-color:#dc2626}.eadisyon-tabs{display:flex;border-bottom:2px solid #e5e7eb;background-color:#f9fafb}.eadisyon-tab,.e-adisyon-tab{flex:1;padding:1rem;background:none;border:none;border-bottom:3px solid transparent;font-size:.9375rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s ease}.eadisyon-tab:hover,.e-adisyon-tab:hover{color:#374151;background-color:#f3f4f6}.eadisyon-tab.active,.e-adisyon-tab.active{color:#1f2937;background-color:#fff;border-bottom-color:#1f2937}.eadisyon-search{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background-color:#f9fafb;border-bottom:1px solid #e5e7eb}.eadisyon-search svg{color:#6b7280;flex-shrink:0}.eadisyon-search-input{flex:1;padding:.625rem .75rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;outline:none;transition:all .2s ease}.eadisyon-search-input:focus{border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.eadisyon-table-container{overflow-x:auto;min-height:440px}.eadisyon-table{width:100%;border-collapse:collapse}.eadisyon-table thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb}.eadisyon-table th{padding:.5rem 1rem;text-align:left;font-size:.8125rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.05em}.eadisyon-table td{padding:.5rem 1rem;font-size:.875rem;color:#4b5563;border-bottom:1px solid #e5e7eb}.eadisyon-table tbody tr:hover{background-color:#f9fafb}.eadisyon-table tbody tr:last-child td{border-bottom:none}.order-no{font-weight:600;color:#1f2937}.order-amount{font-weight:600;color:#059669}.view-detail-btn{display:flex;align-items:center;justify-content:center;padding:.5rem;background:none;border:none;color:#1f2937;cursor:pointer;transition:all .2s ease;border-radius:.375rem}.view-detail-btn:hover{background-color:#f3f4f6;color:#000}.eadisyon-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem;background-color:#f9fafb;border-top:1px solid #e5e7eb}.eadisyon-pagination .pagination-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background-color:#1f2937;color:#fff;border:none;border-radius:.375rem;cursor:pointer;transition:all .2s ease}.eadisyon-pagination .pagination-btn:hover:not(:disabled){background-color:#111827}.eadisyon-pagination .pagination-btn:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.5}.eadisyon-pagination .pagination-info{font-size:.875rem;color:#6b7280;font-weight:500}.eadisyon-detail-modal{max-width:700px}.eadisyon-detail-modal .modal-body{padding:.75rem}.order-detail-info{background-color:#f9fafb;padding:.5rem .75rem;border-radius:.375rem;margin-bottom:.75rem}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.3rem 0;font-size:.8125rem;border-bottom:1px solid #e5e7eb}.detail-row:last-child{border-bottom:none}.detail-label{font-weight:600;color:#4b5563;font-size:.75rem}.detail-value{color:#1f2937;font-weight:500;font-size:.8125rem}.detail-value.cancel-reason{color:#dc2626;font-weight:600}.order-items-section h4{font-size:.875rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.order-items-table{width:100%;border-collapse:collapse;margin-bottom:.75rem}.order-items-table thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb}.order-items-table th{padding:.4rem .5rem;text-align:left;font-size:.75rem;font-weight:600;color:#374151;text-transform:uppercase}.order-items-table td{padding:.4rem .5rem;font-size:.8125rem;color:#4b5563;border-bottom:1px solid #e5e7eb}.order-items-table tbody tr:last-child td{border-bottom:none}.order-summary{background-color:#f9fafb;padding:.5rem .75rem;border-radius:.375rem}.order-summary .summary-row{display:flex;justify-content:space-between;align-items:center;padding:.3rem 0;font-size:.8125rem}.order-summary .summary-row.total{padding-top:.4rem;font-size:.9375rem;font-weight:700}.order-summary .summary-label{color:#6b7280;font-weight:500;font-size:.75rem}.order-summary .summary-row.total .summary-label{color:#1f2937;font-size:.875rem}.order-summary .summary-value{font-weight:600;color:#1f2937}.order-summary .summary-row.total .summary-value{color:#059669;font-size:1.125rem}.order-summary .summary-row.service-fee .summary-label,.order-summary .summary-row.service-fee .summary-value{color:#059669}.export-icon-btn{display:flex;align-items:center;justify-content:center;padding:.625rem;border:none;border-radius:.375rem;color:#fff;cursor:pointer;transition:all .2s ease}.export-icon-btn.excel-btn{background-color:#10b981}.export-icon-btn.excel-btn:hover{background-color:#059669}.export-icon-btn.pdf-btn{background-color:#ef4444}.export-icon-btn.pdf-btn:hover{background-color:#dc2626}.export-icon-btn.print-btn{background-color:#6366f1}.export-icon-btn.print-btn:hover{background-color:#4f46e5}@media(max-width:1280px){.overview-content{grid-template-columns:1fr}.summary-cards{flex-direction:row}.chart-summary{grid-template-columns:1fr}.eadisyon-header{flex-direction:column;gap:1rem;align-items:flex-start}.eadisyon-header-controls{flex-wrap:wrap;width:100%}.date-range-filters{flex:1}}@media(max-width:768px){.overview-page{padding:1rem}.overview-header h1{font-size:1.5rem}.overview-content{grid-template-columns:1fr}.summary-cards{flex-direction:column}.chart-bars{gap:.75rem}.chart-y-axis{min-width:60px;font-size:.65rem}.overview-actions{flex-direction:column}.action-btn{width:100%;justify-content:center}.form-row{grid-template-columns:1fr}.modal-footer{flex-direction:column}.modal-btn{width:100%;justify-content:center}.chart-header{flex-direction:column;align-items:flex-start;gap:1rem}.chart-controls,.date-range-select{width:100%}.eadisyon-header-controls{flex-direction:column;width:100%}.date-range-filters{width:100%}.export-btn{width:100%;justify-content:center}.eadisyon-tabs{flex-direction:column}.eadisyon-table{font-size:.8125rem}.eadisyon-table th,.eadisyon-table td{padding:.625rem .75rem}}.product-management-page{padding:1.5rem 2rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.header-left h1{font-size:1.75rem;font-weight:700;color:#1f2937;margin:0 0 .25rem}.product-table-container{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.table-header{display:flex;justify-content:space-between;align-items:center;padding:.625rem 1.25rem;border-bottom:1px solid #e5e7eb;background-color:#f9fafb;margin-bottom:0}.table-header-left{display:flex;align-items:center;gap:1rem}.new-product-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background-color:#1f2937;color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.new-product-btn:hover{background-color:#111827}.search-box{display:flex;align-items:center;gap:.5rem;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:.5rem .75rem;min-width:300px}.search-box svg{color:#9ca3af}.search-box input{border:none;outline:none;font-size:.875rem;color:#1f2937;width:100%;background:transparent}.table-info{font-size:.875rem;color:#6b7280}.product-table-container{background:#fff;border-radius:.5rem;border:1px solid #e5e7eb;overflow:hidden}.product-table{width:100%;border-collapse:collapse}.product-table thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb}.product-table th{padding:1rem;text-align:left;font-size:.875rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.05em}.product-table tbody tr{height:40px}.product-table td{padding:.5rem 1rem;font-size:.9375rem;color:#1f2937;border-bottom:1px solid #e5e7eb;height:40px;vertical-align:middle;line-height:1}.product-table tbody tr:last-child td{border-bottom:none}.product-table tbody tr:hover{background-color:#f9fafb}.actions-wrapper{display:flex;align-items:center;gap:.5rem}.table-action-btn{padding:.25rem;border:none;background:none;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;color:#1f2937;border-radius:.25rem}.table-action-btn svg{width:14px;height:14px}.table-action-btn:hover{background-color:#f3f4f6}.no-results{text-align:center;padding:3rem 1rem!important;color:#9ca3af;font-style:italic}.pagination{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-top:1px solid #e5e7eb;background-color:#f9fafb;min-height:60px}.pagination-controls{display:flex;gap:.5rem;align-items:center}.pagination-btn{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 .75rem;border:1px solid #e5e7eb;border-radius:.375rem;background-color:#fff;color:#4b5563;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background-color:#f3f4f6;border-color:#d1d5db}.pagination-btn.active{background-color:#1f2937;border-color:#1f2937;color:#fff}.edit-panel-overlay{position:fixed;inset:0;background-color:#00000080;z-index:1000}.edit-panel{position:fixed;top:0;right:0;width:50%;height:100vh;background-color:#fff;box-shadow:-4px 0 20px #00000026;z-index:1001;display:flex;flex-direction:column;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.edit-panel-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:2px solid #e5e7eb;background-color:#f9fafb}.edit-panel-header h3{margin:0;font-size:1.25rem;font-weight:700;color:#1f2937}.edit-panel-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:.5rem;background:none;border:none;color:#6b7280;cursor:pointer;transition:all .2s ease}.edit-panel-close:hover{background-color:#e5e7eb;color:#1f2937}.edit-panel-body{flex:1;padding:1.5rem;overflow-y:auto}.edit-form-group{margin-bottom:1.25rem}.edit-form-group label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.5rem}.edit-form-input,.edit-form-select{width:100%;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.9375rem;color:#1f2937;background-color:#fff;transition:all .2s ease;outline:none}.edit-form-input:focus,.edit-form-select:focus{border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.edit-panel-footer{display:flex;gap:.75rem;padding:1.25rem 1.5rem;border-top:2px solid #e5e7eb;background-color:#f9fafb;justify-content:flex-end}.edit-panel-btn{padding:.75rem 1.5rem;border-radius:.5rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.edit-panel-btn.cancel{background-color:#f3f4f6;color:#4b5563;border:1px solid #e5e7eb}.edit-panel-btn.cancel:hover{background-color:#e5e7eb;color:#1f2937}.edit-panel-btn.save{background-color:#1f2937;color:#fff}.edit-panel-btn.save:hover{background-color:#111827}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.large-modal{background-color:#fff;width:95%;max-width:1200px;height:85vh;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;overflow:hidden;animation:scaleIn .3s ease}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.large-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.large-modal-header h3{margin:0;font-size:1.5rem;font-weight:700;color:#1f2937}.large-modal-body{flex:1;padding:0;overflow:hidden;display:flex;flex-direction:column}.modal-body-content{display:flex;width:100%;height:100%}.modal-left-col{flex:1;padding:1rem;background-color:#f9fafb;border-right:1px solid #e5e7eb;overflow-y:auto;min-width:250px}.modal-right-col{flex:3;padding:.5rem 1rem 1rem;overflow-y:auto;display:block}.modal-right-col .modal-tabs{display:flex!important;flex-direction:row!important;gap:1rem;border-bottom:2px solid #e5e7eb;margin-bottom:1rem;padding:0;position:sticky;top:0;background-color:#fff;z-index:10}.modal-right-col .modal-tabs .modal-tab{display:inline-block!important;background:none;border:none;border-bottom:3px solid transparent;padding:.75rem .5rem;font-size:.875rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s;margin-bottom:-2px}.modal-right-col .modal-tabs .modal-tab:hover{color:#374151}.modal-right-col .modal-tabs .modal-tab.active{color:#1f2937;border-bottom-color:#1f2937}.form-group{margin-bottom:.75rem}.form-group label{display:block;font-size:.7rem;font-weight:600;color:#4b5563;margin-bottom:.2rem;text-transform:uppercase}.form-group input,.form-group select{width:100%;padding:.4rem .6rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.8125rem;color:#1f2937;transition:all .2s}.form-group input:focus,.form-group select:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 2px #3b82f61a}.searchable-select input{width:100%;cursor:pointer}.searchable-select-overlay{position:fixed;inset:0;z-index:100}.searchable-select-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-radius:.375rem;margin-top:.25rem;max-height:200px;overflow-y:auto;z-index:101;box-shadow:0 4px 6px -1px #0000001a}.searchable-select-option{padding:.5rem .75rem;cursor:pointer;font-size:.8125rem;transition:background-color .15s}.searchable-select-option.selected{background-color:#e0e7ff;color:#4338ca;font-weight:500}.form-row{display:flex;gap:.75rem}.form-group.half{flex:1}.image-upload-section{margin-bottom:1rem}.image-preview{width:100%;height:160px;border:2px dashed #d1d5db;border-radius:.5rem;display:flex;align-items:center;justify-content:center;background-color:#fff;cursor:pointer;position:relative;overflow:hidden;transition:all .2s}.image-preview:hover{border-color:#9ca3af;background-color:#f3f4f6}.image-preview img{width:100%;height:100%;object-fit:cover}.image-placeholder{display:flex;flex-direction:column;align-items:center;color:#9ca3af;gap:.5rem}.plus-icon{font-size:2rem;line-height:1}.hidden-file-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.toggle-section{background-color:#fff;padding:.5rem;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:.75rem}.toggle-header{display:flex;justify-content:space-between;align-items:center}.switch{position:relative;display:inline-block;width:36px;height:20px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;-webkit-transition:.4s;transition:.4s}.slider:before{position:absolute;content:"";height:16px;width:16px;left:2px;bottom:2px;background-color:#fff;-webkit-transition:.4s;transition:.4s}input:checked+.slider{background-color:#2196f3}input:focus+.slider{box-shadow:0 0 1px #2196f3}input:checked+.slider:before{-webkit-transform:translateX(16px);-ms-transform:translateX(16px);transform:translate(16px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.fade-in{animation:fadeIn .3s ease;margin-top:.5rem}.modal-tabs{display:flex!important;flex-direction:row!important;gap:2rem;border-bottom:2px solid #e5e7eb;margin-bottom:1.5rem;padding:0 .5rem}.modal-tabs .modal-tab{display:inline-flex!important;background:none;border:none;border-bottom:3px solid transparent;padding:.75rem .5rem;font-size:.9375rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s;position:relative;bottom:-2px;white-space:nowrap}.modal-tabs .modal-tab:hover{color:#374151}.modal-tabs .modal-tab.active{color:#1f2937;border-bottom-color:#1f2937}.tab-pane{animation:fadeIn .2s ease}.tab-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:1rem}.tab-card-title{font-size:.9375rem;font-weight:600;color:#1f2937;padding:.75rem 1rem;margin:0;background-color:#f9fafb;border-bottom:1px solid #e5e7eb;overflow:hidden}.tab-card-body{padding:1rem}.large-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid #e5e7eb;background-color:#f9fafb}.modal-footer-btn{padding:.625rem 1.5rem;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.modal-footer-btn.cancel{background-color:#f3f4f6;color:#4b5563;border:1px solid #e5e7eb}.modal-footer-btn.cancel:hover{background-color:#e5e7eb;color:#1f2937}.modal-footer-btn.create{background-color:#1f2937;color:#fff}.modal-footer-btn.create:hover{background-color:#111827}.allergen-multi-select{position:relative}.allergen-display{min-height:42px;padding:.4rem .6rem;border:1px solid #d1d5db;border-radius:.375rem;cursor:pointer;background-color:#fff;transition:all .2s}.allergen-display:hover{border-color:#9ca3af}.allergen-tags{display:flex;flex-wrap:wrap;gap:.375rem}.allergen-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background-color:#e0e7ff;color:#4338ca;border-radius:.25rem;font-size:.75rem;font-weight:500}.allergen-tag-remove{background:none;border:none;color:#4338ca;font-size:1rem;line-height:1;cursor:pointer;padding:0;margin-left:.125rem}.allergen-tag-remove:hover{color:#3730a3}.allergen-placeholder{color:#9ca3af;font-size:.8125rem}.allergen-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-radius:.375rem;margin-top:.25rem;z-index:1000;box-shadow:0 4px 6px -1px #0000001a;overflow:hidden}.allergen-search-input{width:100%;padding:.5rem .75rem;border:none;border-bottom:1px solid #e5e7eb;font-size:.8125rem;outline:none}.allergen-search-input:focus{background-color:#f9fafb}.allergen-options{max-height:200px;overflow-y:auto}.allergen-option{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;cursor:pointer;font-size:.8125rem;transition:background-color .15s}.allergen-option:hover{background-color:#f3f4f6}.allergen-option.selected{background-color:#eff6ff}.allergen-option input[type=checkbox]{cursor:pointer;width:auto;margin:0}.menu-info-textarea{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.8125rem;color:#1f2937;font-family:inherit;resize:vertical;transition:all .2s}.menu-info-textarea:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 2px #3b82f61a}.menu-info-textarea::placeholder{color:#9ca3af}.category-list-content{display:flex;flex-direction:column;height:100%;padding:1rem}.category-list-header{display:flex;gap:1rem;margin-bottom:1.5rem;align-items:center}.category-table-wrapper{flex:1;overflow-y:auto}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:.375rem;font-size:.75rem;font-weight:600}.status-badge.active{background-color:#d1fae5;color:#065f46}.status-badge.inactive{background-color:#fee2e2;color:#991b1b}.category-form-modal{background-color:#fff;width:90%;max-width:600px;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;max-height:85vh;animation:scaleIn .3s ease}.category-form-content{padding:1.5rem;overflow-y:auto}.delete-confirm-dialog{background-color:#fff;width:90%;max-width:450px;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;animation:scaleIn .3s ease}.delete-confirm-header{padding:1.5rem;border-bottom:1px solid #e5e7eb}.delete-confirm-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#1f2937}.delete-confirm-body{padding:1.5rem}.delete-confirm-body p{margin:0 0 .75rem;color:#4b5563;font-size:.9375rem}.delete-warning{color:#dc2626!important;font-weight:600}.delete-confirm-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background-color:#f9fafb}.modal-footer-btn.delete{background-color:#dc2626;color:#fff}.modal-footer-btn.delete:hover{background-color:#b91c1c}.product-table tbody tr.dragging{opacity:.5;background-color:#f3f4f6}.product-table tbody tr{transition:background-color .2s}.table-management-page{padding:1.5rem;height:calc(100vh - 80px);display:flex;flex-direction:column}.page-header{margin-bottom:1.5rem;flex-shrink:0}.header-left h1{font-size:1.875rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.page-subtitle{color:#6b7280;font-size:.9375rem;margin:0}.management-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid #e5e7eb;flex-shrink:0}.management-tab{padding:.75rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;font-size:.9375rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s;margin-bottom:-2px}.management-tab:hover{color:#1f2937;background-color:#f9fafb}.management-tab.active{color:#1f2937;border-bottom-color:#1f2937}.tab-content-wrapper{display:flex;gap:1.5rem;flex:1;min-height:0}.sidebar-form{width:320px;flex-shrink:0;background:#fff;border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a;height:fit-content}.sidebar-form h3{font-size:1rem;font-weight:700;color:#1f2937;margin:0 0 1.5rem}.sidebar-form .form-group{margin-bottom:1.25rem}.sidebar-form .form-group:last-of-type{margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.5rem}.form-group input[type=text],.form-group input[type=number]{padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.9375rem;transition:all .2s}.form-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.checkbox-group{flex-direction:row;align-items:center}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;margin-bottom:0}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-label span{font-size:.9375rem;color:#374151;font-weight:500}.toggle-group{flex-direction:row;align-items:center}.toggle-label{display:flex;align-items:center;justify-content:space-between;width:100%;cursor:pointer;margin-bottom:0}.toggle-label span{font-size:.9375rem;color:#374151;font-weight:500}.toggle-switch{position:relative;width:48px;height:24px;cursor:pointer}.toggle-switch input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;z-index:2}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#d1d5db;transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:#1f2937}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.create-table-btn,.save-btn{width:100%;padding:.75rem 1.5rem;background-color:#1f2937;color:#fff;border:none;border-radius:.5rem;font-size:.9375rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.create-table-btn:hover,.save-btn:hover{background-color:#111827}.searchable-select{position:relative}.searchable-select input{width:100%}.searchable-select-overlay{position:fixed;inset:0;z-index:999}.searchable-select-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-radius:.5rem;margin-top:.25rem;z-index:1000;box-shadow:0 4px 6px -1px #0000001a;max-height:200px;overflow-y:auto}.searchable-select-option{padding:.625rem .875rem;cursor:pointer;transition:background-color .15s}.searchable-select-option:hover{background-color:#f3f4f6}.searchable-select-option.selected{background-color:#dbeafe;color:#1e40af;font-weight:600}.main-content-area{flex:1;background:#fff;border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a;overflow:hidden;display:flex;flex-direction:column}.tables-list-container{flex:1;overflow:auto}.tables-list-table{width:100%;border-collapse:collapse}.tables-list-table thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb;position:sticky;top:0;z-index:10}.tables-list-table th{padding:.875rem 1rem;text-align:left;font-size:.8125rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.tables-list-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .15s}.tables-list-table tbody tr:hover{background-color:#f9fafb}.tables-list-table td{padding:.625rem 1rem;font-size:.9375rem;color:#1f2937}.action-buttons{display:flex;gap:.5rem;justify-content:center}.action-btn{padding:.5rem;border:none;background:none;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;color:#1f2937}.action-btn:hover{opacity:.6}.action-btn-black{padding:.5rem;border:none;background:none;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;color:#000}.action-btn-black:hover{opacity:.6}.placeholder-content{background:#fff;border-radius:.75rem;padding:3rem;box-shadow:0 1px 3px #0000001a;text-align:center}.placeholder-content p{color:#6b7280;font-size:1rem;margin:0}.mapping-container{display:flex;gap:1.5rem;height:calc(100vh - 200px)}.unassigned-categories{width:220px;background:#fff;border-radius:.75rem;padding:1rem;box-shadow:0 1px 3px #0000001a;flex-shrink:0;display:flex;flex-direction:column}.unassigned-categories h3{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb}.category-list{display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;flex:1}.category-card{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;padding:.75rem 1rem;font-size:.875rem;font-weight:500;color:#374151;cursor:grab;transition:all .2s}.category-card:hover{background:#e5e7eb;border-color:#d1d5db}.category-card:active{cursor:grabbing}.category-card.assigned{background:#dbeafe;border-color:#93c5fd;color:#1e40af;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.category-card.assigned span{flex:1}.remove-category-btn{background:none;border:none;color:#6b7280;font-size:1.25rem;cursor:pointer;padding:0;line-height:1;transition:color .2s}.remove-category-btn:hover{color:#ef4444}.no-categories{color:#9ca3af;font-size:.875rem;text-align:center;padding:1rem 0;margin:0}.kanban-board{display:flex;gap:1rem;flex:1;overflow-x:auto}.kanban-column{background:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;min-width:250px;flex:1;display:flex;flex-direction:column;max-height:100%}.kanban-column-header{padding:1rem;border-bottom:2px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.kanban-column-header h4{font-size:1rem;font-weight:600;color:#1f2937;margin:0}.category-count{background:#3b82f6;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:9999px;min-width:24px;text-align:center}.kanban-column-content{padding:1rem;display:flex;flex-direction:column;gap:.5rem;flex:1;overflow-y:auto;min-height:100px}.drop-hint{color:#9ca3af;font-size:.875rem;text-align:center;padding:2rem 1rem;margin:0;border:2px dashed #e5e7eb;border-radius:6px}@media(max-width:768px){.table-management-page{padding:1rem}.tab-content-wrapper{flex-direction:column}.sidebar-form{width:100%}.management-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.management-tab{white-space:nowrap}}.search-bar{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:#f9fafb;border-radius:.5rem;margin-bottom:1rem}.search-bar svg{color:#6b7280;flex-shrink:0}.search-input{flex:1;padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.9375rem;outline:none;transition:all .2s}.search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem;border-top:1px solid #e5e7eb;margin-top:auto}.pagination-btn{padding:.5rem 1rem;background-color:#1f2937;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.pagination-btn:hover:not(:disabled){background-color:#111827}.pagination-btn:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.5}.form-row-inline{display:flex;gap:.75rem;margin-bottom:1.25rem;align-items:flex-start}.width-100{flex:1}.width-75{flex:0 0 calc(75% - .375rem);max-width:calc(75% - .375rem)}.width-25{flex:0 0 calc(25% - .375rem);min-width:calc(25% - .375rem)}.label-with-toggle{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.toggle-inline{display:flex;align-items:center;gap:.5rem;justify-content:flex-end}.toggle-text{font-size:.875rem;color:#374151;font-weight:500}.toggle-above-label{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.5rem;align-items:flex-end;margin-top:-30px}.label-below-toggle{font-size:.875rem;font-weight:600;color:#374151;min-height:1.25rem;line-height:1.25rem}.label-with-toggle-right{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.label-with-toggle-right label{margin-bottom:0}.form-header-with-toggle{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.form-header-with-toggle h3{margin:0}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:480px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.modal-close-btn{background:none;border:none;padding:.25rem;cursor:pointer;color:#6b7280;border-radius:6px;transition:all .2s}.modal-body .form-group{margin-bottom:1rem}.modal-body .form-group:last-child{margin-bottom:0}.modal-body .form-group label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.modal-body .form-group input,.modal-body .form-group select{width:100%;padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:8px;font-size:.9375rem;color:#1f2937;transition:border-color .2s,box-shadow .2s}.modal-body .form-group input:focus,.modal-body .form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background-color:#f9fafb;border-radius:0 0 12px 12px}.btn-cancel{padding:.625rem 1.25rem;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s}.btn-cancel:hover{background-color:#f3f4f6}.btn-save{padding:.625rem 1.25rem;background-color:#3b82f6;border:none;border-radius:8px;font-size:.875rem;font-weight:500;color:#fff;cursor:pointer;transition:all .2s}.btn-save:hover{background-color:#2563eb}.mapping-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.mapping-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.save-mapping-btn{padding:.625rem 1.25rem;background-color:#10b981;border:none;border-radius:8px;font-size:.875rem;font-weight:500;color:#fff;cursor:pointer;transition:all .2s}.save-mapping-btn:hover{background-color:#059669}.menu-management-page{padding:2rem;width:100%;margin:0 auto}.mmp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.mmp-header-left h1{font-size:1.875rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.mmp-subtitle{font-size:.9375rem;color:#6b7280;margin:0}.mmp-new-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:#1f2937;color:#fff;border:none;border-radius:.5rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.mmp-new-btn:hover{background-color:#111827;transform:translateY(-1px)}.mmp-search{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:#f9fafb;border-radius:.5rem;margin-bottom:1.5rem}.mmp-search svg{color:#6b7280;flex-shrink:0}.mmp-search input{flex:1;padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.9375rem;outline:none;transition:all .2s}.mmp-search input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.mmp-table-container{background:#fff;border-radius:.5rem;border:1px solid #e5e7eb;overflow:hidden}.mmp-table{width:100%;border-collapse:collapse}.mmp-table thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb}.mmp-table th{padding:1rem;text-align:left;font-size:.875rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.05em}.mmp-table td{padding:.625rem 1rem;font-size:.9375rem;color:#1f2937;border-bottom:1px solid #e5e7eb}.mmp-table tbody tr:last-child td{border-bottom:none}.mmp-table tbody tr:hover{background-color:#f9fafb}.mmp-products-list{color:#6b7280;font-size:.875rem}.mmp-actions{display:flex;gap:.5rem}.mmp-action-btn{padding:.5rem;border:none;background:none;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;color:#1f2937;border-radius:.25rem}.mmp-action-btn:hover{background-color:#f3f4f6}.mmp-action-btn.mmp-delete:hover{color:#dc2626;background-color:#fee2e2}.mmp-action-btn.mmp-edit:hover{color:#2563eb;background-color:#dbeafe}.mmp-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.5rem;margin-top:1rem}.mmp-page-btn{padding:.5rem 1rem;background-color:#1f2937;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.mmp-page-btn:hover:not(:disabled){background-color:#111827}.mmp-page-btn:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.5}.mmp-page-info{font-size:.875rem;color:#6b7280;font-weight:500}.mmp-modal-overlay{position:fixed;inset:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;display:flex;align-items:center;justify-content:center}.mmp-modal{background:#fff;border-radius:25px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;z-index:9999}.mmp-modal-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-bottom:1px solid #e5e7eb}.mmp-modal-header h2{font-size:1.5rem;font-weight:700;color:#1f2937;margin:0}.mmp-modal-close{padding:.5rem;background:none;border:none;cursor:pointer;color:#6b7280;transition:all .2s;border-radius:.375rem;display:flex;align-items:center;justify-content:center}.mmp-modal-close:hover{background-color:#f3f4f6;color:#1f2937}.mmp-modal-body{padding:.5rem .75rem;overflow-y:auto;flex:1}.mmp-form-group{margin-bottom:.75rem}.mmp-form-group label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.35rem}.mmp-form-group input[type=text],.mmp-form-group input[type=number]{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.9375rem;outline:none;transition:all .2s}.mmp-form-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.mmp-product-search{display:flex;align-items:center;gap:.5rem;padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;margin-bottom:.5rem}.mmp-product-search svg{color:#6b7280;flex-shrink:0}.mmp-product-search input{flex:1;border:none;outline:none;font-size:.9375rem}.mmp-products{max-height:300px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:.375rem;padding:.35rem}.mmp-product{display:flex;justify-content:space-between;align-items:center;padding:.5rem;border-radius:.375rem;cursor:pointer;transition:all .2s;margin-bottom:.35rem}.mmp-product:hover{background-color:#f3f4f6}.mmp-product.selected{background-color:#dbeafe;border:2px solid #3b82f6}.mmp-product-info{display:flex;flex-direction:column;gap:.25rem}.mmp-product-name{font-size:.9375rem;font-weight:600;color:#1f2937}.mmp-product-cat{font-size:.8125rem;color:#6b7280}.mmp-product-price{font-size:.9375rem;font-weight:600;color:#1f2937}.mmp-selected{margin-top:.75rem;padding:.75rem;background-color:#f9fafb;border-radius:.375rem}.mmp-selected label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.35rem}.mmp-selected-list{display:flex;flex-wrap:wrap;gap:.5rem}.mmp-tag{display:inline-flex;align-items:center;padding:.375rem .75rem;background-color:#3b82f6;color:#fff;border-radius:9999px;font-size:.875rem;font-weight:500}.mmp-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:.5rem .75rem;border-top:1px solid #e5e7eb}.mmp-btn-cancel,.mmp-btn-save{padding:.4rem .75rem;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.mmp-btn-cancel{background-color:#f3f4f6;color:#374151}.mmp-btn-cancel:hover{background-color:#e5e7eb}.mmp-btn-save{background-color:#1f2937;color:#fff}.mmp-btn-save:hover{background-color:#111827}.mmp-confirm-modal{background:#fff;border-radius:20px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:90%;max-width:400px;z-index:9999}.mmp-confirm-header{padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.mmp-confirm-header h3{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0}.mmp-confirm-body{padding:1.5rem 1.25rem}.mmp-confirm-body p{font-size:.9375rem;color:#6b7280;margin:0;line-height:1.5}.mmp-confirm-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid #e5e7eb}.mmp-btn-delete{padding:.5rem 1rem;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;background-color:#dc2626;color:#fff}.mmp-btn-delete:hover{background-color:#b91c1c}@media(max-width:768px){.menu-management-page{padding:1rem}.mmp-header{flex-direction:column;align-items:flex-start;gap:1rem}.mmp-new-btn{width:100%;justify-content:center}.mmp-modal{width:95%;max-height:95vh}.mmp-table{font-size:.875rem}.mmp-table th,.mmp-table td{padding:.5rem}}.restaurant-settings-page{padding:2rem;width:100%;margin:0 auto}.rsp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.rsp-header-left h1{font-size:1.875rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.rsp-subtitle{font-size:.9375rem;color:#6b7280;margin:0}.rsp-tabs{display:flex;gap:.5rem;border-bottom:2px solid #e5e7eb;margin-bottom:2rem}.rsp-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;color:#6b7280;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s;position:relative;bottom:-2px}.rsp-tab:hover{color:#1f2937;background-color:#f9fafb}.rsp-tab.active{color:#1f2937;border-bottom-color:#1f2937}.rsp-content{padding:0;min-height:400px}.rsp-tab-content{display:flex;flex-direction:column;gap:1.5rem;background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;padding:0}.rsp-settings-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:1.5rem;padding:1.5rem;border-radius:.5rem;align-items:center}.rsp-category{font-size:1rem;font-weight:700;color:#1f2937;padding-right:1rem;border-right:2px solid #e5e7eb}.rsp-toggle-item{display:flex;flex-direction:row;align-items:center;gap:.75rem}.rsp-toggle-item span{font-size:.875rem;font-weight:600;color:#374151}.rsp-toggle{position:relative;display:inline-block;width:48px;height:24px;flex-shrink:0}.rsp-toggle input{opacity:0;width:0;height:0}.rsp-slider{position:absolute;cursor:pointer;inset:0;background-color:#d1d5db;transition:.3s;border-radius:24px}.rsp-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.rsp-toggle input:checked+.rsp-slider{background-color:#1f2937}.rsp-toggle input:checked+.rsp-slider:before{transform:translate(24px)}.rsp-toggle input:focus+.rsp-slider{box-shadow:0 0 0 3px #1f29371a}.rsp-table-section{margin-top:0;padding:1.5rem}.rsp-table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.rsp-table-header h3{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0}.rsp-search-bar{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#f9fafb;border:1px solid #d1d5db;border-radius:.375rem;min-width:300px}.rsp-search-bar svg{color:#6b7280;flex-shrink:0}.rsp-search-bar input{flex:1;border:none;background:none;outline:none;font-size:.9375rem;color:#1f2937}.rsp-table-container{background:#fff;border-radius:.5rem;border:1px solid #e5e7eb;overflow:hidden;overflow-x:auto}.rsp-table{width:100%;border-collapse:collapse}.rsp-table thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb}.rsp-table th{padding:1rem;text-align:left;font-size:.875rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.05em}.rsp-table td{padding:.75rem 1rem;font-size:.9375rem;color:#1f2937;border-bottom:1px solid #e5e7eb}.rsp-table tbody tr:last-child td{border-bottom:none}.rsp-table tbody tr:hover{background-color:#f9fafb}.rsp-status{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.8125rem;font-weight:600}.rsp-status.active{background-color:#d1fae5;color:#065f46}.rsp-status.inactive{background-color:#fee2e2;color:#991b1b}.rsp-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.5rem;margin-top:1rem}.rsp-page-btn{padding:.5rem 1rem;background-color:#1f2937;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.rsp-page-btn:hover:not(:disabled){background-color:#111827}.rsp-page-btn:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.5}.rsp-page-info{font-size:.875rem;color:#6b7280;font-weight:500}.rsp-company-logo{font-size:1.5rem;display:inline-block}.rsp-company-name{font-weight:600;color:#1f2937}.rsp-header-actions{display:flex;align-items:center;gap:1rem}.rsp-new-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background-color:#1f2937;color:#fff;border:none;border-radius:.375rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.rsp-new-btn:hover{background-color:#111827}.rsp-url-cell{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;color:#6b7280}.rsp-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.8125rem;font-weight:600}.rsp-badge.test{background-color:#fef3c7;color:#92400e}.rsp-badge.production{background-color:#d1fae5;color:#065f46}.rsp-table-actions{display:flex;gap:.5rem;justify-content:center}.rsp-action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;color:#1f2937;cursor:pointer;transition:all .2s}.rsp-action-btn:hover{color:#000}.rsp-modal-backdrop{position:fixed;inset:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9998;padding:2rem}.rsp-cr-modal{background:#fff;border-radius:1rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;z-index:9999}.rsp-cr-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e5e7eb}.rsp-cr-modal-header h2{font-size:1.5rem;font-weight:700;color:#1f2937;margin:0}.rsp-modal-close-btn{background:none;border:none;cursor:pointer;color:#6b7280;transition:color .2s;padding:.25rem;display:flex;align-items:center;justify-content:center}.rsp-modal-close-btn:hover{color:#1f2937}.rsp-cr-modal-body{flex:1;overflow-y:auto;padding:2rem}.rsp-cr-modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem 2rem;border-top:1px solid #e5e7eb}.rsp-form-group{display:flex;flex-direction:column;gap:.5rem}.rsp-form-group label{font-size:.875rem;font-weight:600;color:#374151}.rsp-form-group input,.rsp-form-group textarea,.rsp-form-group select,.rsp-select{padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.9375rem;color:#1f2937;transition:all .2s}.rsp-form-group input:focus,.rsp-form-group textarea:focus,.rsp-form-group select:focus,.rsp-select:focus{outline:none;border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.rsp-form-group textarea{resize:vertical;font-family:inherit}.rsp-config-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;margin-top:1.5rem}.rsp-config-card h3{font-size:1.125rem;font-weight:700;color:#1f2937;margin:0 0 1.25rem}.rsp-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.rsp-full-width{grid-column:1 / -1}.rsp-radio-group{display:flex;gap:2rem}.rsp-radio-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9375rem;font-weight:500;color:#374151}.rsp-radio-label input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:#1f2937}.rsp-btn-cancel,.rsp-btn-save{padding:.625rem 1.5rem;border:none;border-radius:.375rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.rsp-btn-cancel{background-color:#f3f4f6;color:#374151}.rsp-btn-cancel:hover{background-color:#e5e7eb}.rsp-btn-save{background-color:#1f2937;color:#fff}.rsp-btn-save:hover{background-color:#111827}.rsp-searchable-select{position:relative}.rsp-search-input{width:100%}.rsp-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-top:none;border-radius:0 0 .375rem .375rem;max-height:200px;overflow-y:auto;z-index:1000;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.rsp-dropdown-item{padding:.625rem .875rem;cursor:pointer;transition:background-color .15s;font-size:.9375rem;color:#1f2937}.rsp-dropdown-item:hover{background-color:#f3f4f6}.rsp-dropdown-item:active{background-color:#e5e7eb}.qr-code-section{margin-top:1.5rem}.qr-code-card{grid-column:span 3;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem}.qr-code-preview{display:flex;gap:2rem;align-items:center}.qr-code-container{flex-shrink:0;padding:1rem;background:#fff;border:2px solid #e5e7eb;border-radius:.75rem}.qr-code-image{width:160px;height:160px;display:block}.qr-code-info{flex:1}.qr-code-info h4{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:#1f2937}.qr-url{margin:0 0 1rem;font-size:.875rem;color:#6b7280;background:#f3f4f6;padding:.5rem .75rem;border-radius:.375rem;font-family:monospace}.qr-code-actions{display:flex;gap:.75rem}.qr-action-btn{padding:.625rem 1.25rem;background:#1f2937;color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.qr-action-btn:hover{background:#111827}.qr-action-btn.secondary{background:#fff;color:#1f2937;border:1px solid #d1d5db}.qr-action-btn.secondary:hover{background:#f3f4f6}@media(max-width:1200px){.rsp-settings-row{grid-template-columns:1fr;gap:1rem}.rsp-category{border-right:none;border-bottom:2px solid #e5e7eb;padding-right:0;padding-bottom:1rem}}@media(max-width:768px){.restaurant-settings-page{padding:1rem}.rsp-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.rsp-tab{white-space:nowrap;padding:.75rem 1rem;font-size:.875rem}.rsp-content{padding:1.5rem}.rsp-settings-row{padding:1rem}}.ump-page{padding:1.5rem 2rem}.ump-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.ump-header-left h1{font-size:1.75rem;font-weight:700;color:#1f2937;margin:0 0 .25rem}.ump-subtitle{font-size:.875rem;color:#6b7280;margin:0}.ump-tabs{display:flex;gap:2rem;border-bottom:2px solid #e5e7eb;margin-bottom:1.5rem;padding:0 .5rem}.ump-tab{display:flex;align-items:center;gap:.5rem;background:none;border:none;border-bottom:3px solid transparent;padding:.75rem .5rem;font-size:.9375rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s;position:relative;bottom:-2px}.ump-tab:hover{color:#374151}.ump-tab.active{color:#1f2937;border-bottom-color:#1f2937}.ump-content{animation:fadeIn .2s ease}.ump-table-container{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.ump-table-header{display:flex;justify-content:space-between;align-items:center;padding:.625rem 1.25rem;border-bottom:1px solid #e5e7eb;background-color:#f9fafb}.ump-table-header-left{display:flex;align-items:center;gap:1rem}.ump-new-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background-color:#1f2937;color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.ump-new-btn:hover{background-color:#111827}.ump-search-box{display:flex;align-items:center;gap:.5rem;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:.5rem .75rem;min-width:300px}.ump-search-box svg{color:#9ca3af}.ump-search-box input{border:none;outline:none;font-size:.875rem;color:#1f2937;width:100%;background:transparent}.ump-search-box input::placeholder{color:#9ca3af}.ump-table-info{font-size:.875rem;color:#6b7280;font-weight:500}.ump-table-wrapper{overflow-x:auto}.ump-table{width:100%;border-collapse:collapse;border-spacing:0;table-layout:fixed}.ump-table thead{background-color:#f9fafb}.ump-table th{padding:.5rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb}.ump-table th:nth-child(1){width:5%}.ump-table th:nth-child(2){width:9%}.ump-table th:nth-child(3){width:14%}.ump-table th:nth-child(4){width:17%}.ump-table th:nth-child(5){width:11%}.ump-table th:nth-child(6){width:10%}.ump-table th:nth-child(7){width:8%}.ump-table th:nth-child(8){width:14%}.ump-table th:nth-child(9){width:12%}.ump-table th:last-child{border-right:none}.ump-table td{padding:.5rem 1rem;font-size:.875rem;color:#4b5563;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;vertical-align:middle;height:44px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ump-table td:last-child{border-right:none}.ump-table tbody tr:hover{background-color:#f9fafb}.ump-table tbody tr:last-child td{border-bottom:none}.ump-permission-code{font-family:Courier New,monospace;font-weight:600;color:#6366f1;font-size:.8125rem}.ump-user-name,.ump-role-name{font-weight:600;color:#1f2937;display:block;line-height:1.5}.ump-role-badge{display:inline-flex;align-items:center;padding:.125rem .5rem;background-color:#e0e7ff;color:#4338ca;border-radius:9999px;font-size:.75rem;font-weight:500;line-height:1.2}.ump-status-badge{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600}.ump-status-badge.active{background-color:#d1fae5;color:#065f46}.ump-status-badge.inactive{background-color:#fee2e2;color:#991b1b}.ump-last-login{color:#6b7280;font-size:.8125rem}.ump-actions-cell{white-space:nowrap}.ump-action-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;color:#1f2937;cursor:pointer;transition:all .2s;margin-right:.375rem}.ump-action-btn:last-child{margin-right:0}.ump-action-btn:hover{color:#000}.ump-no-results{text-align:center;color:#6b7280;padding:2rem!important}.ump-pagination{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-top:1px solid #e5e7eb;background-color:#f9fafb;min-height:60px}.ump-pagination-info{font-size:.875rem;color:#6b7280;font-weight:500}.ump-pagination-controls{display:flex;gap:.5rem;align-items:center}.ump-pagination-btn{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 .75rem;border:1px solid #e5e7eb;border-radius:.375rem;background-color:#fff;color:#4b5563;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.ump-pagination-btn:hover:not(:disabled){background-color:#f3f4f6;border-color:#d1d5db}.ump-pagination-btn.active{background-color:#1f2937;border-color:#1f2937;color:#fff}.ump-pagination-btn:disabled{opacity:.5;cursor:not-allowed}.ump-roles-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.ump-role-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.ump-role-card{position:relative;padding:2rem 1.5rem;border-radius:.75rem;cursor:pointer;transition:all .2s;box-shadow:0 1px 3px #0000001a;color:#fff}.ump-role-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px #00000026}.ump-role-card:hover .ump-role-delete-btn{opacity:1}.ump-role-delete-btn{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:#fff3;border:none;border-radius:.375rem;color:#fff;cursor:pointer;opacity:0;transition:all .2s}.ump-role-delete-btn:hover{background-color:#ffffff4d}.ump-role-card-content h3{font-size:1.5rem;font-weight:700;margin:0 0 .5rem}.ump-role-user-count{font-size:.875rem;opacity:.9;margin:0}.ump-modal-backdrop{position:fixed;inset:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9998;padding:2rem}.ump-modal{background:#fff;border-radius:1rem;box-shadow:0 20px 25px -5px #0000001a;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;z-index:9999}.ump-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e5e7eb}.ump-modal-header h2{font-size:1.5rem;font-weight:700;color:#1f2937;margin:0}.ump-modal-close{background:none;border:none;cursor:pointer;color:#6b7280;transition:color .2s;padding:.25rem;display:flex;align-items:center;justify-content:center}.ump-modal-close:hover{color:#1f2937}.ump-modal-body{flex:1;overflow-y:auto;padding:2rem}.ump-modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem 2rem;border-top:1px solid #e5e7eb}.ump-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-bottom:1.5rem}.ump-form-row-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:1.5rem}.ump-form-group{display:flex;flex-direction:column;gap:.5rem}.ump-form-group label{font-size:.875rem;font-weight:600;color:#374151}.ump-form-group input,.ump-form-group select,.ump-select{padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.9375rem;color:#1f2937;transition:all .2s;background-color:#fff}.ump-form-group input:focus,.ump-form-group select:focus,.ump-select:focus{outline:none;border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.ump-color-picker{height:48px;cursor:pointer}.ump-permissions-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem}.ump-permissions-card h3{font-size:1.125rem;font-weight:700;color:#1f2937;margin:0 0 1.25rem}.ump-permissions-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.ump-permission-group h4{font-size:.9375rem;font-weight:600;color:#1f2937;margin:0 0 .75rem}.ump-permission-list{display:flex;flex-direction:column;gap:.5rem}.ump-checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:#4b5563;padding:.375rem 0}.ump-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#1f2937}.ump-checkbox-label:hover{color:#1f2937}.ump-btn-cancel,.ump-btn-save,.ump-btn-delete{padding:.625rem 1.5rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.ump-btn-cancel{background-color:#f3f4f6;color:#4b5563}.ump-btn-cancel:hover{background-color:#e5e7eb}.ump-btn-save{background-color:#1f2937;color:#fff}.ump-btn-save:hover{background-color:#111827}.ump-btn-delete{background-color:#ef4444;color:#fff}.ump-btn-delete:hover{background-color:#dc2626}.ump-delete-modal{background:#fff;border-radius:1rem;box-shadow:0 20px 25px -5px #0000001a;width:100%;max-width:400px;padding:2rem;z-index:9999}.ump-delete-modal h3{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0 0 1rem}.ump-delete-modal p{font-size:.9375rem;color:#6b7280;margin:0 0 1.5rem;line-height:1.6}.ump-delete-modal-footer{display:flex;justify-content:flex-end;gap:1rem}@media(max-width:1200px){.ump-table-header{flex-direction:column;gap:1rem;align-items:flex-start}.ump-table-header-left{width:100%;flex-direction:column;align-items:stretch}.ump-search-box{min-width:100%}.ump-permissions-groups,.ump-form-grid{grid-template-columns:1fr}}@media(max-width:768px){.ump-page{padding:1rem}.ump-tabs{gap:1rem}.ump-pagination{flex-direction:column;gap:1rem}.ump-pagination-controls{flex-wrap:wrap;justify-content:center}.ump-role-grid{grid-template-columns:1fr}}.reports-page{padding:2rem;width:100%;margin:0 auto;background-color:#f9fafb;min-height:100vh}.reports-header{margin-bottom:2rem}.reports-header-left h1{font-size:1.875rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.reports-subtitle{font-size:.9375rem;color:#6b7280;margin:0}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.report-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;cursor:pointer;transition:all .2s ease;border:1px solid #e5e7eb}.report-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px);border-color:#1f2937}.report-card-icon{font-size:2rem;width:56px;height:56px;display:flex;align-items:center;justify-content:center;background-color:#f3f4f6;border-radius:.75rem;flex-shrink:0}.report-card-content{flex:1}.report-card-content h3{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 .25rem}.report-card-content p{font-size:.8125rem;color:#6b7280;margin:0}.report-card-arrow{color:#9ca3af;transition:color .2s}.report-card:hover .report-card-arrow{color:#1f2937}.report-modal-overlay{position:fixed;inset:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.report-modal{background-color:#fff;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;width:100%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.report-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb;background-color:#f9fafb}.report-modal-header h3{margin:0;font-size:1.25rem;font-weight:700;color:#1f2937}.report-modal-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:.5rem;background:none;border:none;color:#6b7280;cursor:pointer;transition:all .2s}.report-modal-close:hover{background-color:#e5e7eb;color:#1f2937}.report-modal-filters{display:flex;gap:1rem;padding:1rem 1.5rem;background-color:#f9fafb;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end}.report-filter-group{display:flex;flex-direction:column;gap:.375rem}.report-filter-group label{font-size:.75rem;font-weight:600;color:#374151;text-transform:uppercase}.report-filter-input{padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;color:#1f2937;background-color:#fff;outline:none;transition:all .2s;min-width:150px}.report-filter-input:focus{border-color:#1f2937;box-shadow:0 0 0 2px #1f29371a}.report-filter-group.search{flex:1;min-width:200px}.report-search-wrapper{position:relative;display:flex;align-items:center}.report-search-wrapper svg{position:absolute;left:.75rem;color:#9ca3af}.report-search-wrapper .report-filter-input{padding-left:2.25rem;width:100%}.report-filter-actions{display:flex;gap:.5rem}.report-filter-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background-color:#1f2937;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.report-filter-btn:hover{background-color:#111827}.report-modal-body{flex:1;overflow-y:auto;padding:1.5rem}.report-table-container{overflow-x:auto;border:1px solid #e5e7eb;border-radius:.5rem}.report-table{width:100%;border-collapse:collapse}.report-table thead{background-color:#f9fafb;position:sticky;top:0}.report-table th{padding:.875rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e5e7eb;white-space:nowrap}.report-table td{padding:.75rem 1rem;font-size:.875rem;color:#4b5563;border-bottom:1px solid #e5e7eb}.report-table tbody tr:hover{background-color:#f9fafb}.report-table tbody tr:last-child td{border-bottom:none}.report-bold{font-weight:600;color:#1f2937}.report-amount{font-weight:600;color:#059669}.report-danger{font-weight:600;color:#dc2626}.report-status{display:inline-block;padding:.25rem .625rem;border-radius:.25rem;font-size:.75rem;font-weight:600}.report-status.success{background-color:#d1fae5;color:#065f46}.report-status.warning{background-color:#fef3c7;color:#92400e}.report-status.danger{background-color:#fee2e2;color:#991b1b}.report-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem 0;margin-top:1rem}.report-page-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background-color:#1f2937;color:#fff;border:none;border-radius:.375rem;cursor:pointer;transition:all .2s}.report-page-btn:hover:not(:disabled){background-color:#111827}.report-page-btn:disabled{background-color:#9ca3af;cursor:not-allowed}.report-page-info{font-size:.875rem;color:#6b7280;font-weight:500}.report-modal-footer{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background-color:#f9fafb;justify-content:flex-end}.report-export-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;color:#fff}.report-export-btn.excel{background-color:#10b981}.report-export-btn.excel:hover{background-color:#059669}.report-export-btn.pdf{background-color:#ef4444}.report-export-btn.pdf:hover{background-color:#dc2626}.report-export-btn.print{background-color:#6366f1}.report-export-btn.print:hover{background-color:#4f46e5}.report-export-btn.rule{background-color:#f59e0b}.report-export-btn.rule:hover{background-color:#d97706}.report-footer-spacer{flex:1}.rule-modal-overlay{position:fixed;inset:0;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.rule-modal{background-color:#fff;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;width:100%;max-width:600px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;animation:ruleModalSlideIn .3s ease}@keyframes ruleModalSlideIn{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.rule-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb;background-color:#f9fafb}.rule-modal-header h3{margin:0;font-size:1.125rem;font-weight:700;color:#1f2937;display:flex;align-items:center;gap:.5rem}.rule-modal-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:.5rem;background:none;border:none;color:#6b7280;cursor:pointer;transition:all .2s}.rule-modal-close:hover{background-color:#e5e7eb;color:#1f2937}.rule-modal-body{flex:1;overflow-y:auto;padding:1.5rem}.rule-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.rule-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.rule-section h4{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#1f2937;display:flex;align-items:center;gap:.5rem}.rule-section-desc{margin:0 0 1rem;font-size:.8125rem;color:#6b7280}.rule-users-list{display:flex;flex-direction:column;gap:.5rem;max-height:200px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:.5rem;padding:.5rem}.rule-user-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border-radius:.375rem;cursor:pointer;transition:background-color .15s}.rule-user-item:hover{background-color:#f3f4f6}.rule-user-item input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#1f2937}.rule-user-info{display:flex;flex-direction:column;gap:.125rem}.rule-user-name{font-size:.875rem;font-weight:600;color:#1f2937}.rule-user-email{font-size:.75rem;color:#6b7280}.rule-schedule-options{display:flex;gap:1rem;margin-bottom:1rem}.rule-schedule-option{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;border:1px solid #e5e7eb;border-radius:.5rem;cursor:pointer;transition:all .2s}.rule-schedule-option:hover{border-color:#1f2937}.rule-schedule-option:has(input:checked){border-color:#1f2937;background-color:#f3f4f6}.rule-schedule-option input[type=radio]{width:16px;height:16px;cursor:pointer;accent-color:#1f2937}.rule-schedule-option span{font-size:.875rem;font-weight:500;color:#374151}.rule-schedule-details{display:flex;gap:1rem;flex-wrap:wrap}.rule-form-group{display:flex;flex-direction:column;gap:.375rem;flex:1;min-width:150px}.rule-form-group label{font-size:.75rem;font-weight:600;color:#374151;text-transform:uppercase}.rule-form-input,.rule-form-select{padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;color:#1f2937;background-color:#fff;outline:none;transition:all .2s}.rule-form-input:focus,.rule-form-select:focus{border-color:#1f2937;box-shadow:0 0 0 2px #1f29371a}.rule-form-textarea{padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;color:#1f2937;background-color:#fff;outline:none;transition:all .2s;resize:vertical;font-family:inherit}.rule-form-textarea:focus{border-color:#1f2937;box-shadow:0 0 0 2px #1f29371a}.rule-modal-footer{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background-color:#f9fafb;justify-content:flex-end}.rule-btn{padding:.625rem 1.5rem;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.rule-btn.cancel{background-color:#f3f4f6;color:#4b5563;border:1px solid #e5e7eb}.rule-btn.cancel:hover{background-color:#e5e7eb;color:#1f2937}.rule-btn.save{background-color:#1f2937;color:#fff}.rule-btn.save:hover{background-color:#111827}.rule-btn.save:disabled{background-color:#9ca3af;cursor:not-allowed}@media(max-width:768px){.reports-page{padding:1rem}.reports-grid{grid-template-columns:1fr}.report-modal-filters{flex-direction:column}.report-filter-group,.report-filter-input{width:100%}.report-modal-footer{flex-direction:column}.report-export-btn{width:100%;justify-content:center}}.reservation-page{padding:1rem 1.5rem;width:100%;max-width:100%;height:calc(100vh - 60px);display:flex;flex-direction:column;overflow:hidden}.reservation-header{margin-bottom:1rem}.reservation-title{display:flex;align-items:center;gap:.75rem;color:#1f2937}.reservation-title h1{font-size:1.5rem;font-weight:600;margin:0}.reservation-content{display:grid;grid-template-columns:20% 80%;gap:1rem;flex:1;min-height:0;overflow:hidden}.upcoming-reservations-panel{background:#fff;border-radius:10px;box-shadow:0 1px 3px #0000001a;padding:1rem;height:100%;display:flex;flex-direction:column;overflow:hidden}.upcoming-reservations-panel h3{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 .75rem;padding-bottom:.625rem;border-bottom:2px solid #e5e7eb}.upcoming-list{display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;padding-right:.25rem}.upcoming-item{display:flex;gap:.625rem;padding:.625rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;transition:all .2s;cursor:pointer}.upcoming-item:hover{background:#eff6ff;border-color:#3b82f6;transform:translate(4px)}.upcoming-item.today{background:#fef3c7;border-color:#fbbf24}.upcoming-date{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border-radius:6px;padding:.375rem;min-width:44px;border:2px solid #e5e7eb}.upcoming-item.today .upcoming-date{background:#fbbf24;border-color:#f59e0b}.date-day{font-size:1.125rem;font-weight:700;color:#1f2937;line-height:1}.date-month{font-size:.6875rem;font-weight:500;color:#6b7280;text-transform:uppercase;margin-top:.125rem}.upcoming-details{flex:1;display:flex;flex-direction:column;gap:.25rem}.upcoming-time{display:flex;align-items:center;gap:.25rem;color:#3b82f6;font-weight:600;font-size:.8125rem}.upcoming-customer{font-weight:600;color:#1f2937;font-size:.875rem}.upcoming-info{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:#6b7280}.upcoming-info span{display:flex;align-items:center;gap:.25rem}.no-upcoming{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;color:#9ca3af;text-align:center}.no-upcoming p{margin-top:.75rem;font-size:.875rem}.calendar-container{background:#fff;border-radius:10px;box-shadow:0 1px 3px #0000001a;padding:1rem;height:100%;display:flex;flex-direction:column;overflow:hidden}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.625rem;border-bottom:2px solid #e5e7eb}.calendar-month{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.calendar-nav-btn{background:#f3f4f6;border:none;border-radius:6px;padding:.375rem;cursor:pointer;color:#4b5563;transition:all .2s;display:flex;align-items:center;justify-content:center}.calendar-nav-btn:hover{background:#e5e7eb;color:#1f2937}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.375rem;flex:1;overflow-y:auto;align-content:start}.calendar-day-name{text-align:center;font-weight:600;color:#6b7280;padding:.5rem .25rem;font-size:.75rem}.calendar-day{border:1.5px solid #e5e7eb;border-radius:6px;padding:.375rem;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;background:#fff;min-height:110px;overflow:hidden}.calendar-day.empty{border:none;cursor:default;background:transparent}.calendar-day:not(.empty):hover{border-color:#3b82f6;background:#eff6ff;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.calendar-day.today{border-color:#3b82f6;background:#eff6ff}.calendar-day.today .day-number{background:#3b82f6;color:#fff;border-radius:50%;width:26px;height:26px;display:flex;align-items:center;justify-content:center;font-weight:600}.day-number{font-size:.875rem;font-weight:600;color:#1f2937;margin-bottom:.375rem;width:100%}.calendar-day.has-reservations{background:#fffbeb;border-color:#fbbf24}.calendar-day.has-reservations:hover{background:#fef3c7}.day-reservations-list{width:100%;display:flex;flex-direction:column;gap:.25rem;overflow:hidden;flex:1;margin-top:2px}.day-reservation-item{font-size:.6875rem;padding:.25rem .375rem;background:#fff;border:1px solid #d97706;border-left:3px solid #f59e0b;border-radius:3px;color:#92400e;font-weight:500;cursor:grab;transition:all .2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-reservation-item:active{cursor:grabbing}.day-reservation-item:hover{background:#fef3c7;border-color:#b45309;transform:translate(2px)}.day-reservation-item.dragging{opacity:.5;cursor:grabbing}.calendar-day:has(.day-content-compact){flex-direction:row;flex-wrap:wrap;align-content:flex-start;overflow-y:auto;gap:3px}.day-content-compact{display:contents}.day-content-compact .day-number{font-size:.8125rem;font-weight:600;color:#374151;margin-right:3px;line-height:24px}.compact-reservations{display:contents}.reservation-initial-box{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#78350f;font-size:.6rem;font-weight:700;border-radius:3px;cursor:grab;transition:all .2s;border:1px solid #d97706;flex-shrink:0;box-shadow:0 1px 2px #0000001a}.reservation-initial-box:hover{transform:scale(1.1);background:linear-gradient(135deg,#fcd34d,#fbbf24);box-shadow:0 2px 4px #00000026;z-index:1}.reservation-initial-box:active{cursor:grabbing}.day-reservations-compact{width:100%;display:flex;flex-wrap:wrap;gap:.25rem;overflow-y:auto;flex:1}.reservation-initial{width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:#fbbf24;color:#78350f;font-size:.6875rem;font-weight:700;border-radius:4px;cursor:grab;transition:all .2s;border:1px solid #f59e0b;flex-shrink:0}.reservation-initial:hover{background:#f59e0b;transform:scale(1.1);z-index:10}.reservation-initial:active{cursor:grabbing}.reservation-initial.dragging{opacity:.5;cursor:grabbing}.calendar-day.drag-over{background:#dbeafe;border-color:#3b82f6;border-style:dashed}.reservation-count{font-size:.6875rem;color:#92400e;background:#fbbf24;padding:.125rem .375rem;border-radius:10px;font-weight:500;margin-top:auto}.reservation-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.reservation-modal{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.reservation-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.reservation-modal-title{display:flex;align-items:center;gap:.75rem;color:#1f2937}.reservation-modal-title h3{font-size:1.25rem;font-weight:600;margin:0}.modal-close-btn{background:none;border:none;color:#6b7280;cursor:pointer;padding:.5rem;border-radius:6px;display:flex;align-items:center;transition:all .2s}.reservation-modal-body{padding:1.25rem}.selected-date-info{display:flex;align-items:center;gap:.5rem;background:#eff6ff;color:#1e40af;padding:.625rem .875rem;border-radius:8px;margin-bottom:1.25rem;font-weight:500;font-size:.9375rem}.form-group{margin-bottom:1rem}.form-group label{display:flex;align-items:center;gap:.5rem;font-weight:500;color:#374151;margin-bottom:.5rem;font-size:.875rem}.form-group input,.form-group textarea{width:100%;padding:.625rem .75rem;border:2px solid #e5e7eb;border-radius:8px;font-size:.9375rem;transition:all .2s;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;background:#eff6ff}.form-group textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.reservation-modal-footer{display:flex;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid #e5e7eb}.btn-cancel,.btn-confirm{flex:1;padding:.625rem 1.25rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s;border:none;font-size:.9375rem}.btn-cancel{background:#f3f4f6;color:#374151}.btn-cancel:hover{background:#e5e7eb}.btn-confirm{background:#3b82f6;color:#fff}.btn-confirm:hover{background:#2563eb}.existing-reservations{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid #e5e7eb}.existing-reservations h4{font-size:.9375rem;font-weight:600;color:#1f2937;margin:0 0 .75rem}.reservation-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:.75rem;margin-bottom:.625rem}.reservation-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.reservation-time{font-weight:600;color:#1f2937;font-size:1rem}.reservation-guests{background:#dbeafe;color:#1e40af;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.reservation-item-body{display:flex;flex-direction:column;gap:.25rem}.reservation-customer{font-weight:500;color:#374151}.reservation-phone,.reservation-table{font-size:.875rem;color:#6b7280}@media(max-width:1200px){.reservation-content{grid-template-columns:260px 1fr}}@media(max-width:1024px){.reservation-content{grid-template-columns:1fr}.upcoming-reservations-panel{max-height:300px}}@media(max-width:768px){.reservation-page{padding:.75rem 1rem}.calendar-container,.upcoming-reservations-panel{padding:.75rem}.calendar-day{min-height:60px;padding:.25rem}.day-number{font-size:.875rem}.reservation-count{font-size:.625rem;padding:.125rem .25rem}.form-row{grid-template-columns:1fr}.reservation-modal{max-width:100%}.reservation-modal-body,.reservation-modal-header,.reservation-modal-footer{padding:.875rem}}.profile-page{padding:2rem;width:100%;margin:0 auto;background-color:#f9fafb;min-height:100vh}.profile-header{margin-bottom:2rem}.profile-header h1{font-size:1.875rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.profile-subtitle{font-size:.9375rem;color:#6b7280;margin:0}.profile-error{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:.75rem 1rem;border-radius:.5rem;margin-bottom:1rem;font-size:.875rem}.profile-success{background-color:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a;padding:.75rem 1rem;border-radius:.5rem;margin-bottom:1rem;font-size:.875rem}.profile-content{display:grid;grid-template-columns:320px 1fr;gap:1.5rem;align-items:start}.profile-left-column{display:flex;flex-direction:column;gap:15px}.profile-card{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb}.profile-info-card{padding:1.5rem}.profile-avatar-section{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.profile-avatar{position:relative;width:100px;height:100px;margin-bottom:1rem}.profile-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.profile-avatar-placeholder{width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#1f2937,#374151);color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700}.profile-avatar-edit{position:absolute;bottom:0;right:0;width:32px;height:32px;border-radius:50%;background-color:#1f2937;color:#fff;border:3px solid white;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.profile-avatar-edit:hover{background-color:#111827;transform:scale(1.1)}.profile-name-section h2{margin:0 0 .25rem;font-size:1.25rem;font-weight:700;color:#1f2937}.profile-role{margin:0;font-size:.875rem;color:#6b7280}.profile-quick-info{display:flex;flex-direction:column;gap:.75rem}.profile-quick-item{display:flex;align-items:center;gap:.75rem;font-size:.875rem;color:#4b5563}.profile-quick-item svg{color:#9ca3af;flex-shrink:0}.profile-security-card{padding:1.25rem}.profile-form-card{grid-column:2;grid-row:1}.profile-form-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.profile-form-header h3{margin:0;font-size:1.125rem;font-weight:700;color:#1f2937}.profile-edit-btn{padding:.5rem 1rem;background-color:#1f2937;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.profile-edit-btn:hover{background-color:#111827}.profile-form-actions{display:flex;gap:.5rem}.profile-cancel-btn{padding:.5rem 1rem;background-color:#f3f4f6;color:#4b5563;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.profile-cancel-btn:hover{background-color:#e5e7eb;color:#1f2937}.profile-save-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background-color:#10b981;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.profile-save-btn:hover{background-color:#059669}.profile-form{padding:1.5rem}.profile-form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #e5e7eb}.profile-form-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.profile-form-section h4{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#1f2937}.profile-form-section-desc{margin:0 0 1rem;font-size:.8125rem;color:#9ca3af}.profile-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.profile-form-row:last-child{margin-bottom:0}.profile-form-group{display:flex;flex-direction:column;gap:.375rem}.profile-form-group.full-width{grid-column:1 / -1;margin-bottom:1rem}.profile-form-group.full-width:last-child{margin-bottom:0}.profile-form-group label{display:flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;color:#374151;text-transform:uppercase}.profile-form-group label svg{color:#9ca3af}.profile-input{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;color:#1f2937;background-color:#fff;outline:none;transition:all .2s}.profile-input:focus{border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.profile-input.disabled{background-color:#f3f4f6;color:#6b7280;cursor:not-allowed;border-color:#e5e7eb}.profile-input.readonly{background-color:#f9fafb;border-color:#e5e7eb}.profile-textarea{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;color:#1f2937;background-color:#fff;outline:none;transition:all .2s;resize:vertical;font-family:inherit}.profile-textarea:focus{border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.profile-textarea.readonly{background-color:#f9fafb;border-color:#e5e7eb}.profile-security-card h3{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#1f2937}.profile-security-desc{margin:0 0 1rem;font-size:.8125rem;color:#6b7280}.profile-password-btn{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background-color:#f3f4f6;color:#374151;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.profile-password-btn:hover{background-color:#e5e7eb;border-color:#d1d5db}.profile-modal-overlay{position:fixed;inset:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.profile-modal{background-color:#fff;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;width:100%;max-width:450px;overflow:hidden;animation:profileModalSlideIn .3s ease}@keyframes profileModalSlideIn{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.profile-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb;background-color:#f9fafb}.profile-modal-header h3{margin:0;font-size:1.125rem;font-weight:700;color:#1f2937;display:flex;align-items:center;gap:.5rem}.profile-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:.375rem;background:none;border:none;color:#6b7280;font-size:1.5rem;cursor:pointer;transition:all .2s}.profile-modal-close:hover{background-color:#e5e7eb;color:#1f2937}.profile-modal-body{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.profile-modal-footer{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background-color:#f9fafb;justify-content:flex-end}@media(max-width:1024px){.profile-content{grid-template-columns:1fr}.profile-form-card{grid-column:1;grid-row:auto}}@media(max-width:768px){.profile-page{padding:1rem}.profile-form-row{grid-template-columns:1fr}}.profile-language-card{padding:1.25rem}.profile-language-card h3{display:flex;align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#1f2937}.profile-language-desc{margin:0 0 1rem;font-size:.8125rem;color:#6b7280}.profile-language-selector{position:relative}.profile-language-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1rem;background-color:#fff;border:2px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;font-weight:600;color:#1f2937;cursor:pointer;transition:all .2s}.profile-language-btn:hover{border-color:#d1d5db;background-color:#f9fafb}.profile-language-current{display:flex;align-items:center;gap:.75rem}.profile-language-flag{font-size:1.25rem;line-height:1}.profile-language-btn svg.rotated{transform:rotate(180deg)}.profile-language-dropdown{position:absolute;top:calc(100% + .5rem);left:0;right:0;background-color:#fff;border:2px solid #e5e7eb;border-radius:.5rem;box-shadow:0 10px 25px -5px #0000001a;z-index:100;overflow:hidden;animation:languageDropdownSlideIn .2s ease}@keyframes languageDropdownSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.profile-language-search{display:flex;align-items:center;gap:.5rem;padding:.75rem;border-bottom:1px solid #e5e7eb}.profile-language-search svg{color:#9ca3af;flex-shrink:0}.profile-language-search input{flex:1;border:none;outline:none;font-size:.875rem;color:#1f2937;background:transparent}.profile-language-search input::placeholder{color:#9ca3af}.profile-language-list{max-height:200px;overflow-y:auto}.profile-language-option{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background-color:#fff;border:none;font-size:.875rem;font-weight:500;color:#4b5563;cursor:pointer;transition:all .2s;text-align:left}.profile-language-option:hover{background-color:#f9fafb}.profile-language-option.active{background-color:#eff6ff;color:#1e40af;font-weight:600}.stock-page{padding:1.5rem;background-color:#f9fafb;min-height:calc(100vh - 80px)}.stock-header{margin-bottom:1.5rem}.stock-header h1{font-size:1.75rem;font-weight:700;color:#1f2937;margin:0 0 .375rem}.page-subtitle{font-size:.875rem;color:#6b7280;margin:0}.stock-widgets{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.stock-widget{background:#fff;border-radius:.75rem;padding:1.25rem;display:flex;align-items:flex-start;gap:1rem;box-shadow:0 1px 3px #0000001a;transition:all .2s ease}.stock-widget:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.stock-widget.clickable{cursor:pointer}.widget-icon{width:48px;height:48px;border-radius:.5rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.widget-icon.total{background-color:#dbeafe;color:#2563eb}.widget-icon.low{background-color:#fef3c7;color:#d97706}.widget-icon.out{background-color:#fee2e2;color:#dc2626}.widget-icon.count{background-color:#d1fae5;color:#059669}.widget-content h3{font-size:.875rem;font-weight:500;color:#6b7280;margin:0 0 .25rem}.widget-value{font-size:1.5rem;font-weight:700;color:#1f2937;margin:0 0 .25rem}.widget-label{font-size:.75rem;color:#9ca3af}.stock-list-container{background:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.stock-list-header{padding:1.25rem;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.stock-list-header h2{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.stock-list-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:#f3f4f6;border-radius:.5rem;border:1px solid #e5e7eb}.search-box input{border:none;background:none;outline:none;font-size:.875rem;color:#1f2937;width:180px}.search-box svg{color:#6b7280}.category-select{padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;color:#1f2937;background-color:#fff;cursor:pointer;outline:none}.category-select:focus{border-color:#3b82f6}.count-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.count-btn.start{background-color:#059669;color:#fff}.count-btn.start:hover{background-color:#047857}.count-btn.finish{background-color:#dc2626;color:#fff}.count-btn.finish:hover{background-color:#b91c1c}.stock-table-wrapper{overflow-x:auto}.stock-table{width:100%;border-collapse:collapse}.stock-table th,.stock-table td{padding:.875rem 1rem;text-align:left;border-bottom:1px solid #e5e7eb}.stock-table th{background-color:#f9fafb;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.stock-table td{font-size:.875rem;color:#1f2937}.stock-table tbody tr:hover{background-color:#f9fafb}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600}.status-badge.normal{background-color:#d1fae5;color:#059669}.status-badge.low{background-color:#fef3c7;color:#d97706}.status-badge.out{background-color:#fee2e2;color:#dc2626}.count-input{width:80px;padding:.375rem .5rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.875rem;text-align:center;outline:none}.count-input:focus{border-color:#3b82f6}.difference{font-weight:600;font-size:.875rem}.difference.positive{color:#059669}.difference.negative{color:#dc2626}.difference.zero{color:#6b7280}.note-input{width:150px;padding:.375rem .5rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.875rem;outline:none}.note-input:focus{border-color:#3b82f6}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:.75rem;box-shadow:0 20px 25px -5px #0000001a;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.previous-counts-modal{width:550px}.count-detail-modal{width:500px}.modal-header{padding:1.25rem;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.modal-header h3{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.modal-close-btn{background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:.375rem;transition:all .2s ease}.modal-close-btn:hover{background-color:#f3f4f6;color:#1f2937}.previous-counts-list{padding:1rem;display:flex;flex-direction:column;gap:.75rem;max-height:400px;overflow-y:auto}.previous-count-item{padding:1rem;border:1px solid #e5e7eb;border-radius:.5rem;cursor:pointer;transition:all .2s ease}.previous-count-item:hover{background-color:#f9fafb;border-color:#d1d5db}.count-date-info{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.count-date-info svg{color:#6b7280}.count-date{font-size:1rem;font-weight:600;color:#1f2937}.count-time{font-size:.875rem;color:#6b7280}.count-details{display:flex;align-items:center;gap:1rem;font-size:.875rem}.count-by{color:#4b5563}.count-products{color:#059669;font-weight:500}.count-differences{color:#d97706;font-weight:500}.count-detail-content{padding:1.5rem}.count-detail-info{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f3f4f6}.detail-label{font-size:.875rem;color:#6b7280}.detail-value{font-size:.875rem;font-weight:600;color:#1f2937}.detail-value.highlight{color:#d97706}.count-detail-summary{background-color:#f9fafb;border-radius:.5rem;padding:1rem}.count-detail-summary h4{font-size:.875rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}.count-detail-summary p{font-size:.875rem;color:#4b5563;margin:0;line-height:1.5}@media(max-width:1024px){.stock-widgets{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.stock-page{padding:1rem}.stock-widgets{grid-template-columns:1fr}.stock-list-header{flex-direction:column;align-items:flex-start}.stock-list-actions{width:100%}.search-box{flex:1}.search-box input{width:100%}}.qr-menu-page{min-height:100vh;background-color:#f8fafc;padding-bottom:100px}.qr-menu-header{background:linear-gradient(135deg,#1f2937,#374151);padding:1.5rem;display:flex;justify-content:space-between;align-items:center;color:#fff}.restaurant-info{text-align:left}.restaurant-name{font-size:1.5rem;font-weight:700;margin:0 0 .25rem;letter-spacing:.05em}.restaurant-tagline{font-size:.875rem;opacity:.8;margin:0}.language-selector{display:flex;gap:.25rem;background:#ffffff1a;padding:.25rem;border-radius:.5rem}.lang-btn{padding:.375rem .75rem;background:transparent;border:none;color:#ffffffb3;font-size:.75rem;font-weight:600;cursor:pointer;border-radius:.375rem;transition:all .2s}.lang-btn:hover{color:#fff}.lang-btn.active{background:#fff;color:#1f2937}.qr-menu-search{display:flex;align-items:center;gap:.75rem;margin:1rem;padding:.875rem 1rem;background:#fff;border-radius:1rem;box-shadow:0 2px 8px #00000014}.qr-menu-search svg{color:#9ca3af;flex-shrink:0}.qr-menu-search input{flex:1;border:none;outline:none;font-size:1rem;color:#1f2937;background:transparent}.qr-menu-search input::placeholder{color:#9ca3af}.qr-menu-categories{display:flex;gap:.75rem;padding:.5rem 1rem 1rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.qr-menu-categories::-webkit-scrollbar{display:none}.category-chip{display:flex;flex-direction:column;align-items:center;gap:.375rem;padding:.75rem 1rem;background:#fff;border:2px solid #e5e7eb;border-radius:1rem;cursor:pointer;transition:all .2s;min-width:80px;flex-shrink:0}.category-chip:hover{border-color:#1f2937}.category-chip.active{background:#1f2937;border-color:#1f2937;color:#fff}.category-icon{font-size:1.5rem}.category-chip span:last-child{font-size:.75rem;font-weight:600;white-space:nowrap}.qr-menu-subcategories{display:flex;gap:.5rem;padding:0 1rem 1rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.qr-menu-subcategories::-webkit-scrollbar{display:none}.subcategory-chip{padding:.5rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:2rem;font-size:.8125rem;font-weight:500;color:#4b5563;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.subcategory-chip:hover{border-color:#1f2937;color:#1f2937}.subcategory-chip.active{background:#1f2937;border-color:#1f2937;color:#fff}.qr-menu-products{display:grid;grid-template-columns:1fr;gap:1rem;padding:0 1rem}@media(min-width:480px){.qr-menu-products{grid-template-columns:repeat(2,1fr)}}@media(min-width:768px){.qr-menu-products{grid-template-columns:repeat(3,1fr)}}@media(min-width:1024px){.qr-menu-products{grid-template-columns:repeat(4,1fr)}}@media(min-width:1280px){.qr-menu-products{grid-template-columns:repeat(6,1fr)}}.qr-menu-page .product-card{background:#fff;border-radius:1rem;overflow:hidden;box-shadow:0 2px 8px #0000000f;transition:all .2s;display:flex;flex-direction:column}.qr-menu-page .product-card:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.qr-menu-page .product-image{height:160px;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);display:flex;align-items:center;justify-content:center;overflow:hidden}.qr-menu-page .product-img{width:100%;height:100%;object-fit:cover}.qr-menu-page .product-placeholder-icon{font-size:3rem;opacity:.5}.qr-menu-page .product-info{padding:1rem;display:flex;flex-direction:column;flex:1}.qr-menu-page .product-content{display:flex;gap:1rem;flex:1}.qr-menu-page .product-left{flex:1;display:flex;flex-direction:column}.qr-menu-page .product-right{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;flex-shrink:0}.qr-menu-page .product-title{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 .375rem}.qr-menu-page .product-price{font-size:1.125rem;font-weight:700;color:#059669;white-space:nowrap}.qr-menu-page .product-description{font-size:.8125rem;color:#6b7280;margin:0;line-height:1.5}.qr-menu-page .product-allergens{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;margin-top:auto;padding-top:.75rem;border-top:1px solid #f3f4f6}.qr-menu-page .allergen-label{font-size:.6875rem;color:#dc2626;font-weight:500}.qr-menu-page .allergen-tag{font-size:.625rem;background:#fef2f2;color:#dc2626;padding:.125rem .375rem;border-radius:.25rem;font-weight:500}.qr-menu-page .product-actions{margin-top:auto}.qr-menu-page .add-to-cart-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:#1f2937;color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.qr-menu-page .add-to-cart-btn:hover{background:#111827}.qr-menu-page .quantity-controls{display:flex;align-items:center;gap:.5rem;background:#f3f4f6;border-radius:.5rem;padding:.25rem}.qr-menu-page .qty-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#fff;border:none;border-radius:.375rem;cursor:pointer;transition:all .2s;color:#1f2937}.qr-menu-page .qty-btn:hover{background:#1f2937;color:#fff}.qr-menu-page .qty-value{min-width:24px;text-align:center;font-weight:600;color:#1f2937}.cart-floating-btn{position:fixed;bottom:1.5rem;left:1rem;right:1rem;display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:#1f2937;color:#fff;border:none;border-radius:1rem;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 4px 20px #1f29374d;transition:all .2s;z-index:100}.cart-floating-btn:hover{background:#111827;transform:translateY(-2px)}.cart-badge{background:#ef4444;color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .5rem;border-radius:1rem;min-width:24px;text-align:center}.cart-total{flex:1;text-align:right}.cart-modal-overlay{position:fixed;inset:0;background:#0000004d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.cart-modal{background:#fff;width:90%;max-width:500px;max-height:80vh;border-radius:1rem;display:flex;flex-direction:column;animation:scaleIn .3s ease;box-shadow:0 20px 60px #0003}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.cart-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.cart-modal-header h2{margin:0;font-size:1.25rem;font-weight:700;color:#1f2937}.cart-close-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;border:none;border-radius:50%;font-size:1.5rem;color:#6b7280;cursor:pointer;transition:all .2s}.cart-close-btn:hover{background:#e5e7eb;color:#1f2937}.cart-modal-body{flex:1;overflow-y:auto;padding:0}.qr-menu-page .cart-item{display:flex;flex-direction:row!important;align-items:center;justify-content:flex-start;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid #e5e7eb;width:100%}.qr-menu-page .cart-item:last-child{border-bottom:none}.qr-menu-page .cart-item-image{width:56px;height:56px;border-radius:.5rem;overflow:hidden;flex-shrink:0;background:#e5e7eb;display:flex;align-items:center;justify-content:center}.qr-menu-page .cart-item-image img{width:100%;height:100%;object-fit:cover}.qr-menu-page .cart-item-placeholder{font-size:1.25rem;opacity:.5}.qr-menu-page .cart-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.qr-menu-page .cart-item-name{margin:0;font-size:.875rem;font-weight:600;color:#1f2937}.qr-menu-page .cart-item-price-row{display:flex;align-items:center;gap:.5rem}.qr-menu-page .cart-item-unit-price{font-size:.75rem;color:#6b7280}.qr-menu-page .cart-item-quantity{font-size:.75rem;color:#6b7280;font-weight:600}.qr-menu-page .cart-item-total-price{font-size:.875rem;font-weight:700;color:#059669}.qr-menu-page .cart-item-controls{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.qr-menu-page .cart-item-controls .qty-btn.minus{background:#ef4444;color:#fff}.qr-menu-page .cart-item-controls .qty-btn.minus:hover{background:#dc2626}.qr-menu-page .cart-item-controls .qty-btn.plus{background:#059669;color:#fff}.qr-menu-page .cart-item-controls .qty-btn.plus:hover{background:#047857}.cart-modal-footer{padding:1.25rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.cart-total-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:1rem;color:#4b5563}.cart-total-price{font-size:1.5rem;font-weight:700;color:#1f2937}.order-btn{width:100%;padding:1rem;background:#059669;color:#fff;border:none;border-radius:.75rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.order-btn:hover{background:#047857}.finance-page{padding:24px;background:#f8f9fa;min-height:100vh}.finance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.finance-header h1{font-size:24px;font-weight:600;color:#1a1a2e;margin:0}.finance-header-actions{display:flex;gap:12px}.finance-tabs{display:flex;gap:8px;margin-bottom:24px;background:#fff;padding:8px;border-radius:12px;box-shadow:0 2px 8px #0000000d}.finance-tab{display:flex;align-items:center;gap:8px;padding:12px 24px;border:none;background:transparent;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;color:#6b7280;transition:all .2s}.finance-tab:hover{background:#f3f4f6;color:#374151}.finance-tab.active{background:#4f46e5;color:#fff}.finance-tab.active:hover{background:#4338ca}.finance-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow:hidden}.finance-toolbar{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb}.finance-search{display:flex;align-items:center;gap:8px;background:#f3f4f6;padding:8px 16px;border-radius:8px;width:300px}.finance-search input{border:none;background:transparent;outline:none;width:100%;font-size:14px}.finance-search svg{color:#9ca3af}.finance-add-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#4f46e5;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s}.finance-add-btn:hover{background:#4338ca}.finance-add-btn.income{background:#10b981}.finance-add-btn.income:hover{background:#059669}.finance-add-btn.expense{background:#ef4444}.finance-add-btn.expense:hover{background:#dc2626}.finance-add-btn.tip{background:#f59e0b}.finance-add-btn.tip:hover{background:#d97706}.finance-table{width:100%;border-collapse:collapse}.finance-table th,.finance-table td{padding:14px 20px;text-align:left;border-bottom:1px solid #e5e7eb}.finance-table th{background:#f9fafb;font-weight:600;font-size:12px;text-transform:uppercase;color:#6b7280}.finance-table td{font-size:14px;color:#374151}.finance-table tr:hover{background:#f9fafb}.finance-amount{font-weight:600}.finance-amount.income{color:#10b981}.finance-amount.expense{color:#ef4444}.finance-amount.tip{color:#f59e0b}.finance-cash-register{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#f3f4f6;border-radius:6px;font-size:13px;color:#4b5563}.finance-date{color:#6b7280;font-size:13px}.finance-actions{display:flex;gap:8px}.finance-action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;transition:all .2s}.finance-action-btn.edit{background:#e0e7ff;color:#4f46e5}.finance-action-btn.edit:hover{background:#c7d2fe}.finance-action-btn.delete{background:#fee2e2;color:#ef4444}.finance-action-btn.delete:hover{background:#fecaca}.finance-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#9ca3af}.finance-empty svg{margin-bottom:16px;opacity:.5}.finance-empty p{font-size:14px}.finance-pagination{display:flex;justify-content:center;align-items:center;gap:8px;padding:16px;border-top:1px solid #e5e7eb}.finance-page-btn{padding:8px 16px;border:1px solid #e5e7eb;background:#fff;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.finance-page-btn:hover:not(:disabled){background:#f3f4f6}.finance-page-btn:disabled{opacity:.5;cursor:not-allowed}.finance-page-info{font-size:14px;color:#6b7280}.finance-modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.finance-modal{background:#fff;border-radius:16px;width:100%;max-width:500px;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #0003}.finance-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.finance-modal-header h2{font-size:18px;font-weight:600;color:#1a1a2e;margin:0}.finance-modal-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:#f3f4f6;border-radius:8px;cursor:pointer;transition:background .2s}.finance-modal-close:hover{background:#e5e7eb}.finance-modal-body{padding:24px}.finance-form-group{margin-bottom:20px}.finance-form-group label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.finance-form-group input,.finance-form-group select,.finance-form-group textarea{width:100%;padding:12px 16px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;transition:border-color .2s;box-sizing:border-box}.finance-form-group input:focus,.finance-form-group select:focus,.finance-form-group textarea:focus{outline:none;border-color:#4f46e5}.finance-form-group textarea{resize:vertical;min-height:80px}.finance-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb}.finance-btn-cancel{padding:10px 20px;border:1px solid #e5e7eb;background:#fff;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.finance-btn-cancel:hover{background:#f3f4f6}.finance-btn-save{padding:10px 20px;border:none;background:#4f46e5;color:#fff;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s}.finance-btn-save:hover{background:#4338ca}.finance-btn-save.income{background:#10b981}.finance-btn-save.income:hover{background:#059669}.finance-btn-save.expense{background:#ef4444}.finance-btn-save.expense:hover{background:#dc2626}.finance-btn-save.tip{background:#f59e0b}.finance-btn-save.tip:hover{background:#d97706}.finance-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.finance-summary-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000d}.finance-summary-card h3{font-size:14px;font-weight:500;color:#6b7280;margin:0 0 8px}.finance-summary-card .amount{font-size:28px;font-weight:700}.finance-summary-card.income .amount{color:#10b981}.finance-summary-card.expense .amount{color:#ef4444}.finance-summary-card.tip .amount{color:#f59e0b}.finance-summary-card .count{font-size:13px;color:#9ca3af;margin-top:4px}.header{background-color:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;position:sticky;top:0;z-index:100}.header-container{display:grid;grid-template-columns:200px 1fr 250px;align-items:center;padding:.5rem 2rem;max-width:1920px;margin:0 auto}.header-logo{display:flex;align-items:center}.header-logo .logo-img{height:20px;width:auto;cursor:pointer}.header-logo h1{font-size:1.75rem;font-weight:700;color:#1e40af;margin:0;cursor:pointer}.header-nav{display:flex;justify-content:center;align-items:center;gap:.5rem}.nav-item-wrapper{position:relative}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.25rem .625rem;text-decoration:none;color:#6b7280;border-radius:.5rem;transition:all .2s ease;cursor:pointer;min-width:70px;border:none;background:none;font-family:inherit}.nav-item:hover{background-color:#f3f4f6;color:#000}.nav-item.active{background-color:#e5e7eb;color:#000}.nav-item.active .nav-icon{color:#000}.nav-icon{display:flex;align-items:center;justify-content:center;margin-bottom:.25rem;color:inherit}.nav-name{font-size:.875rem;font-weight:500;white-space:nowrap}.dropdown-trigger{position:relative;cursor:pointer}.nav-name-with-arrow{display:flex;align-items:center;gap:.25rem;justify-content:center}.dropdown-icon{transition:transform .2s ease;margin-top:1px}.nav-item-wrapper:hover .dropdown-icon{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.5rem;background-color:#fff;border:1px solid #e5e7eb;border-radius:0 0 .5rem .5rem;box-shadow:0 4px 6px #0000001a;min-width:220px;z-index:1000;overflow:hidden;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.nav-item-wrapper:hover .dropdown-menu{opacity:1;visibility:visible}.dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:#4b5563;text-decoration:none;font-size:.875rem;font-weight:500;transition:all .2s ease;border-bottom:1px solid #f3f4f6}.dropdown-item:last-child{border-bottom:none}.dropdown-item-icon{display:flex;align-items:center;justify-content:center;color:inherit}.dropdown-item:hover{background-color:#f3f4f6;color:#000}.dropdown-item.active{background-color:#e5e7eb;color:#000;font-weight:600}.header-user{display:flex;justify-content:flex-end;align-items:center;gap:.75rem}.module-switch-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:.5rem;background-color:#3b82f6;color:#fff;text-decoration:none;transition:all .2s ease;cursor:pointer;flex-shrink:0}.module-switch-btn:hover{background-color:#2563eb;color:#fff}.user-profile{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;border-radius:.5rem;text-decoration:none;transition:all .2s ease;cursor:pointer}.user-profile:hover{background-color:#f3f4f6}.user-avatar{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background-color:#1f2937;color:#fff;flex-shrink:0}.user-info{display:flex;flex-direction:column;gap:.125rem}.user-name{font-size:.875rem;font-weight:600;color:#1f2937;line-height:1.2;white-space:nowrap}.user-role{font-size:.75rem;font-weight:500;color:#6b7280;line-height:1.2;white-space:nowrap}@media(max-width:1024px){.header-container{grid-template-columns:150px 1fr 150px;padding:.75rem 1rem}.nav-item{padding:.5rem .75rem;min-width:60px}.nav-name{font-size:.75rem}}@media(max-width:768px){.header-container{grid-template-columns:100px 1fr 100px}.header-nav{gap:.5rem}.nav-item{padding:.375rem .5rem;min-width:50px}.nav-icon svg{width:20px;height:20px}.nav-name{font-size:.7rem}}.quick-modal-overlay{position:fixed;inset:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.quick-modal-content{background-color:#fff;border-radius:.75rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:100%;max-width:420px;overflow:hidden}.quick-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:2px solid #e5e7eb;background-color:#f9fafb}.quick-modal-title{display:flex;align-items:center;gap:.5rem}.quick-modal-title h3{margin:0;font-size:1.125rem;font-weight:700;color:#1f2937}.quick-modal-title svg{color:#4b5563}.quick-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:.375rem;background:none;border:none;color:#6b7280;cursor:pointer;transition:all .2s ease}.quick-modal-close:hover{background-color:#e5e7eb;color:#1f2937}.quick-modal-body{padding:1.25rem}.quick-form-group{margin-bottom:1rem}.quick-form-group:last-child{margin-bottom:0}.quick-form-group label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.375rem}.quick-form-select,.quick-form-input,.quick-form-textarea{width:100%;padding:.625rem .75rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;color:#1f2937;background-color:#fff;transition:all .2s ease;outline:none}.quick-form-select:focus,.quick-form-input:focus,.quick-form-textarea:focus{border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.quick-form-textarea{resize:vertical;font-family:inherit}.quick-modal-footer{display:flex;gap:.75rem;padding:1rem 1.25rem;border-top:2px solid #e5e7eb;background-color:#f9fafb;justify-content:flex-end}.quick-btn{padding:.625rem 1.25rem;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.quick-btn.cancel{background-color:#f3f4f6;color:#4b5563;border:1px solid #e5e7eb}.quick-btn.cancel:hover{background-color:#e5e7eb;color:#1f2937}.quick-btn.confirm{color:#fff}.quick-btn.confirm.income{background-color:#059669}.quick-btn.confirm.income:hover:not(:disabled){background-color:#047857}.quick-btn.confirm.expense{background-color:#dc2626}.quick-btn.confirm.expense:hover:not(:disabled){background-color:#b91c1c}.quick-btn.confirm.tip{background-color:#f59e0b}.quick-btn.confirm.tip:hover:not(:disabled){background-color:#d97706}.quick-btn.confirm:disabled{opacity:.5;cursor:not-allowed}.dropdown-item.dropdown-button{width:100%;text-align:left;background:none;border:none;cursor:pointer}button.dropdown-item{width:100%;text-align:left;background:none;cursor:pointer}.mega-menu{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.5rem;background-color:#fff;border:1px solid #e5e7eb;border-radius:0 0 .75rem .75rem;box-shadow:0 10px 25px #00000026;min-width:700px;z-index:1000;overflow:hidden;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;display:grid;grid-template-columns:repeat(3,1fr);padding:1rem;gap:1.5rem}.nav-item-wrapper:hover .mega-menu{opacity:1;visibility:visible}.mega-menu-section{display:flex;flex-direction:column}.mega-menu-title{font-size:.75rem;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .75rem;padding:0 .5rem .5rem;border-bottom:1px solid #e5e7eb}.mega-menu-items{display:flex;flex-direction:column;gap:.25rem}.mega-menu-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;color:#4b5563;text-decoration:none;font-size:.875rem;font-weight:500;border-radius:.375rem;transition:all .2s ease}.mega-menu-item:hover{background-color:#f3f4f6;color:#000}.mega-menu-item.active{background-color:#e5e7eb;color:#000;font-weight:600}.mega-menu-item-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background-color:#f3f4f6;border-radius:.375rem;color:#6b7280;transition:all .2s ease}.mega-menu-item:hover .mega-menu-item-icon{background-color:#e5e7eb;color:#000}.mega-menu-item.active .mega-menu-item-icon{background-color:#1f2937;color:#fff}.mega-menu-item-name{white-space:nowrap}.header-user{position:relative}.user-profile{cursor:pointer}.user-dropdown-icon{color:#9ca3af;transition:transform .2s ease;margin-left:.25rem}.user-dropdown-icon.open{transform:rotate(180deg)}.user-dropdown-menu{position:absolute;top:100%;right:0;margin-top:.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;box-shadow:0 10px 25px #00000026;min-width:220px;z-index:1000;overflow:hidden;padding:.5rem 0}.user-dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;color:#374151;text-decoration:none;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:none;background:none;width:100%;text-align:left}.user-dropdown-item:hover{background-color:#f3f4f6}.user-dropdown-item.logout{color:#dc2626}.user-dropdown-item.logout:hover{background-color:#fef2f2}.user-dropdown-divider{height:1px;background-color:#e5e7eb;margin:.5rem 0}.user-dropdown-section{padding:.5rem 1rem}.user-dropdown-label{display:flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.language-options{display:flex;flex-direction:column;gap:.25rem}.language-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:.5rem;background:#fff;font-size:.875rem;color:#374151;cursor:pointer;transition:all .15s ease}.language-btn:hover{background-color:#f9fafb;border-color:#d1d5db}.language-btn.active{background-color:#1a1a1a;border-color:#1a1a1a;color:#fff}.language-btn.active:hover{background-color:#333}.cascading-dropdown{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.5rem;background-color:#fff;border:1px solid #e5e7eb;border-radius:0 0 .5rem .5rem;box-shadow:0 4px 6px #0000001a;min-width:220px;padding:8px 0;opacity:0;visibility:hidden;transition:all .2s ease;z-index:1000}.nav-item-wrapper:hover .cascading-dropdown{opacity:1;visibility:visible}.cascading-dropdown-item{position:relative}.cascading-dropdown-trigger{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;transition:background-color .15s ease;color:#374151;font-size:.875rem}.cascading-dropdown-trigger:hover{background-color:#f3f4f6}.cascading-dropdown-icon{display:flex;align-items:center;color:#6b7280}.cascading-dropdown-name{flex:1;font-weight:500}.cascading-arrow{color:#9ca3af;margin-left:auto}.cascading-submenu{position:absolute;left:100%;top:0;background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #00000026;min-width:240px;padding:8px 0;opacity:0;visibility:hidden;transition:all .2s ease;z-index:1001}.cascading-dropdown-item:hover .cascading-submenu{opacity:1;visibility:visible}.cascading-submenu-item{display:flex;align-items:center;gap:10px;padding:10px 16px;text-decoration:none;color:#374151;font-size:.813rem;transition:background-color .15s ease}.cascading-submenu-item:hover{background-color:#f3f4f6}.cascading-submenu-item.active{background-color:#e5e7eb;color:#000}.cascading-submenu-icon{display:flex;align-items:center;color:#6b7280}.cascading-submenu-name{font-weight:500}.mobile-menu-btn{display:none;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:none;cursor:pointer;color:#374151;border-radius:8px;transition:background-color .2s ease}.mobile-menu-btn:hover{background-color:#f3f4f6}.mobile-nav-overlay{display:none;position:fixed;inset:0;background-color:#00000080;z-index:9998}.mobile-nav-overlay.active{display:block}.mobile-nav{display:none;position:fixed;top:0;left:-300px;width:300px;height:100vh;background-color:#fff;box-shadow:4px 0 20px #00000026;z-index:9999;transition:left .3s ease;overflow-y:auto}.mobile-nav.active{left:0}.mobile-nav-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb}.mobile-nav-header .logo-img{height:24px}.mobile-nav-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:none;cursor:pointer;color:#6b7280;border-radius:8px;transition:background-color .2s ease}.mobile-nav-close:hover{background-color:#f3f4f6}.mobile-nav-content{padding:16px 0}.mobile-nav-item{display:flex;align-items:center;gap:12px;padding:14px 20px;color:#374151;text-decoration:none;font-size:.938rem;font-weight:500;transition:background-color .15s ease;cursor:pointer;border:none;background:none;width:100%;text-align:left}.mobile-nav-item:hover{background-color:#f3f4f6}.mobile-nav-item.active{background-color:#e5e7eb;color:#000}.mobile-nav-item-icon{display:flex;align-items:center;color:#6b7280}.mobile-nav-item.active .mobile-nav-item-icon{color:#000}.mobile-nav-divider{height:1px;background-color:#e5e7eb;margin:12px 0}.mobile-submenu{background-color:#f9fafb;max-height:0;overflow:hidden;transition:max-height .3s ease}.mobile-submenu.open{max-height:1000px}.mobile-submenu-item{display:flex;align-items:center;gap:12px;padding:12px 20px 12px 52px;color:#4b5563;text-decoration:none;font-size:.875rem;font-weight:500;transition:background-color .15s ease;cursor:pointer;border:none;background:none;width:100%;text-align:left}.mobile-submenu-item:hover{background-color:#e5e7eb}.mobile-submenu-item.active{background-color:#e5e7eb;color:#000}.mobile-nav-arrow{margin-left:auto;transition:transform .2s ease}.mobile-nav-arrow.open{transform:rotate(180deg)}@media(max-width:1280px){.header-container{grid-template-columns:180px 1fr 220px;padding:.5rem 1.5rem}.header-nav{gap:.5rem}.nav-item{padding:.375rem .75rem;min-width:70px}.nav-name{font-size:.813rem}}@media(max-width:1024px){.header-container{grid-template-columns:160px 1fr 180px;padding:.5rem 1rem}.header-nav{gap:.25rem}.nav-item{padding:.375rem .5rem;min-width:60px}.nav-icon svg{width:20px;height:20px}.nav-name{font-size:.75rem}.user-info{display:none}}@media(max-width:900px){.header-container{display:flex;justify-content:space-between;padding:.75rem 1rem}.header-nav{display:none}.mobile-menu-btn{display:flex}.mobile-nav{display:block}.header-logo{flex:1}.header-user{flex:0}}@media(max-width:640px){.header-container{padding:.5rem .75rem}.header-logo .logo-img{height:18px}.user-avatar{width:32px;height:32px}.user-avatar svg{width:16px;height:16px}.module-switch-btn{width:36px;height:36px}.mobile-nav{width:280px;left:-280px}.mobile-nav.active{left:0}.user-dropdown-menu{right:-10px;min-width:200px}}@media(max-width:480px){.header-container{padding:.5rem}.mobile-nav{width:100%;left:-100%}.mobile-nav.active{left:0}.user-dropdown-menu{position:fixed;top:60px;right:10px;left:10px;width:auto}}@media(max-width:900px){.cascading-dropdown,.dropdown-menu{display:none}}.accounting-programs-modal{width:900px;max-width:95vw;max-height:85vh;overflow:visible;border-radius:12px}.accounting-programs-modal .blur-modal-body{overflow-x:auto;overflow-y:auto}.accounting-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px;flex-wrap:wrap}.accounting-toolbar .search-box{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;flex:1;max-width:300px}.accounting-toolbar .search-box svg{color:#9ca3af}.accounting-toolbar .search-box input{border:none;outline:none;font-size:.85rem;color:#1f2937;width:100%}.accounting-toolbar .search-box input::placeholder{color:#9ca3af}.accounting-toolbar .add-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:#1f2937;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s;white-space:nowrap;flex-shrink:0;min-width:fit-content}.accounting-toolbar .add-btn:hover{background:#fff;color:#1f2937;border:1px solid #1f2937}.accounting-table-container{overflow-x:auto}.accounting-table{width:100%;border-collapse:collapse}.accounting-table th,.accounting-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #e5e7eb}.accounting-table th{background:#f9fafb;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase}.accounting-table td{font-size:.85rem;color:#1f2937}.accounting-table tbody tr:hover{background:#f9fafb}.accounting-table .empty-row{text-align:center;color:#9ca3af;padding:24px}.integrator-name{display:flex;align-items:center;gap:8px}.default-badge{display:inline-block;padding:2px 6px;background:#dbeafe;color:#1d4ed8;font-size:.65rem;font-weight:500;border-radius:4px}.api-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:monospace;font-size:.8rem;color:#6b7280}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:500}.actions-cell{display:flex;gap:6px}.action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:4px;cursor:pointer;transition:all .2s}.action-btn.edit{background:transparent;color:#1f2937}.action-btn.edit:hover{background:transparent;opacity:.7}.action-btn.delete{background:transparent;color:#1f2937}.action-btn.delete:hover{background:transparent;opacity:.7}.add-edit-accounting-modal{width:550px;max-width:95vw;overflow:visible!important;border-radius:16px!important}.add-edit-accounting-modal .blur-modal-header{border-radius:16px 16px 0 0}.add-edit-accounting-modal .blur-modal-footer{border-radius:0 0 16px 16px}.add-edit-accounting-modal .blur-modal-body{overflow:visible!important}.add-edit-accounting-modal .blur-modal-header,.add-edit-accounting-modal .blur-modal-footer{position:relative;z-index:1}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .form-group{display:flex;flex-direction:column;gap:6px}.form-grid .form-group.full-width{grid-column:1 / -1}.blur-modal-body>.form-group{display:flex;flex-direction:column;gap:6px;border:none}.blur-modal-body>.form-group label{font-size:.8rem;font-weight:500;color:#374151}.blur-modal-body>.form-group label .required{color:#dc2626}.form-grid .form-group label{font-size:.8rem;font-weight:500;color:#374151}.form-grid .form-group label .required{color:#dc2626}.form-grid .form-group input{padding:10px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:.85rem;color:#1f2937;outline:none;transition:border-color .2s}.form-grid .form-group input:focus{border-color:#3b82f6}.form-grid .form-group input::placeholder{color:#9ca3af}.select-container{position:relative}.select-input{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;cursor:pointer;font-size:.85rem;color:#1f2937}.select-input svg{color:#9ca3af}.select-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:999999;overflow:hidden}.select-option{padding:10px 12px;font-size:.85rem;color:#374151;cursor:pointer;transition:background .15s}.select-option:hover{background:#f3f4f6}.select-option.selected{background:#eff6ff;color:#1d4ed8}.switcher-container{display:flex;align-items:center;gap:10px;padding-top:4px}.switcher{position:relative;display:inline-block;width:44px;height:24px}.switcher input{opacity:0;width:0;height:0}.switcher .slider{position:absolute;cursor:pointer;inset:0;background-color:#e5e7eb;transition:.3s;border-radius:24px}.switcher .slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 1px 3px #0003}.switcher input:checked+.slider{background-color:#1f2937}.switcher input:checked+.slider:before{transform:translate(20px)}.switcher-label{font-size:.85rem;color:#374151}.switcher-row{display:flex;align-items:center;gap:10px;padding:8px 0}.switcher-name{font-size:.85rem;font-weight:500;color:#374151}.delete-confirm-modal{width:400px;max-width:95vw}.delete-message{font-size:.9rem;color:#374151;margin-bottom:8px}.delete-warning{font-size:.8rem;color:#dc2626}.modal-btn.delete{background:#dc2626;color:#fff}.modal-btn.delete:hover{background:#b91c1c}.integration-type-select{display:flex;flex-direction:column;gap:6px}.integration-type-select label{font-size:.8rem;font-weight:500;color:#374151}.integration-type-select label .required{color:#dc2626}.search-select-container{position:relative;z-index:99999}.search-select-input{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;cursor:pointer}.search-select-input input{flex:1;border:none;outline:none;font-size:.85rem;color:#1f2937;background:transparent}.search-select-input input::placeholder{color:#9ca3af}.search-select-input svg{color:#9ca3af;flex-shrink:0}.search-select-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 8px 24px #0003;z-index:9999999;max-height:300px;overflow-y:auto}.search-select-option{padding:10px 12px;font-size:.85rem;color:#374151;cursor:pointer;transition:background .15s}.search-select-option.selected{background:#eff6ff;color:#1d4ed8}.search-select-empty{padding:12px;text-align:center;color:#9ca3af;font-size:.85rem}.type-badge{display:inline-block;padding:4px 8px;background:#f3f4f6;color:#374151;font-size:.75rem;font-weight:500;border-radius:4px}.modal-btn.confirm:disabled{background:#9ca3af;cursor:not-allowed}.hotel-overview-page{padding:1.5rem 2rem;background-color:#f9fafb;min-height:calc(100vh - 70px)}.hotel-overview-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.hotel-overview-title h1{font-size:1.75rem;font-weight:700;color:#1f2937;margin:0 0 .25rem}.hotel-overview-title p{font-size:.875rem;color:#6b7280;margin:0}.currency-rates{display:flex;gap:1rem}.currency-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem}.currency-item svg{color:#6b7280}.currency-code{font-weight:600;color:#374151}.currency-value{color:#059669;font-weight:500}.hotel-widgets-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.hotel-widget{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden;display:flex;flex-direction:column}.hotel-widget-main{display:flex;align-items:center;padding:.75rem;gap:.75rem;flex:1}.hotel-widget-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:.5rem;flex-shrink:0}.hotel-widget-icon.staying{background-color:#dbeafe;color:#2563eb}.hotel-widget-icon.arrivals{background-color:#dcfce7;color:#16a34a}.hotel-widget-icon.departures{background-color:#fef3c7;color:#d97706}.hotel-widget-icon.endofday{background-color:#f3e8ff;color:#9333ea}.hotel-widget-info{display:flex;flex-direction:column;flex:1}.hotel-widget-info h3{font-size:.75rem;font-weight:500;color:#6b7280;margin:0 0 .25rem}.hotel-widget-stats{display:flex;align-items:baseline;gap:.375rem}.hotel-widget-value{font-size:1.5rem;font-weight:700;color:#1f2937;line-height:1}.hotel-widget-label{font-size:.75rem;color:#9ca3af}.hotel-widget-footer{padding:.5rem .75rem;background-color:#f9fafb;border-top:1px solid #e5e7eb;font-size:.75rem;color:#6b7280;font-weight:500}.hotel-cards-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.hotel-card{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.hotel-card-header{padding:.75rem 1rem;border-bottom:1px solid #e5e7eb}.hotel-card-header h3{font-size:1rem;font-weight:600;color:#1f2937;margin:0}.hotel-card-body{padding:.75rem 1rem}.chart-card .hotel-card-body{padding:1rem .25rem}.status-list{list-style:none;padding:0;margin:0}.status-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f3f4f6}.status-item:last-child{border-bottom:none}.status-label{font-size:.875rem;color:#4b5563}.status-value{font-size:.875rem;font-weight:600;color:#1f2937;background-color:#f3f4f6;padding:.25rem .75rem;border-radius:9999px;min-width:32px;text-align:center}.status-value.danger{background-color:#fee2e2;color:#dc2626}.status-value.warning{background-color:#fef3c7;color:#d97706}.status-value.success{background-color:#dcfce7;color:#16a34a}.status-value.info{background-color:#dbeafe;color:#2563eb}.pie-charts-container{display:flex;gap:2rem;justify-content:space-around}.hotel-pie-chart{flex:1;display:flex;flex-direction:column;align-items:center}.hotel-pie-chart h4{font-size:.875rem;font-weight:600;color:#374151;margin:0 0 1rem;text-align:center}.pie-chart-container{width:240px;height:240px;margin-bottom:.75rem}.pie-svg{width:100%;height:100%}.pie-slice{transition:transform .2s ease;transform-origin:center}.pie-slice:hover{transform:scale(1.02)}.pie-center-text{font-size:14px;font-weight:700;fill:#1f2937}.pie-legend{display:flex;flex-direction:column;gap:.5rem;width:100%}.pie-legend-item{display:flex;align-items:center;gap:.5rem;font-size:.813rem}.pie-legend-color{width:12px;height:12px;border-radius:2px;flex-shrink:0}.pie-legend-label{flex:1;color:#4b5563}.pie-legend-value{font-weight:600;color:#1f2937}@media(max-width:1200px){.hotel-widgets-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.hotel-overview-header{flex-direction:column;gap:1rem}.currency-rates{flex-wrap:wrap}.hotel-widgets-row,.hotel-cards-row{grid-template-columns:1fr}.pie-charts-container{flex-direction:column;align-items:center}}.hotel-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.5rem}.hotel-stats-card{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.hotel-stats-header{padding:.75rem 1rem;border-bottom:1px solid #e5e7eb}.hotel-stats-header.sales{background-color:#dbeafe;border-bottom-color:#bfdbfe}.hotel-stats-header.sales h3{color:#1d4ed8}.hotel-stats-header.cancellations{background-color:#fee2e2;border-bottom-color:#fecaca}.hotel-stats-header.cancellations h3{color:#dc2626}.hotel-stats-header.revenue{background-color:#dcfce7;border-bottom-color:#bbf7d0}.hotel-stats-header.revenue h3{color:#16a34a}.hotel-stats-header h3{font-size:.875rem;font-weight:600;margin:0}.hotel-stats-body{padding:.75rem 1rem}.stats-grid{display:flex;flex-direction:column;gap:.5rem}.stats-item{display:flex;justify-content:space-between;align-items:center}.stats-label{font-size:.813rem;color:#6b7280}.stats-value{font-size:.875rem;font-weight:600;color:#1f2937}@media(max-width:1024px){.hotel-stats-row{grid-template-columns:1fr}}.hotel-charts-row{display:flex;gap:1rem;margin-top:1.5rem}.hotel-charts-row .hotel-card{flex:0 0 24.3%;max-width:24.3%}.hotel-charts-row .availability-card{flex:0 0 calc(50.1% - .5rem);max-width:calc(50.1% - .5rem)}.pie-chart-single{display:flex;justify-content:flex-start;align-items:center;padding:1rem}.pie-chart-single .hotel-pie-chart{display:flex;flex-direction:row;align-items:center;gap:1rem;width:100%}.pie-chart-single .pie-chart-container{width:220px;height:220px;flex-shrink:0}.pie-chart-single .pie-legend{flex:1}.pie-chart-single .pie-legend-item{padding:.25rem 0}.availability-card .hotel-card-header{display:flex;justify-content:space-between;align-items:center}.view-switcher{display:flex;gap:.25rem;background-color:#f3f4f6;padding:.25rem;border-radius:.375rem}.view-btn{display:flex;align-items:center;justify-content:center;padding:.375rem .5rem;border:none;background:transparent;color:#6b7280;border-radius:.25rem;cursor:pointer;transition:all .2s ease}.view-btn:hover{color:#374151}.view-btn.active{background-color:#fff;color:#1f2937;box-shadow:0 1px 2px #0000001a}.availability-chart{display:flex;flex-direction:column;gap:.5rem}.bar-item{display:flex;align-items:center;gap:.75rem}.bar-label{font-size:.75rem;color:#6b7280;width:45px;flex-shrink:0}.bar-container{flex:1;display:flex;height:20px;border-radius:.25rem;overflow:hidden}.bar-occupied{background-color:#14b8a6;transition:width .3s ease}.bar-empty{background-color:#d4a574;transition:width .3s ease}.bar-value{font-size:.75rem;font-weight:600;color:#374151;width:45px;text-align:right;flex-shrink:0}.bar-legend{display:flex;gap:1rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e5e7eb}.legend-item{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:#6b7280}.legend-color{width:12px;height:12px;border-radius:2px}.legend-color.occupied{background-color:#14b8a6}.legend-color.empty{background-color:#d4a574}.availability-table{overflow-x:auto}.availability-table table{width:100%;border-collapse:collapse;font-size:.813rem}.availability-table th,.availability-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid #e5e7eb}.availability-table th{font-weight:600;color:#374151;background-color:#f9fafb}.availability-table td{color:#4b5563}.availability-table tr:last-child td{border-bottom:none}@media(max-width:768px){.hotel-charts-row{flex-direction:column}.hotel-charts-row .hotel-card{flex:0 0 100%;max-width:100%}}.hotel-bottom-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}.chart-card .hotel-card-header{display:flex;justify-content:space-between;align-items:center}.vertical-bar-chart{padding:1rem 0}.vertical-bars{display:flex;justify-content:space-around;align-items:flex-end;height:150px;gap:.5rem}.vertical-bar-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;flex:1}.vertical-bar-wrapper{width:100%;max-width:40px;height:120px;background-color:#f3f4f6;border-radius:.25rem;display:flex;align-items:flex-end;overflow:hidden}.vertical-bar{width:100%;background-color:#14b8a6;border-radius:.25rem .25rem 0 0;transition:height .3s ease}.vertical-bar-label{font-size:.625rem;color:#6b7280;margin-top:.25rem}.vertical-bar-value{font-size:.75rem;font-weight:600;color:#1f2937}.area-chart{padding:.5rem 0}.area-chart-svg{width:100%;height:auto}.area-chart-label{font-size:8px;fill:#6b7280}.occupancy-legend{display:flex;justify-content:center;gap:1.5rem;margin-bottom:.75rem}.stacked-bar-wrapper{width:100%;max-width:40px;height:120px;background-color:#f3f4f6;border-radius:.25rem;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}.individual-bar{background-color:#14b8a6}.agency-bar{background-color:#fbbf24}.legend-color.individual{background-color:#14b8a6}.legend-color.agency-occ{background-color:#fbbf24}.recharts-container{width:100%;padding:0}.pie-chart-container{position:relative}.pie-center-total{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.75rem;font-weight:700;color:#1f2937;pointer-events:none}.line-chart{padding:.5rem 0}.line-chart-legend{display:flex;justify-content:flex-end;margin-bottom:.5rem;padding-right:1rem}.legend-line{display:inline-block;width:20px;height:3px;background-color:#60a5fa;margin-right:.5rem;vertical-align:middle}.line-chart-svg{width:100%;height:auto}.line-chart-y-label,.line-chart-x-label{font-size:9px;fill:#6b7280}.card-controls{display:flex;align-items:center;gap:.5rem}.date-picker{padding:.375rem .5rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.813rem;color:#374151;background-color:#fff;cursor:pointer}.date-picker:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.view-mode-select{padding:.375rem .5rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.813rem;color:#374151;background-color:#fff;cursor:pointer}.view-mode-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.arrival-departure-table{overflow-x:auto}.arrival-departure-table table{width:100%;border-collapse:collapse;font-size:.75rem}.arrival-departure-table th,.arrival-departure-table td{padding:.5rem;text-align:left;border-bottom:1px solid #e5e7eb;white-space:nowrap}.arrival-departure-table th{font-weight:600;color:#374151;background-color:#f9fafb;font-size:.688rem}.arrival-departure-table td{color:#4b5563}.arrival-departure-table tr:last-child td{border-bottom:none}.arrival-departure-table tr:hover{background-color:#f9fafb}@media(max-width:768px){.hotel-bottom-row{grid-template-columns:1fr}.card-controls{flex-wrap:wrap}}.invoices-page{padding:1.5rem;background-color:#f8fafc;min-height:100vh}.invoices-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.invoices-header h1{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0}.header-actions{display:flex;gap:.75rem}.quick-invoice-btn,.add-invoice-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#1f2937;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.quick-invoice-btn:hover,.add-invoice-btn:hover{background:#111827}.invoices-filter-area{background:#fff;border-radius:12px;padding:1rem 1.25rem;margin-bottom:1rem;box-shadow:0 1px 3px #0000000d}.filter-group{display:flex;flex-direction:column;gap:.375rem;min-width:140px}.filter-group label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.025em}.filter-group input[type=date],.filter-group input[type=number],.filter-group input[type=text]{height:36px;padding:0 .75rem;border:none;border-radius:8px;font-size:.813rem;background:#f3f4f6;transition:all .15s ease;outline:none}.filter-group input:focus{background:#e5e7eb}.filter-input-wrapper{display:flex;align-items:center;gap:.5rem;height:36px;padding:0 .75rem;border:none;border-radius:8px;background:#f3f4f6;transition:all .15s ease}.filter-input-wrapper:focus-within{background:#e5e7eb}.filter-input-wrapper svg{color:#9ca3af;flex-shrink:0}.filter-input-wrapper input{border:none;background:transparent;font-size:.813rem;outline:none;width:100%;min-width:100px}.search-select{position:relative;display:flex;align-items:center;justify-content:space-between;gap:.5rem;height:36px;padding:0 .75rem;border:none;border-radius:8px;background:#f3f4f6;cursor:pointer;font-size:.813rem;min-width:140px;transition:all .15s ease}.search-select:hover{background:#e5e7eb}.search-select svg{color:#6b7280;flex-shrink:0}.search-select-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:100;max-height:200px;overflow-y:auto}.search-select-option{padding:.5rem .75rem;font-size:.813rem;cursor:pointer;transition:background .15s ease}.search-select-option.selected{background:#eff6ff;color:#2563eb;font-weight:500}.filter-group.amount-range{flex:1;min-width:200px}.amount-inputs{display:flex;align-items:center;gap:.5rem}.amount-inputs input{flex:1;min-width:80px;height:36px;padding:0 .75rem;border:none;border-radius:8px;font-size:.813rem;background:#f3f4f6;text-align:center}.amount-inputs span{color:#9ca3af;font-size:.875rem}.filter-group.filter-actions{margin-left:0}.clear-filters-btn{display:flex;align-items:center;justify-content:center;gap:.375rem;height:36px;padding:0 1rem;background:#1f2937;border:none;border-radius:8px;font-size:.813rem;color:#fff;cursor:pointer;transition:all .15s ease}.clear-filters-btn:hover{background:#1f2937}.invoices-tabs{display:flex;gap:0;margin-bottom:0;background:transparent;border-bottom:1px solid #e5e7eb}.tab-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:transparent;border:none;border-radius:0;font-size:.875rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease;position:relative;margin-bottom:-1px}.tab-btn:hover{color:#374151}.tab-btn.active{background:#fff;color:#1f2937;border:1px solid #1f2937;border-bottom:1px solid white;border-radius:8px 8px 0 0}.tab-btn.active .tab-count{background:#1f2937;color:#fff}.tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#e5e7eb;border-radius:10px;font-size:.75rem;font-weight:600;color:#6b7280}.invoices-widgets{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;margin-bottom:1.5rem}.invoice-widget{background:#fff;border-radius:12px;padding:1.25rem;display:flex;align-items:center;gap:1rem;border:1px solid transparent;box-shadow:0 1px 3px #0000000d;transition:all .2s ease}.invoice-widget:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.widget-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.widget-content{display:flex;flex-direction:column;gap:.25rem}.widget-value{font-size:1.25rem;font-weight:700;color:#1f2937;line-height:1.2}.widget-label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.025em}.invoice-widget.total .widget-icon{background:#eff6ff;color:#3b82f6}.invoice-widget.amount .widget-icon{background:#f0fdf4;color:#22c55e}.invoice-widget.approved .widget-icon{background:#ecfdf5;color:#10b981}.invoice-widget.pending .widget-icon{background:#fffbeb;color:#f59e0b}.invoice-widget.rejected .widget-icon{background:#fef2f2;color:#ef4444}.invoice-widget.cancelled .widget-icon{background:#f5f5f5;color:#737373}.invoices-toolbar{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;background:#fff;padding:1rem;border-radius:12px;box-shadow:0 1px 3px #0000000d}.search-wrapper{position:relative;flex:1;max-width:320px}.search-wrapper .search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#9ca3af}.search-wrapper input{width:100%;padding:.625rem .75rem .625rem 2.25rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;background:#f9fafb;transition:all .15s ease;outline:none;box-sizing:border-box}.search-wrapper input:focus{border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.filter-wrapper{display:flex;align-items:center;gap:.5rem;color:#6b7280}.filter-wrapper select{padding:.625rem .75rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;background:#f9fafb;cursor:pointer;outline:none}.filter-wrapper select:focus{border-color:#3b82f6}.export-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;color:#374151;cursor:pointer;transition:all .15s ease;margin-left:auto}.export-btn:hover{background:#f9fafb;border-color:#d1d5db}.invoices-table-wrapper{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000d;min-height:480px}.invoices-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem;background:#fff;border-radius:12px;margin-top:1rem;box-shadow:0 1px 3px #0000000d}.pagination-btn{padding:.5rem 1rem;background:#f3f4f6;border:none;border-radius:8px;font-size:.813rem;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.pagination-btn:hover:not(:disabled){background:#e5e7eb}.invoices-table{width:100%;border-collapse:collapse}.invoices-table thead{background:#f9fafb}.invoices-table th{padding:.875rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e5e7eb}.invoices-table td{padding:.625rem 1rem;font-size:.875rem;color:#374151;border-bottom:1px solid #f3f4f6}.invoices-table tbody tr:hover{background:#f9fafb}.invoice-no{font-weight:600;color:#1f2937}.amount-income{color:#22c55e;font-weight:600}.amount-expense{color:#ef4444;font-weight:600}.status-badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-badge.approved{background:#d1fae5;color:#065f46}.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.rejected{background:#fecaca;color:#991b1b}.status-badge.cancelled{background:#e5e5e5;color:#525252}.action-buttons{display:flex;gap:.375rem}.action-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.action-btn.view,.action-btn.edit,.action-btn.delete{background:transparent;color:#1f2937}.action-btn.view:hover,.action-btn.edit:hover,.action-btn.delete:hover{background:#f3f4f6}.action-btn svg,.invoices-table .action-btn svg,.action-buttons .action-btn svg{width:14px!important;height:14px!important;min-width:14px!important;min-height:14px!important;display:block!important;flex-shrink:0;stroke:currentColor!important;stroke-width:2!important}.action-btn.delete,.invoices-table .action-btn.delete{color:#dc2626!important}.invoices-table .action-buttons{display:flex!important;gap:4px!important}.invoices-table .action-btn{display:flex!important;align-items:center!important;justify-content:center!important;width:28px!important;height:28px!important;border:none!important;border-radius:6px!important;background:transparent!important;color:#1f2937!important;cursor:pointer!important}.empty-state{text-align:center;padding:3rem 1rem}.empty-state-text{color:#9ca3af;font-size:.875rem}.invoice-modal{background:#fff;border-radius:16px;width:90%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 40px #00000026}.invoice-detail-modal{background:#fff;border-radius:16px;width:95%;max-width:900px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 40px #00000026}.invoice-detail-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.invoice-detail-modal .modal-header h2{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.modal-tabs{display:flex;gap:0;padding:0 1.5rem;background:#f9fafb;border-bottom:1px solid #e5e7eb;overflow-x:auto}.modal-tab{padding:.875rem 1.25rem;background:transparent;border:none;font-size:.813rem;font-weight:500;color:#6b7280;cursor:pointer;white-space:nowrap;transition:all .15s ease;position:relative}.modal-tab:hover{color:#374151}.modal-tab.active{color:#1f2937;font-weight:600}.modal-tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:#1f2937}.detail-cards-row{display:flex;gap:1.5rem}.detail-card{flex:1;background:#f9fafb;border-radius:12px;padding:1.25rem;border:1px solid #e5e7eb}.detail-card.full-width{flex:1 1 100%}.detail-card-title{font-size:.875rem;font-weight:600;color:#1f2937;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.detail-card-content{display:flex;flex-direction:column;gap:.625rem}.detail-row{display:flex;align-items:center;gap:.5rem}.detail-row .detail-label{font-size:.813rem;color:#6b7280;min-width:120px;flex-shrink:0}.detail-row .detail-value{font-size:.813rem;color:#1f2937;font-weight:500}.invoice-lines-table{width:100%;border-collapse:collapse}.invoice-lines-table th,.invoice-lines-table td{padding:.625rem .75rem;text-align:left;font-size:.813rem;border-bottom:1px solid #e5e7eb}.invoice-lines-table th{background:#f3f4f6;font-weight:600;color:#374151}.invoice-lines-table td{color:#1f2937}.detail-row.editable{display:flex;align-items:center;gap:.5rem}.detail-row.editable input,.detail-row.editable select{flex:1;padding:.375rem .5rem;border:1px solid #d1d5db;border-radius:6px;font-size:.813rem;color:#1f2937;background:#fff;transition:border-color .15s ease}.detail-row.editable input:focus,.detail-row.editable select:focus{outline:none;border-color:#1f2937}.detail-row.editable input::placeholder{color:#9ca3af}.note-textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;color:#1f2937;resize:vertical;min-height:120px;font-family:inherit}.note-textarea:focus{outline:none;border-color:#1f2937}.note-textarea::placeholder{color:#9ca3af}.invoice-items-table-wrapper{overflow-x:auto;margin-bottom:1rem}.invoice-items-table{width:100%;border-collapse:collapse;min-width:800px}.invoice-items-table th,.invoice-items-table td{padding:.625rem .5rem;text-align:left;font-size:.75rem;border-bottom:1px solid #e5e7eb;white-space:nowrap}.invoice-items-table th{background:#f3f4f6;font-weight:600;color:#374151;text-transform:uppercase;font-size:.688rem}.invoice-items-table td{color:#1f2937}.invoice-items-table tbody tr:hover{background:#f9fafb}.invoice-totals{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.invoice-total-row{display:flex;align-items:center;gap:2rem;min-width:250px;justify-content:space-between}.invoice-total-row .total-label{font-size:.813rem;color:#6b7280}.invoice-total-row .total-value{font-size:.813rem;color:#1f2937;font-weight:500}.invoice-total-row.grand-total{padding-top:.5rem;border-top:1px solid #e5e7eb;margin-top:.25rem}.invoice-total-row.grand-total .total-label,.invoice-total-row.grand-total .total-value{font-weight:700;font-size:.875rem;color:#1f2937}.einvoice-actions{display:flex;align-items:center;justify-content:center;min-height:120px}.einvoice-send-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;background:#1f2937;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.einvoice-send-btn:hover{background:#111827}.empty-text{color:#9ca3af;font-size:.875rem;text-align:center;padding:2rem 0;margin:0}.invoice-detail-modal .modal-body{padding:1.5rem;overflow-y:auto;flex:1}.invoice-detail-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.quick-invoice-modal{background:#fff;border-radius:16px;width:95%;max-width:900px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 40px #00000026}.quick-invoice-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.quick-invoice-modal .modal-body{padding:1.5rem;overflow-y:auto;overflow-x:visible;flex:1}.selection-section,.search-select-wrapper{position:relative;z-index:100}.quick-invoice-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.wizard-steps{display:flex;justify-content:center;gap:2rem;padding:1rem 1.5rem;background:#f9fafb;border-bottom:1px solid #e5e7eb}.wizard-step{display:flex;align-items:center;gap:.5rem;opacity:.5}.wizard-step.active{opacity:1}.wizard-step.completed{opacity:.7}.step-number{width:24px;height:24px;border-radius:50%;background:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.wizard-step.active .step-number{background:#1f2937;color:#fff}.wizard-step.completed .step-number{background:#22c55e;color:#fff}.step-label{font-size:.813rem;color:#6b7280;font-weight:500}.wizard-step.active .step-label{color:#1f2937}.wizard-content{display:flex;flex-direction:column;gap:1.5rem}.wizard-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.wizard-subtitle{font-size:.875rem;color:#6b7280;margin:-1rem 0 0}.invoice-type-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.invoice-type-cards.compact{gap:.75rem;margin-bottom:1rem}.invoice-type-card{border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .15s ease}.invoice-type-card:hover{border-color:#d1d5db}.invoice-type-card.selected{border-color:#1f2937;background:#f9fafb}.invoice-type-card.mini{padding:.75rem 1rem}.invoice-type-card.mini h4{font-size:.813rem;margin:0 0 .25rem}.invoice-type-card.mini p{font-size:.75rem;margin:0;color:#6b7280}.type-card-header h4{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}.type-card-desc{font-size:.813rem;color:#6b7280;margin:0 0 1rem;line-height:1.5}.type-select-btn{width:100%;padding:.625rem 1rem;background:#1f2937;color:#fff;border:none;border-radius:8px;font-size:.813rem;font-weight:500;cursor:pointer;transition:all .15s ease}.type-select-btn:hover{background:#111827}.reservations-table-wrapper{overflow-x:auto;margin-bottom:1.5rem}.reservations-table th,.reservations-table td{padding:.625rem .75rem;text-align:left;font-size:.75rem;border-bottom:1px solid #e5e7eb}.reservations-table th{background:#f3f4f6;font-weight:600;color:#374151;text-transform:uppercase}.reservations-table td{color:#1f2937}.empty-reservations{text-align:center;padding:2rem!important;color:#9ca3af;font-style:italic}.receiver-info-section{background:#f9fafb;border-radius:12px;padding:1.25rem;border:1px solid #e5e7eb}.receiver-info-section h4{font-size:.875rem;font-weight:600;color:#1f2937;margin:0 0 .25rem}.receiver-info-desc{font-size:.75rem;color:#6b7280;margin:0 0 1rem}.receiver-form{display:flex;flex-direction:column;gap:.75rem}.receiver-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.receiver-form .form-row.full{grid-template-columns:1fr}.receiver-form .form-group{display:flex;flex-direction:column;gap:.25rem}.receiver-form .form-group label{font-size:.75rem;font-weight:500;color:#374151}.receiver-form .form-group input{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.813rem;transition:all .15s ease}.receiver-form .form-group input:focus{outline:none;border-color:#1f2937}.selection-section{display:flex;flex-direction:column;gap:.5rem}.selection-label{font-size:.813rem;font-weight:500;color:#374151}.search-select-wrapper{position:relative}.search-select{display:flex;align-items:center;justify-content:space-between;padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:8px;background:#fff;cursor:pointer;transition:all .15s ease;font-size:.875rem}.search-select:hover{border-color:#9ca3af}.search-select.open{border-color:#1f2937}.search-select .placeholder{color:#9ca3af}.search-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 8px 24px #00000026;z-index:9999;max-height:280px;overflow:hidden;display:flex;flex-direction:column}.search-select-dropdown.multi{max-height:400px}.search-input-wrapper{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;border-bottom:1px solid #e5e7eb}.search-input-wrapper input{flex:1;border:none;outline:none;font-size:.813rem;color:#1f2937}.search-input-wrapper input::placeholder{color:#9ca3af}.search-input-wrapper svg{color:#9ca3af}.search-select-options{overflow-y:auto;flex:1}.search-select-option{display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;cursor:pointer;transition:background-color .15s ease}.search-select-option:hover{background-color:#f9fafb}.search-select-option.selected{background-color:#f3f4f6}.search-select-option input[type=checkbox]{width:16px;height:16px;cursor:pointer}.option-content{display:flex;flex-direction:column;gap:.125rem}.option-name{font-size:.813rem;font-weight:500;color:#1f2937}.option-detail{font-size:.75rem;color:#6b7280}.res-status{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.688rem;font-weight:500}.res-status.confirmed{background-color:#dcfce7;color:#166534}.res-status.pending{background-color:#fef3c7;color:#92400e}.res-status.cancelled{background-color:#fee2e2;color:#991b1b}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h2{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.close-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;border:none;border-radius:8px;cursor:pointer;color:#6b7280;transition:all .15s ease}.close-btn:hover{background:#e5e7eb;color:#374151}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.75rem;font-weight:500;color:#6b7280}.detail-value{font-size:.875rem;color:#1f2937;font-weight:500}.detail-value.total{font-size:1.125rem;font-weight:700;color:#059669}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group.full-width{grid-column:span 2}.form-group label{font-size:.813rem;font-weight:500;color:#374151}.form-group input,.form-group select,.form-group textarea{padding:.625rem .75rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;background:#f9fafb;transition:all .15s ease;outline:none}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.btn-primary{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 8px #2563eb4d}.btn-secondary{padding:.625rem 1.25rem;background:#fff;color:#374151;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-secondary:hover{background:#f9fafb;border-color:#d1d5db}@media(max-width:1200px){.invoices-widgets{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.invoices-widgets{grid-template-columns:repeat(2,1fr)}.invoices-toolbar{flex-wrap:wrap}.search-wrapper{max-width:none;width:100%}.detail-grid,.form-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:span 1}}.occupancy-calendar-page{padding:.5rem .75rem;background-color:#f9fafb;min-height:calc(100vh - 70px);overflow-x:hidden}.occupancy-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.occupancy-title h1{font-size:1.75rem;font-weight:700;color:#1f2937;margin:0}.occupancy-controls{display:flex;gap:1rem;align-items:center}.view-toggle{display:flex;gap:.25rem;background-color:#f3f4f6;padding:.25rem;border-radius:.5rem}.view-toggle-btn{display:flex;align-items:center;justify-content:center;padding:.5rem .75rem;border:none;background:transparent;color:#6b7280;border-radius:.375rem;cursor:pointer;transition:all .2s ease}.view-toggle-btn:hover{color:#374151}.view-toggle-btn.active{background-color:#fff;color:#2563eb;box-shadow:0 1px 2px #0000000d}.new-reservation-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background-color:#2563eb;color:#fff;border:none;border-radius:.5rem;font-weight:500;cursor:pointer;transition:background-color .2s ease}.new-reservation-btn:hover{background-color:#1d4ed8}.zoom-controls{display:flex;gap:.5rem;align-items:center;padding:.25rem .75rem;background-color:#f3f4f6;border-radius:.5rem}.zoom-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #e5e7eb;background-color:#fff;border-radius:.375rem;cursor:pointer;transition:all .2s ease;color:#6b7280}.zoom-btn:hover:not(:disabled){background-color:#f9fafb;border-color:#d1d5db;color:#374151}.zoom-btn:disabled{opacity:.5;cursor:not-allowed}.zoom-indicator{font-size:.813rem;font-weight:500;color:#4b5563;min-width:100px;text-align:center}.calendar-container{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow:hidden;margin:0;padding:0}.calendar-navigation{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-bottom:1px solid #e5e7eb}.calendar-nav-left{display:flex;align-items:center;gap:1rem}.calendar-nav-center,.table-date-filter{display:flex;align-items:center;gap:.5rem}.date-filter-label{min-width:180px;text-align:center}.table-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem;border-top:1px solid #e5e7eb}.pagination-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #e5e7eb;background-color:#fff;border-radius:.375rem;cursor:pointer;transition:all .2s ease;color:#6b7280}.pagination-btn:hover:not(:disabled){background-color:#f9fafb;border-color:#d1d5db;color:#374151}.pagination-info{font-size:.875rem;color:#6b7280;font-weight:500}.nav-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #e5e7eb;background-color:#fff;border-radius:.375rem;cursor:pointer;transition:all .2s ease;color:#6b7280}.nav-btn:hover{background-color:#f9fafb;border-color:#d1d5db;color:#374151}.date-range{font-size:.938rem;font-weight:600;color:#1f2937}.calendar-grid-wrapper{display:flex;overflow-x:auto;overflow-y:auto;max-height:calc(100vh - 150px);margin:0;padding:0}.calendar-sidebar{width:15%;min-width:180px;background-color:#fff;flex-shrink:0;display:flex;flex-direction:column;position:sticky;left:0;z-index:10}.sidebar-header{height:60px;min-height:60px;max-height:60px;display:flex;align-items:center;padding:0 1rem;font-weight:600;font-size:.875rem;color:#374151;border-bottom:1px solid #e5e7eb;border-right:2px solid #e5e7eb;background-color:#fff;flex-shrink:0;margin:0;box-sizing:border-box;flex:0 0 60px}.sidebar-rooms{flex:1;overflow-y:visible;margin:0;padding:0}.room-type-group{border-bottom:none;margin:0;padding:0}.room-type-group:first-child .room-type-header{border-top:none}.room-type-header{display:flex;align-items:center;justify-content:space-between;padding:0 .75rem;font-weight:600;font-size:.688rem;color:#1f2937;background-color:#f9fafb;border-bottom:1px solid #e5e7eb;border-right:2px solid #e5e7eb;height:32px;box-sizing:border-box;margin:0}.room-row-sidebar{display:flex;align-items:center;justify-content:space-between;padding:0 .75rem;height:32px;border-bottom:1px solid #e5e7eb;border-right:2px solid #e5e7eb;font-size:.688rem;color:#4b5563;box-sizing:border-box;background-color:#fff}.room-number{font-weight:500}.room-status-dot{width:8px;height:8px;border-radius:50%}.room-status-dot.clean{background-color:#10b981}.room-status-dot.dirty{background-color:#ef4444}.occupancy-calendar-grid{flex:1;min-width:0;display:flex;flex-direction:column}.date-headers{display:flex;height:60px;min-height:60px;max-height:60px;border-bottom:1px solid #e5e7eb;background-color:#f9fafb;position:sticky;top:0;z-index:9;box-sizing:border-box}.date-header{flex:1 1 0;min-width:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid #e5e7eb;padding:.5rem;box-sizing:border-box}.date-header.today{background-color:#dbeafe}.date-day{font-size:.688rem;color:#6b7280;text-transform:uppercase;font-weight:500}.date-number{font-size:.938rem;font-weight:600;color:#1f2937;margin-top:.125rem}.hour-label{font-size:.75rem;font-weight:600;color:#1f2937;display:flex;flex-direction:column;align-items:center;gap:.125rem}.hour-date{font-size:.625rem;font-weight:700;color:#059669;background-color:#d1fae5;padding:.125rem .25rem;border-radius:.25rem}.date-header.hour-view,.calendar-cell.hour-view,.room-type-header-row .calendar-cell.hour-view{flex:1 1 0;min-width:0;border-right:1px solid #e5e7eb}.room-row.hour-view{border-bottom:1px solid #e5e7eb}.room-row.hour-view .calendar-cell{flex:1 1 0;min-width:0;border-right:1px solid #e5e7eb}.room-type-section{display:flex;flex-direction:column}.room-type-header-row{display:flex;height:32px;background-color:#f9fafb;border-bottom:1px solid #e5e7eb;cursor:pointer}.room-type-header-row .calendar-cell{flex:1 1 0;min-width:30px;border-right:1px solid #e5e7eb;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.room-row{display:flex;height:32px;border-bottom:1px solid #e5e7eb;position:relative;box-sizing:border-box}.calendar-cell{flex:1 1 0;min-width:30px;border-right:1px solid #e5e7eb;position:relative;background-color:#fff;transition:background-color .2s ease;box-sizing:border-box}.calendar-cell:first-child{border-left:none}.calendar-cell:last-child{border-right:none}.calendar-cell:hover{background-color:#dcfce7;cursor:pointer}.calendar-cell.has-reservation:hover{background-color:#fecaca}.calendar-cell.selecting{background-color:#bbf7d0}.calendar-cell.selection-start,.calendar-cell.selection-end{background-color:#86efac}.reservation-block{position:absolute;top:1px;left:1px;right:auto;height:calc(100% - 2px);border-radius:6px;padding:2px 4px;cursor:move;box-shadow:0 2px 8px #0000001f,inset 0 1px #ffffff40;border:1px solid rgba(255,255,255,.35);overflow:hidden;z-index:5;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;pointer-events:auto;max-width:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.reservation-block:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000002e,inset 0 1px #ffffff4d;z-index:6;filter:brightness(1.05)}.reservation-block:active{cursor:grabbing;opacity:.9}.occupancy-reservation-content{display:flex;flex-direction:column;gap:0px;color:#fff;font-size:.75rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:100%;justify-content:center;padding:0 2px;position:relative}.reservation-guest-sticky{display:flex;flex-direction:column}.reservation-guest{font-weight:600;font-size:.75rem;text-shadow:0 1px 2px rgba(0,0,0,.2);letter-spacing:0;overflow:hidden;text-overflow:ellipsis}.reservation-guest-initials{display:none;font-weight:600;font-size:.75rem;text-shadow:0 1px 2px rgba(0,0,0,.2);letter-spacing:.05em}.reservation-number{opacity:.85;font-size:.625rem;font-weight:400;text-shadow:0 1px 1px rgba(0,0,0,.15);text-transform:lowercase;overflow:hidden;text-overflow:ellipsis}.reservation-block.compact .reservation-guest{display:none}.reservation-block.compact .reservation-guest-initials{display:block}.reservation-block.compact .reservation-number{display:none}.reservation-block.active{background-color:#3b82f6}.reservation-block.checkedIn{background-color:#10b981}.reservation-block.checkedOut{background-color:#6b7280}.reservation-block.cancelled{background-color:#ef4444;opacity:.6}.resize-handle{position:absolute;top:0;bottom:0;width:8px;cursor:ew-resize;z-index:10;opacity:0;transition:opacity .2s}.reservation-block:hover .resize-handle{opacity:1}.resize-handle.resize-left{left:0;border-left:2px solid rgba(255,255,255,.6);background:linear-gradient(to right,rgba(255,255,255,.3),transparent)}.resize-handle.resize-right{right:0;border-right:2px solid rgba(255,255,255,.6);background:linear-gradient(to left,rgba(255,255,255,.3),transparent)}.resize-handle:hover{opacity:1!important;background-color:#fff6}.reservation-block.resizing{opacity:.8;cursor:ew-resize}.reservation-block.resizing .occupancy-reservation-content{pointer-events:none}.table-view{background-color:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.reservations-table{width:100%;border-collapse:collapse}.reservations-table thead{background-color:#f9fafb;border-bottom:1px solid #e5e7eb}.reservations-table th{padding:.75rem 1rem;text-align:left;font-size:.813rem;font-weight:600;color:#374151}.reservations-table td{padding:.75rem 1rem;font-size:.875rem;color:#4b5563;border-bottom:1px solid #f3f4f6}.reservations-table tbody tr:hover{background-color:#f9fafb}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-badge.active{background-color:#dbeafe;color:#1d4ed8}.status-badge.checkedIn{background-color:#d1fae5;color:#065f46}.status-badge.checkedOut{background-color:#f3f4f6;color:#374151}.status-badge.cancelled{background-color:#fee2e2;color:#991b1b}@media(max-width:1024px){.calendar-sidebar{width:20%}}@media(max-width:768px){.occupancy-header{flex-direction:column;gap:1rem;align-items:flex-start}.occupancy-controls{width:100%;justify-content:space-between}.calendar-sidebar{width:25%;min-width:120px}.date-header,.calendar-cell{min-width:40px}}.channel-manager-page .resize-handle,.channel-manager-page .resize-handle.resize-left,.channel-manager-page .resize-handle.resize-right,.channel-manager-page .reservation-block .resize-handle,.channel-manager-page .reservation-block .resize-handle.resize-left,.channel-manager-page .reservation-block .resize-handle.resize-right{display:none!important;visibility:hidden!important;width:0!important;height:0!important;opacity:0!important;pointer-events:none!important;border:none!important;background:none!important;background-image:none!important}.channel-manager-page .reservation-block:hover .resize-handle,.channel-manager-page .reservation-block:hover .resize-handle.resize-left,.channel-manager-page .reservation-block:hover .resize-handle.resize-right{display:none!important;visibility:hidden!important;opacity:0!important}.channel-manager-page .reservation-block{cursor:default!important;box-shadow:none!important;border:none!important}.channel-manager-page .reservation-block:hover{cursor:default!important;transform:none!important;box-shadow:none!important;filter:none!important}.channel-manager-page .reservation-block:active{cursor:default!important;opacity:1!important}.channel-manager-page .calendar-cell{cursor:default!important}.channel-manager-page .reservation-block:before,.channel-manager-page .reservation-block:after{display:none!important}.channel-manager-page.scroll-mode .date-header,.channel-manager-page.scroll-mode .calendar-cell{min-width:calc((100vw - 200px) / 31)!important;max-width:calc((100vw - 200px) / 31)!important;flex:0 0 calc((100vw - 200px) / 31)!important}.channel-manager-page.scroll-mode .date-headers,.channel-manager-page.scroll-mode .room-row,.channel-manager-page.scroll-mode .room-type-header-row{width:fit-content!important;min-width:100%!important}.channel-manager-page.scroll-mode .occupancy-calendar-grid{overflow-x:auto!important}.channel-manager-page.scroll-mode .room-type-section{width:fit-content!important;min-width:100%!important}.channel-manager-page .room-type-header-row{gap:0!important;background-color:#1f2937!important}.channel-manager-page .room-type-header-row .calendar-cell{border:none!important;border-right:none!important;border-left:none!important;margin:0!important;background-color:#1f2937!important}.channel-manager-page .room-type-header{border-right:1px solid #1f2937!important}.channel-manager-page .room-type-group .room-type-header{border-right-color:#1f2937!important}.channel-manager-page:not(.scroll-mode) .date-header,.channel-manager-page:not(.scroll-mode) .calendar-cell{min-width:0!important;max-width:none!important;flex:1 1 0!important}.channel-manager-page:not(.scroll-mode) .date-headers,.channel-manager-page:not(.scroll-mode) .room-row,.channel-manager-page:not(.scroll-mode) .room-type-header-row{width:100%!important}.channel-manager-page:not(.scroll-mode) .occupancy-calendar-grid{overflow-x:hidden!important;width:100%!important}.channel-manager-page .room-type-section{overflow:visible!important}.channel-manager-page .room-type-section .room-row{display:flex!important;width:100%!important}.channel-manager-page .room-type-section .room-row .calendar-cell{display:flex!important;align-items:center!important;justify-content:center!important}.channel-manager-page .calendar-nav-left{padding-left:0!important;margin-left:0!important}.channel-manager-page .cm-editable-cell:hover{background-color:#fef9c3!important;outline:1px solid #eab308!important}.channel-manager-page .cm-free-cell:hover{background-color:inherit!important;outline:none!important}.channel-manager-page .calendar-grid-wrapper{max-height:none!important;height:auto!important;overflow-y:visible!important}.channel-manager-page .calendar-container,.channel-manager-page .occupancy-calendar-grid{overflow:visible!important}.reservation-engine-page{background-color:#f5f5f5;min-height:100vh}.re-header{display:flex;justify-content:space-between;align-items:center;padding:16px 32px;background:#fff;box-shadow:0 2px 4px #00000014;position:sticky;top:0;z-index:100}.re-header-left{display:flex;align-items:center}.re-hotel-name{font-size:1.5rem;font-weight:700;color:#1f2937;margin:0}.re-header-right{display:flex;align-items:center;gap:12px}.re-dropdown-container{position:relative}.re-dropdown-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;font-size:.875rem;color:#374151;transition:all .2s}.re-dropdown-btn:hover{background:#e5e7eb}.re-dropdown-menu{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:120px;z-index:1000;overflow:hidden}.re-dropdown-item{display:block;width:100%;padding:10px 16px;text-align:left;background:none;border:none;cursor:pointer;font-size:.875rem;color:#374151;transition:background .2s}.re-dropdown-item:hover{background:#f3f4f6}.re-dropdown-item.active{background:#3b82f6;color:#fff}.re-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;max-height:300px;overflow:hidden}.re-gallery-item{overflow:hidden}.re-gallery-item img{width:100%;height:300px;object-fit:cover;transition:transform .3s}.re-gallery-item:hover img{transform:scale(1.05)}.re-info-bar{display:flex;justify-content:center;gap:32px;padding:20px 32px;background:#fff;border-bottom:1px solid #e5e7eb;flex-wrap:wrap}.re-info-item{display:flex;align-items:center;gap:10px;color:#6b7280;position:relative}.re-info-item.re-info-clickable{cursor:pointer;padding:8px 12px;border-radius:8px;transition:background .2s}.re-info-item.re-info-clickable:hover{background:#f3f4f6}.re-info-content{display:flex;flex-direction:column}.re-info-label{font-size:.75rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.re-info-value{font-size:.95rem;font-weight:600;color:#1f2937;display:flex;align-items:center;gap:4px}.re-info-value svg{color:#9ca3af}.re-date-picker{position:absolute;top:100%;left:0;margin-top:8px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 8px 24px #00000026;padding:16px;z-index:1000;min-width:280px}.re-picker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.re-picker-header span{font-weight:600;color:#1f2937;text-transform:capitalize}.re-picker-header button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#f3f4f6;border:none;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s}.re-picker-header button:hover{background:#e5e7eb;color:#1f2937}.re-picker-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px}.re-picker-day-name{text-align:center;font-size:.7rem;font-weight:600;color:#9ca3af;padding:4px 0}.re-picker-dates{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.re-picker-date{display:flex;align-items:center;justify-content:center;height:36px;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s;color:#374151}.re-picker-date:hover:not(.empty):not(.disabled){background:#dbeafe;color:#1e40af}.re-picker-date.empty{cursor:default}.re-picker-date.disabled{color:#d1d5db;cursor:not-allowed}.re-picker-date.selected{background:#3b82f6;color:#fff}.re-simple-dropdown{position:absolute;top:100%;left:0;margin-top:8px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 8px 24px #00000026;min-width:140px;max-height:250px;overflow-y:auto;z-index:1000}.re-dropdown-option{display:block;width:100%;padding:10px 16px;text-align:left;background:none;border:none;cursor:pointer;font-size:.875rem;color:#374151;transition:background .2s}.re-dropdown-option:hover{background:#f3f4f6}.re-dropdown-option.active{background:#3b82f6;color:#fff}.re-main-content{display:grid;grid-template-columns:1fr 340px;gap:24px;padding:24px 32px;max-width:1400px;margin:0 auto}.re-rooms-section{display:flex;flex-direction:column;gap:20px}.re-room-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:visible;position:relative;z-index:1}.re-room-card:first-child{z-index:10}.re-room-card:nth-child(2){z-index:9}.re-room-card:nth-child(3){z-index:8}.re-room-card:nth-child(4){z-index:7}.re-room-card:nth-child(5){z-index:6}.re-room-calendar-btn{position:absolute;top:12px;right:12px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;color:#6b7280;transition:all .2s;z-index:1}.re-room-calendar-btn:hover{background:#3b82f6;color:#fff;border-color:#3b82f6}.re-room-content{display:grid;grid-template-columns:280px 1fr;gap:20px;padding:20px}.re-room-image{border-radius:8px;overflow:hidden}.re-room-image img{width:100%;height:200px;object-fit:cover}.re-room-details{display:flex;flex-direction:column;gap:10px}.re-room-name{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.re-room-capacity{display:flex;align-items:center;gap:6px;font-size:.875rem;color:#6b7280;margin:0}.re-room-amenities{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.re-amenity-tag{display:flex;align-items:center;gap:4px;padding:4px 10px;background:#f3f4f6;border-radius:4px;font-size:.75rem;color:#4b5563}.re-room-description{font-size:.875rem;color:#6b7280;line-height:1.5;margin:0}.re-room-footer{background:#f9fafb;border-top:1px solid #e5e7eb;padding:16px 20px;overflow:visible;position:relative;z-index:10}.re-price-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.re-price-name{font-size:.875rem;font-weight:600;color:#1f2937}.re-price-type{font-size:.75rem;padding:4px 8px;background:#dcfce7;color:#166534;border-radius:4px}.re-price-features{display:flex;gap:8px;margin-bottom:12px}.re-feature-tag{font-size:.7rem;padding:3px 8px;background:#dbeafe;color:#1e40af;border-radius:4px}.re-price-main{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.re-price-amount{font-size:1.5rem;font-weight:700;color:#1f2937}.re-price-guests{display:flex;gap:16px;font-size:.875rem;color:#6b7280}.re-guest-selector{position:relative}.re-guest-value{display:flex;align-items:center;gap:4px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s}.re-guest-value:hover{background:#e5e7eb;color:#1f2937}.re-guest-value svg{color:#9ca3af}.re-guest-dropdown{position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 8px 24px #00000026;min-width:120px;max-height:200px;overflow-y:auto;z-index:100}.re-guest-option{display:block;width:100%;padding:8px 12px;text-align:left;background:none;border:none;cursor:pointer;font-size:.8rem;color:#374151;transition:background .2s}.re-guest-option:hover{background:#f3f4f6}.re-guest-option.active{background:#3b82f6;color:#fff}.re-price-description{font-size:.8rem;color:#6b7280;margin:0 0 12px;line-height:1.4}.re-price-actions{display:flex;align-items:center;gap:16px}.re-link-btn{background:none;border:none;color:#3b82f6;font-size:.875rem;cursor:pointer;text-decoration:underline;padding:0}.re-link-btn:hover{color:#2563eb}.re-reserve-btn{margin-left:auto;padding:10px 24px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s}.re-reserve-btn:hover{background:#2563eb}.re-sidebar{display:flex;flex-direction:column;gap:16px}.re-sidebar-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px}.re-sidebar-title{font-size:.875rem;font-weight:700;color:#1f2937;margin:0 0 16px;text-transform:uppercase;letter-spacing:.5px}.re-summary-section{padding:12px 0;border-bottom:1px solid #e5e7eb}.re-summary-section:first-of-type{padding-top:0}.re-summary-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.re-summary-row:last-child{margin-bottom:0}.re-summary-label{font-size:.8rem;color:#6b7280}.re-summary-value{font-size:.85rem;font-weight:500;color:#1f2937}.re-summary-value.re-highlight{color:#3b82f6;font-weight:600}.re-summary-room-info{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.re-room-title{font-size:.9rem;font-weight:600;color:#1f2937}.re-room-plan{font-size:.75rem;color:#6b7280}.re-summary-guests{font-size:.8rem;color:#4b5563}.re-summary-pricing{border-bottom:none}.re-summary-total-row{padding-top:8px;margin-top:8px;border-top:1px dashed #e5e7eb}.re-total-amount{font-size:1.1rem;font-weight:700;color:#1f2937}.re-summary-note{font-size:.65rem;color:#9ca3af;margin:8px 0 16px;font-style:italic}.re-checkout-btn{width:100%;padding:12px 16px;background:#22c55e;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.re-checkout-btn:hover{background:#16a34a}.re-summary-empty{text-align:center;padding:24px 16px}.re-empty-icon{font-size:2.5rem;margin-bottom:12px}.re-summary-empty p{font-size:.9rem;font-weight:500;color:#374151;margin:0 0 4px}.re-summary-empty span{font-size:.75rem;color:#9ca3af}.re-reserve-btn.selected{background:#22c55e}.re-reserve-btn.selected:hover{background:#16a34a}.re-map-card{padding:16px;overflow:hidden}.re-map-container{border-radius:8px;overflow:hidden;margin-bottom:12px}.re-map-container iframe{display:block}.re-map-address{display:flex;align-items:center;gap:8px;font-size:.85rem;color:#4b5563;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.re-map-address svg{color:#ef4444;flex-shrink:0}.re-map-buttons{display:flex;gap:8px}.re-map-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;font-size:.75rem;font-weight:500;color:#374151;text-decoration:none;cursor:pointer;transition:all .2s;white-space:nowrap}.re-map-btn:hover{background:#e5e7eb;color:#1f2937}.re-map-btn svg{flex-shrink:0;color:#374151}.re-features-card h4{font-size:.9rem;font-weight:600;color:#1f2937;margin:0 0 12px}.re-features-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.re-features-list li{display:flex;align-items:center;gap:8px;font-size:.85rem;color:#374151}.re-features-list li svg{color:#22c55e}.re-modal-overlay{position:fixed;inset:0;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.re-modal{background:#fff;border-radius:12px;max-width:500px;width:100%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.re-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb}.re-modal-header h3{margin:0;font-size:1.1rem;font-weight:600;color:#1f2937}.re-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#f3f4f6;border:none;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s}.re-modal-close:hover{background:#e5e7eb;color:#1f2937}.re-modal-content{padding:20px;overflow-y:auto}.re-modal-content h4{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 8px}.re-modal-content h5{font-size:.9rem;font-weight:600;color:#374151;margin:16px 0 8px}.re-modal-content p{font-size:.875rem;color:#6b7280;line-height:1.5;margin:0 0 12px}.re-modal-content ul{margin:0;padding-left:20px}.re-modal-content li{font-size:.875rem;color:#6b7280;margin-bottom:6px}.re-room-detail-modal{max-width:700px;max-height:90vh}.re-room-clickable{cursor:pointer;transition:transform .2s,box-shadow .2s}.re-room-clickable:hover{transform:translateY(-2px)}.re-room-gallery{margin-bottom:20px}.re-gallery-main{position:relative;border-radius:8px;overflow:hidden;margin-bottom:12px}.re-gallery-main img{width:100%;height:350px;object-fit:cover}.re-gallery-nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffffe6;border:none;border-radius:50%;cursor:pointer;color:#1f2937;transition:all .2s;box-shadow:0 2px 8px #00000026}.re-gallery-nav:hover{background:#fff;transform:translateY(-50%) scale(1.1)}.re-gallery-prev{left:12px}.re-gallery-next{right:12px}.re-gallery-counter{position:absolute;bottom:12px;right:12px;padding:6px 12px;background:#0009;color:#fff;border-radius:4px;font-size:.8rem}.re-gallery-thumbs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.re-gallery-thumb{flex-shrink:0;width:80px;height:60px;border-radius:6px;overflow:hidden;cursor:pointer;opacity:.6;transition:all .2s;border:2px solid transparent}.re-gallery-thumb:hover{opacity:.9}.re-gallery-thumb.active{opacity:1;border-color:#3b82f6}.re-gallery-thumb img{width:100%;height:100%;object-fit:cover}.re-room-modal-info{display:flex;flex-direction:column;gap:20px}.re-room-modal-capacity{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#f3f4f6;border-radius:8px;font-size:.9rem;font-weight:500;color:#374151}.re-room-modal-amenities h4,.re-room-modal-description h4{margin-bottom:12px}.re-amenities-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.re-amenity-item{display:flex;align-items:center;gap:8px;font-size:.85rem;color:#4b5563}.re-amenity-item svg{color:#22c55e;flex-shrink:0}.re-room-modal-description p{line-height:1.6}.re-room-modal-specs{display:flex;flex-direction:column;gap:8px;padding:16px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.re-spec-item{display:flex;justify-content:space-between;align-items:center}.re-spec-label{font-size:.85rem;color:#6b7280}.re-spec-value{font-size:.9rem;font-weight:600;color:#1f2937}.re-calendar-modal{max-width:400px}.re-calendar-modal-wide{max-width:450px}.re-calendar-selection-info{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px;background:#f9fafb;border-radius:8px;margin-bottom:16px}.re-selection-item{text-align:center;padding:8px 16px;border-radius:6px;transition:all .2s}.re-selection-item.active{background:#3b82f6;color:#fff}.re-selection-label{display:block;font-size:.7rem;color:#6b7280;margin-bottom:4px}.re-selection-item.active .re-selection-label{color:#fffc}.re-selection-value{font-size:.9rem;font-weight:600;color:#1f2937}.re-selection-item.active .re-selection-value{color:#fff}.re-selection-arrow{color:#9ca3af;font-size:1.2rem}.re-calendar-dates-with-price{gap:6px}.re-calendar-date-selectable{flex-direction:column;height:52px;padding:4px;cursor:pointer}.re-calendar-date-selectable.occupied{cursor:not-allowed;opacity:.6}.re-date-day{font-size:.85rem;font-weight:500}.re-date-price{font-size:.6rem;color:#22c55e;font-weight:500}.re-calendar-date.selected-checkin{background:#3b82f6!important;color:#fff!important}.re-calendar-date.selected-checkin .re-date-price{color:#fffc}.re-calendar-date.selected-checkout{background:#1d4ed8!important;color:#fff!important}.re-calendar-date.selected-checkout .re-date-price{color:#fffc}.re-calendar-date.in-range{background:#dbeafe!important;color:#1e40af!important}.re-calendar-date.in-range .re-date-price{color:#3b82f6}.re-calendar-grid{display:flex;flex-direction:column;gap:12px}.re-calendar-header{text-align:center;font-weight:600;color:#1f2937}.re-calendar-nav-header{display:flex;justify-content:space-between;align-items:center;padding:0 8px}.re-calendar-nav-header span{text-transform:capitalize}.re-calendar-nav-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#f3f4f6;border:none;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s}.re-calendar-nav-btn:hover{background:#e5e7eb;color:#1f2937}.re-calendar-date.empty{background:transparent;cursor:default}.re-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.re-calendar-day-name{text-align:center;font-size:.75rem;font-weight:600;color:#6b7280;padding:8px 0}.re-calendar-dates{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.re-calendar-date{display:flex;align-items:center;justify-content:center;height:36px;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s}.re-calendar-date.available{background:#dcfce7;color:#166534}.re-calendar-date.occupied{background:#fee2e2;color:#991b1b}.re-calendar-legend{display:flex;justify-content:center;gap:24px;margin-top:8px}.re-legend-item{display:flex;align-items:center;gap:6px;font-size:.8rem;color:#6b7280}.re-legend-dot{width:12px;height:12px;border-radius:4px}.re-legend-item.available .re-legend-dot{background:#dcfce7;border:1px solid #166534}.re-legend-item.occupied .re-legend-dot{background:#fee2e2;border:1px solid #991b1b}.re-checkout-section{flex:1}.re-checkout-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.re-checkout-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px;overflow:visible}.re-checkout-card-title{font-size:1.1rem;font-weight:600;color:#1f2937;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid #3b82f6}.re-payment-info-box{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:20px}.re-info-icon{color:#1f2937;flex-shrink:0;margin-top:2px}.re-payment-note{font-size:.8rem;color:#6b7280;margin:0;line-height:1.5}.re-card-input-wrapper{position:relative;display:flex;align-items:center}.re-card-input-wrapper input{flex:1;padding-right:60px}.re-card-type-icon{position:absolute;right:12px;display:flex;align-items:center}.re-visa-icon{background:linear-gradient(135deg,#1a1f71,#2557d6);color:#fff;font-size:.65rem;font-weight:700;padding:4px 8px;border-radius:4px;letter-spacing:1px}.re-mastercard-icon{background:linear-gradient(135deg,#eb001b,#f79e1b);color:#fff;font-size:.65rem;font-weight:700;padding:4px 8px;border-radius:4px}.re-default-card-icon{color:#9ca3af}.re-checkout-form{display:flex;flex-direction:column;gap:16px}.re-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.re-form-group{display:flex;flex-direction:column;gap:6px}.re-form-group label{font-size:.8rem;font-weight:500;color:#374151}.re-form-group input,.re-form-group textarea,.re-form-group select{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;transition:border-color .2s}.re-form-group input:focus,.re-form-group textarea:focus,.re-form-group select:focus{outline:none;border-color:#3b82f6}.re-form-group textarea{resize:vertical;min-height:80px}.re-phone-input{display:flex;align-items:center;border:1px solid #d1d5db;border-radius:6px;overflow:visible}.re-phone-input input{border:none;flex:1;padding:10px 12px}.re-phone-input input:focus{outline:none}.re-expiry-inputs{display:flex;gap:8px}.re-search-select{position:relative;min-width:100px}.re-search-select-small{min-width:80px;flex:1}.re-search-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:.85rem;color:#374151;transition:all .2s}.re-search-select-trigger:hover{background:#e5e7eb}.re-search-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 8px 24px #00000026;z-index:1000;min-width:200px;overflow:hidden}.re-search-dropdown-small{min-width:100px}.re-dropdown-no-search{padding-top:0}.re-dropdown-no-search .re-search-options{max-height:180px}.re-search-input{width:100%;padding:10px 12px;border:none;border-bottom:1px solid #e5e7eb;font-size:.85rem;outline:none}.re-search-input:focus{background:#f9fafb}.re-search-options{max-height:200px;overflow-y:auto}.re-search-option{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;font-size:.85rem;color:#374151;transition:background .2s}.re-search-option:hover{background:#f3f4f6}.re-search-option.active{background:#3b82f6;color:#fff}.re-option-code{margin-left:auto;color:#9ca3af;font-size:.75rem}.re-search-option.active .re-option-code{color:#ffffffb3}.re-form-group-overflow{overflow:visible;position:relative;z-index:100}.re-cvv-hint{font-size:.7rem;color:#9ca3af}.re-ssl-notice{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin-bottom:24px}.re-ssl-icon{font-size:1.5rem}.re-ssl-notice p{font-size:.8rem;color:#166534;margin:0;line-height:1.5}.re-checkout-actions{display:flex;justify-content:space-between;gap:16px}.re-back-btn{padding:12px 24px;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.re-back-btn:hover{background:#e5e7eb}.re-complete-btn{padding:12px 32px;background:#22c55e;color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.re-complete-btn:hover{background:#16a34a}.re-error-modal{max-width:400px}.re-error-header{background:#fef2f2;border-bottom:1px solid #fecaca}.re-error-header h3{color:#dc2626}.re-error-content{text-align:center;padding:32px 24px}.re-error-icon{font-size:3rem;margin-bottom:16px}.re-error-message{font-size:1rem;color:#374151;margin:0 0 8px}.re-error-code{font-size:.8rem;color:#9ca3af;margin:0 0 24px}.re-error-close-btn{padding:10px 32px;background:#dc2626;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.re-error-close-btn:hover{background:#b91c1c}.re-confirmation-modal{max-width:600px;max-height:90vh;overflow-y:auto}.re-confirmation-content{padding:32px;text-align:center}.re-confirmation-page{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px;text-align:center;max-width:100%}.re-confirmation-page h2{font-size:1.5rem;font-weight:700;color:#166534;margin:0 0 8px}.re-confirmation-icon{font-size:4rem;margin-bottom:16px}.re-confirmation-content h2{font-size:1.5rem;font-weight:700;color:#166534;margin:0 0 8px}.re-confirmation-number{font-size:1rem;color:#6b7280;margin:0 0 24px}.re-confirmation-number strong{color:#1f2937;font-family:monospace;font-size:1.1rem}.re-confirmation-details{text-align:left;background:#f9fafb;border-radius:8px;padding:20px;margin-bottom:20px}.re-confirmation-section{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.re-confirmation-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.re-confirmation-section h4{font-size:.85rem;font-weight:600;color:#374151;margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.re-confirmation-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:.9rem}.re-confirmation-row span:first-child{color:#6b7280}.re-confirmation-row span:last-child{color:#1f2937;font-weight:500}.re-confirmation-total{background:#ecfdf5;margin:0 -20px -20px;padding:16px 20px;border-radius:0 0 8px 8px}.re-total-price{font-size:1.2rem!important;font-weight:700!important;color:#166534!important}.re-confirmation-email{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:24px}.re-email-icon{font-size:1.5rem}.re-confirmation-email p{font-size:.85rem;color:#1e40af;margin:0}.re-confirmation-actions{display:flex;justify-content:center;gap:12px}.re-print-btn{display:flex;align-items:center;gap:6px;padding:10px 20px;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s}.re-print-btn svg{color:#1f2937}.re-print-btn:hover{background:#e5e7eb}.re-home-btn{padding:10px 24px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.re-home-btn:hover{background:#2563eb}.re-footer{margin-top:24px;padding:8px 0;border-top:1px solid #e5e7eb;background:#f9fafb}.re-footer-content{display:flex;flex-direction:column;align-items:center;gap:2px}.re-footer-logo{display:flex;align-items:center}.re-chexta-logo-img{height:24px;width:auto}.re-footer-slogan{font-size:.8rem;color:#6b7280;margin:4px 0 0;font-style:italic}.re-footer-text{font-size:.5rem;color:#1f2937;margin:0;letter-spacing:2px;text-transform:uppercase}@media(max-width:1024px){.re-main-content{grid-template-columns:1fr}.re-sidebar{order:-1}.re-checkout-cards{grid-template-columns:1fr}}@media(max-width:768px){.re-header{padding:12px 16px}.re-hotel-name{font-size:1.2rem}.re-gallery{grid-template-columns:1fr}.re-gallery-item img{height:200px}.re-info-bar{padding:16px;gap:16px}.re-main-content{padding:16px}.re-room-content{grid-template-columns:1fr}.re-room-image img{height:180px}}.res-builder-page{display:grid;grid-template-columns:400px 1fr;height:calc(100vh - 60px);background:#f3f4f6}.res-builder-settings{background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;overflow:hidden}.res-builder-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb}.res-builder-header h1{font-size:1.1rem;font-weight:600;color:#1f2937;margin:0}.res-save-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .2s}.res-save-btn:hover{background:#2563eb}.res-builder-tabs{display:flex;gap:4px;flex:1;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.res-builder-tabs::-webkit-scrollbar{display:none}.res-builder-tabs-container{display:flex;align-items:center;gap:4px;padding:12px 8px;border-bottom:1px solid #e5e7eb}.res-tabs-arrow{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;flex-shrink:0;transition:all .2s}.res-tabs-arrow:hover:not(:disabled){background:#e5e7eb;color:#1f2937}.res-tabs-arrow:disabled{opacity:.4;cursor:not-allowed}.res-builder-tab{display:flex;align-items:center;gap:6px;padding:8px 12px;background:transparent;border:none;border-radius:6px;font-size:.8rem;color:#6b7280;cursor:pointer;white-space:nowrap;transition:all .2s}.res-builder-tab:hover{background:#f3f4f6;color:#1f2937}.res-builder-tab.active{background:#eff6ff;color:#3b82f6;font-weight:500}.res-builder-panel{flex:1;overflow-y:auto;padding:20px;position:relative}.res-builder-panel::-webkit-scrollbar{width:8px}.res-builder-panel::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.res-builder-panel::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#3b82f6,#8b5cf6);border-radius:4px}.res-builder-panel::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#2563eb,#7c3aed)}.res-scroll-indicator{position:sticky;bottom:0;left:0;right:0;display:flex;flex-direction:column;align-items:center;padding:12px 0;background:linear-gradient(to top,#fff,#ffffffe6,#fff0);pointer-events:none;animation:bounce 2s infinite}.res-scroll-indicator span{font-size:.7rem;color:#6b7280;margin-bottom:4px}.res-scroll-indicator svg{color:#3b82f6}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-6px)}60%{transform:translateY(-3px)}}.res-scroll-indicator.hidden{display:none}.res-builder-section h3{font-size:.95rem;font-weight:600;color:#1f2937;margin:0 0 16px}.res-form-group{margin-bottom:16px}.res-form-group label{display:block;font-size:.8rem;font-weight:500;color:#374151;margin-bottom:6px}.res-form-group input[type=text],.res-form-group input[type=email],.res-form-group input[type=number],.res-form-group select,.res-form-group textarea{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.85rem;color:#1f2937;background:#fff;transition:border-color .2s}.res-form-group input:focus,.res-form-group select:focus,.res-form-group textarea:focus{outline:none;border-color:#3b82f6}.res-color-input{display:flex;gap:8px}.res-color-input input[type=color]{width:40px;height:36px;padding:2px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer}.res-color-input input[type=text]{flex:1}.res-checkbox-group{margin-bottom:12px}.res-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer}.res-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#3b82f6}.res-checkbox span{font-size:.85rem;color:#374151}.res-gallery-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px}.res-gallery-item{position:relative;aspect-ratio:16/9;border-radius:6px;overflow:hidden}.res-gallery-item img{width:100%;height:100%;object-fit:cover}.res-gallery-remove{position:absolute;top:4px;right:4px;width:24px;height:24px;background:#ef4444e6;color:#fff;border:none;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s}.res-gallery-item:hover .res-gallery-remove{opacity:1}.res-add-image-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;background:#f3f4f6;border:2px dashed #d1d5db;border-radius:6px;color:#6b7280;font-size:.85rem;cursor:pointer;transition:all .2s}.res-add-image-btn:hover{background:#e5e7eb;border-color:#9ca3af}.res-builder-preview{display:flex;flex-direction:column;padding:20px;overflow:hidden}.res-preview-label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px}.res-preview-container{flex:1;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000001a;display:flex;flex-direction:column}.res-preview-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px}.res-preview-header h2{font-size:1rem;font-weight:600;margin:0}.res-preview-header-right{display:flex;align-items:center;gap:12px;font-size:.75rem}.res-preview-gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding:0 4px}.res-preview-gallery-item{aspect-ratio:16/9;overflow:hidden}.res-preview-gallery-item img{width:100%;height:100%;object-fit:cover}.res-preview-infobar{display:flex;justify-content:space-around;padding:12px 16px;margin:12px;border-radius:8px;box-shadow:0 1px 3px #0000001a}.res-preview-info-item{display:flex;align-items:center;gap:8px}.res-preview-info-item>div{display:flex;flex-direction:column}.res-preview-label-text{font-size:.6rem;color:#6b7280}.res-preview-value{font-size:.7rem;font-weight:500;color:#1f2937}.res-preview-content{display:grid;grid-template-columns:1fr 200px;gap:12px;padding:0 12px;flex:1;overflow:hidden}.res-preview-rooms{overflow-y:auto}.res-preview-room-card{display:flex;gap:12px;padding:12px;border-radius:8px;box-shadow:0 1px 3px #0000001a}.res-preview-room-image{width:80px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:6px;flex-shrink:0}.res-preview-room-info{flex:1}.res-preview-room-info h4{font-size:.8rem;font-weight:600;margin:0 0 4px;color:#1f2937}.res-preview-room-info p{font-size:.65rem;color:#6b7280;margin:0 0 6px}.res-preview-price{font-size:.85rem;font-weight:700;color:#1f2937;margin-bottom:8px}.res-preview-btn{padding:6px 12px;color:#fff;border:none;border-radius:4px;font-size:.7rem;font-weight:500;cursor:pointer}.res-preview-sidebar{padding:12px;border-radius:8px;box-shadow:0 1px 3px #0000001a}.res-preview-sidebar h4{font-size:.7rem;font-weight:600;color:#1f2937;margin:0 0 12px;letter-spacing:.5px}.res-preview-summary-row{display:flex;justify-content:space-between;font-size:.65rem;padding:4px 0;border-bottom:1px solid #f3f4f6}.res-preview-summary-row span:first-child{color:#6b7280}.res-preview-summary-row span:last-child{color:#1f2937;font-weight:500}.res-preview-complete-btn{width:100%;margin-top:12px;padding:8px;color:#fff;border:none;border-radius:6px;font-size:.7rem;font-weight:500;cursor:pointer}.res-preview-footer{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px;background:#f9fafb;border-top:1px solid #e5e7eb}.res-preview-footer-logo{height:16px;width:auto}.res-preview-footer span{font-size:.5rem;color:#1f2937;letter-spacing:1px;text-transform:uppercase}.res-embed-description{font-size:.85rem;color:#6b7280;margin:0 0 16px;line-height:1.5}.res-embed-code-container{position:relative;background:#1f2937;border-radius:8px;padding:16px;margin-bottom:16px}.res-embed-code{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;color:#e5e7eb;white-space:pre-wrap;word-break:break-all;margin:0;line-height:1.6}.res-copy-btn{position:absolute;top:8px;right:8px;display:flex;align-items:center;gap:6px;padding:6px 12px;background:#374151;color:#e5e7eb;border:none;border-radius:4px;font-size:.75rem;cursor:pointer;transition:all .2s}.res-copy-btn:hover{background:#4b5563}.res-embed-info{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:12px 16px}.res-embed-info p{font-size:.8rem;color:#1e40af;margin:0 0 8px}.res-embed-info ul{margin:0;padding-left:20px}.res-embed-info li{font-size:.8rem;color:#3b82f6;margin-bottom:4px}.res-toast{position:fixed;bottom:24px;right:24px;display:flex;align-items:center;gap:10px;padding:14px 20px;background:#166534;color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;font-size:.9rem;font-weight:500;z-index:9999;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media(max-width:1024px){.res-builder-page{grid-template-columns:1fr;height:auto}.res-builder-settings{border-right:none;border-bottom:1px solid #e5e7eb}.res-builder-preview{min-height:500px}}.task-management-page{padding:1.5rem;background-color:#f9fafb;min-height:calc(100vh - 60px)}.task-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.header-title{display:flex;align-items:center;gap:1rem}.header-title svg{color:#1f2937}.header-title h1{margin:0;font-size:1.5rem;font-weight:700;color:#1f2937}.header-subtitle{margin:.25rem 0 0;font-size:.875rem;color:#6b7280}.new-task-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#1f2937,#374151);color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.new-task-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.task-filters{background:#fff;border-radius:.75rem;padding:1.25rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a}.filter-row{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.filter-group label{display:flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;color:#374151}.filter-group label svg{color:#6b7280}.filter-group select,.filter-group input[type=date]{padding:.625rem .75rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;color:#1f2937;background:#fff;cursor:pointer;transition:all .2s ease}.filter-group select:focus,.filter-group input[type=date]:focus{outline:none;border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.date-range-inputs{display:flex;align-items:center;gap:.5rem}.date-range-inputs span{color:#9ca3af}.date-range-inputs input{width:140px}.search-group{flex:1;min-width:250px}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input-wrapper svg{position:absolute;left:.75rem;color:#9ca3af}.search-input-wrapper input{width:100%;padding:.625rem .75rem .625rem 2.5rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;color:#1f2937;transition:all .2s ease}.search-input-wrapper input:focus{outline:none;border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.task-list-container{background:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.task-list-header{padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.task-list-header h3{margin:0;font-size:1rem;font-weight:600;color:#1f2937}.task-table-wrapper{overflow-x:auto}.task-table{width:100%;border-collapse:collapse}.task-table th{padding:.875rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.025em;background:#f9fafb;border-bottom:1px solid #e5e7eb;white-space:nowrap}.task-table td{padding:.875rem 1rem;font-size:.875rem;color:#374151;border-bottom:1px solid #e5e7eb;vertical-align:middle}.task-table tbody tr:hover{background:#f9fafb}.task-table tbody tr:last-child td{border-bottom:none}.id-cell{font-weight:600;color:#3b82f6!important}.job-cell{font-weight:500;color:#1f2937!important}.room-cell{font-weight:600;color:#1f2937!important}.status-badge,.importance-badge{display:inline-block;padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500}.actions-cell{display:flex;gap:.25rem}.action-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:.375rem;background:transparent;cursor:pointer;transition:all .15s ease}.action-icon.view{color:#3b82f6}.action-icon.view:hover{background:#dbeafe}.action-icon.edit{color:#f59e0b}.action-icon.edit:hover{background:#fef3c7}.action-icon.complete{color:#22c55e}.action-icon.complete:hover{background:#dcfce7}.action-icon.delete{color:#ef4444}.action-icon.delete:hover{background:#fef2f2}.empty-row{text-align:center;padding:3rem 1rem!important;color:#9ca3af}.empty-row svg{margin-bottom:1rem;opacity:.5}.empty-row p{margin:0;font-size:.875rem}.modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:.75rem;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px #00000040}.modal-content.view-modal{max-width:700px}.modal-content.delete-modal{max-width:400px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb;background:#f9fafb}.modal-header h3{display:flex;align-items:center;gap:.5rem;margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.modal-header.delete-header{background:#fef2f2;border-bottom-color:#fecaca}.modal-header.delete-header h3{color:#dc2626}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:.375rem;background:transparent;color:#6b7280;cursor:pointer;transition:all .15s ease}.modal-close:hover{background:#e5e7eb;color:#1f2937}.modal-body{padding:1.5rem}.modal-body p{margin:0;font-size:.938rem;color:#374151;line-height:1.6}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.813rem;font-weight:600;color:#374151}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;color:#1f2937;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#1f2937;box-shadow:0 0 0 3px #1f29371a}.form-group textarea{resize:vertical;font-family:inherit}.btn-primary{padding:.75rem 1.5rem;background:linear-gradient(135deg,#1f2937,#374151);color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.btn-cancel{padding:.75rem 1.5rem;background:#f3f4f6;color:#4b5563;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-cancel:hover{background:#e5e7eb;color:#1f2937}.btn-delete{padding:.75rem 1.5rem;background:#dc2626;color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.375rem;padding:.75rem;background:#f9fafb;border-radius:.5rem}.detail-item.full-width{grid-column:1 / -1}.detail-label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase}.detail-value{font-size:.875rem;font-weight:500;color:#1f2937}@media(max-width:1024px){.filter-row{flex-direction:column}.filter-group{width:100%}.date-range-inputs{flex-wrap:wrap}.date-range-inputs input{width:100%}}@media(max-width:768px){.task-management-page{padding:1rem}.task-header{flex-direction:column;align-items:flex-start;gap:1rem}.new-task-btn{width:100%;justify-content:center}.form-row,.detail-grid{grid-template-columns:1fr}}.room-status-page{display:flex;gap:1.5rem;padding:1.5rem;min-height:calc(100vh - 80px)}.room-status-sidebar{width:20%;min-width:240px;max-width:280px;display:flex;flex-direction:column;gap:1rem}.filter-card{background:#fff;border-radius:.5rem;padding:1rem;box-shadow:0 1px 3px #0000001a}.filter-title{font-size:.8rem;font-weight:600;color:#374151;margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.filter-options{display:flex;flex-direction:column;gap:.5rem}.filter-options.compact{gap:.5rem}.filter-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.75rem;color:#4b5563}.filter-checkbox input[type=checkbox]{display:none}.filter-checkbox .custom-checkbox{width:16px;height:16px;border:1px solid #d1d5db;border-radius:.25rem;display:flex;align-items:center;justify-content:center;background:#fff;transition:all .2s ease;flex-shrink:0}.filter-checkbox input[type=checkbox]:checked+.custom-checkbox{background:#1a1a1a;border-color:#1a1a1a}.filter-checkbox .custom-checkbox svg{display:none;color:#fff}.filter-checkbox input[type=checkbox]:checked+.custom-checkbox svg{display:block}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.filter-input-group{margin-bottom:.75rem}.filter-input-group>label{display:block;font-size:.7rem;font-weight:500;color:#374151;margin-bottom:.25rem}.filter-input-group .filter-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.75rem;color:#4b5563;margin-bottom:0}.filter-input-group .filter-options{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.filter-input-group input[type=text]{width:100%;padding:.4rem .5rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.75rem;color:#374151;outline:none}.filter-input-group input[type=text]:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.room-status-content{flex:1;display:flex;flex-direction:column;gap:1rem}.room-status-header{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:1rem 1.5rem;border-radius:.5rem;box-shadow:0 1px 3px #0000001a}.room-status-header h2{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.view-toggle{display:flex;gap:.5rem}.view-btn{padding:.5rem;border:1px solid #e5e7eb;border-radius:.375rem;background:#fff;color:#6b7280;cursor:pointer;transition:all .2s ease}.view-btn:hover{background:#f3f4f6}.view-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.room-cards-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1rem}.room-cards-grid.compact{grid-template-columns:repeat(10,1fr);gap:.5rem}.room-card{border-radius:.5rem;box-shadow:0 1px 3px #0000001a;border-top:3px solid #10b981;overflow:hidden;transition:all .2s ease}.room-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.room-card.selected{box-shadow:0 0 0 2px #1a1a1a;background-image:repeating-linear-gradient(45deg,transparent,transparent 4px,rgba(26,26,26,.08) 4px,rgba(26,26,26,.08) 8px)!important}.room-card-header{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:transparent;border-bottom:1px solid rgba(0,0,0,.08);position:relative}.room-checkbox{position:relative;cursor:pointer}.room-checkbox input{position:absolute;opacity:0;cursor:pointer}.room-checkbox .checkmark{width:18px;height:18px;border:1px solid #d1d5db;border-radius:.25rem;display:flex;align-items:center;justify-content:center;background:#fff;transition:all .2s ease}.room-checkbox input:checked+.checkmark{background:#1a1a1a;border-color:#1a1a1a;color:#fff}.room-status-select{flex:1;display:flex;align-items:center;gap:.35rem;padding:.25rem .5rem;border:1px solid #e5e7eb;border-radius:.25rem;background:#fff;cursor:pointer;font-size:.7rem}.status-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-text{flex:1;color:#374151}.room-menu-btn{padding:.25rem;border:none;background:transparent;color:#6b7280;cursor:pointer;border-radius:.25rem;transition:all .2s ease}.room-menu-btn:hover{background:#e5e7eb;color:#374151}.room-dropdown-menu{position:absolute;top:100%;right:.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:.375rem;box-shadow:0 4px 12px #00000026;z-index:100;min-width:150px}.room-dropdown-menu button{display:block;width:100%;padding:.5rem .75rem;border:none;background:transparent;text-align:left;font-size:.75rem;color:#374151;cursor:pointer;transition:background .2s ease}.room-dropdown-menu button:hover{background:#f3f4f6}.room-card-body{padding:1rem;text-align:center;background:transparent}.room-number{font-size:1.5rem;font-weight:700;color:#1f2937;text-transform:uppercase;margin-bottom:.25rem}.room-bed-type{font-size:.75rem;color:#6b7280;margin-bottom:.5rem}.room-guest-name{font-size:.8rem;font-weight:500;color:#374151;min-height:1.2rem}.room-card-footer{padding:.5rem;border-top:1px solid rgba(0,0,0,.08);display:flex;justify-content:center;background:transparent}.add-btn{width:32px;height:32px;border:1px dashed #d1d5db;border-radius:50%;background:transparent;color:#9ca3af;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.add-btn:hover{border-color:#3b82f6;color:#3b82f6;background:#eff6ff}.room-card.compact{padding:0;border-top-width:2px;position:relative}.room-card-compact{padding:.75rem;text-align:center;background:transparent}.compact-room-number{font-size:1rem;font-weight:700;color:#1f2937}.room-card.compact{position:relative;overflow:visible}.room-card.compact:before{content:"";position:absolute;inset:-30px;z-index:-1;pointer-events:none}.room-card.compact:hover{transform:none;z-index:1000}.room-card.compact:hover:before{pointer-events:auto}.room-card.compact .room-card-expanded{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.9);width:200px;border-radius:.5rem;box-shadow:0 15px 50px #0000004d;z-index:1001;overflow:visible;border-top:3px solid;opacity:0;visibility:hidden;transition:opacity .35s ease,transform .35s ease,visibility .35s ease}.room-card.compact:hover .room-card-expanded{opacity:1;visibility:visible;transform:translate(-50%,-50%) scale(1)}.room-card.compact:hover .room-card-compact{opacity:0;visibility:hidden}.room-card.compact .room-card-expanded .room-card-header{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:transparent;border-bottom:1px solid rgba(0,0,0,.08);position:relative}.room-card.compact .room-card-expanded .room-checkbox .checkmark{width:18px;height:18px;border:1px solid #d1d5db;border-radius:.25rem;display:flex;align-items:center;justify-content:center;background:#fff}.room-card.compact .room-card-expanded .room-status-select{flex:1;min-width:0}.room-card.compact .room-card-expanded .room-status-select>div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-card.compact .room-card-expanded .status-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:80px;font-size:.65rem}.room-card.compact .room-card-expanded .room-menu-btn{padding:.25rem;border:none;background:transparent;color:#6b7280;cursor:pointer;border-radius:.25rem}.room-card.compact .room-card-expanded .room-menu-btn:hover{background:#e5e7eb;color:#374151}.room-card.compact .room-card-expanded .room-card-body{padding:1rem;text-align:center;background:transparent}.room-card.compact .room-card-expanded .room-number{font-size:1.5rem;font-weight:700;color:#1f2937;text-transform:uppercase;margin-bottom:.25rem}.room-card.compact .room-card-expanded .room-bed-type{font-size:.75rem;color:#6b7280;margin-bottom:.5rem}.room-card.compact .room-card-expanded .room-guest-name{font-size:.8rem;font-weight:500;color:#374151;min-height:1.2rem}.room-card.compact .room-card-expanded .room-card-footer{padding:.5rem;border-top:1px solid rgba(0,0,0,.08);display:flex;justify-content:center;background:transparent}.room-card.compact .room-card-expanded .add-btn{width:32px;height:32px;border:1px dashed #d1d5db;border-radius:50%;background:transparent;color:#9ca3af;cursor:pointer;display:flex;align-items:center;justify-content:center}.room-card.compact .room-card-expanded .add-btn:hover{border-color:#3b82f6;color:#3b82f6;background:#eff6ff}@media(max-width:1200px){.room-cards-grid{grid-template-columns:repeat(5,1fr)}.room-cards-grid.compact{grid-template-columns:repeat(7,1fr)}}@media(max-width:992px){.room-cards-grid{grid-template-columns:repeat(4,1fr)}.room-cards-grid.compact{grid-template-columns:repeat(6,1fr)}}.header-left{display:flex;align-items:center;gap:1rem}.select-all-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:1px solid #e5e7eb;border-radius:.5rem;background:#fff;color:#6b7280;font-size:.875rem;cursor:pointer;transition:all .2s ease}.select-all-btn:hover{background:#f3f4f6;border-color:#1a1a1a;color:#1a1a1a}.select-all-btn.active{background:#1a1a1a;border-color:#1a1a1a;color:#fff}.status-modal-overlay{position:fixed;inset:0;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000}.status-modal{background:#fff;border-radius:1rem;box-shadow:0 20px 50px #0000004d;width:100%;max-width:420px;overflow:hidden;animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.status-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.status-modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.modal-close-btn{padding:.5rem;border:none;background:transparent;color:#6b7280;cursor:pointer;border-radius:.375rem;transition:all .2s ease}.status-modal-body{padding:1.5rem}.selected-count{margin:0 0 1rem;font-size:.875rem;color:#6b7280;text-align:center}.status-options{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.status-option{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:.5rem;background:#fff;cursor:pointer;transition:all .2s ease;font-size:.875rem;color:#374151}.status-option:hover{border-color:#3b82f6;background:#f8fafc}.status-option.selected{border-color:#3b82f6;background:#eff6ff}.status-dot-large{width:12px;height:12px;border-radius:50%;flex-shrink:0}.status-modal-footer{display:flex;gap:.75rem;padding:1.25rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.modal-cancel-btn{flex:1;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:.5rem;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.modal-cancel-btn:hover{background:#f3f4f6}.modal-confirm-btn{flex:1;padding:.75rem 1rem;border:none;border-radius:.5rem;background:#1a1a1a;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.modal-confirm-btn:hover{background:#333}.modal-confirm-btn:disabled{background:#9ca3af;cursor:not-allowed}.confirm-modal{max-width:380px}.confirm-message{text-align:center;font-size:.95rem;color:#374151;line-height:1.6;margin:0;padding:.5rem 0}.reservation-modal{max-width:500px}.reservation-form{display:flex;flex-direction:column;gap:1rem}.form-row{display:flex;gap:1rem}.form-row.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.35rem;flex:1}.form-group label{font-size:.8rem;font-weight:500;color:#374151}.form-group input,.form-group textarea{padding:.625rem .75rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.875rem;color:#1f2937;outline:none;transition:all .2s ease}.form-group input:focus,.form-group textarea:focus{border-color:#1a1a1a;box-shadow:0 0 0 2px #1a1a1a1a}@media(max-width:1400px){.room-cards-grid{grid-template-columns:repeat(6,1fr)}.room-cards-grid.compact{grid-template-columns:repeat(8,1fr)}}@media(max-width:1199px){.room-cards-grid{grid-template-columns:repeat(5,1fr)}.room-cards-grid.compact{grid-template-columns:repeat(7,1fr)}.room-status-sidebar{width:22%;min-width:220px}}@media(max-width:1023px){.room-status-page{flex-direction:column;gap:1rem}.room-status-sidebar{width:100%;max-width:100%;flex-direction:row;flex-wrap:wrap;gap:.75rem}.filter-card{flex:1 1 calc(50% - .375rem);min-width:200px}.room-cards-grid{grid-template-columns:repeat(5,1fr)}.room-cards-grid.compact{grid-template-columns:repeat(6,1fr)}}@media(max-width:767px){.room-status-page{padding:1rem}.room-status-sidebar{flex-direction:column}.filter-card{flex:1 1 100%;min-width:100%}.room-cards-grid{grid-template-columns:repeat(3,1fr);gap:.75rem}.room-cards-grid.compact{grid-template-columns:repeat(4,1fr);gap:.5rem}.room-status-header{flex-direction:column;gap:.75rem;padding:1rem}.room-status-header h2{font-size:1.1rem}.header-left,.header-right{width:100%;justify-content:space-between}.room-card{padding:.75rem}.room-card .room-number{font-size:1rem}.room-card .room-type{font-size:.65rem}.room-card .guest-name{font-size:.7rem}}@media(max-width:480px){.room-status-page{padding:.75rem;gap:.75rem}.filter-card{padding:.75rem}.filter-title{font-size:.75rem;margin-bottom:.5rem;padding-bottom:.375rem}.filter-checkbox{font-size:.7rem}.filter-checkbox .custom-checkbox{width:14px;height:14px}.room-cards-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.room-cards-grid.compact{grid-template-columns:repeat(3,1fr);gap:.375rem}.room-status-header{padding:.75rem}.room-status-header h2{font-size:1rem}.view-btn{padding:.375rem}.room-card{padding:.5rem}.room-card .room-number{font-size:.9rem}.room-card .room-type{font-size:.6rem}.room-card .guest-name{font-size:.65rem}.room-card.compact{padding:.375rem}.room-card.compact .room-number{font-size:.75rem}}.account-cards-page{padding:1.5rem;min-height:calc(100vh - 80px);background:#f3f4f6}.account-cards-header{margin-bottom:1rem}.account-cards-header h1{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.account-cards-toolbar{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;margin-bottom:1rem}.add-account-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:#1a1a1a;color:#fff;border:none;border-radius:8px;font-size:.813rem;font-weight:500;cursor:pointer;transition:all .15s ease}.add-account-btn:hover{background:#333}.account-type-select{position:relative;min-width:180px}.account-type-select .search-select-input{width:100%;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.813rem;background:#f9fafb;cursor:pointer;transition:all .15s ease}.account-type-select .search-select-input:focus{outline:none;border-color:#3b82f6;background:#fff}.account-type-select .search-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 10px 25px -5px #0000001a;z-index:1000;max-height:200px;overflow-y:auto}.account-type-select .search-select-option{padding:.5rem .75rem;cursor:pointer;font-size:.813rem;color:#374151;transition:background .1s ease}.account-type-select .search-select-option:hover{background:#f3f4f6}.account-cards-toolbar .search-input-wrapper{position:relative;flex:1;max-width:280px;border:none}.account-cards-toolbar .search-input-wrapper input{width:100%;padding:.5rem .75rem .5rem 2.25rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.813rem;background:#f9fafb;transition:all .15s ease;outline:none;box-sizing:border-box}.account-cards-toolbar .search-input-wrapper input:focus{outline:none;border-color:#3b82f6;background:#fff}.account-cards-toolbar .search-input-wrapper .search-icon{position:absolute;left:.625rem;top:50%;transform:translateY(-50%);color:#9ca3af;width:16px;height:16px}.account-cards-table-wrapper{background:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.account-cards-table{width:100%;border-collapse:collapse}.account-cards-table th,.account-cards-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e5e7eb;font-size:.813rem}.account-cards-table th{background:#f9fafb;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.025em}.account-cards-table td{color:#374151}.account-cards-table tbody tr:hover{background:#f9fafb}.account-cards-table tbody tr:last-child td{border-bottom:none}.account-cards-table .status-badge{display:inline-block;padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500}.account-cards-table .status-badge.active{background:#dcfce7;color:#166534}.account-cards-table .status-badge.inactive{background:#fee2e2;color:#991b1b}.action-buttons{display:flex;gap:.25rem}.action-btn{padding:.375rem;border:none;background:transparent;cursor:pointer;border-radius:6px;color:#1f2937;transition:all .15s ease}.action-btn.view:hover{color:#2563eb;background:#eff6ff}.action-btn.edit:hover{color:#d97706;background:#fffbeb}.action-btn.delete:hover{color:#dc2626;background:#fef2f2}.account-modal-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1100}.account-modal{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:85vh;overflow:hidden;box-shadow:0 25px 50px -12px #00000040;animation:modalSlideIn .2s ease-out;display:flex;flex-direction:column}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.account-modal.wide{max-width:1000px}.account-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb;flex-shrink:0}.account-modal-header h2{font-size:1rem;font-weight:600;color:#1f2937;margin:0}.account-modal-close{padding:.375rem;border:none;background:transparent;cursor:pointer;color:#6b7280;border-radius:6px;line-height:1;transition:all .15s ease}.account-modal-close:hover{background:#f3f4f6;color:#1f2937}.account-modal-body{padding:1.25rem;overflow-y:auto;flex:1}.compact-modal .account-modal-body{padding:.75rem 1rem}.compact-modal .form-grid{gap:.5rem}.compact-modal .form-group{margin-bottom:.5rem}.compact-modal .form-group label{margin-bottom:.25rem;font-size:.75rem}.compact-modal .form-input,.compact-modal .search-select-input{padding:.5rem .75rem;font-size:.813rem}.compact-modal .account-modal-footer{padding:.625rem 1rem}.account-modal-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:.875rem 1.25rem;border-top:1px solid #e5e7eb;background:#f9fafb;flex-shrink:0}.modal-btn{padding:.5rem 1rem;border-radius:8px;font-size:.813rem;font-weight:500;cursor:pointer;transition:all .15s ease}.modal-btn.cancel{background:#fff;border:1px solid #d1d5db;color:#4b5563}.modal-btn.cancel:hover{background:#f3f4f6;border-color:#9ca3af}.modal-btn.confirm{background:#1a1a1a;border:none;color:#fff}.modal-btn.confirm:hover{background:#333}.modal-btn.danger{background:#dc2626;border:none;color:#fff}.modal-btn.danger:hover{background:#b91c1c}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.form-group{margin-bottom:.5rem}.form-group.full-width{grid-column:1 / -1}.form-group label{display:block;font-size:.813rem;font-weight:500;color:#374151;margin-bottom:.25rem}.form-group label .required{color:#dc2626;margin-left:2px}.form-input{width:100%;padding:.375rem .5rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.813rem;background:#f9fafb;transition:all .15s ease}.form-input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 2px #3b82f61a}.form-input.disabled{background:#f3f4f6;color:#6b7280;cursor:not-allowed}textarea.form-input{resize:vertical;min-height:60px}select.form-input{cursor:pointer}.modal-search-select{position:relative}.modal-search-select .search-select-input{width:100%;padding:.5rem .625rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.813rem;background:#f9fafb;cursor:pointer;transition:all .15s ease}.modal-search-select .search-select-input:focus{outline:none;border-color:#3b82f6;background:#fff}.modal-search-select .search-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 10px 25px -5px #0000001a;z-index:2000;max-height:180px;overflow-y:auto}.modal-search-select .search-select-option{padding:.5rem .625rem;cursor:pointer;font-size:.813rem;color:#374151;transition:background .1s ease}.modal-search-select .search-select-option:hover{background:#f3f4f6}.modal-search-select .search-select-option.selected{background:#eff6ff;color:#2563eb}.account-detail-widgets{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1.25rem}.widget-card{background:#f9fafb;border-radius:8px;padding:.875rem;text-align:center;border:1px solid transparent;display:flex;flex-direction:column;align-items:center;justify-content:center}.widget-card.income{background:#f0fdf4;border-color:#bbf7d0}.widget-card.expense{background:#fef2f2;border-color:#fecaca}.widget-card.balance{background:#eff6ff;border-color:#bfdbfe}.widget-card.agency{background:#fffbeb;border-color:#fde68a}.widget-title{font-size:.688rem;font-weight:500;color:#6b7280;margin-bottom:.375rem;text-transform:uppercase;letter-spacing:.025em}.widget-value{font-size:1.125rem;font-weight:600;color:#1f2937}.widget-card.income .widget-value{color:#16a34a}.widget-card.expense .widget-value{color:#dc2626}.widget-card.balance .widget-value{color:#2563eb}.widget-card.agency .widget-value{color:#d97706}.detail-section{margin-bottom:.75rem}.detail-section:last-child{margin-bottom:0}.detail-section-title{font-size:.813rem;font-weight:600;color:#1f2937;margin-bottom:.5rem;padding-bottom:.375rem;border-bottom:1px solid #e5e7eb}.detail-sections-row{display:flex;gap:1rem;margin-bottom:.75rem}.detail-section.half-width{flex:1;min-width:0;margin-bottom:0}.detail-grid{display:flex;flex-direction:column;gap:.25rem}.detail-grid .detail-item{display:flex;flex-direction:row!important;align-items:center;justify-content:flex-start;gap:.375rem;padding:0;background:transparent;border:none;border-radius:0;text-align:left}.detail-grid .detail-item.with-bg{background:#f9fafb;padding:.25rem .5rem;border-radius:.25rem}.detail-grid .detail-item .detail-label{font-size:.75rem;color:#6b7280;white-space:nowrap;min-width:auto;text-transform:none}.detail-grid .detail-item .detail-value{font-size:.75rem;color:#1f2937;font-weight:500}.transaction-header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.transaction-header-row .detail-section-title{margin:0;flex-shrink:0}.transaction-actions{display:flex;gap:.5rem}.transaction-btn{display:flex;align-items:center;gap:.375rem;padding:.438rem .75rem;border:1px solid #e5e7eb;background:#fff;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s ease}.transaction-btn:hover{background:#f9fafb}.transaction-btn.income{border-color:#86efac;color:#16a34a;background:#f0fdf4}.transaction-btn.income:hover{background:#dcfce7;border-color:#4ade80}.transaction-btn.expense{border-color:#fca5a5;color:#dc2626;background:#fef2f2}.transaction-btn.expense:hover{background:#fee2e2;border-color:#f87171}.transaction-btn.transfer{border-color:#93c5fd;color:#2563eb;background:#eff6ff}.transaction-btn.transfer:hover{background:#dbeafe;border-color:#60a5fa}.transaction-table-wrapper{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.transaction-table{width:100%;border-collapse:collapse}.transaction-table th,.transaction-table td{padding:.5rem .625rem;text-align:left;border-bottom:1px solid #e5e7eb;font-size:.75rem}.transaction-table th{background:#f9fafb;font-size:.688rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.025em}.transaction-table td{color:#374151}.transaction-table tbody tr:hover{background:#f9fafb}.transaction-table tbody tr:last-child td{border-bottom:none}.transaction-table .amount-positive{color:#16a34a;font-weight:600}.transaction-table .amount-negative{color:#dc2626;font-weight:600}.pagination{display:flex;justify-content:center;align-items:center;gap:.25rem;margin-top:.875rem;padding-top:.875rem;border-top:1px solid #e5e7eb}.pagination-btn{padding:.25rem .5rem;border:1px solid #e5e7eb;background:#fff;border-radius:4px;font-size:.75rem;cursor:pointer;transition:all .15s ease}.pagination-btn:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db}.pagination-btn.active{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.account-cards-page .notification{position:fixed;bottom:1.5rem;right:1.5rem;padding:1rem 1.5rem;border-radius:8px;font-size:.875rem;font-weight:500;z-index:1200;animation:notificationSlideIn .3s ease-out;box-shadow:0 10px 25px #00000026}@keyframes notificationSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.account-cards-page .notification.success{background:#d1fae5;color:#065f46;display:flex;align-items:center;gap:.5rem}.account-cards-page .notification.warning{background:#fed7aa;color:#9a3412;display:flex;align-items:center;gap:.5rem}.account-cards-page .notification.error{background:#fecaca;color:#991b1b;display:flex;align-items:center;gap:.5rem}.notification-icon{font-size:1rem;line-height:1}.transaction-search{margin-bottom:.75rem}.transaction-search input{width:100%;max-width:240px;padding:.438rem .625rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.813rem;background:#f9fafb;transition:all .15s ease}.transaction-search input:focus{outline:none;border-color:#3b82f6;background:#fff}.pdf-btn{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:#dc2626;color:#fff;border:none;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s ease}.pdf-btn:hover{background:#b91c1c}.inner-modal-overlay{z-index:1200}.empty-state{text-align:center;padding:2rem;color:#9ca3af}.empty-state-icon{font-size:2.5rem;margin-bottom:.75rem;opacity:.5}.empty-state-text{font-size:.813rem}.transaction-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.detail-items-list{display:flex;flex-direction:column;gap:8px}.detail-item-row{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f9fafb;border-radius:6px;font-size:.813rem}.detail-item-row .detail-label{color:#6b7280}.detail-item-row .detail-value{color:#1f2937;font-weight:500;text-align:right}.description-box{padding:12px;background:#f9fafb;border-radius:6px;font-size:.813rem;color:#374151;line-height:1.5}@media(max-width:768px){.account-cards-toolbar{flex-wrap:wrap}.account-detail-widgets{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr}}.account-types-page{padding:24px;background:#f9fafb;min-height:calc(100vh - 60px)}.account-types-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.account-types-header h1{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0}.add-type-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.add-type-btn:hover{background:#2563eb}.account-types-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.account-types-table{width:100%;border-collapse:collapse}.account-types-table th{text-align:left;padding:14px 16px;background:#f9fafb;font-size:.8rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e5e7eb}.account-types-table td{padding:14px 16px;font-size:.9rem;color:#374151;border-bottom:1px solid #f3f4f6}.account-types-table tbody tr:hover{background:#f9fafb}.code-cell{font-family:Monaco,Menlo,monospace;font-size:.85rem;color:#6b7280}.name-cell{font-weight:500;color:#1f2937}.description-cell{color:#6b7280;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.count-cell{text-align:center;font-weight:500}.status-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:500}.status-badge.active{background:#dcfce7;color:#166534}.status-badge.inactive{background:#fee2e2;color:#991b1b}.actions-cell{display:flex;gap:8px}.action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:6px;color:#1f2937;cursor:pointer;transition:background .2s}.action-btn:hover{background:#f3f4f6}.modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:480px;box-shadow:0 20px 40px #0003}.modal-delete{max-width:420px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.modal-header h2{font-size:1.1rem;font-weight:600;color:#1f2937;margin:0}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#1f2937}.modal-body{padding:24px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;color:#1f2937;background:#fff;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6}.form-hint{display:block;font-size:.75rem;color:#6b7280;margin-top:6px;line-height:1.4}.delete-message{font-size:.95rem;color:#374151;margin:0 0 12px}.delete-warning{font-size:.85rem;color:#dc2626;margin:0;padding:12px;background:#fef2f2;border-radius:8px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb;border-radius:0 0 12px 12px}.btn-cancel{padding:10px 20px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#f3f4f6}.btn-save{padding:10px 20px;background:#1f2937;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-save:hover{background:#111827}.btn-delete{padding:10px 20px;background:#dc2626;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-delete:hover{background:#b91c1c}.table-toolbar{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb}.search-box{display:flex;align-items:center;gap:10px;padding:10px 16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;width:350px}.search-box svg{color:#9ca3af;flex-shrink:0}.search-box input{border:none;background:transparent;font-size:.9rem;color:#1f2937;width:100%;outline:none}.search-box input::placeholder{color:#9ca3af}.result-count{font-size:.85rem;color:#6b7280}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;padding:16px;border-top:1px solid #e5e7eb}.pagination-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;transition:all .2s}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-info{font-size:.9rem;color:#374151}.search-select{position:relative}.search-select-trigger{display:flex;justify-content:space-between;align-items:center;width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;background:#fff;cursor:pointer;transition:border-color .2s;box-sizing:border-box}.search-select-trigger:hover{border-color:#9ca3af}.search-select-trigger span{font-size:.9rem;color:#1f2937}.search-select-trigger svg{color:#6b7280}.search-select-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:100;overflow:hidden}.search-select-dropdown input{width:100%;padding:12px 14px;border:none;border-bottom:1px solid #e5e7eb;font-size:.9rem;box-sizing:border-box;outline:none}.search-select-options{max-height:200px;overflow-y:auto}.account-types-table tbody tr{cursor:pointer}.front-cash-page{padding:24px;background:#f9fafb;min-height:calc(100vh - 60px)}.front-cash-header{margin-bottom:24px}.front-cash-header h1{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0}.cash-top-section{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;margin-bottom:24px}.cash-widgets-column{display:flex;flex-direction:column;gap:16px}.income-sources-card,.bank-balances-card{margin-bottom:0}.cash-widget{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:#fff;border-radius:10px;box-shadow:0 1px 3px #0000001a}.widget-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;flex-shrink:0}.widget-icon svg{width:18px;height:18px}.cash-widget.income .widget-icon{background:#dcfce7;color:#166534}.cash-widget.expense .widget-icon{background:#fee2e2;color:#991b1b}.cash-widget.balance .widget-icon{background:#dbeafe;color:#1e40af}.widget-content{display:flex;flex-direction:column}.widget-label{font-size:.7rem;color:#6b7280;margin-bottom:2px}.widget-value{font-size:1.1rem;font-weight:700;color:#1f2937;margin-bottom:2px}.widget-desc{font-size:.65rem;color:#9ca3af}.cash-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:20px}.card-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.card-header h2{font-size:1.1rem;font-weight:600;color:#1f2937;margin:0}.card-actions{display:flex;gap:12px}.action-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.action-btn.primary{background:#3b82f6;color:#fff;border:none}.action-btn.primary:hover{background:#2563eb}.action-btn.secondary{background:#fff;color:#374151;border:1px solid #d1d5db}.action-btn.secondary:hover{background:#f3f4f6}.income-sources{padding:8px}.income-source-item{display:flex;align-items:center;gap:16px;padding:16px;border-radius:8px;cursor:pointer;transition:background .2s}.income-source-item:hover{background:#f9fafb}.source-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;flex-shrink:0}.source-icon.restaurant{background:#fef3c7;color:#92400e}.source-icon.accommodation{background:#dbeafe;color:#1e40af}.source-icon.other{background:#e5e7eb;color:#374151}.source-info{flex:1;display:flex;flex-direction:column}.source-name{font-size:.95rem;font-weight:500;color:#1f2937}.source-hint{font-size:.75rem;color:#9ca3af}.source-amount{font-size:1.1rem;font-weight:600;color:#1f2937;margin-right:8px}.source-arrow{color:#9ca3af}.shifts-table-container{overflow-x:auto}.shifts-table{width:100%;border-collapse:collapse}.shifts-table th{text-align:left;padding:12px 14px;background:#f9fafb;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e5e7eb;white-space:nowrap}.shifts-table td{padding:12px 14px;font-size:.85rem;color:#374151;border-bottom:1px solid #f3f4f6}.shifts-table tbody tr:hover{background:#f9fafb}.shifts-table td.positive{color:#166534;font-weight:600}.shifts-table td.negative{color:#dc2626;font-weight:600}.shift-status{display:inline-block;padding:4px 10px;border-radius:20px;font-size:.7rem;font-weight:500}.shift-status.open{background:#dcfce7;color:#166534}.shift-status.closed{background:#e5e7eb;color:#374151}.shifts-table .actions-cell{display:flex;gap:4px}.table-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:4px;color:#1f2937;cursor:pointer;transition:background .2s}.table-action-btn:hover{background:#f3f4f6}.bank-balances{padding:8px}.bank-item{display:flex;align-items:center;gap:16px;padding:16px;border-radius:8px;transition:background .2s}.bank-item:hover{background:#f9fafb}.bank-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#f3f4f6;border-radius:10px;color:#374151;flex-shrink:0}.bank-info{flex:1;display:flex;flex-direction:column}.bank-name{font-size:.95rem;font-weight:500;color:#1f2937}.bank-account{font-size:.75rem;color:#9ca3af;font-family:Monaco,Menlo,monospace}.bank-balance{font-size:1.1rem;font-weight:600;color:#166534}.shift-new-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#1f2937;color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .2s}.shift-new-btn:hover{background:#111827}.shift-search-input{padding:8px 14px;border:1px solid #d1d5db;border-radius:6px;font-size:.85rem;width:200px;color:#1f2937}.shift-search-input:focus{outline:none;border-color:#3b82f6}.shifts-pagination{display:flex;justify-content:center;align-items:center;gap:16px;padding:16px;border-top:1px solid #e5e7eb}.elapsed-time{font-family:Monaco,Menlo,monospace;font-size:.7rem;background:#dcfce7;color:#166534;padding:2px 6px;border-radius:4px;margin-left:6px}.shift-modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.shift-modal-overlay.close-shift-overlay{z-index:1200}.shift-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:480px;max-height:90vh;overflow:hidden}.shift-details-modal{max-width:900px}.shift-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.shift-modal-header h3{font-size:1.1rem;font-weight:600;color:#1f2937;margin:0}.modal-header-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.modal-header-btn:hover{background:#f3f4f6}.modal-header-btn.primary{background:#1f2937;color:#fff;border-color:#1f2937}.modal-header-btn.primary:hover{background:#111827}.modal-close-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .2s}.modal-close-btn:hover{background:#f3f4f6;color:#1f2937}.shift-modal-body{padding:24px}.form-group{margin-bottom:20px}.form-group:last-child{margin-bottom:0}.form-group label{display:block;font-size:.85rem;font-weight:500;color:#374151;margin-bottom:8px}.form-group>input,.form-group>.input-with-suffix input,.form-group textarea{width:100%;padding:10px 14px;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;color:#1f2937;transition:border-color .2s;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6}.form-group textarea{resize:vertical;min-height:80px}.input-with-suffix{position:relative;display:flex;align-items:center}.input-with-suffix input{padding-right:50px}.input-suffix{position:absolute;right:14px;font-size:.85rem;color:#6b7280;font-weight:500}.search-select{position:relative;display:flex;align-items:center;cursor:pointer;width:100%;border:none!important;background:transparent!important;padding:0!important}.search-select input,.form-group .search-select input{width:100%;cursor:pointer;padding:10px 40px 10px 14px!important;border:1px solid #d1d5db!important;border-radius:6px!important;font-size:.9rem;color:#1f2937;background:#fff;box-sizing:border-box}.search-select input:focus,.form-group .search-select input:focus{outline:none;border-color:#3b82f6!important}.search-select>svg{position:absolute;right:12px;color:#6b7280;pointer-events:none}.search-select-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 8px 24px #00000026;z-index:1100;max-height:200px;overflow-y:auto}.search-select-option{padding:10px 14px;font-size:.9rem;color:#374151;cursor:pointer;transition:background .2s}.search-select-option:hover{background:#f3f4f6}.search-select-option.active{background:#eff6ff;color:#3b82f6}.shift-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb}.modal-btn{padding:10px 20px;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.modal-btn.cancel{background:#fff;color:#374151;border:1px solid #d1d5db}.modal-btn.cancel:hover{background:#f3f4f6}.modal-btn.primary{background:#1f2937;color:#fff;border:none}.modal-btn.primary:hover{background:#111827}.shift-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.shift-info-card{background:#f9fafb;border-radius:8px;padding:20px}.info-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #e5e7eb}.info-row:last-child{border-bottom:none}.info-row .info-label{font-size:.85rem;color:#6b7280}.info-row .info-value{font-size:.85rem;font-weight:500;color:#1f2937}.status-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:.75rem}.status-badge.open{background:#dcfce7;color:#166534}.status-badge.closed{background:#e5e7eb;color:#374151}.shift-summary-card{background:#f9fafb;border-radius:8px;padding:20px}.shift-summary-card h4{font-size:.95rem;font-weight:600;color:#1f2937;margin:0 0 16px}.summary-widgets{display:grid;grid-template-columns:1fr 1fr;gap:12px}.summary-widget{display:flex;align-items:center;gap:12px;padding:14px;background:#fff;border-radius:8px;border:1px solid #e5e7eb}.summary-widget.income{color:#166534}.summary-widget.expense{color:#dc2626}.summary-widget.transfer-in{color:#2563eb}.summary-widget.transfer-out{color:#d97706}.summary-widget-content{display:flex;flex-direction:column}.summary-label{font-size:.7rem;color:#6b7280}.summary-value{font-size:.95rem;font-weight:600;color:#1f2937}.shift-history{background:#f9fafb;border-radius:8px;padding:20px}.shift-history h4{font-size:.95rem;font-weight:600;color:#1f2937;margin:0 0 16px}.history-table{width:100%;border-collapse:collapse}.history-table th{text-align:left;padding:10px 12px;background:#fff;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e5e7eb}.history-table td{padding:12px;font-size:.85rem;color:#374151;border-bottom:1px solid #e5e7eb}.history-table .empty-row{text-align:center;color:#9ca3af;padding:40px}.history-table td.positive{color:#166534;font-weight:600}.history-table td.negative{color:#dc2626;font-weight:600}.tx-type-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:.7rem;font-weight:500}.tx-type-badge.gelir{background:#dcfce7;color:#166534}.tx-type-badge.gider{background:#fee2e2;color:#991b1b}.tx-type-badge.transfer-giriş{background:#dbeafe;color:#1e40af}.tx-type-badge.transfer-çıkış{background:#fef3c7;color:#92400e}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.history-header h4{margin:0}.history-search{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.85rem;width:200px}.history-search:focus{outline:none;border-color:#3b82f6}.history-pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.pagination-btn{padding:6px 14px;background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.8rem;color:#374151;cursor:pointer;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#f3f4f6}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:.85rem;color:#6b7280}@media(max-width:1200px){.cash-top-section{grid-template-columns:1fr 1fr}.bank-balances-card{grid-column:span 2}.shift-details-grid{grid-template-columns:1fr}}@media(max-width:768px){.cash-top-section{grid-template-columns:1fr}.bank-balances-card{grid-column:span 1}.shift-modal{margin:16px;max-width:calc(100% - 32px)}.summary-widgets{grid-template-columns:1fr}}.account-transactions-page{padding:24px;background:#f9fafb;min-height:calc(100vh - 60px)}.transactions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.transactions-header h1{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0}.header-actions{display:flex;gap:8px}.header-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.header-btn.income{background:#166534;color:#fff}.header-btn.income:hover{background:#15803d}.header-btn.expense{background:#dc2626;color:#fff}.header-btn.expense:hover{background:#b91c1c}.header-btn.transfer{background:#2563eb;color:#fff}.header-btn.transfer:hover{background:#1d4ed8}.header-btn.export{background:#fff;color:#374151;border:1px solid #d1d5db}.header-btn.export:hover{background:#f3f4f6}.transactions-widgets{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.trans-widget{display:flex;flex-direction:column;padding:20px;background:#fff;border-radius:10px;box-shadow:0 1px 3px #0000001a;border-left:4px solid}.trans-widget.income{border-left-color:#166534}.trans-widget.expense{border-left-color:#dc2626}.trans-widget.balance{border-left-color:#2563eb}.trans-widget.count{border-left-color:#7c3aed}.trans-widget-label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.trans-widget-value{font-size:1.5rem;font-weight:700;color:#1f2937}.advanced-filters{background:#fff;border-radius:10px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.filters-header{padding:16px 20px;border-bottom:1px solid #e5e7eb}.filters-header h2{font-size:1rem;font-weight:600;color:#1f2937;margin:0}.filters-content{padding:20px}.filters-row{display:grid;grid-template-columns:repeat(10,1fr);gap:8px;margin-bottom:12px}.filters-row:last-child{margin-bottom:0}.filter-group.narrow{grid-column:span 1}.filter-group.narrow input{width:100%}.filter-group.date-range{display:flex;flex-direction:column;gap:4px;grid-column:span 2}.filter-group.wide{grid-column:span 2}.filter-group.date-range input{flex:1;min-width:0}.filter-group{display:flex;flex-direction:column}.filter-group label{font-size:.7rem;font-weight:500;color:#374151;margin-bottom:4px}.filter-group input{padding:5px 8px;border:1px solid #d1d5db;border-radius:5px;font-size:.75rem;color:#1f2937;min-width:0;height:32px}.filter-group input:focus{outline:none;border-color:#3b82f6}.filter-select{position:relative;display:flex;justify-content:space-between;align-items:center;padding:5px 8px;border:1px solid #d1d5db;border-radius:5px;background:#fff;cursor:pointer;height:32px}.filter-select span{font-size:.75rem;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.filter-select svg{color:#6b7280;flex-shrink:0}.filter-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:100;max-height:200px;overflow-y:auto}.filter-option{padding:8px 12px;font-size:.85rem;color:#374151;cursor:pointer;transition:background .2s}.filter-option:hover{background:#f3f4f6}.filter-option.active{background:#eff6ff;color:#3b82f6}.amount-range{display:flex;gap:8px}.amount-range input{flex:1;min-width:0}.transactions-table-container{background:#fff;border-radius:10px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.transactions-table{width:100%;border-collapse:collapse}.transactions-table th{text-align:left;padding:12px 10px;background:#f9fafb;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e5e7eb;white-space:nowrap}.transactions-table td{padding:12px 10px;font-size:.85rem;color:#374151;border-bottom:1px solid #f3f4f6}.transactions-table tbody tr:hover{background:#f9fafb}.transactions-table tbody tr.selected{background:#eff6ff}.checkbox-col{width:40px;text-align:center}.checkbox-col input{width:16px;height:16px;accent-color:#3b82f6}.account-cell{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.type-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:.7rem;font-weight:500}.type-badge.gelir{background:#dcfce7;color:#166534}.type-badge.gider{background:#fee2e2;color:#991b1b}.type-badge.transfer{background:#dbeafe;color:#1e40af}.type-badge.transfer-giriş{background:#d1fae5;color:#065f46}.type-badge.transfer-çıkış{background:#fef3c7;color:#92400e}.type-badge.cari{background:#e5e7eb;color:#374151}.type-badge.kredi{background:#fce7f3;color:#9d174d}.type-badge.borç{background:#fef2f2;color:#dc2626}.amount-cell{font-weight:600;white-space:nowrap}.amount-cell.positive{color:#166534}.amount-cell.negative{color:#dc2626}.actions-cell{display:flex;gap:4px}.actions-cell .action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:4px;color:#1f2937;cursor:pointer;transition:background .2s}.actions-cell .action-btn:hover{background:#f3f4f6}.blur-modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.blur-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.transaction-detail-modal{width:900px;max-width:95vw}.source-detail-modal{width:600px;max-width:95vw}.blur-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.blur-modal-header h2{font-size:1rem;font-weight:600;color:#1f2937;margin:0}.modal-header-actions{display:flex;align-items:center;gap:8px}.source-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;font-size:.75rem;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.source-btn:hover{background:#e5e7eb}.blur-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:6px;color:#6b7280;cursor:pointer;transition:all .15s ease}.blur-modal-close:hover{background:#f3f4f6;color:#1f2937}.blur-modal-body{padding:20px;overflow-y:auto;flex:1}.blur-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:12px 20px;border-top:1px solid #e5e7eb;background:#f9fafb}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.detail-section{background:#f9fafb;border-radius:8px;padding:16px;border:1px solid #e5e7eb}.section-title{font-size:.813rem;font-weight:600;color:#1f2937;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #e5e7eb}.detail-row{display:flex;justify-content:space-between;align-items:flex-start;padding:6px 0;font-size:.813rem}.detail-label{color:#6b7280;flex-shrink:0}.detail-value{color:#1f2937;text-align:right;word-break:break-word}.detail-value.positive{color:#16a34a;font-weight:500}.detail-value.negative{color:#dc2626;font-weight:500}.mini-table{width:100%;border-collapse:collapse;font-size:.75rem;border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}.mini-table th,.mini-table td{padding:8px 10px;text-align:left;border-bottom:1px solid #e5e7eb}.mini-table th{background:#f3f4f6;font-weight:600;color:#374151}.mini-table td{color:#1f2937}.mini-table tbody tr:last-child td{border-bottom:none}.source-detail-modal-wide{width:900px;max-width:95vw}.transaction-detail-layout{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.detail-card-section{background:#f9fafb;border-radius:8px;padding:12px}.detail-card-section .detail-card-title{font-size:.75rem;font-weight:600;color:#1f2937;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid #e5e7eb}.detail-items-compact{display:flex;flex-direction:column;gap:6px}.detail-item-compact{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}.detail-item-compact .label{color:#6b7280}.detail-item-compact .value{color:#1f2937;font-weight:500;text-align:right}.detail-item-compact .value.positive{color:#059669}.detail-item-compact .value.negative{color:#dc2626}.detail-description-section{margin-top:12px;background:#f9fafb;border-radius:8px;padding:12px}.detail-description-section .detail-card-title{font-size:.75rem;font-weight:600;color:#1f2937;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid #e5e7eb}.description-content{font-size:.75rem;color:#374151;line-height:1.5}.mini-table-compact{width:100%;border-collapse:collapse;font-size:.7rem;margin-bottom:4px}.mini-table-compact th,.mini-table-compact td{padding:4px 6px;text-align:left;border-bottom:1px solid #e5e7eb}.mini-table-compact th{background:#f3f4f6;font-weight:500;color:#6b7280}.mini-table-compact td{color:#1f2937}.mini-table-compact tbody tr:last-child td{border-bottom:none}.edit-transaction-modal{width:700px;max-width:95vw}.current-info-box{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:12px 16px;margin-bottom:16px}.current-info-title{font-size:.75rem;font-weight:600;color:#0369a1;margin-bottom:10px}.current-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.current-info-item{display:flex;justify-content:space-between;font-size:.75rem}.current-info-item .label{color:#6b7280}.current-info-item .value{color:#1f2937;font-weight:500}.edit-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.edit-form-grid .form-group{display:flex;flex-direction:column;gap:4px}.edit-form-grid .form-group.full-width{grid-column:1 / -1}.edit-form-grid .form-group label{font-size:.75rem;font-weight:500;color:#374151}.edit-form-grid .form-group label .required{color:#dc2626}.edit-form-grid .form-input{height:36px;padding:0 10px;border:1px solid #e5e7eb;border-radius:6px;font-size:.813rem;color:#1f2937;background:#fff;outline:none;transition:border-color .15s ease}.edit-form-grid .form-input:focus{border-color:#3b82f6}.edit-form-grid .form-input.textarea{height:auto;padding:8px 10px;resize:vertical;min-height:70px}.edit-form-grid .search-select-container{position:relative}.edit-form-grid .search-select-container .dropdown-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.edit-form-grid .search-select-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 12px #00000026;max-height:200px;overflow-y:auto;overflow-x:visible;z-index:999999}.edit-form-grid .search-select-option{padding:8px 12px;font-size:.813rem;color:#374151;cursor:pointer;transition:background .15s ease}.edit-form-grid .search-select-option:hover{background:#f3f4f6}.edit-form-grid .search-select-option.selected{background:#eff6ff;color:#1d4ed8}@media(max-width:1400px){.filters-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:1024px){.transactions-widgets{grid-template-columns:repeat(2,1fr)}.header-actions{flex-wrap:wrap}}@media(max-width:768px){.transactions-header{flex-direction:column;align-items:flex-start;gap:16px}.transactions-widgets,.filters-row{grid-template-columns:1fr}}.app{min-height:100vh;background-color:#f9fafb}.main-content{padding:0;max-width:1920px;margin:0 auto}.page-content{background-color:#fff;border-radius:.5rem;padding:2rem;box-shadow:0 1px 3px #0000001a}.page-content h2{margin:0;font-size:1.5rem;color:#1f2937}
