.notification-component .notification-popover{align-items:center;animation:fadeInOut 3s ease-in-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#333c;border-radius:16px;bottom:20px;box-shadow:0 2px 10px #0000004d;color:#fff;display:flex;left:15px;max-width:95%;padding:10px;position:fixed;width:250px;z-index:var(--z-index-notifications)}.notification-component .notification-icon{align-items:center;border-radius:8px;display:flex;height:30px;justify-content:center;margin-right:10px;width:30px}.notification-component .notification-message{font-size:.85rem;margin-left:45px;position:absolute}.notification-component .notification-close-icon{cursor:pointer;margin-left:10px}.notification-component .time{animation:none}@keyframes fadeInOut{0%{opacity:0;transform:translateX(-100%)}10%{opacity:1;transform:translateX(0)}90%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-100%)}}.modal-standard-component .close-button{background:#0000;border:none;color:#555;cursor:pointer;font-size:1.5rem;left:calc(100% - 25px);position:relative}.modal-standard-component .close-button:hover{color:#222}.modal-standard-component .modal-overlay{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:var(--z-index-modal)}.modal-standard-component .modal-content{background-color:#fff;border-radius:5px;max-height:90%;max-width:600px;overflow-y:auto;padding:20px;width:90%}.reservation-details-modal .table-modal-container{max-width:600px;padding:24px}.reservation-details-modal .table-modal-title{margin-bottom:8px}.reservation-details-modal .table-modal-description{color:#666;font-size:.9rem;margin-bottom:20px;text-align:center}.table-modal-notice{border:1px solid #0000;border-radius:6px;font-size:.9rem;margin:0 0 14px;padding:12px;text-align:center}.table-modal-notice--warning{background:#fff3cd;border-color:#ffe08a;color:#856404}.table-modal-notice--success{background:#d4edda;border-color:#c3e6cb;color:#155724}.table-modal-notice--info{background:#e7f1ff;border-color:#cfe2ff;color:#084298}.reservation-details-modal .table-modal-loading{padding:40px;text-align:center}.reservation-details-modal .table-modal-loading-text{color:#6c757d;margin-bottom:16px}.reservation-details-modal .table-modal-loading-spinner{animation:table-modal-spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top:3px solid var(--color-blue);height:30px;margin:0 auto;width:30px}@keyframes table-modal-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.reservation-details-modal .table-modal-error{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#dc3545;margin-bottom:16px;padding:20px;text-align:center}.reservation-details-modal .table-modal-selected-summary{background-color:#e8f4f8;border:1px solid #bee5eb;border-radius:8px;margin-bottom:20px;padding:16px}.reservation-details-modal .table-modal-selected-title{color:#0c5460;font-size:1rem;font-weight:600;margin:0 0 12px}.reservation-details-modal .table-modal-capacity-info{align-items:center;color:#0c5460;display:flex;font-size:.9rem;gap:16px}.reservation-details-modal .table-modal-available-section{margin-bottom:24px}.reservation-details-modal .table-modal-available-title{color:#495057;font-size:1rem;font-weight:600;margin-bottom:16px}.reservation-details-modal .table-modal-legend{align-items:center;background-color:#f8f9fa;border-radius:6px;color:#6c757d;display:flex;flex-wrap:wrap;font-size:.85rem;gap:16px;margin-bottom:16px;padding:12px}.reservation-details-modal .table-modal-legend-item{align-items:center;display:flex;gap:6px}.reservation-details-modal .table-modal-legend-dot{border-radius:50%;height:12px;width:12px}.reservation-details-modal .table-modal-legend-dot--selected{background-color:var(--color-blue)}.reservation-details-modal .table-modal-legend-dot--available{background-color:#e9ecef}.reservation-details-modal .table-modal-legend-dot--unavailable{background-color:#ffc107}.reservation-details-modal .table-modal-no-tables{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;color:#6c757d;padding:24px;text-align:center}.reservation-details-modal .table-modal-tables-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.reservation-details-modal .table-modal-table-card{background-color:#fff;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;padding:16px;position:relative;transition:all .2s ease}.reservation-details-modal .table-modal-table-card:hover{background-color:#f8f9fa;border-color:var(--color-blue)}.reservation-details-modal .table-modal-table-card--selected{background-color:#f0f8ff;border-color:var(--color-blue)}.reservation-details-modal .table-modal-table-card--selected:hover{background-color:#f0f8ff}.reservation-details-modal .table-modal-table-card--unavailable,.reservation-details-modal .table-modal-table-card--unavailable:hover{background-color:#fff3cd;border-color:#ffc107}.reservation-details-modal .table-modal-table-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.reservation-details-modal .table-modal-table-number{color:#343a40;font-size:1.1rem;font-weight:600}.reservation-details-modal .table-modal-table-number--selected{color:var(--color-blue)}.reservation-details-modal .table-modal-table-badge{background-color:#28a745;border-radius:4px;color:#fff;font-size:.75rem;font-weight:500;margin-right:30px;margin-top:-5px;padding:2px 6px}.reservation-details-modal .table-modal-table-badge--selected{background-color:var(--color-blue)}.reservation-details-modal .table-modal-occupied-badge{background-color:#856404;border-radius:4px;color:#fff;font-size:.75rem;font-weight:500;margin-right:30px;margin-top:-5px;padding:2px 6px}.reservation-details-modal .table-modal-table-info{color:#6c757d;font-size:.9rem;margin-bottom:2px}.reservation-details-modal .table-modal-table-zitplaats{color:#6c757d;font-size:.85rem;margin-top:4px}.reservation-details-modal .table-modal-selection-indicator{align-items:center;background-color:#e9ecef;border-radius:50%;display:flex;height:24px;justify-content:center;position:absolute;right:8px;top:8px;transition:all .2s ease;width:24px}.reservation-details-modal .table-modal-selection-indicator--selected{background-color:var(--color-blue);border:2px solid #fff}.reservation-details-modal .table-modal-selection-indicator--unavailable{background-color:#ffc107}.reservation-details-modal .table-modal-selection-checkmark{color:#fff;font-size:14px;font-weight:700}.reservation-details-modal .table-modal-selection-dot{color:#fff;font-size:12px;font-weight:700}.table-modal-toggle-unavailable-wrap{margin-top:20px;text-align:center}.table-modal-toggle-unavailable-btn{background:none;border:1px solid #6c757d;border-radius:6px;color:#6c757d;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:all .2s ease}.table-modal-toggle-unavailable-btn:hover{background-color:#6c757d;color:#fff}.reservation-details-modal .table-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}@media (max-width:768px){.reservation-details-modal .table-modal-container{max-width:100%;padding:20px}.reservation-details-modal .table-modal-tables-grid{grid-template-columns:1fr}.reservation-details-modal .table-modal-capacity-info{align-items:flex-start;flex-direction:column;gap:8px}.reservation-details-modal .table-modal-legend{gap:12px}}@media (max-width:600px){.reservation-details-modal .table-modal-container{padding:16px}.reservation-details-modal .table-modal-table-card{padding:12px}.reservation-details-modal .table-modal-actions,.reservation-details-modal .table-modal-legend{flex-direction:column;gap:8px}}@media (max-width:400px){.reservation-details-modal .table-modal-container{padding:12px}.reservation-details-modal .table-modal-available-title,.reservation-details-modal .table-modal-selected-title{font-size:.9rem}}.new-reservation-page .calendar-container{position:relative;width:100%}.new-reservation-page .calendar-container .calendar-display{align-items:center;background-color:#fff;border:1px solid #ccc;border-radius:5px;cursor:pointer;display:flex;justify-content:space-between;padding:10px;text-align:left;-webkit-user-select:none;user-select:none;width:100%}.new-reservation-page .calendar-container .calendar-display span:first-child{flex-grow:1}.new-reservation-page .calendar-container .calendar{animation:fadeInCalendar .3s ease-in-out;background-color:#fff;border:1px solid #ccc;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-top:5px;padding:10px;position:absolute;width:100%;z-index:1000}@keyframes fadeInCalendar{0%{opacity:0}to{opacity:1}}.new-reservation-page .calendar-container .availability-hold-btn{font-size:10px}.new-reservation-page .calendar-container .calendar-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:10px}.new-reservation-page .calendar-container .calendar-header button{background-color:initial;border:none;cursor:pointer;font-size:18px}.new-reservation-page .calendar-container .calendar-header span{color:gray;font-size:15px;font-weight:500}.new-reservation-page .calendar-container .calendar-weeks-wrapper{overflow:hidden;position:relative;width:100%}.new-reservation-page .calendar-container .calendar-table{border-collapse:collapse;width:100%}.new-reservation-page .calendar-container .calendar-table td,.new-reservation-page .calendar-container .calendar-table th{padding:5px;text-align:center;width:14.28%}.calendar-container .calendar-table th{color:#666;font-weight:400;padding-bottom:10px}.new-reservation-page .calendar-container .calendar-table td{cursor:pointer;opacity:1;position:relative;vertical-align:middle}.new-reservation-page .calendar-container .calendar-table td.empty-day{cursor:default}.new-reservation-page .calendar-container .calendar-table td:hover .day-square.available{transform:scale(1.05)}.new-reservation-page .calendar-container .day-square{align-items:center;border-radius:4px;display:inline-flex;flex-direction:column;font-size:16px;height:38px;justify-content:center;margin:0 auto;position:relative;transition:all .2s ease;width:38px}.new-reservation-page .calendar-container .day-number{line-height:1;z-index:2}.new-reservation-page .calendar-container .available .day-square{background-color:#cfc;color:#060}.new-reservation-page .calendar-container .available:hover .day-square{background-color:#b3ffb3}.new-reservation-page .calendar-container .available:active .day-square{background-color:#9f9}.new-reservation-page .calendar-container .unavailable .day-square{background-color:#8b000021;color:darkred}.new-reservation-page .calendar-container .gray-out .day-square{background-color:#e0e0e0;color:#999;cursor:not-allowed}.new-reservation-page .calendar-container .selected .day-square{background-color:#060;color:#cfc}.new-reservation-page .calendar-container .calendar-table td.gray-out,.new-reservation-page .calendar-container .calendar-table td.unavailable{cursor:not-allowed}.new-reservation-page .calendar-container .calendar-table td.gray-out:hover .day-square,.new-reservation-page .calendar-container .calendar-table td.unavailable:hover .day-square{transform:none}.new-reservation-page .calendar-container .calendar-table td{border:none}.new-reservation-page .calendar-container .arrow{align-items:center;color:gray;display:flex;margin-left:auto}.new-reservation-page .calendar-container .available .availability-badge{background:#38a169}.new-reservation-page .calendar-container .selected .availability-badge{background:#2d3748}@media screen and (max-width:900px){.calendar-container .day-square{font-size:15px!important;height:35px!important;width:35px!important}.calendar-container .calendar-header span{font-size:12px}.new-reservation-page .calendar-container .availability-toggle-btn{font-size:11px;padding:5px 8px}}.new-reservation-page .time-selector-container{position:relative}.new-reservation-page .time-display{align-items:center;background-color:#fff;border:1px solid #ccc;border-radius:5px;cursor:pointer;display:flex;justify-content:space-between;padding:10px;text-align:left;-webkit-user-select:none;user-select:none;width:100%}.new-reservation-page .time-display span:first-child{flex-grow:1}.new-reservation-page .time-selector{animation:fadeInTimeSelector .3s ease-in-out;background-color:#fff;border:1px solid #ccc;border-radius:10px;margin-top:5px;max-height:300px;overflow-y:auto;padding:10px;position:absolute;top:75px;width:100%;z-index:1000}@keyframes fadeInTimeSelector{0%{opacity:0}to{opacity:1}}.new-reservation-page .time-period{margin-bottom:15px}.new-reservation-page .time-period-label{font-weight:700;margin-bottom:5px}.new-reservation-page .time-options{display:flex;flex-wrap:wrap;gap:5px}.new-reservation-page .time-option{background-color:#cfc;border-radius:5px;color:#060;cursor:pointer;padding:8px 12px;transition:background-color .2s ease}.new-reservation-page .time-option:hover{background-color:#b3ffb3}.new-reservation-page .time-option.selected{background-color:#060;color:#cfc}.new-reservation-page .info-text{color:#666;font-style:italic}.new-reservation-page .arrow{align-items:center;color:gray;display:flex;margin-left:auto}@media screen and (max-width:480px){.new-reservation-page .time-option{font-size:14px;padding:6px 10px}}.modal-overflow-component .close-button{background:#0000;border:none;color:#555;cursor:pointer;font-size:1.5rem;left:calc(100% - 25px);position:relative}.modal-overflow-component .close-button:hover{color:#222}.modal-overflow-component .modal-overlay{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:var(--z-index-modal)}.modal-overflow-component .modal-content{background-color:#fff;border-radius:8px;margin-top:-140px;max-width:600px;padding:20px;width:95%}.modal-overflow-component .modal-content--overflow{max-height:none;overflow:visible}.reservation-details-modal .menu-modal-container{max-width:600px;padding:24px}.reservation-details-modal .menu-modal-title{margin-bottom:8px}.reservation-details-modal .menu-modal-description{color:#666;font-size:.9rem;margin-bottom:20px;text-align:center}.reservation-details-modal .menu-modal-loading{padding:40px;text-align:center}.reservation-details-modal .menu-modal-loading-text{color:#6c757d;margin-bottom:16px}.reservation-details-modal .menu-modal-loading-spinner{animation:menu-modal-spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top:3px solid var(--color-blue);height:30px;margin:0 auto;width:30px}@keyframes menu-modal-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.reservation-details-modal .menu-modal-error{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#dc3545;margin-bottom:16px;padding:20px;text-align:center}.reservation-details-modal .menu-modal-selected-summary{background-color:#e8f4f8;border:1px solid #bee5eb;border-radius:8px;margin-bottom:20px;padding:16px}.reservation-details-modal .menu-modal-selected-title{color:#0c5460;font-size:1rem;font-weight:600;margin:0}.reservation-details-modal .menu-modal-available-section{margin-bottom:24px}.reservation-details-modal .menu-modal-available-title{color:#495057;font-size:1rem;font-weight:600;margin-bottom:16px}.reservation-details-modal .menu-modal-legend{align-items:center;background-color:#f8f9fa;border-radius:6px;color:#6c757d;display:flex;flex-wrap:wrap;font-size:.85rem;gap:16px;margin-bottom:16px;padding:12px}.reservation-details-modal .menu-modal-legend-item{align-items:center;display:flex;gap:6px}.reservation-details-modal .menu-modal-legend-dot{border-radius:50%;height:12px;width:12px}.reservation-details-modal .menu-modal-legend-dot--selected{background-color:var(--color-blue)}.reservation-details-modal .menu-modal-legend-dot--available{background-color:#e9ecef}.reservation-details-modal .menu-modal-legend-dot--unavailable{background-color:#ffc107}.reservation-details-modal .menu-modal-no-menus{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;color:#6c757d;padding:24px;text-align:center}.reservation-details-modal .menu-modal-menus-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.reservation-details-modal .menu-modal-menu-card{background-color:#fff;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;padding:16px;position:relative;transition:all .2s ease}.reservation-details-modal .menu-modal-menu-card:hover{background-color:#f8f9fa;border-color:var(--color-blue)}.reservation-details-modal .menu-modal-menu-card--selected{background-color:#f0f8ff;border-color:var(--color-blue)}.reservation-details-modal .menu-modal-menu-card--selected:hover{background-color:#f0f8ff}.reservation-details-modal .menu-modal-menu-card--unavailable,.reservation-details-modal .menu-modal-menu-card--unavailable:hover{background-color:#fff3cd;border-color:#ffc107}.reservation-details-modal .menu-modal-menu-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:0}.reservation-details-modal .menu-modal-menu-name{color:#343a40;flex:1 1;font-size:1.1rem;font-weight:600;word-break:break-word}.reservation-details-modal .menu-modal-menu-name--selected{color:var(--color-blue)}.reservation-details-modal .menu-modal-menu-badge{background-color:#28a745;border-radius:4px;color:#fff;font-size:.75rem;font-weight:500;margin-right:30px;margin-top:-5px;padding:2px 6px;white-space:nowrap}.reservation-details-modal .menu-modal-menu-badge--selected{background-color:var(--color-blue)}.reservation-details-modal .menu-modal-selection-indicator{align-items:center;background-color:#e9ecef;border-radius:50%;display:flex;height:24px;justify-content:center;position:absolute;right:8px;top:8px;transition:all .2s ease;width:24px}.reservation-details-modal .menu-modal-selection-indicator--selected{background-color:var(--color-blue);border:2px solid #fff}.reservation-details-modal .menu-modal-selection-indicator--assigned{background-color:#28a745}.reservation-details-modal .menu-modal-selection-indicator--unavailable{background-color:#ffc107}.reservation-details-modal .menu-modal-selection-checkmark{color:#fff;font-size:14px;font-weight:700}.reservation-details-modal .menu-modal-selection-dot{color:#fff;font-size:12px;font-weight:700}.reservation-details-modal .menu-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.reservation-details-modal .menu-modal-button{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;min-width:120px;padding:12px 24px;transition:all .2s ease}.reservation-details-modal .menu-modal-button:disabled{cursor:not-allowed;opacity:.7}.reservation-details-modal .menu-modal-button--cancel{background-color:initial;border:2px solid #6c757d;color:#6c757d}.reservation-details-modal .menu-modal-button--cancel:hover:not(:disabled){background-color:#6c757d;color:#fff}.reservation-details-modal .menu-modal-button--primary{background-color:var(--color-blue);border:2px solid var(--color-blue);color:#fff;min-width:140px}.reservation-details-modal .menu-modal-button--primary:hover:not(:disabled){background-color:var(--color-blue);box-shadow:0 4px 12px #007bff4d;filter:brightness(1.1);transform:translateY(-1px)}.reservation-details-modal .menu-modal-button--primary:disabled{background-color:#6c757d;border-color:#6c757d}@media (max-width:768px){.reservation-details-modal .menu-modal-container{max-width:100%;padding:20px}.reservation-details-modal .menu-modal-menus-grid{grid-template-columns:1fr}.reservation-details-modal .menu-modal-menu-details{gap:4px}.reservation-details-modal .menu-modal-legend{gap:12px}}@media (max-width:600px){.reservation-details-modal .menu-modal-container{padding:16px}.reservation-details-modal .menu-modal-menu-card{padding:12px}.reservation-details-modal .menu-modal-actions{flex-direction:column;gap:8px}.reservation-details-modal .menu-modal-button{width:100%}.reservation-details-modal .menu-modal-legend{flex-direction:column;gap:8px}}@media (max-width:400px){.reservation-details-modal .menu-modal-container{padding:12px}.reservation-details-modal .menu-modal-available-title,.reservation-details-modal .menu-modal-selected-title{font-size:.9rem}}.reservation-details-modal .mode-modal-container{max-width:600px;padding:24px}.reservation-details-modal .mode-modal-description{color:#666;font-size:.9rem;margin-bottom:20px;text-align:center}.reservation-details-modal .mode-modal-modes-container{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:12px}.reservation-details-modal .mode-modal-modes-container.sub-modes{margin-bottom:16px}.reservation-details-modal .mode-modal-mode-button{background:#0000;border:2px solid var(--color-blue);border-radius:8px;color:var(--color-blue);cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 14px;transition:all .2s ease}.reservation-details-modal .mode-modal-mode-button:hover{background-color:var(--color-blue);box-shadow:0 4px 12px #007bff33;color:#fff;transform:translateY(-1px)}.reservation-details-modal .mode-modal-mode-button.active{background-color:var(--color-blue);color:#fff}.reservation-details-modal .mode-modal-warning{background:#fff3cd;border:1px solid #ffe08a;border-radius:6px;color:#856404;font-size:.9rem;margin:10px 0 18px;padding:12px;text-align:center}.reservation-details-modal .mode-modal-error{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#dc3545;margin-bottom:10px;padding:10px;text-align:center}.reservation-details-modal .mode-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:12px}.reservation-details-modal{max-width:550px;padding:24px}.reservation-details-modal .editable-title{align-items:center;border-radius:8px;cursor:pointer;display:flex;justify-content:center;margin-bottom:28px;padding:8px 16px;position:relative;transition:all .2s ease}.reservation-details-modal .editable-title:hover{background-color:#f8f9fa;border:1px solid #e9ecef}.reservation-details-modal .editable-title .secondary-title{color:#2c3e50;flex:1 1;font-weight:600;margin:0;text-align:center}.reservation-details-modal .title-edit-icon{align-items:center;border-radius:4px;color:var(--color-blue);display:flex;font-size:18px;justify-content:center;margin-left:12px;min-height:30px;min-width:30px;opacity:0;padding:6px;transition:opacity .2s ease}.reservation-details-modal .editable-title:hover .title-edit-icon{opacity:1}.reservation-details-modal .title-edit-icon:hover{background-color:var(--color-blue);color:#fff}.reservation-details-modal .details-section{border-bottom:1px solid #e9ecef;margin-bottom:32px;padding-bottom:24px}.reservation-details-modal .details-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.reservation-details-modal .details-section h3{color:#495057;font-size:1.1rem;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin-bottom:16px}.reservation-details-modal .details-grid{display:flex;flex-direction:column;gap:12px}.reservation-details-modal .detail-row{grid-gap:16px;align-items:center;background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:grid;gap:16px;grid-template-columns:24px 120px 1fr auto;padding:14px 16px;position:relative;transition:all .2s ease}.reservation-details-modal .detail-row:hover{background-color:#f1f3f4;border-color:var(--color-blue);box-shadow:0 2px 8px #007bff1a}.reservation-details-modal .detail-row.editable{cursor:pointer}.reservation-details-modal .detail-row.editable:hover{background-color:#e8f4f8;border-color:var(--color-blue);box-shadow:0 2px 8px #007bff26}.reservation-details-modal .detail-icon{align-items:center;color:var(--color-blue);display:flex;font-size:16px;justify-content:center}.reservation-details-modal .detail-label{color:#6c757d;font-size:.9rem;font-weight:500;text-align:left}.reservation-details-modal .detail-value{color:#343a40;font-weight:500;text-align:left;word-break:break-word}.reservation-details-modal .detail-edit-icon{align-items:center;border-radius:4px;color:var(--color-blue);cursor:pointer;display:flex;font-size:16px;justify-content:center;min-height:25px;min-width:25px;opacity:0;padding:6px;transition:opacity .2s ease}.reservation-details-modal .detail-row.editable:hover .detail-edit-icon{opacity:1}.reservation-details-modal .detail-edit-icon:hover{background-color:var(--color-blue);color:#fff}.reservation-details-modal .extra-content{color:#495057;font-size:.95rem;line-height:1.5}.reservation-details-modal .extra-content,.reservation-details-modal .note-content{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:16px}.reservation-details-modal .note-content p{color:#495057;font-size:.95rem;line-height:1.5;margin:0 0 16px}.reservation-details-modal .note-content p:last-of-type{margin-bottom:0}.reservation-details-modal .admin-note-edit{width:100%}.reservation-details-modal .admin-note-textarea{background-color:#fff;border:2px solid #e9ecef;border-radius:8px;box-sizing:border-box;font-size:.95rem;line-height:1.5;min-height:100px;padding:12px;resize:vertical;transition:border-color .2s ease;width:100%}.reservation-details-modal .admin-note-textarea:focus{border-color:var(--color-blue);box-shadow:0 0 0 3px #007bff1a;outline:none}.reservation-details-modal .admin-note-textarea:disabled{background-color:#f8f9fa;cursor:not-allowed;opacity:.7}.reservation-details-modal .admin-note-error{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#dc3545;font-size:.875rem;margin-bottom:12px;margin-top:8px;padding:8px 12px}.reservation-details-modal .admin-note-actions{display:flex;gap:12px;justify-content:flex-start;margin-top:12px}.reservation-details-modal .admin-note-actions .save-button:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.7}.reservation-details-modal .actions-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr);margin-top:8px}.reservation-details-modal .button-style-3{align-items:center;background-color:var(--color-blue);border:none;border-radius:8px;color:#fff;display:flex;font-size:.9rem;font-weight:500;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s ease}.reservation-details-modal .button-style-3:hover{background-color:var(--color-blue);box-shadow:0 4px 12px #007bff4d;filter:brightness(1.1);transform:translateY(-1px)}.reservation-details-modal .button-style-4{align-items:center;background-color:initial;border:2px solid var(--color-blue);border-radius:8px;color:var(--color-blue);display:flex;font-size:.9rem;font-weight:500;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s ease}.reservation-details-modal .button-style-4:hover{background-color:var(--color-blue);box-shadow:0 4px 12px #007bff33;color:#fff;transform:translateY(-1px)}@media (max-width:600px){.reservation-details-modal{max-width:100%;padding:20px}.reservation-details-modal .editable-title{margin-bottom:24px;padding:6px 12px}.reservation-details-modal .title-edit-icon{font-size:16px;margin-left:8px;min-height:26px;min-width:26px}.reservation-details-modal .details-section{margin-bottom:28px;padding-bottom:20px}.reservation-details-modal .detail-row{gap:8px 12px;grid-template-columns:20px 1fr auto;grid-template-rows:auto auto;padding:12px 14px}.reservation-details-modal .detail-icon{font-size:14px;grid-row:1/3}.reservation-details-modal .detail-label{color:#6c757d;font-size:.85rem;font-weight:600}.reservation-details-modal .detail-value{font-size:.9rem;grid-column:2;margin-top:2px}.reservation-details-modal .detail-edit-icon{font-size:12px;grid-column:3;grid-row:1/3}.reservation-details-modal .actions-grid{gap:12px;grid-template-columns:1fr}.reservation-details-modal .button-style-3,.reservation-details-modal .button-style-4{font-size:.9rem;padding:14px 16px}.reservation-details-modal .admin-note-actions .button-style-3{width:auto}}@media (max-width:400px){.reservation-details-modal{padding:16px}.reservation-details-modal .editable-title{margin-bottom:20px;padding:4px 8px}.reservation-details-modal .title-edit-icon{font-size:14px;margin-left:6px;min-height:24px;min-width:24px}.reservation-details-modal .details-section{margin-bottom:24px;padding-bottom:16px}.reservation-details-modal .detail-row{padding:10px 12px}.reservation-details-modal .admin-note-textarea{min-height:80px;padding:10px}}.fullscreen-notifications-backdrop{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background-color:#0006;height:100%;left:0;overflow-y:auto;padding:20px;position:fixed;top:0;width:100%;z-index:9999}.fullscreen-notifications-page .close-fullscreen-button{background:#0000;border:none;color:#fff;cursor:pointer;font-size:32px;position:fixed;right:20px;top:20px;z-index:10000}.fullscreen-notifications-page .notifications-scroll-container{margin-top:80px;padding-bottom:20px}.fullscreen-notifications-page .notification-group{margin-bottom:30px}.fullscreen-notifications-page .group-date{color:#fff;font-family:Poppins,sans-serif;font-weight:700;margin-bottom:20px;text-align:center}.fullscreen-notifications-page .notification-card{align-items:center;background:#ffffffd9;border-left:4px solid #48aaaf;border-radius:10px;box-shadow:0 4px 12px #0003;display:flex;font-family:Poppins,sans-serif;margin:10px auto;max-width:90%;padding:15px;position:relative;transition:transform .3s ease}.fullscreen-notifications-page .notification-card:hover{transform:translateY(-4px)}.fullscreen-notifications-page .notification-card-left{align-items:center;background-color:#48aaaf;border-radius:10px;display:flex;height:50px;justify-content:center;margin-right:15px;width:70px}.fullscreen-notifications-page .notification-card-left-content{align-items:center;color:#fff;display:flex;gap:4px}.fullscreen-notifications-page .notification-icon{align-items:center;color:#fff;display:flex;font-size:24px;justify-content:center}.fullscreen-notifications-page .notification-card-content{flex:1 1}.fullscreen-notifications-page .notification-title{color:#000;font-size:1.1rem;margin:0}.fullscreen-notifications-page .notification-details{color:#333;font-size:.9rem;margin-top:5px}.fullscreen-notifications-page .auth-tag,.fullscreen-notifications-page .giftcard-tag{background-color:#48aaaf;border-radius:4px;color:#fff;font-size:.75rem;margin-left:10px;padding:2px 6px}.fullscreen-notifications-page .waitlist-tag{background-color:#e28743;border-radius:4px;color:#fff;font-size:.75rem;margin-left:10px;padding:2px 6px}.fullscreen-notifications-page .giftcard-amount{font-weight:700}.fullscreen-notifications-page .recipient-email{display:block;margin-top:5px}.fullscreen-notifications-page .unread-dot{background-color:#48aaaf;border-radius:50%;height:12px;position:absolute;right:15px;top:50%;transform:translateY(-50%);width:12px}.fullscreen-notifications-page .restore-hidden-button{background:#48aaaf;border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-family:Poppins,sans-serif;font-weight:600;margin:20px auto;padding:10px 20px}.fullscreen-notifications-page .swipe-instruction{background:#fff;border-radius:8px;bottom:20px;box-shadow:0 4px 8px #0003;font-family:Poppins,sans-serif;max-width:250px;padding:10px 15px;position:fixed;right:20px;z-index:10001}.fullscreen-notifications-page .swipe-instruction-close{background:#0000;border:none;cursor:pointer;font-size:18px;position:absolute;right:9px;top:2px}.fullscreen-notifications-page .swipe-instruction-title{font-size:1rem;font-weight:700;margin:0 0 4px}.fullscreen-notifications-page .swipe-instruction-text{font-size:.9rem;line-height:1.2;margin:0}.bottom-gradient{background:linear-gradient(#0000,#0000004d);bottom:0;height:60px;left:0;pointer-events:none;position:fixed;right:0;z-index:9999}.top-nav-bar{align-items:center;background:#fff;border-bottom:1px solid #f1f5f9;display:grid;flex-shrink:0;font-family:Poppins,sans-serif;grid-template-columns:1fr auto 1fr;height:56px;padding:0 24px}.top-nav-bar__logo{align-items:center;display:flex}.top-nav-bar__logo-img{height:44px;width:auto}.top-nav-bar__tabs{align-items:center;display:flex;gap:4px;justify-self:center}.top-nav-bar__actions{align-items:center;display:flex;gap:12px;justify-self:end}.tab-item{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;font-family:Poppins,sans-serif;font-size:14px;font-weight:500;gap:6px;padding:16px;position:relative;transition:color .15s}.tab-item:hover{color:#374151}.tab-item--active{color:#0d9488}.tab-item__indicator{background:#0d9488;border-radius:1px;bottom:0;height:2px;left:16px;position:absolute;right:16px}.notification-bell{background:none;border:none;color:#6b7280;cursor:pointer;padding:8px;position:relative;transition:color .15s}.notification-bell:hover{color:#374151}.notification-bell__badge{background:#ef4444;color:#fff;font-size:10px;font-weight:700;height:16px;position:absolute;right:-2px;top:-2px;width:16px}.notification-bell__badge,.user-avatar-btn{align-items:center;border-radius:50%;display:flex;justify-content:center}.user-avatar-btn{background:#ccfbf1;border:none;color:#0f766e;cursor:pointer;height:32px;transition:background .15s;width:32px}.user-avatar-btn:hover{background:#99f6e4}.user-avatar-menu{background:#fff;border:1px solid #f1f5f9;border-radius:12px;box-shadow:0 4px 16px #0000001f;padding:4px 0;position:absolute;right:0;top:40px;width:192px;z-index:50}.user-avatar-menu__section-label{color:#94a3b8;font-size:11px;font-weight:600;letter-spacing:.05em;padding:10px 16px 6px;text-transform:uppercase}.user-avatar-menu__lang-toggle{display:flex;gap:4px;padding:0 12px 8px}.user-avatar-menu__lang-btn{background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#64748b;cursor:pointer;flex:1 1;font-family:Poppins,sans-serif;font-size:12px;font-weight:600;padding:6px 0;transition:all .15s}.user-avatar-menu__lang-btn:hover{border-color:#0d9488;color:#0d9488}.user-avatar-menu__lang-btn--active{background:#0d9488;border-color:#0d9488;color:#fff}.user-avatar-menu__lang-btn--active:hover{background:#0f766e;color:#fff}.user-avatar-menu__divider{background:#f1f5f9;height:1px;margin:4px 0}.user-avatar-menu__logout{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-family:Poppins,sans-serif;font-size:14px;gap:8px;padding:10px 16px;text-align:left;width:100%}.user-avatar-menu__logout:hover{background:#fef2f2;color:#dc2626}.today-notifications-component .today-notifications-container{background:#fff;border:1px solid #00000014;border-radius:12px;box-shadow:0 8px 32px #00000026;display:flex;flex-direction:column;font-family:Poppins,sans-serif;max-height:calc(100vh - 100px);max-width:calc(100vw - 40px);overflow:hidden;position:fixed;right:20px;top:65px;width:320px;z-index:1100}.today-notifications-component .today-notifications-header{align-items:center;background:#fafafa;border-bottom:1px solid #00000014;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:16px 20px 12px}.today-notifications-component .today-notifications-title{align-items:center;color:#333;display:flex;font-size:1.1rem;font-weight:600;gap:8px;margin:0}.today-notifications-component .new-indicator{animation:todayPulse 2s infinite;color:#48aaaf;font-size:1.5rem;line-height:1}@keyframes todayPulse{0%,to{opacity:1}50%{opacity:.5}}.today-notifications-component .today-notifications-close{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:18px;justify-content:center;padding:4px;transition:all .2s ease}.today-notifications-component .today-notifications-close:hover{background:#0000000d;color:#333}.today-notifications-component .today-notifications-content{flex:1 1;overflow-y:auto;padding:16px 20px 20px}.today-notifications-component .time-period-section{margin-bottom:20px}.today-notifications-component .time-period-section:last-child{margin-bottom:0}.today-notifications-component .time-period-title{border-bottom:2px solid #48aaaf;color:#666;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin:0 0 12px;padding-bottom:4px;text-transform:uppercase}.today-notifications-component .notifications-list{list-style:none;margin:0;padding:0}.today-notifications-component .notification-item{align-items:flex-start;border-left:3px solid #0000;display:flex;gap:12px;margin-left:-12px;padding:8px 0 8px 12px;position:relative;transition:all .2s ease}.today-notifications-component .notification-item.new{background:#48aaaf14;border-left-color:#48aaaf;border-radius:0 6px 6px 0}.today-notifications-component .event-icon{flex-shrink:0;font-size:12px;height:20px;margin-top:2px;width:20px}.today-notifications-component .event-icon.creation{color:#48aaaf}.today-notifications-component .event-icon.update{color:#76b5c5}.today-notifications-component .event-icon.deletion{color:#e28743}.today-notifications-component .notification-text{color:#333;flex:1 1;font-size:.9rem;line-height:1.4}.today-notifications-component .notification-text strong{color:#222;font-weight:600}@media screen and (max-width:900px){.today-notifications-component .today-notifications-container{display:none}}.new-reservation-page .account-manage-title{margin-bottom:30px;text-align:center}.new-reservation-page .account-manage-container{margin:0 auto;max-width:800px}.new-reservation-page .account-manage-form{display:flex;flex-direction:column;gap:15px}.new-reservation-page .input-container{position:relative}.new-reservation-page .input-icon{color:#6c757d;left:10px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.new-reservation-page .input-container input,.new-reservation-page .input-container textarea{border:1px solid #ccc;border-radius:5px;font-size:1rem;padding:10px 10px 10px 35px;transition:border-color .3s ease;width:100%}.new-reservation-page .form-error{align-items:center;color:#dc3545;display:flex;font-size:.9rem;gap:5px;margin-top:5px}.new-reservation-page .account-manage__button{align-items:center;background-color:var(--color-blue);border:none;border-radius:5px;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;gap:10px;justify-content:center;padding:12px;transition:background-color .3s ease}.new-reservation-page .reservation-sidebar-component{background-color:#fff;box-shadow:-2px 0 5px #0000001a;display:flex;flex-direction:column;height:100%;overflow-y:auto;position:fixed;right:-400px;top:0;transition:right .3s ease-in-out;width:400px;z-index:var(--z-index-sidebar-reservation)}.new-reservation-page .admin-title{margin-bottom:30px;text-align:center}.new-reservation-page .reservation-sidebar-component.open{right:0}.new-reservation-page .reservation-sidebar-content{padding:60px 20px 20px}.new-reservation-page .close-sidebar-button{background-color:initial;border:none;cursor:pointer;left:10px;position:absolute;top:10px}.new-reservation-page .close-sidebar-button svg{color:#000}.new-reservation-page .sidebar-section-one,.new-reservation-page .sidebar-section-two{margin-bottom:20px}.new-reservation-page .reservation-footer{margin-top:auto}.new-reservation-page .store-reservation-button{background-color:var(--color-blue);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1.1rem;padding:12px;width:100%}@media screen and (max-width:480px){.new-reservation-page .reservation-sidebar-component{width:100%}}.new-reservation-page .sidebar-section-personeel{margin-bottom:10px}.onboarding-overlay{align-items:center;animation:onboardingFadeIn .25s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#1e1b4b8c;display:flex;font-family:Poppins,sans-serif;inset:0;justify-content:center;padding:24px;position:fixed;z-index:9999}.onboarding-modal{animation:onboardingPopIn .35s cubic-bezier(.2,.9,.3,1.2);background:#fff;border-radius:20px;box-shadow:0 24px 60px #00000040;max-width:520px;padding:32px;width:100%}.onboarding-modal__header{align-items:center;display:flex;flex-direction:column;margin-bottom:20px;text-align:center}.onboarding-modal__avatar{background:#fff;border:4px solid #ddd6fe;border-radius:50%;box-shadow:0 6px 18px #0000001a;height:88px;margin-bottom:14px;overflow:hidden;width:88px}.onboarding-modal__avatar img{height:100%;object-fit:cover;width:100%}.onboarding-modal__title{color:#1f2937;font-size:20px;font-weight:600;line-height:1.3;margin:0}.onboarding-modal__footer,.onboarding-modal__how-to,.onboarding-modal__intro{color:#4b5563;font-size:14px;line-height:1.55;margin:0 0 12px}.onboarding-modal__examples{background:#f5f3ff;border-radius:12px;margin:16px 0;padding:14px 16px}.onboarding-modal__examples-title{color:#5b21b6;font-size:13px;font-weight:600;margin:0 0 8px}.onboarding-modal__examples ul{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.onboarding-modal__examples li{color:#374151;font-size:13px;line-height:1.5;padding-left:18px;position:relative}.onboarding-modal__examples li:before{background:#8b5cf6;border-radius:50%;content:"";height:6px;left:4px;position:absolute;top:8px;width:6px}.onboarding-modal__cta{background:#8b5cf6;border:none;border-radius:12px;color:#fff;cursor:pointer;font-family:Poppins,sans-serif;font-size:15px;font-weight:600;margin-top:8px;padding:12px 20px;transition:background .15s ease,transform .1s ease;width:100%}.onboarding-modal__cta:hover{background:#7c3aed}.onboarding-modal__cta:active{transform:scale(.98)}@keyframes onboardingFadeIn{0%{opacity:0}to{opacity:1}}@keyframes onboardingPopIn{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:520px){.onboarding-modal{padding:24px}.onboarding-modal__title{font-size:18px}}.app-shell{background:#f5f3ff;display:flex;flex-direction:column;font-family:Poppins,sans-serif;height:100vh}.app-shell__content{flex:1 1;overflow:hidden}.two-panel-layout{display:grid;grid-template-columns:45% 1fr;height:100%}.full-screen-layout{height:100%;overflow-y:auto;width:100%}.spinner-container{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.spinner{animation:spin .8s linear infinite;border:3px solid #ccfbf1;border-radius:50%;border-top-color:#0d9488;height:32px;width:32px}.old-version-link{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#ffffffd9;border:1px solid #00000014;border-radius:999px;bottom:32px;color:#6b7280;font-family:Poppins,sans-serif;font-size:12px;opacity:.6;padding:6px 12px;position:fixed;right:95px;text-decoration:none;transition:opacity .2s ease,color .2s ease;z-index:50}.old-version-link:focus-visible,.old-version-link:hover{color:#0d9488;opacity:1;outline:none}@media (max-width:768px){.two-panel-layout{grid-template-columns:1fr}}.blocked-slots-manage-button,.blocked-slots-modal-overlay,.blocked-slots-modal-window{z-index:var(--z-index-blocked-slots)}.qr-page .qr-scanner-overlay{background-color:#000;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1000}.qr-page .qr-scanner-container{color:#fff;display:flex;flex-direction:column;height:100%;position:relative;width:100%}.qr-page .qr-scanner-header{align-items:center;background:linear-gradient(180deg,#000c,#0006 70%,#0000);display:flex;left:0;padding:20px;position:absolute;right:0;top:0;z-index:10}.qr-page .qr-back-button{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:50px;justify-content:center;margin-right:15px;transition:all .3s ease;width:50px}.qr-page .qr-back-button:hover{background:#ffffff40;box-shadow:0 8px 25px #0000004d;transform:translateY(-2px)}.qr-page .qr-scanner-title{color:#fff;font-size:20px;font-weight:600;margin:0;text-shadow:2px 2px 8px #000000b3}.qr-page .qr-scanner-instructions{left:50%;max-width:90%;padding:0 20px;position:absolute;text-align:center;top:80px;transform:translateX(-50%);z-index:10}.qr-page .qr-scanner-instructions p{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:#000000b3;border:1px solid #fff3;border-radius:20px;font-size:14px;margin:0;padding:12px 20px;text-shadow:1px 1px 3px #000c}.qr-page .qr-scanner-wrapper{align-items:center;border-radius:20px;display:flex;height:70%;justify-content:center;max-height:400px;max-width:400px;overflow:hidden;width:90%}.qr-page .qr-scanner-wrapper,.qr-page .qr-scanner-wrapper:after{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.qr-page .qr-scanner-wrapper:after{border:3px solid #ffffffe6;border-radius:15px;content:"";height:80%;pointer-events:none;width:80%;z-index:2}.qr-page .qr-scanner-wrapper:before{animation:qr-pulse 2s ease-in-out infinite alternate;border-radius:20px;box-shadow:0 0 20px #48aaaf;box-shadow:0 0 20px var(--color-blue,#48aaaf);content:"";height:85%;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:85%;z-index:1}@keyframes qr-pulse{0%{box-shadow:0 0 20px #48aaaf66}to{box-shadow:0 0 30px #48aaafcc}}.qr-page .qr-scanner-wrapper section{align-items:center;border-radius:20px;display:flex;height:100%!important;justify-content:center;overflow:hidden;width:100%!important}.qr-page .qr-scanner-wrapper video{border-radius:20px;height:100%!important;object-fit:cover!important;width:100%!important}.qr-page .qr-camera-toggle{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#000000b3;border:2px solid #48aaafcc;border-radius:50%;bottom:30px;color:#fff;cursor:pointer;display:flex;height:70px;justify-content:center;position:absolute;right:30px;transition:all .3s ease;width:70px;z-index:10}.qr-page .qr-camera-toggle:hover{background:#000c;border-color:#48aaaf;border-color:var(--color-blue,#48aaaf);transform:scale(1.05)}.qr-page .qr-loading-container{align-items:center;display:flex;flex-direction:column;gap:20px;height:100%;justify-content:center;z-index:10}.qr-page .qr-spinner{animation:qr-spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top:4px solid var(--color-blue,#48aaaf);height:50px;width:50px}@keyframes qr-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.qr-page .qr-loading-container p{font-size:18px;font-weight:500;text-shadow:2px 2px 8px #000000b3}.qr-page .qr-error-message{align-items:center;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background-color:#ff6b6b26;border:1px solid #ff6b6b4d;border-radius:12px;bottom:100px;color:#ff6b6b;display:flex;flex-direction:column;gap:12px;left:50%;max-width:400px;padding:16px 20px;position:absolute;text-align:center;text-shadow:1px 1px 3px #00000080;transform:translateX(-50%);width:90%;z-index:10}.qr-page .qr-error-message span{font-size:14px}.qr-page .qr-retry-button{background-color:#48aaaf;background-color:var(--color-blue,#48aaaf);border:none;border-radius:8px;box-shadow:0 4px 15px #48aaaf4d;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .3s ease}.qr-page .qr-retry-button:hover{background-color:#3f999e;box-shadow:0 6px 20px #48aaaf66;transform:translateY(-1px)}@media screen and (max-width:600px){.qr-page .qr-scanner-header{padding:15px}.qr-page .qr-back-button{height:45px;margin-right:12px;width:45px}.qr-page .qr-scanner-title{font-size:18px}.qr-page .qr-scanner-instructions{top:70px}.qr-page .qr-scanner-instructions p{font-size:13px;padding:10px 16px}.qr-page .qr-scanner-wrapper{height:60%;max-height:350px;max-width:350px;width:85%}.qr-page .qr-camera-toggle{bottom:20px;height:60px;right:20px;width:60px}.qr-page .qr-error-message{bottom:80px;padding:14px 16px}}@media screen and (max-width:375px){.qr-page .qr-scanner-wrapper{height:50%;max-height:300px;max-width:300px;width:80%}}.qr-page .qr-scanner-overlay{overflow:hidden}.qr-page .qr-scanner-container::-webkit-scrollbar{display:none}.qr-page .qr-scanner-container{-ms-overflow-style:none;scrollbar-width:none}.login-page *{box-sizing:border-box;margin:0;padding:0}.login-page .login-container{align-items:center;background-position:50%;background-repeat:no-repeat;background-size:cover;display:flex;justify-content:center;min-height:100vh;padding:20px;position:relative;transform-origin:center center;width:100%}.login-page .animated-background{height:100vh;left:0;overflow:hidden;position:fixed;top:0;width:100vw;z-index:1}.login-page .afspraak-button{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:#ffffff26;border:1px solid #fff3;border-radius:12px;box-shadow:0 8px 32px #0000001a;color:#fff;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 18px;position:fixed;right:20px;text-decoration:none;top:20px;transition:all .3s ease;z-index:100}.login-page .afspraak-button:hover{background-color:#ffffff40;box-shadow:0 12px 40px #00000026;transform:translateY(-2px)}.login-page .white-center-container{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background-color:#fffffff2;border-radius:20px;box-shadow:0 25px 50px #00000026;display:flex;height:auto;max-width:1000px;min-height:600px;overflow:hidden;position:relative;width:100%;z-index:2}.login-page .login-branding{background:linear-gradient(135deg,var(--color-sidebar),var(--color-blue));border-right:1px solid #ffffff26;color:#fff;display:flex;flex:1 1;flex-direction:column;justify-content:center;overflow:hidden;padding:40px;position:relative}.login-page .brand-content{margin:0 auto;max-width:400px;position:relative;width:100%;z-index:2}.login-page .logo-container{display:flex;justify-content:center;margin-bottom:20px}.login-page .brand-logo{align-items:center;display:flex;font-size:42px;font-weight:700;height:150px;justify-content:center;overflow:hidden;width:220px}.login-page .brand-logo-image{height:100%;object-fit:contain;width:100%}.login-page .brand-title{color:#fff;font-size:32px;font-weight:700;margin-bottom:10px;text-align:center;text-shadow:2px 2px 8px #00000080}.login-page .brand-tagline{font-size:16px;margin-bottom:40px;opacity:.95;text-align:center;text-shadow:1px 1px 4px #0000004d}.login-page .brand-features{display:flex;flex-direction:column;gap:20px;margin-bottom:40px}.login-page .feature-item{align-items:flex-start;display:flex;gap:15px}.login-page .feature-icon{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:#ffffff26;border:1px solid #fff3;border-radius:50%;display:flex;height:40px;justify-content:center;min-width:40px;width:40px}.login-page .feature-text{flex:1 1}.login-page .feature-text h3{font-size:16px;font-weight:600;margin-bottom:4px;text-shadow:1px 1px 3px #0000004d}.login-page .feature-text p{font-size:14px;opacity:.95;text-shadow:1px 1px 3px #0000004d}.login-page .brand-footer{margin-top:auto;padding-top:20px;text-align:center}.login-page .brand-footer p{font-size:14px;margin-bottom:10px;text-shadow:1px 1px 3px #0000004d}.login-page .brand-cta{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:#ffffffe6;border:1px solid #ffffff4d;border-radius:8px;box-shadow:0 4px 15px #0000001a;color:#2d3748;display:inline-block;font-weight:600;padding:12px 24px;text-decoration:none;transition:all .3s ease}.login-page .brand-cta:hover{background-color:#fff;box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.login-page .login-panel{background-color:#fffffff2;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:40px}.login-page .login-form-container{margin:0 auto;max-width:400px;width:100%}.login-page .login-welcome{color:#2d3748;font-size:28px;font-weight:700;margin-bottom:10px}.login-page .login-subtitle{color:#718096;font-size:16px;margin-bottom:30px}.login-page .error-message{background-color:#ff6b6b1a;border:1px solid #ff6b6b33;border-radius:8px;color:#e5973e}.login-page .error-message,.login-page .success-message{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;gap:10px;margin-bottom:20px;padding:12px}.login-page .success-message{background-color:#48bb781f;border:1px solid #48bb784d;border-radius:8px;box-shadow:0 2px 10px #48bb7814;color:#2f855a}.login-page .login-form-expanded{display:flex;flex-direction:column;gap:20px}.login-page .form-group{display:flex;flex-direction:column;gap:8px}.login-page .form-group label{color:#2d3748;font-size:14px;font-weight:500}.login-page .input-with-icon{position:relative;width:100%}.login-page .input-icon{color:#718096;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.login-page .login-input-expanded{background-color:#fffc;border:1px solid #e2e8f0cc;border-radius:8px;font-size:16px;padding:12px 12px 12px 40px;transition:all .3s ease;width:100%}.login-page .login-input-expanded:focus{background-color:#fffffff2;border-color:var(--color-blue);box-shadow:0 0 0 3px #0d6efd1a;outline:none}.login-page .form-options{align-items:center;display:flex;flex-wrap:wrap;font-size:14px;gap:10px;justify-content:space-between}.login-page .remember-me{align-items:center;display:flex;gap:6px}.login-page .forgot-password{color:var(--color-blue);text-decoration:none;transition:all .3s ease}.login-page .forgot-password:hover{text-decoration:underline}.login-page .login-button-expanded{align-items:center;background-color:var(--color-blue);border:none;border-radius:8px;box-shadow:0 4px 15px #0d6efd4d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:10px;justify-content:center;padding:12px;transition:all .3s ease;width:100%}.login-page .login-button-expanded:hover{background-color:var(--color-blue);box-shadow:0 6px 20px #0d6efd66;transform:translateY(-1px)}.login-page .login-button-expanded:disabled{background-color:#718096;box-shadow:0 4px 15px #7180964d;cursor:not-allowed;transform:none}.login-page .qr-login-button{align-items:center;background-color:initial;border:2px solid var(--color-blue);border-radius:8px;box-shadow:0 4px 15px #0d6efd1a;color:var(--color-blue);cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:10px;justify-content:center;padding:12px;transition:all .3s ease;width:100%}.login-page .qr-login-button:hover{background-color:var(--color-blue);box-shadow:0 6px 20px #0d6efd4d;color:#fff;transform:translateY(-1px)}.login-page .qr-login-button:disabled{background-color:initial;border-color:#718096;box-shadow:0 4px 15px #7180961a;color:#718096;cursor:not-allowed;transform:none}.login-page .spinner{animation:spin 1s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:18px;width:18px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.login-page .login-footer{color:#718096;font-size:13px;margin-top:40px;text-align:center}@media screen and (max-width:1024px){.login-page .white-center-container{max-width:90%}}@media screen and (max-width:900px){.login-page .white-center-container{flex-direction:column;max-height:none}.login-page .login-branding,.login-page .login-panel{flex:none;width:100%}.login-page .login-branding{border-bottom:1px solid #ffffff26;border-right:none;order:2}.login-page .login-panel{order:1;padding-bottom:30px;padding-top:30px}.login-page .brand-content{padding:20px 0}.login-page .brand-features{margin-bottom:30px}}@media screen and (max-width:600px){.login-page .login-container{padding:10px}.login-page .white-center-container{border-radius:16px;max-width:100%}.login-page .login-branding,.login-page .login-panel{padding:20px}.login-page .brand-logo{border-radius:15px;font-size:32px;height:90px;padding:10px;width:150px}.login-page .brand-title{font-size:24px}.login-page .login-welcome{font-size:22px}.login-page .afspraak-button{border-radius:8px;font-size:12px;padding:8px 12px;right:10px;top:10px}.login-page .feature-item{align-items:center}.login-page .feature-icon{height:32px;min-width:32px;width:32px}.login-page .feature-text h3{font-size:14px}.login-page .feature-text p{font-size:12px}}@media screen and (max-width:375px){.login-page .form-options{align-items:flex-start;flex-direction:column}.login-page .forgot-password{margin-top:5px}.login-page .brand-logo{border-radius:12px;height:72px;padding:8px;width:120px}}@media (prefers-reduced-motion:reduce){.login-page .login-container{animation:none}}@media screen and (max-width:900px){.login-page .afspraak-button{background-color:var(--color-sidebar);color:#fff}}.login-page .pin-input-container-login{cursor:text;display:flex;justify-content:center;margin:20px 0;position:relative}.login-page .pin-boxes-login{display:flex;gap:10px}.login-page .pin-box-login{align-items:center;border:2px solid #ccc;border-radius:8px;color:#333;display:flex;font-size:24px;font-weight:700;height:55px;justify-content:center;transition:all .2s ease-in-out;width:45px}.login-page .pin-box-login.filled{border-color:#4a90e2;transform:scale(1.05)}.login-page .pin-input-container-login:focus-within .pin-box-login.filled{border-color:#357abd}.login-page .pin-box-login.active{border-color:#357abd;box-shadow:0 0 3px #357abd80}.login-page .hidden-pin-input{background:#0000;border:none;caret-color:#0000;color:#0000;height:1px;left:-9999px;opacity:0;position:absolute;top:0;width:1px}.login-page .login-form-container .forgot-password{color:#555;display:block;font-size:14px;margin-top:15px;text-align:center;text-decoration:none}.login-page .login-form-container .forgot-password:hover{color:#000;text-decoration:underline}.login-page .pin-prompt-container{animation:fadeIn .5s ease-out;background-color:#eef5fd;border-left:5px solid var(--color-blue);border-radius:8px;margin-bottom:20px;padding:15px 20px 15px 25px;position:relative}.login-page .pin-prompt-container h4{color:#2d3748;font-weight:600;margin-bottom:10px;margin-top:0}.login-page .pin-prompt-container ol{color:#4a5568;font-size:14px;margin:0;padding-left:20px}.login-page .pin-prompt-container li{line-height:1.4;margin-bottom:5px}.login-page .pin-prompt-container li:last-child{margin-bottom:0}.login-page .pin-prompt-close{background:none;border:none;color:#a0aec0;cursor:pointer;font-size:24px;font-weight:700;line-height:1;padding:0;position:absolute;right:12px;top:8px;transition:color .2s ease}.login-page .pin-prompt-close:hover{color:#4a5568}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}:root{--color-bg:#f5f3ff;--color-white:#fff;--color-text:#1e293b;--color-gray:#94a3b8;--color-blue:#0d9488;--color-blue-label:#0d9488;--color-blue-transparant:#0d94881a;--color-red:#ef4444;--color-sidebar:#0d9488;--border-radius:12px;--z-index-modal:1000;--z-index-sidebar-reservation:10000;--z-index-blocked-slots:10000;--marker-bg:#0000;--mededeling-primary-color:#48aaaf;--mededeling-primary-hover:#48aaafe6;--mededeling-primary-light:#48aaaf1a;--mededeling-text-dark:#2d3748;--mededeling-text-secondary:#a0aec0;--mededeling-border-color:#d1d5db;--mededeling-bg-light:#f6f7f7;--mededeling-bg-white:#fff;--mededeling-border-light:#e5e7eb;--mededeling-error-color:orange;--mededeling-danger-color:red}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f3ff;font-family:Poppins,sans-serif}button,input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:2px}.standard-button{align-items:center;background-color:#f8f9fa;border:1px solid #ccc;border-radius:8px;color:#666;cursor:pointer;display:inline-flex;font-family:Poppins,sans-serif;font-size:.85rem;font-weight:500;gap:6px;justify-content:center;padding:8px 16px;transition:all .2s ease}.standard-button:hover{background-color:#e9ecef;color:#333}.standard-button.blue{background-color:var(--color-blue);border-color:var(--color-blue);color:#fff}.standard-button.blue:hover{filter:brightness(1.1)}.standard-button.blue:disabled{background-color:#ccc;border-color:#ccc;cursor:not-allowed}.standard-button.red{background-color:var(--color-red);border-color:var(--color-red);color:#fff}.standard-button.red:hover{filter:brightness(1.1)}.button-style-1{align-items:center;background-color:#fff;border:1px solid #ccc;border-radius:8px;color:#333;cursor:pointer;display:inline-flex;font-family:Poppins,sans-serif;font-size:.85rem;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.button-style-1:hover{border-color:var(--color-blue);color:var(--color-blue)}.button-style-1-icon{color:inherit;font-size:.85rem}.title-center{text-align:center}.button-style-3{align-items:center;background-color:var(--color-blue);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-family:Poppins,sans-serif;font-size:.9rem;font-weight:500;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s ease}.button-style-3:hover{box-shadow:0 4px 12px #007bff4d;filter:brightness(1.1);transform:translateY(-1px)}
/*# sourceMappingURL=main.93bdddd2.css.map*/