.form-field{margin-bottom:var(--spacing-lg)}.form-field__label{display:block;margin-bottom:var(--spacing-md);font-weight:500;font-size:14px;cursor:pointer;-webkit-user-select:none;user-select:none}.form-field__required{color:var(--danger);margin-left:2px}.form-field__input{width:100%;min-height:44px;padding:12px 14px;font-size:16px;font-family:inherit;border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-color);color:var(--text-color);transition:all .2s}.form-field__input:focus{outline:none;border-color:var(--primary);box-shadow:var(--focus-ring-shadow)}.form-field__input:focus-visible{outline:3px solid var(--primary);outline-offset:2px;box-shadow:none}.form-field__input:disabled{background-color:var(--surface-light);cursor:not-allowed;opacity:.6}.form-field__input.has-error{border-color:var(--danger);background-color:var(--form-input-error-bg)}.form-field__input.has-error:focus{box-shadow:0 0 0 3px var(--alert-error-bg)}textarea.form-field__input{min-height:100px;resize:vertical}select.form-field__input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:20px;padding-right:40px}.form-field__checkbox-group{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) 0;cursor:pointer}.form-field__checkbox-input{width:20px;height:20px;min-width:20px;min-height:20px;cursor:pointer;accent-color:var(--primary)}.form-field__checkbox-label{font-weight:400;font-size:14px;cursor:pointer;-webkit-user-select:none;user-select:none;margin:0}.form-field__error{display:flex;align-items:center;gap:4px;margin-top:var(--spacing-sm);color:var(--danger);font-size:12px;line-height:1.4}.form-field__help{display:block;margin-top:var(--spacing-sm);color:var(--gray-500);font-size:12px;line-height:1.4}.form-field.has-error .form-field__label{color:var(--danger)}@media (max-width: 767px){.form-field{margin-bottom:var(--spacing-md)}.form-field__input{font-size:16px;min-height:44px}}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);padding:20px}.login-box{background-color:var(--bg-color);border-radius:var(--radius-xl);padding:40px;width:100%;max-width:400px;box-shadow:var(--shadow-lg)}.login-box h1{text-align:center;color:var(--primary);margin-bottom:8px;font-size:32px}.login-box .subtitle{text-align:center;color:var(--gray-500);margin-bottom:30px;font-size:14px}.login-box form{margin-bottom:30px}.login-footer{padding-top:20px;border-top:1px solid var(--border-color);text-align:center;font-size:12px;color:var(--gray-500)}.login-footer p{margin:4px 0}.responsive-table-container{overflow-x:auto;margin:var(--spacing-lg) 0;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.responsive-table{width:100%;border-collapse:collapse}.responsive-table thead{background-color:var(--surface-light);font-weight:600}.responsive-table th{padding:var(--spacing-md);text-align:left;border-bottom:2px solid var(--border-color);font-size:13px;color:var(--gray-600);font-weight:600;white-space:nowrap}.responsive-table td{padding:var(--spacing-md);border-bottom:1px solid var(--border-color)}.responsive-table tbody tr:last-child td{border-bottom:none}.responsive-table tbody tr:hover{background-color:var(--surface-light)}.responsive-table td.actions{display:flex;gap:var(--spacing-sm);align-items:center}.responsive-cards-container{display:none;gap:var(--spacing-lg);margin:var(--spacing-lg) 0}.responsive-card{width:100%}@media (max-width: 767px){.responsive-table-container{display:none}.responsive-cards-container{display:flex;flex-direction:column}}.guest-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.guest-name{font-weight:500;color:var(--text-color);font-size:14px}.guest-email{font-size:12px;color:var(--gray-500)}.responsive-table .price{font-weight:600;color:var(--primary);font-size:16px}.booking-actions{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap}.booking-actions button,.booking-actions a{white-space:nowrap}@media (max-width: 767px){.responsive-table{font-size:12px}.guest-name{font-size:13px}.guest-email{font-size:11px}.responsive-table .price{font-size:14px}.booking-actions button.small,.booking-actions a.small{font-size:11px;padding:6px 10px}}.month-year-picker{position:relative;display:inline-block}.month-year-picker-trigger{display:flex;align-items:center;gap:6px;font-size:1.25rem;font-weight:600;color:var(--text-color);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);padding:4px 10px;cursor:pointer;transition:all .2s ease;min-height:44px}.month-year-picker-trigger:hover,.month-year-picker-trigger:focus-visible{background:var(--surface-light);border-color:var(--border-color);outline:none}.month-year-picker-caret{font-size:.7rem;color:var(--gray-500)}.month-year-picker-popover{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);z-index:50;width:260px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--popover-shadow);padding:var(--spacing-md)}.month-year-picker-year-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm)}.month-year-picker-year-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);background:var(--surface-light);color:var(--text-color);border-radius:var(--radius-md);cursor:pointer;font-size:1rem}.month-year-picker-year-btn:hover{background:var(--primary-fill);color:var(--text-on-primary);border-color:var(--primary-fill)}.month-year-picker-year-label{font-weight:600;font-size:1rem;color:var(--text-color)}.month-year-picker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.month-year-picker-month-btn{padding:8px 4px;border:1px solid var(--border-color);background:var(--surface-light);color:var(--text-color);border-radius:var(--radius-md);cursor:pointer;font-size:.85rem;text-transform:capitalize;transition:all .15s ease}.month-year-picker-month-btn:hover{border-color:var(--primary)}.month-year-picker-month-btn.is-selected{background:var(--primary-fill);color:var(--text-on-primary);border-color:var(--primary-fill)}.month-year-picker-month-btn:disabled{opacity:.35;cursor:not-allowed}.month-year-picker-month-btn:disabled:hover{border-color:var(--border-color)}@media (max-width: 599px){.month-year-picker-trigger{font-size:.95rem;padding:4px 8px}.month-year-picker-popover{width:90vw;max-width:300px;left:0;transform:none}}.booking-status-legend-items{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.booking-status-legend-item{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--gray-500);white-space:nowrap}.booking-status-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.booking-status-legend-collapsible{position:relative}.booking-status-legend-toggle{display:none;width:32px;height:32px;align-items:center;justify-content:center;border:1px solid var(--border-color);background:var(--surface-light);color:var(--gray-500);border-radius:50%;cursor:pointer;font-size:1rem}.booking-status-legend-popover{position:absolute;top:calc(100% + 6px);right:0;z-index:50;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--popover-shadow);padding:var(--spacing-sm) var(--spacing-md)}.booking-status-legend-popover .booking-status-legend-items{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}@media (max-width: 599px){.booking-status-legend-collapsible .booking-status-legend-full{display:none}.booking-status-legend-collapsible .booking-status-legend-toggle{display:flex}}.canvas-calendar-container{position:relative;display:flex;flex-direction:column;width:100%;height:auto;max-height:600px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:visible}.canvas-body{display:flex;flex-direction:column;min-height:0;border-radius:0 0 var(--radius-md) var(--radius-md);overflow:hidden}.canvas-toolbar{flex-shrink:0;display:flex;align-items:center;gap:var(--spacing-md);height:44px;padding:0 var(--spacing-sm);background:var(--card-bg);border-bottom:1px solid var(--border-color)}.canvas-month-picker .month-year-picker-trigger{font-size:1rem;min-height:32px}.canvas-today-btn{padding:6px 12px;border:1px solid var(--border-color);background:var(--surface-light);color:var(--text-color);border-radius:var(--radius-md);cursor:pointer;font-size:.85rem;font-weight:500;white-space:nowrap}.canvas-today-btn:hover{background:var(--primary-fill);color:var(--text-on-primary);border-color:var(--primary-fill)}.canvas-legend{margin-left:auto}.canvas-header-row{flex-shrink:0;display:flex;height:37px}.canvas-header-corner{flex-shrink:0;width:150px;background:var(--surface-light);border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color)}@media (max-width: 599px){.canvas-header-corner{width:90px}}.canvas-header-wrapper{flex:1;min-width:0;background:var(--card-bg);border-bottom:1px solid var(--border-color);overflow-x:auto;overflow-y:hidden;scroll-behavior:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x}.canvas-header-wrapper::-webkit-scrollbar{height:0}.canvas-header{display:block;image-rendering:crisp-edges;height:100%}.canvas-calendar-area{flex:1;overflow:auto;min-height:0;scroll-behavior:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overscroll-behavior:contain;scrollbar-width:thin}.canvas-calendar-area::-webkit-scrollbar{width:8px;height:8px}.canvas-calendar-area::-webkit-scrollbar-track{background:transparent}.canvas-calendar-area::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-sm)}.canvas-calendar-area::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.canvas-content-wrapper{display:flex;width:max-content;min-width:100%}.canvas-properties-container{position:sticky;left:0;z-index:2;flex-shrink:0;width:150px;background:var(--surface-light);border-right:1px solid var(--border-color);overflow:hidden}@media (max-width: 599px){.canvas-properties-container{width:90px}}.canvas-properties{display:block;image-rendering:crisp-edges;width:100%;height:100%}.canvas-main-container{position:relative}.canvas-main{display:block;image-rendering:crisp-edges;cursor:pointer}.canvas-main:hover{background:var(--overlay-hover)}.canvas-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--loading-overlay-bg);color:var(--text-on-primary);padding:16px 24px;border-radius:var(--radius-md);font-size:14px;z-index:100}@media (max-width: 899px){.canvas-calendar-container{max-height:500px}.canvas-filter-btn{width:90px;padding:6px 10px}}@media (max-width: 599px){.canvas-calendar-container{max-height:400px}.canvas-filter-btn{width:80px;padding:4px 8px;font-size:12px}.canvas-toolbar{gap:var(--spacing-sm);padding:0 var(--spacing-sm)}.canvas-month-picker .month-year-picker-trigger{font-size:.85rem;padding:4px 6px}.canvas-today-btn{padding:6px 8px;font-size:.75rem}}.monthly-calendar-container{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--card-bg);border-radius:var(--radius-md);margin-top:var(--spacing-lg);border:1px solid var(--border-color)}.month-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);flex-wrap:wrap;padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.month-title{font-size:1.25rem;font-weight:600;color:var(--text-color);margin:0;text-align:center;min-width:150px;flex:0 1 auto}.month-nav{display:flex;gap:var(--spacing-sm);align-items:center;flex-wrap:wrap;width:100%}.month-legend{margin-left:auto}.nav-btn,.today-btn{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);background:var(--surface-light);color:var(--text-color);border-radius:var(--radius-md);cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;white-space:nowrap}.nav-btn:hover,.today-btn:hover{background:var(--primary-fill);color:var(--text-on-primary);border-color:var(--primary-fill)}.nav-btn:active,.today-btn:active{transform:scale(.98)}.month-header-secondary{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.month-stats-badge{font-size:.8rem;font-weight:500;color:var(--gray-500);white-space:nowrap}.property-selector-wrapper{display:flex;align-items:center;gap:var(--spacing-sm);flex:0 1 auto}.property-selector-label{font-size:.9rem;font-weight:500;color:var(--gray-500);white-space:nowrap}.property-selector{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);background:var(--surface-light);color:var(--text-color);border-radius:var(--radius-md);font-size:.9rem;cursor:pointer;min-width:150px}.property-selector:hover{border-color:var(--primary)}.property-selector:focus{outline:none;border-color:var(--primary);box-shadow:var(--calendar-focus-ring-shadow)}.month-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);font-weight:600;color:var(--gray-500);font-size:.85rem;text-align:center}.weekday-header{padding:var(--spacing-sm);text-transform:uppercase;letter-spacing:.05em}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--spacing-sm);grid-auto-rows:auto}.month-day-cell{background:var(--surface-light);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;flex-direction:column;position:relative;min-height:auto;transition:all .2s ease;overflow:visible}.month-day-cell:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}.month-day-cell.is-today{background:var(--calendar-today-bg);border:2px solid var(--primary)}.month-day-cell.other-month{opacity:.4;background:var(--surface-light)}.month-day-cell.is-expanded{z-index:30}.day-dots-row{display:none}.day-dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:var(--status-confirmed-text)}.day-dot.status-confirmed{background:var(--status-confirmed-text)}.day-dot.status-requested{background:var(--status-requested-text)}.day-dot.status-cancelled{background:var(--status-cancelled-text)}.day-dot.status-completed{background:var(--status-completed-text)}.day-dot.status-individual_requested{background:var(--status-individual-text)}.day-dot.status-offer_sent{background:var(--status-offer-sent-text)}.day-dot.status-offer_declined{background:var(--status-cancelled-text)}.day-dot.status-offer_expired{background:var(--status-handover-not-needed-text)}.day-dot-more{font-size:.55rem;font-weight:700;color:var(--gray-500)}.day-bookings-popover{display:none;position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--popover-shadow);padding:6px;flex-direction:column;gap:4px;z-index:40}.month-day-cell.is-expanded .day-bookings-popover{display:flex}.day-number{font-size:1rem;font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-sm)}.day-bookings-container{display:flex;flex-direction:column;gap:4px;margin-top:4px}.day-booking-bar{background:var(--status-confirmed-bg);color:var(--status-confirmed-text);border:1px solid var(--status-confirmed-text);border-radius:var(--radius-sm);padding:4px 6px;display:flex;align-items:center;justify-content:space-between;font-size:.75rem;font-weight:500;cursor:pointer;overflow:visible;white-space:normal;text-overflow:clip;min-height:16px;transition:all .2s ease;flex:0 0 auto;line-height:1.2}.day-booking-bar:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.day-booking-bar:focus{outline:2px solid var(--primary);outline-offset:1px}.bar-label{display:inline-block;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.payment-indicator{font-size:.75rem;font-weight:700;margin-left:4px;display:inline-block;flex-shrink:0}.booking-more-badge{background:var(--primary-fill);color:var(--text-on-primary);padding:4px 8px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:700;text-align:center;cursor:default;flex:0 0 auto}.day-booking-bar.status-confirmed{background:var(--status-confirmed-bg);color:var(--status-confirmed-text);border-color:var(--status-confirmed-text)}.day-booking-bar.status-requested{background:var(--status-requested-bg);color:var(--status-requested-text);border-color:var(--status-requested-text)}.day-booking-bar.status-cancelled{background:var(--status-cancelled-bg);color:var(--status-cancelled-text);border-color:var(--status-cancelled-text);opacity:.6}.day-booking-bar.status-individual_requested{background:var(--status-individual-bg);color:var(--status-individual-text);border-color:var(--status-individual-text)}.day-booking-bar.status-offer_sent{background:var(--status-offer-sent-bg);color:var(--status-offer-sent-text);border-color:var(--status-offer-sent-text)}.day-booking-bar.status-completed{background:var(--status-completed-bg);color:var(--status-completed-text);border-color:var(--status-completed-text)}.day-booking-bar.status-offer_declined{background:var(--status-cancelled-bg);color:var(--status-cancelled-text);border-color:var(--status-cancelled-text);opacity:.6}.day-booking-bar.status-offer_expired{background:var(--status-handover-not-needed-bg);color:var(--status-handover-not-needed-text);border-color:var(--status-handover-not-needed-text)}@media (min-width: 900px){.day-booking-bar{font-size:.85rem;padding:6px 8px;min-height:24px}.bar-label{font-size:.85rem}.day-bookings-container{gap:6px}}@media (min-width: 600px) and (max-width: 899px){.day-booking-bar{font-size:.8rem;padding:5px 7px;min-height:20px}.bar-label{font-size:.8rem}.day-number{font-size:.95rem;margin-bottom:4px}.day-bookings-container{gap:5px}.month-header{flex-direction:column;align-items:stretch}.month-nav,.property-selector-wrapper,.property-selector{width:100%}}@media (max-width: 599px){.monthly-calendar-container{padding:var(--spacing-sm)}.month-weekdays{font-size:.7rem}.weekday-header{padding:2px}.month-grid{grid-auto-rows:auto;gap:4px}.month-day-cell{padding:4px 3px;min-height:auto}.day-number{font-size:.7rem;margin-bottom:2px;font-weight:600}.day-booking-bar{font-size:.65rem;padding:2px 4px;min-height:16px;gap:2px}.bar-label{font-size:.65rem;word-break:break-word}.payment-indicator{font-size:.5rem;margin-left:2px;flex-shrink:0}.booking-more-badge{font-size:.6rem;padding:2px 3px;margin-top:2px}.day-bookings-container{gap:3px;margin-top:2px}.month-title{font-size:1rem;width:100%;order:-1}.nav-btn,.today-btn{font-size:.75rem;padding:10px;min-height:44px;min-width:44px;flex:1;white-space:nowrap}.month-nav{justify-content:center;gap:4px;width:100%;flex-wrap:wrap}.month-legend{position:absolute;top:0;right:0;margin-left:0}.day-bookings-full{display:none}.day-dots-row{display:flex;align-items:center;gap:3px;flex-wrap:wrap;margin-top:2px;min-height:20px;cursor:pointer}.month-day-cell{position:relative;min-height:44px}.month-header-secondary{flex-direction:column;align-items:stretch;width:100%;gap:6px}.month-stats-badge{text-align:center}.property-selector-wrapper{width:100%}.property-selector{width:100%;font-size:.8rem;padding:6px 8px}.property-selector-label{font-size:.75rem;white-space:nowrap}.month-header{flex-direction:column;align-items:stretch;gap:8px}}.drc-popover{position:absolute;top:calc(100% + var(--spacing-sm));left:0;right:0;z-index:50;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--spacing-lg)}.drc-hint{padding:var(--spacing-md);color:var(--gray-500);font-size:14px;text-align:center}.drc-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg);gap:var(--spacing-md)}.drc-nav-status{flex:1 1 auto;text-align:center;font-size:13px;font-weight:500;color:var(--text-color)}.drc-nav-btn{flex:0 0 auto;width:36px;min-height:36px;min-width:36px;padding:0;border:1px solid var(--border-color);background-color:var(--surface-light);color:var(--text-color);border-radius:var(--radius-md);cursor:pointer;font-size:14px}.drc-nav-btn:disabled{opacity:.4;cursor:not-allowed}.drc-loading{padding:var(--spacing-md);text-align:center;font-size:13px;color:var(--gray-500)}.drc-error{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--alert-error-bg);color:var(--alert-error-text);border:1px solid var(--alert-error-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);font-size:13px}.drc-retry-btn{flex-shrink:0;min-height:32px;padding:6px 12px;border:1px solid var(--alert-error-border);border-radius:var(--radius-sm);background-color:transparent;color:var(--alert-error-text);font-size:12px;cursor:pointer}.drc-months{display:flex;flex-wrap:wrap;gap:var(--spacing-xl)}.drc-month{flex:1 1 240px}.drc-month-title{text-align:center;margin:0 0 var(--spacing-md) 0;font-size:14px;font-weight:600;color:var(--text-color)}.drc-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.drc-day-header{text-align:center;font-size:11px;font-weight:600;color:var(--gray-500);padding:var(--spacing-xs) 0}.drc-day{text-align:center;padding:var(--spacing-sm) 0;font-size:13px;border-radius:var(--radius-sm);cursor:default;-webkit-user-select:none;user-select:none}.drc-day-empty{visibility:hidden}.drc-status-available{background-color:var(--alert-success-bg);color:var(--alert-success-text);cursor:pointer;transition:all .15s ease}.drc-status-available:hover{transform:scale(1.05);background-color:var(--gray-100)}.drc-status-booked{background-color:var(--gray-200);color:var(--gray-500);text-decoration:line-through}.drc-status-checkout-only{background-color:var(--alert-warning-bg);color:var(--alert-warning-text);cursor:pointer;font-weight:600;transition:all .15s ease}.drc-status-checkout-only:hover{transform:scale(1.05)}.drc-status-past{color:var(--gray-300)}.drc-disabled{background-color:var(--calendar-disabled-bg)!important;color:var(--calendar-disabled-text)!important;cursor:not-allowed!important;transform:none!important}.drc-selected-checkin{background-color:var(--calendar-selected-checkin-bg)!important;color:var(--calendar-selected-checkin-text)!important;font-weight:700}.drc-selected-checkout{background-color:var(--calendar-selected-checkout-bg)!important;color:var(--calendar-selected-checkout-text)!important;font-weight:700}.drc-selected-range{background-color:var(--calendar-selected-range-bg)!important;color:var(--calendar-selected-range-text)!important}.drc-preview-range{background-color:var(--calendar-preview-range-bg)!important;color:var(--calendar-preview-range-text)!important}.drc-today{outline:2px solid var(--primary);outline-offset:-2px;font-weight:700}.drc-legend{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.drc-legend-item{display:flex;align-items:center;gap:var(--spacing-sm);font-size:12px;color:var(--gray-500)}.drc-legend-color{width:14px;height:14px;border-radius:var(--radius-sm);display:inline-block}.drc-progress-hint{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--surface-light);color:var(--text-color);border-radius:var(--radius-md);font-size:13px}.drc-confirm-bar{margin-top:var(--spacing-md);padding:var(--spacing-md);background-color:var(--surface-light);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.drc-confirm-summary{font-size:14px;font-weight:600;color:var(--text-color)}.drc-confirm-actions{display:flex;gap:var(--spacing-sm)}.drc-btn-confirm,.drc-btn-cancel{min-height:44px;padding:10px 16px;border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;font-family:inherit}.drc-btn-confirm{border:1px solid var(--primary);background-color:var(--primary);color:var(--inverse-text)}.drc-btn-confirm:hover{opacity:.9}.drc-btn-cancel{border:1px solid var(--border-color);background-color:transparent;color:var(--text-color)}.drc-btn-cancel:hover{background-color:var(--gray-100)}@media (max-width: 480px){.drc-months{flex-wrap:nowrap;flex-direction:column}.drc-month{flex-basis:auto}}.booking-form{padding:var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-lg)}.date-range-row{position:relative}.date-picker-trigger{min-height:44px;padding:12px 14px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:16px;background-color:var(--bg-color);color:var(--text-color);font-family:inherit;text-align:left;cursor:pointer;transition:all .2s}@media (max-width: 767px){.form-row{grid-template-columns:1fr;gap:var(--spacing-md)}.booking-form{padding:var(--spacing-lg);gap:var(--spacing-md)}}.filter-accordion{margin-bottom:20px}.filter-accordion-toggle{transition:background-color .15s ease}.filter-accordion-chevron{transition:transform .15s ease}.filter-accordion-chevron.is-open{transform:rotate(180deg)}.filter-accordion-panel{margin-top:12px;padding:16px;background-color:var(--surface-light);border-radius:var(--radius-lg)}.filter-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.filter-controls select,.filter-controls input[type=search],.filter-controls input[type=text],.date-filter input{padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.95rem;background:var(--bg-color);color:var(--text-color)}.date-filter-row{display:flex;gap:12px}.filter-field,.date-filter{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--gray-600)}.filter-controls>.filter-field{flex:1 1 200px;min-width:0}.filter-field select,.filter-field input{width:100%}@media (max-width: 768px){.filter-controls{flex-direction:column;align-items:stretch}.filter-controls select,.filter-controls input[type=search],.filter-controls input[type=text],.filter-controls>.filter-field,.date-filter-row{width:100%}.filter-controls>.filter-field{flex:0 0 auto}.date-filter-row .date-filter{flex:1;min-width:0}}.bookings-info{margin-bottom:var(--spacing-lg);color:var(--gray-500);font-size:14px}.loading-text,.empty-text{color:var(--gray-600);margin:0}.hint-text{margin:16px 0 0;padding:10px 12px;border-radius:var(--radius-md);background:var(--alert-info-bg);color:var(--alert-info-text);border:1px solid var(--alert-info-border);font-size:.85rem}.checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.checklist-item label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;color:var(--text-color);font-size:.95rem}.checklist-item input[type=checkbox]{margin-top:2px;width:18px;height:18px;cursor:pointer}.signup-list{margin-top:var(--spacing-md);list-style:none}.signup-list__row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-xs) var(--spacing-md);padding:var(--spacing-sm) 0;border-top:1px solid var(--border-color)}.signup-list__row:first-child{border-top:none;padding-top:0}.signup-list__row:last-child{padding-bottom:0}.signup-list__name{flex:1 1 9rem;min-width:9rem;font-size:var(--text-sm);font-weight:500;color:var(--text-color)}.signup-list__row.is-me .signup-list__name{color:var(--primary)}.signup-list__me{font-weight:400;color:var(--gray-500)}.signup-list__ranges{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.signup-list__range{display:inline-flex;align-items:baseline;gap:var(--spacing-xs);padding:2px var(--spacing-sm);border-radius:var(--radius-pill);background-color:var(--status-confirmed-bg);color:var(--status-confirmed-text);font-size:var(--text-xs);font-weight:500;white-space:nowrap}.signup-list__days{font-weight:400;opacity:.75}.signup-timeline-scroll{overflow-x:auto;border:1px solid var(--border-color);border-radius:var(--radius-md)}.signup-timeline{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.signup-timeline th,.signup-timeline td{border-bottom:1px solid var(--border-color);padding:var(--spacing-xs);text-align:center}.signup-timeline tr:last-child th,.signup-timeline tr:last-child td{border-bottom:none}.signup-timeline th.signup-timeline__name-head,.signup-timeline th.signup-timeline__name{position:sticky;left:0;z-index:1;min-width:9rem;background-color:var(--card-bg);text-align:left;font-weight:500;white-space:nowrap}.signup-timeline__day-head{min-width:2.75rem;font-size:var(--text-xs);font-weight:500;color:var(--gray-500);white-space:nowrap}.signup-timeline__cell{min-width:2.75rem;height:2rem}.signup-timeline__cell.is-present{background-color:var(--status-confirmed-bg)}.signup-timeline tr.is-me .signup-timeline__name,.signup-timeline tr.is-me .signup-timeline__name-head{color:var(--primary)}.signup-timeline__me{font-weight:400;color:var(--gray-500)}.notes{background:var(--surface-light);padding:1rem;border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word;color:var(--text-color);font-size:.9rem}.date-picker-trigger{min-height:44px;padding:12px 14px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:16px;background-color:var(--bg-color);color:var(--text-color);font-family:inherit;text-align:left;cursor:pointer}.date-picker-trigger:hover{border-color:var(--primary)}.date-picker-trigger.is-empty{color:var(--gray-500)}.date-picker-trigger:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.properties-controls{margin-bottom:var(--spacing-lg)}.properties-search-input{width:100%;padding:10px 12px;font-size:.95rem}.admin-email-templates{padding:0}.admin-email-templates .description{color:var(--gray-500);margin-bottom:2rem}.signature-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--spacing-xxl);margin-bottom:var(--spacing-xxl)}.signature-section h3{margin:0 0 .5rem;font-size:1.05rem}.signature-section .description{margin-bottom:1rem}.signature-section .description code{background-color:var(--surface-light);padding:.1rem .4rem;border-radius:var(--radius-sm);font-size:.85em}.editor-section{display:grid;grid-template-columns:1fr 300px;gap:2rem;margin-bottom:1.5rem}.editor-main{display:flex;flex-direction:column;gap:1rem}.editor-sidebar{border-left:1px solid var(--border-color);padding-left:1rem}.editor-sidebar h4{margin-top:0;font-size:.95rem}.placeholder-buttons{display:flex;flex-direction:column;gap:.5rem}.placeholder-btn{justify-content:flex-start;font-family:monospace;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 768px){.editor-section{grid-template-columns:1fr}.editor-sidebar{border-left:none;border-top:1px solid var(--border-color);padding-left:0;padding-top:1rem}}.name-cell{font-weight:500}.user-name{display:block}.email-cell{font-family:Courier New,monospace;font-size:.9rem}.role-cell,.status-cell{text-align:center}.created-cell{color:var(--gray-600);font-size:.9rem}.actions-cell{text-align:center}.user-action-buttons{display:flex;flex-direction:row;flex-wrap:nowrap;gap:8px;justify-content:center}@media (max-width: 768px){.user-action-buttons{gap:4px}}.field-hint{font-size:.8rem;color:var(--gray-500);margin:4px 0 0}.generated-password{background:var(--surface-light);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:12px;margin:16px 0}.generated-password .label{font-size:.85rem;font-weight:600;color:var(--gray-500);margin:0 0 8px;text-transform:uppercase}.password-display{display:flex;gap:8px;align-items:center}.password-display code{flex:1;background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:8px 12px;font-family:Courier New,monospace;font-size:.9rem;word-break:break-all;color:var(--text-color)}.btn-copy{padding:8px 12px;background:var(--success);color:var(--text-on-primary);border:none;border-radius:var(--radius-sm);cursor:pointer;font-weight:500;transition:background .2s;white-space:nowrap}.btn-copy:hover{background:var(--success-hover)}.btn-copy.copied{background:var(--success)}.btn-copy.failed{background:var(--danger)}@media (max-width: 600px){.password-display{flex-direction:column}.btn-copy{width:100%}}.admin-users{padding:0}.password-strength{margin-top:8px;display:flex;gap:8px;align-items:center}.strength-bar{flex:1;height:6px;background:var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.strength-fill{height:100%;transition:width .3s ease,background-color .3s ease}.strength-text{font-size:.875rem;font-weight:500;color:var(--gray-500);min-width:80px}.checklist-items{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:8px}.checklist-item-row{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--border-color);border-radius:var(--radius-md)}.checklist-item-row.inactive{opacity:.55}.checklist-item-row input[type=checkbox]{width:18px;height:18px;cursor:pointer;flex-shrink:0}.item-text-input{flex:1;padding:8px 10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-color);color:var(--text-color);font-size:.95rem}.item-row-actions{display:flex;gap:4px;flex-shrink:0}.empty-text{color:var(--gray-600);padding:8px 0}.reminder-days-saved-hint{color:var(--success);font-size:.9rem}.add-item-row{display:flex;gap:8px}.add-item-row input{flex:1;padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-color);color:var(--text-color);font-size:.95rem}.settings-container{max-width:800px;margin:0 auto;padding:20px}.settings-sections{display:grid;gap:24px}.settings-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--spacing-xxl);overflow:hidden}.section-header{margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid var(--border-color)}.section-header h3{margin:0;font-size:1.25rem;color:var(--text-color)}.settings-item{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--border-color)}.settings-item:last-child{border-bottom:none;padding-bottom:0}.item-info{flex:1;padding-right:20px}.item-info h4{margin:0 0 4px;font-size:1rem;color:var(--text-color);font-weight:600}.item-value{margin:4px 0;font-size:.95rem;color:var(--text-color);font-weight:500}.item-description{margin:0;font-size:.875rem;color:var(--gray-600)}.item-metadata{margin:8px 0 0;font-size:.8rem;color:var(--gray-500);font-style:italic}.smtp-status{margin-top:12px;padding:12px;background-color:var(--card-bg);border-radius:var(--radius-sm);border:1px solid var(--border-color)}.warning-text{margin:12px 0 0;font-size:.875rem;color:var(--alert-warning-text);font-weight:500}@media (max-width: 600px){.settings-container{padding:12px}.settings-item{flex-direction:column;align-items:flex-start;gap:12px}.item-info{padding-right:0;width:100%}.section-header h3{font-size:1.1rem}}.admin-cleaning{padding:0}.action-menu{position:relative;display:inline-flex}.action-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;min-width:36px;min-height:36px;padding:0;border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--surface-light);color:var(--gray-600);cursor:pointer}.action-menu-trigger:hover{background-color:var(--gray-200);color:var(--text-color)}.action-menu-popover{position:fixed;z-index:60;min-width:200px;padding:var(--spacing-xs);display:flex;flex-direction:column;gap:2px;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--popover-shadow)}.action-menu-item{display:flex;align-items:center;justify-content:flex-start;gap:var(--spacing-sm);width:100%;min-height:40px;padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);background:none;color:var(--text-color);font-size:14px;font-weight:500;text-align:left;white-space:nowrap;cursor:pointer}.action-menu-item:hover:not(:disabled){background-color:var(--surface-light)}.action-menu-item:disabled{opacity:.5;cursor:not-allowed}.action-menu-item.is-danger{color:var(--danger)}.action-menu-item.is-danger:hover:not(:disabled){background-color:var(--alert-error-bg)}.admin-handover{padding:0}.action-cell{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.assign-context{margin:0;color:var(--gray-600);font-size:.9rem}.assign-mode-toggle{display:flex;gap:16px}.handover-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm)}.handover-link{color:inherit;text-decoration:none;border-radius:var(--radius-sm)}.handover-link:hover{color:var(--primary);text-decoration:underline}.handover-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.admin-container{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg)}@media (max-width: 767px){.main-content{padding:var(--spacing-lg) var(--spacing-md)}}@media (max-width: 899px){.admin-container,.main-content{padding-bottom:calc(80px + env(safe-area-inset-bottom))}}@media (min-width: 900px){.main-content{padding-left:calc(256px + var(--spacing-lg))}}.feedback-field{margin-bottom:var(--spacing-lg)}.feedback-field-label{display:block;margin-bottom:var(--spacing-md);font-weight:500;font-size:14px}.nps-scale{display:flex;flex-wrap:wrap;gap:6px}.nps-option{min-width:36px;height:36px;padding:0 4px;border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-color);color:var(--text-color);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.nps-option:hover{border-color:var(--primary)}.nps-option.active{background-color:var(--primary);border-color:var(--primary);color:var(--inverse-text)}.nps-scale-labels{display:flex;justify-content:space-between;margin-top:var(--spacing-sm);font-size:12px;color:var(--gray-500)}.feedback-choice-group{display:flex;gap:8px;flex-wrap:wrap}.feedback-choice{flex:1;min-width:100px;padding:10px 14px;border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-color);color:var(--text-color);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.feedback-choice:hover{border-color:var(--primary)}.feedback-choice.active{background-color:var(--primary);border-color:var(--primary);color:var(--inverse-text)}@media (max-width: 600px){.feedback-choice-group{flex-direction:column}.nps-option{min-width:32px;height:32px}}.guest-container{min-height:100vh;background:linear-gradient(135deg,var(--gray-100) 0%,var(--bg-color) 100%);padding:40px 20px}.guest-header{text-align:center;margin-bottom:40px;color:var(--primary)}.guest-header h1{font-size:32px;margin-bottom:10px}.guest-content{max-width:600px;margin:0 auto}.location{color:var(--text-color);opacity:.7;margin:10px 0 20px}.booking-details{display:flex;flex-direction:column;gap:12px}.detail-row{display:flex;justify-content:space-between;padding:12px;background-color:var(--surface-light);border-radius:var(--radius-md)}.detail-row .label{font-weight:600;color:var(--text-color)}.detail-row .value{color:var(--text-color)}.booking-status{font-size:18px;font-weight:600;padding:16px;border-radius:var(--radius-md);text-align:center;margin:16px 0;background-color:var(--status-pending-bg);color:var(--status-pending-text)}.booking-status.requested{background-color:var(--status-requested-bg);color:var(--status-requested-text)}.booking-status.confirmed{background-color:var(--status-confirmed-bg);color:var(--status-confirmed-text)}.booking-status.cancelled{background-color:var(--status-cancelled-bg);color:var(--status-cancelled-text)}.booking-status.completed{background-color:var(--status-completed-bg);color:var(--status-completed-text)}.booking-status.individual_requested{background-color:var(--status-individual-bg);color:var(--status-individual-text)}.booking-status.offer_sent{background-color:var(--status-offer-sent-bg);color:var(--status-offer-sent-text)}.booking-status.offer_declined{background-color:var(--status-cancelled-bg);color:var(--status-cancelled-text)}.booking-status.offer_expired{background-color:var(--status-handover-not-needed-bg);color:var(--status-handover-not-needed-text)}.individual-request-hint{margin:0;font-size:14px;color:var(--text-color);text-align:center}.payment-stages{display:flex;gap:12px;margin:20px 0;flex-wrap:wrap}.stage{flex:1;min-width:140px;padding:16px;background-color:var(--surface-light);border-radius:var(--radius-md);text-align:center;border:2px solid var(--alert-info-border);transition:all .3s ease}.stage.active{background-color:var(--alert-success-bg);border-color:var(--success)}.stage-icon{font-size:28px;margin-bottom:8px}.stage-label{font-weight:600;font-size:13px;color:var(--text-color);margin-bottom:6px}.stage-status{font-size:12px;color:var(--text-color);opacity:.7}.stage.active .stage-status{color:var(--success);font-weight:600}.payment-status{font-size:20px;font-weight:600;padding:16px;border-radius:var(--radius-md);text-align:center;margin:16px 0}.payment-status.pending{background-color:var(--alert-warning-bg);color:var(--alert-warning-text)}.payment-status.paid{background-color:var(--alert-success-bg);color:var(--alert-success-text)}.payment-info{margin-top:20px;padding:16px;background-color:var(--surface-light);border-radius:var(--radius-md)}.payment-info.success{background-color:var(--alert-success-bg);border-left:4px solid var(--success)}.payment-info .amount{font-size:32px;font-weight:700;color:var(--primary);text-align:center;margin:16px 0}.payment-info .remaining-info{text-align:center;color:var(--text-color);font-size:14px;margin:12px 0;font-weight:500}.payment-info .payment-date{text-align:center;color:var(--text-color);font-size:13px;opacity:.8;margin:8px 0}.payment-info .total-amount{text-align:center;font-size:16px;font-weight:600;color:var(--success);margin:12px 0}.bank-details{font-size:13px;color:var(--text-color);line-height:1.8}.bank-details p{margin:4px 0}.girocode-box{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-color);text-align:center}.girocode-qr{width:160px;height:160px;background-color:#fff;padding:8px;border-radius:var(--radius-md)}.girocode-hint{margin:8px 0 0;font-size:12px;color:var(--gray-500)}.price-table{display:flex;flex-direction:column;gap:8px}.price-row{display:flex;justify-content:space-between;padding:12px;background-color:var(--surface-light);border-radius:var(--radius-md)}.price-row.total{font-weight:600;font-size:16px;color:var(--primary);border:2px solid var(--primary)}.action-buttons{display:flex;gap:10px;flex-wrap:wrap}.action-buttons button{flex:1;min-width:200px;white-space:nowrap}.manual-content{color:var(--text-color);line-height:1.8;word-break:break-word}.manual-content h1,.manual-content h2,.manual-content h3{margin-top:20px;margin-bottom:12px;color:var(--primary);font-weight:600}.manual-content h1{font-size:24px;border-bottom:2px solid var(--primary);padding-bottom:10px}.manual-content h2{font-size:20px}.manual-content h3{font-size:16px}.manual-content p{margin:12px 0}.manual-content ul,.manual-content ol{margin:12px 0;padding-left:24px}.manual-content li{margin:8px 0}.manual-content strong{font-weight:600;color:var(--primary)}.manual-content em{font-style:italic}.manual-content code{background-color:var(--surface-light);padding:2px 6px;border-radius:var(--radius-sm);font-family:Courier New,monospace;font-size:.95em}.manual-content pre{background-color:var(--surface-light);padding:12px;border-radius:var(--radius-md);overflow-x:auto;margin:12px 0}.manual-content blockquote{border-left:4px solid var(--primary);padding-left:16px;margin:12px 0;color:var(--text-color);font-style:italic;opacity:.8}.action-buttons button:disabled{opacity:.6;cursor:not-allowed}.action-buttons button:disabled:hover{transform:none}.message-thread{display:flex;flex-direction:column;gap:10px;max-height:320px;overflow-y:auto;margin-bottom:8px}.message-bubble{padding:10px 14px;border-radius:var(--radius-lg);background-color:var(--surface-light);max-width:85%}.message-bubble.guest{align-self:flex-end;background-color:var(--primary);color:var(--inverse-text)}.message-bubble.guest .message-meta{color:color-mix(in srgb,var(--inverse-text) 85%,transparent)}.message-bubble p{margin:4px 0 0;white-space:pre-wrap;word-break:break-word}.message-meta{display:flex;justify-content:space-between;gap:12px;font-size:12px;opacity:.75}@media (max-width: 600px){.guest-container{padding:20px 10px 80px}.guest-header h1{font-size:24px}.action-buttons{flex-direction:column}.action-buttons button{width:100%}.payment-stages{flex-direction:column}.stage{min-width:unset}}.handover-link-page{min-height:100vh;padding:24px 16px;background:var(--bg-color);display:flex;justify-content:center;align-items:flex-start}.handover-link-card{width:100%;max-width:560px;padding:24px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.handover-link-title{display:flex;align-items:center;gap:8px;margin:0 0 16px;font-size:1.25rem;font-weight:600;color:var(--text-color)}.handover-link-summary{padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--border-color)}.handover-link-property{margin:0 0 4px;font-size:1.05rem;font-weight:600;color:var(--text-color)}.handover-link-meta{margin:0 0 4px;font-size:.9rem;color:var(--gray-600)}.handover-link-lead{margin:0 0 12px;font-size:.95rem;color:var(--text-color)}.handover-link-checklist{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:4px}.handover-link-checklist label{display:flex;align-items:flex-start;gap:12px;padding:12px 8px;border-radius:var(--radius-md);font-size:.95rem;color:var(--text-color);cursor:pointer}.handover-link-checklist label:hover{background:var(--surface-light)}.handover-link-checklist input[type=checkbox]{width:22px;height:22px;margin:0;flex-shrink:0;accent-color:var(--primary)}.handover-link-hint{margin:0 0 16px;font-size:.85rem;color:var(--gray-600)}.handover-link-submit{width:100%;justify-content:center}.handover-link-done{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.special-period-link-page{min-height:100vh;padding:var(--spacing-lg) var(--spacing-md);background:var(--bg-color);display:flex;justify-content:center;align-items:flex-start}.special-period-link-card{width:100%;max-width:720px;padding:var(--spacing-lg);background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.special-period-link-title{display:flex;align-items:center;gap:var(--spacing-sm);margin:0 0 var(--spacing-md);font-size:1.25rem;font-weight:600;color:var(--text-color)}.special-period-link-summary{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-xs);padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.special-period-link-lead{margin:0 0 var(--spacing-sm);font-size:var(--text-sm);color:var(--text-color)}.special-period-link-meta{margin:0;font-size:var(--text-sm);color:var(--gray-500)}.special-period-link-section{padding-top:var(--spacing-md);margin-top:var(--spacing-md);border-top:1px solid var(--border-color)}.special-period-link-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.special-period-link-heading{margin:0;font-size:1rem;font-weight:600;color:var(--text-color)}.swipe-action{position:relative;overflow:hidden;border-radius:var(--radius-xl)}.swipe-action__reveal{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;gap:var(--spacing-sm);padding-left:var(--spacing-xl);border-radius:inherit;background-color:var(--success);color:var(--text-on-primary);font-size:14px;font-weight:600;transition:opacity .15s ease,background-color .15s ease}.swipe-action__reveal.is-armed{background-color:var(--success-hover)}.swipe-action__content{position:relative;touch-action:pan-y}.swipe-action__content.is-settling{transition:transform .2s ease}@media (prefers-reduced-motion: reduce){.swipe-action__content.is-settling{transition:none}}.cleaning-container{min-height:100vh;background:linear-gradient(135deg,var(--primary-fill) 0%,var(--primary-fill-hover) 100%);padding:20px}.cleaning-header{display:flex;justify-content:space-between;align-items:center;max-width:600px;margin:0 auto 30px;padding-top:calc(30px + env(safe-area-inset-top));color:var(--text-on-primary);position:sticky;top:0;z-index:100}.cleaning-header h1{font-size:28px;margin:0}.cleaning-header-actions{display:flex;align-items:center;gap:12px}.cleaning-content{max-width:600px;margin:0 auto;padding-bottom:40px}.cleaning-controls{display:flex;gap:16px;flex-wrap:wrap;background-color:var(--card-bg);border-radius:var(--radius-xl);padding:16px 20px;margin-bottom:20px;box-shadow:var(--shadow-md)}.cleaning-controls .form-group{flex:1;min-width:140px}.undo-banner{display:flex;justify-content:space-between;align-items:center;gap:12px;background-color:var(--card-bg);color:var(--alert-success-text);border:1px solid var(--alert-success-border);border-radius:var(--radius-xl);padding:12px 20px;margin-bottom:20px;font-size:14px;font-weight:500}.tasks-groups{display:flex;flex-direction:column;gap:24px}.group-label{font-size:15px;font-weight:600;color:var(--text-on-primary);margin:0 0 12px 4px;text-transform:capitalize}.tasks-list{display:flex;flex-direction:column;gap:16px}.checkout-date{background-color:var(--alert-error-bg);color:var(--alert-error-text);padding:6px 12px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;white-space:nowrap}.no-tasks{text-align:center;padding:24px 20px;font-size:18px;color:var(--success)}@media (max-width: 600px){.cleaning-container{padding-bottom:80px}.cleaning-header{flex-direction:column;gap:20px;text-align:center}}.cleaning-task-hint{flex-basis:100%;margin:4px 0 0;font-size:12px;line-height:1.4;text-align:center;color:var(--gray-500)}.vrb-calendar-container{max-width:700px}.vrb-calendar-error{padding:var(--spacing-lg);background-color:var(--alert-error-bg);color:var(--alert-error-text);border:1px solid var(--alert-error-border);border-radius:var(--radius-md)}.vrb-calendar-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.vrb-calendar-nav-btn{min-height:40px;min-width:40px;border:1px solid var(--border-color);background-color:var(--surface-light);color:var(--text-color);border-radius:var(--radius-md);cursor:pointer;font-size:16px;transition:background-color .15s ease,border-color .15s ease,transform .15s ease}.vrb-calendar-nav-btn:hover:not(:disabled){background-color:var(--gray-100);border-color:var(--primary);color:var(--primary)}.vrb-calendar-nav-btn:active:not(:disabled){transform:scale(.94)}.vrb-calendar-nav-btn:disabled{opacity:.4;cursor:not-allowed}.vrb-calendar-nav-spinner{width:18px;height:18px;border:2px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;animation:vrb-spin .8s linear infinite;margin-left:var(--spacing-sm)}@keyframes vrb-spin{to{transform:rotate(360deg)}}.vrb-calendar-error-message{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--alert-error-bg);color:var(--alert-error-text);border:1px solid var(--alert-error-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.vrb-calendar-retry-btn{flex-shrink:0;min-height:32px;padding:6px 12px;border:1px solid var(--alert-error-border);border-radius:var(--radius-sm, 4px);background-color:transparent;color:var(--alert-error-text);font-size:12px;cursor:pointer}.vrb-calendar-selection-chip{display:inline-flex;align-items:baseline;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--alert-success-bg);color:var(--alert-success-text);border-radius:var(--radius-md);font-size:13px;animation:vrb-calendar-fade-in .2s ease}.vrb-chip-nights{font-size:12px;opacity:.85}.vrb-calendar-grids-container{display:flex;flex-wrap:wrap;gap:var(--spacing-xl);transition:opacity .15s ease;animation:vrb-calendar-fade-in .2s ease}.vrb-calendar-grids-container--loading{opacity:.55}@keyframes vrb-calendar-fade-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.vrb-calendar{flex:1 1 260px}.vrb-calendar-title{text-align:center;margin:0 0 var(--spacing-md) 0;font-size:15px;font-weight:600}.vrb-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.vrb-calendar-day-header{text-align:center;font-size:11px;font-weight:600;color:var(--gray-500);padding:var(--spacing-xs) 0}.vrb-calendar-day{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;min-height:36px;font-size:13px;border-radius:var(--radius-sm, 4px);cursor:default;-webkit-user-select:none;user-select:none;box-sizing:border-box}.vrb-calendar-day.vrb-status-checkin-day-empty:after,.vrb-calendar-day.vrb-status-checkout-only:after{content:"";position:absolute;top:4px;right:4px;width:5px;height:5px;border-radius:50%;background-color:currentColor}.vrb-day-empty{visibility:hidden}.vrb-status-available{background-color:var(--alert-success-bg);color:var(--alert-success-text)}.vrb-status-booked{background-color:var(--gray-200);color:var(--gray-500);text-decoration:line-through}.vrb-status-checkout-only,.vrb-status-checkin-day-empty{background-color:var(--alert-warning-bg);color:var(--alert-warning-text);font-weight:600}.vrb-status-checkin-day-blocked{background-color:var(--gray-200);color:var(--gray-500);text-decoration:line-through}.vrb-status-past{color:var(--gray-300);cursor:default}.vrb-status-booked{cursor:default}.vrb-status-available,.vrb-status-checkout-only,.vrb-status-checkin-day-empty{cursor:pointer;transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease}.vrb-status-available:hover,.vrb-status-checkout-only:hover,.vrb-status-checkin-day-empty:hover{transform:scale(1.06);box-shadow:var(--shadow-sm)}.vrb-status-available:focus-visible,.vrb-status-checkout-only:focus-visible,.vrb-status-checkin-day-empty:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.vrb-status-selected-checkin{background-color:var(--calendar-selected-checkin-bg)!important;color:var(--calendar-selected-checkin-text)!important;font-weight:700;box-shadow:0 0 0 2px var(--calendar-selected-checkin-bg)}.vrb-status-selected-checkout{background-color:var(--calendar-selected-checkout-bg)!important;color:var(--calendar-selected-checkout-text)!important;font-weight:700;box-shadow:0 0 0 2px var(--calendar-selected-checkout-bg)}.vrb-status-selected-range{background-color:var(--calendar-selected-range-bg)!important;color:var(--calendar-selected-range-text)!important}.vrb-status-preview-range{background-color:var(--calendar-preview-range-bg)!important;color:var(--calendar-preview-range-text)!important}.vrb-status-disabled{background-color:var(--calendar-disabled-bg)!important;color:var(--calendar-disabled-text)!important;text-decoration:line-through;cursor:not-allowed!important}.vrb-today{outline:2px solid var(--calendar-today-ring, var(--primary));outline-offset:-2px;font-weight:700}.vrb-calendar-summary{display:flex;gap:var(--spacing-xl);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.vrb-summary-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.vrb-summary-label{font-size:12px;color:var(--gray-500)}.vrb-summary-value{font-size:18px;font-weight:600}.vrb-calendar-no-availability{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding:var(--spacing-md);background-color:var(--surface-light);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:13px;color:var(--gray-500)}.vrb-calendar-find-next-btn{min-height:36px;padding:8px 14px;border:1px solid var(--primary);border-radius:var(--radius-md);background-color:transparent;color:var(--primary);font-size:13px;font-weight:500;cursor:pointer;transition:background-color .15s ease,color .15s ease}.vrb-calendar-find-next-btn:hover:not(:disabled){background-color:var(--primary);color:var(--inverse-text)}.vrb-calendar-find-next-btn:disabled{opacity:.6;cursor:not-allowed}.vrb-no-next-found{width:100%;color:var(--alert-error-text);font-size:12px}.vrb-calendar-rule-hint{max-height:0;margin-top:0;padding:0 var(--spacing-md);background-color:var(--alert-warning-bg);color:var(--alert-warning-text);border:1px solid transparent;border-radius:var(--radius-md);font-size:13px;overflow:hidden;opacity:0;transition:max-height .2s ease,opacity .2s ease,margin-top .2s ease,padding .2s ease}.vrb-calendar-rule-hint--visible{max-height:60px;margin-top:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);border-color:var(--alert-warning-border);opacity:1}.vrb-calendar-legend{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.vrb-legend-item{display:flex;align-items:center;gap:var(--spacing-sm);font-size:12px;color:var(--gray-500)}.vrb-legend-color{flex-shrink:0;width:14px;height:14px;border-radius:3px;display:inline-block}.vrb-legend-text{display:flex;flex-direction:column;line-height:1.25}.vrb-legend-label{color:var(--text-color);font-weight:500}.vrb-legend-sub{font-size:11px;color:var(--gray-500)}.vrb-calendar-container .booking-rules-hint{margin-top:var(--spacing-lg)}.vrb-skeleton-title{height:15px;width:120px;margin:0 auto var(--spacing-md) auto;border-radius:var(--radius-sm, 4px);background:var(--gray-100)}.vrb-skeleton-day{min-height:36px;border-radius:var(--radius-sm, 4px);background:var(--gray-100)}.vrb-skeleton-title,.vrb-skeleton-day{position:relative;overflow:hidden}.vrb-skeleton-title:after,.vrb-skeleton-day:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,var(--calendar-skeleton-shine),transparent);animation:vrb-skeleton-shimmer 1.4s infinite}@keyframes vrb-skeleton-shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion: reduce){.vrb-calendar-grids-container,.vrb-status-available,.vrb-status-checkout-only,.vrb-status-checkin-day-empty,.vrb-calendar-nav-btn,.vrb-calendar-rule-hint,.vrb-skeleton-title:after,.vrb-skeleton-day:after{animation:none!important;transition:none!important}}@media (max-width: 700px){.vrb-calendar-grids-container{gap:var(--spacing-lg)}.vrb-calendar-day{min-height:40px;font-size:14px}}@media (max-width: 420px){.vrb-calendar-grids-container{flex-wrap:nowrap;flex-direction:column}.vrb-calendar{flex-basis:auto}.vrb-calendar-day{min-height:42px}}.wcp-container{position:relative}.wcp-container .date-range-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.wcp-container .date-picker-trigger{flex:1 1 160px}.wcp-arrow{color:var(--gray-500)}.wcp-popover{position:absolute;top:calc(100% + var(--spacing-sm));left:0;right:0;z-index:50;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--spacing-lg);max-height:80vh;overflow-y:auto}@media (max-width: 480px){.wcp-popover{left:calc(-1 * var(--spacing-md));right:calc(-1 * var(--spacing-md))}}.vrb-widget-card{background-color:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);color:var(--text-color);max-width:600px;margin:0 auto;padding:var(--spacing-xl)}.vrb-widget-card h2{margin:0 0 var(--spacing-lg) 0;font-size:20px;font-weight:600}.back-to-calendar-btn{display:inline-flex;align-items:center;gap:6px;margin-bottom:var(--spacing-lg);padding:8px 12px;background-color:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-color);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.back-to-calendar-btn:hover{background-color:var(--surface-light);border-color:var(--primary);color:var(--primary)}.booking-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-section{display:flex;flex-direction:column;gap:var(--spacing-lg);padding:var(--spacing-lg);border:1px solid var(--border-color);border-radius:var(--radius-lg);background-color:var(--surface-light)}.form-section-title{margin:0;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--gray-500)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-md)}.field-error{margin-top:calc(-1 * var(--spacing-sm));font-size:12px;color:var(--alert-error-text)}.form-group.has-error input,.form-group.has-error select,.form-group.has-error textarea{border-color:var(--alert-error-text)}.vrb-guest-stepper{display:flex;align-items:stretch;border:1px solid var(--form-input-border, var(--border-color));border-radius:var(--radius-md);overflow:hidden}.form-group.has-error .vrb-guest-stepper{border-color:var(--alert-error-text)}.vrb-guest-stepper .vrb-guest-stepper-btn{width:44px;min-height:44px;flex:0 0 44px;border:none;background-color:var(--surface-light);color:var(--text-color);font-size:20px;font-weight:500;line-height:1;cursor:pointer;transition:background-color .15s ease,color .15s ease}.vrb-guest-stepper .vrb-guest-stepper-btn:hover:not(:disabled){background-color:var(--gray-100);color:var(--primary)}.vrb-guest-stepper .vrb-guest-stepper-btn:disabled{opacity:.35;cursor:not-allowed}.vrb-guest-stepper input{flex:1;min-width:0;min-height:44px!important;border:none!important;border-left:1px solid var(--form-input-border, var(--border-color))!important;border-right:1px solid var(--form-input-border, var(--border-color))!important;border-radius:0!important;text-align:center;-moz-appearance:textfield}.vrb-guest-stepper input::-webkit-outer-spin-button,.vrb-guest-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.form-group label{font-weight:500;font-size:14px;color:var(--text-color);cursor:pointer;-webkit-user-select:none;user-select:none}.form-group textarea{padding:12px 14px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:14px;background-color:var(--bg-color);color:var(--text-color);font-family:inherit;resize:vertical;transition:all .2s}.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:var(--focus-ring-shadow)}.individual-request-intro{margin:calc(-1 * var(--spacing-md)) 0 0 0;font-size:13px;color:var(--gray-500)}.booking-rules-hint{background-color:var(--surface-light);padding:var(--spacing-lg);border-radius:var(--radius-md);border-left:3px solid var(--gray-500)}.booking-rules-hint h4{margin:0 0 var(--spacing-sm) 0;font-size:13px;font-weight:600;color:var(--text-color)}.booking-rules-hint ul{margin:0 0 var(--spacing-md) 0;padding-left:18px;font-size:13px;color:var(--gray-500)}.individual-request-link{width:100%;min-height:40px;padding:10px 16px;background-color:transparent;border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--primary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.individual-request-link:hover{background-color:var(--surface-light);border-color:var(--primary)}.form-group input,.form-group select{min-height:44px;padding:12px 14px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:16px;background-color:var(--bg-color);color:var(--text-color);font-family:inherit;transition:all .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary);box-shadow:var(--focus-ring-shadow)}.form-group.checkbox{flex-direction:row;align-items:center;gap:var(--spacing-md);min-height:44px;padding:var(--spacing-sm) 0;cursor:pointer;-webkit-user-select:none;user-select:none}.form-group.checkbox input{width:20px;height:20px;min-width:20px;min-height:auto;margin:0;cursor:pointer;accent-color:var(--primary)}.form-group.checkbox span{font-weight:400;font-size:14px}.form-group.checkbox .fee-hint{color:var(--gray-500);font-size:13px}.cleaning-included-hint{margin:0;font-size:14px;color:var(--text-color)}.cleaning-included-hint .fee-hint{color:var(--gray-500);font-size:13px}.date-hint{margin:calc(-1 * var(--spacing-md)) 0 0 0;font-size:13px;color:var(--alert-warning-text)}.price-loading{margin:0;font-size:13px;color:var(--gray-500)}.price-info{background-color:var(--surface-light);padding:var(--spacing-lg);border-radius:var(--radius-md);border-left:3px solid var(--primary)}.price-info h4{margin:0 0 var(--spacing-md) 0;font-size:14px;font-weight:600;color:var(--text-color)}.price-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;font-size:13px;color:var(--gray-500)}.price-row.total{border-top:1px solid var(--border-color);padding-top:var(--spacing-md);margin-top:var(--spacing-md);font-size:16px;font-weight:600;color:var(--text-color)}.booking-form>button{width:100%;min-height:44px;padding:12px 20px;border-radius:var(--radius-md);font-size:15px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.booking-form>button:disabled{opacity:.6;cursor:not-allowed}.booking-confirmation{display:flex;flex-direction:column;gap:var(--spacing-lg)}.confirmation-icon{display:flex;justify-content:center;color:var(--success)}.confirmation-summary{background-color:var(--surface-light);padding:var(--spacing-lg);border-radius:var(--radius-md);border-left:3px solid var(--primary)}.confirmation-summary h4{margin:0 0 var(--spacing-md) 0;font-size:14px;font-weight:600;color:var(--text-color)}.guest-link-button{display:block;width:100%;min-height:44px;padding:12px 20px;border-radius:var(--radius-md);font-size:15px;font-weight:500;text-align:center;text-decoration:none;background-color:var(--primary-fill);color:var(--text-on-primary);box-sizing:border-box;transition:all .2s}.guest-link-button:hover{opacity:.9}.new-booking-link{width:100%;min-height:44px;padding:12px 20px;background-color:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-color);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.new-booking-link:hover{background-color:var(--surface-light);border-color:var(--primary);color:var(--primary)}@media (max-width: 599px){.form-row{grid-template-columns:1fr}.vrb-widget-card{padding:var(--spacing-lg)}.form-section{padding:var(--spacing-md)}}.vrb-widget-root{--primary: #2a4c33;--primary-dark: #1e3925;--success: #10b981;--success-bg: #d1fae5;--warning: #f59e0b;--danger: #ef4444;--danger-bg: #fee2e2;--secondary: #6b7280;--secondary-hover: #4b5563;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #d1d5db;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-900: #111827;--text-color: #1f2937;--bg-color: #ffffff;--border-color: #e5e7eb;--card-bg: #ffffff;--surface: #ffffff;--surface-light: #f9fafb;--alert-error-bg: rgba(239, 68, 68, .1);--alert-error-text: #ef4444;--alert-error-border: rgba(239, 68, 68, .3);--alert-success-bg: rgba(16, 185, 129, .1);--alert-success-text: #10b981;--alert-success-border: rgba(16, 185, 129, .3);--alert-warning-bg: rgba(245, 158, 11, .1);--alert-warning-text: #f59e0b;--alert-warning-border: rgba(245, 158, 11, .3);--alert-info-bg: rgba(59, 130, 246, .1);--alert-info-text: #3b82f6;--alert-info-border: rgba(59, 130, 246, .3);--form-input-bg: #ffffff;--form-input-border: #e5e7eb;--status-pending-bg: rgba(245, 158, 11, .1);--status-pending-text: #d97706;--status-confirmed-bg: rgba(16, 185, 129, .1);--status-confirmed-text: #10b981;--status-paid-bg: rgba(16, 185, 129, .1);--status-paid-text: #059669;--status-completed-bg: rgba(16, 185, 129, .1);--status-completed-text: #10b981;--status-cancelled-bg: rgba(239, 68, 68, .1);--status-cancelled-text: #dc2626;--status-deposit-paid-bg: rgba(59, 130, 246, .1);--status-deposit-paid-text: #0284c7;--status-requested-bg: rgba(245, 158, 11, .1);--status-requested-text: #d97706;--status-final-payment-bg: rgba(249, 115, 22, .1);--status-final-payment-text: #ea580c;--overlay-dark: rgba(0, 0, 0, .5);--overlay-light: rgba(255, 255, 255, .05);--calendar-selected-checkin-bg: #2a4c33;--calendar-selected-checkin-text: #ffffff;--calendar-selected-checkout-bg: #1e3925;--calendar-selected-checkout-text: #ffffff;--calendar-selected-range-bg: #c8e6c9;--calendar-selected-range-text: #1b3a1d;--calendar-preview-range-bg: #e3f2fd;--calendar-preview-range-text: #0d3c61;--calendar-disabled-bg: #e5e7eb;--calendar-disabled-text: #9ca3af;--calendar-today-ring: var(--primary);--calendar-skeleton-shine: rgba(255, 255, 255, .7);color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:transparent;padding:var(--spacing-lg)}.vrb-widget-container{display:flex;gap:var(--spacing-lg)}.vrb-widget-container.layout-side-by-side{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.vrb-widget-container.layout-stacked{display:flex;flex-direction:column;gap:var(--spacing-lg)}.vrb-widget-container.layout-centered{display:flex;justify-content:center;align-items:flex-start;width:100%}@media (max-width: 899px){.vrb-widget-container.layout-side-by-side{grid-template-columns:1fr}}.install-pwa-button{position:fixed;right:1rem;bottom:1rem;z-index:1000;padding:.6rem 1rem;border:none;border-radius:var(--radius-pill);background-color:var(--primary-fill);color:var(--text-on-primary);font-size:.9rem;font-weight:600;box-shadow:var(--shadow-md);cursor:pointer}.install-pwa-button:hover{background-color:var(--primary-fill-hover)}.ios-install-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--scrim-bg);z-index:999}.ios-install-guide{position:fixed;bottom:0;left:0;right:0;max-height:90vh;background:var(--card-bg);border-radius:16px 16px 0 0;box-shadow:0 -4px 16px #00000026;z-index:1000;display:flex;flex-direction:column;animation:slideUp .3s ease-out;color:var(--text-color)}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.ios-install-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border-color);flex-shrink:0}.ios-install-header h2{margin:0;font-size:20px;font-weight:700}.ios-install-close{background:none;border:none;font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--gray-500);border-radius:var(--radius-lg);transition:background-color .2s}.ios-install-close:active{background-color:var(--surface-light)}.ios-install-content{flex:1;overflow-y:auto;padding:20px}.ios-install-intro{margin:0 0 24px;font-size:16px;font-weight:600;color:var(--text-color)}.ios-install-steps{display:flex;flex-direction:column;gap:20px;margin-bottom:32px}.ios-step{display:flex;gap:16px;padding:16px;background:var(--surface-light);border-radius:var(--radius-xl);border-left:4px solid var(--primary)}.ios-step-number{display:flex;align-items:center;justify-content:center;min-width:40px;width:40px;height:40px;background:var(--primary-fill);color:var(--text-on-primary);border-radius:50%;font-weight:700;font-size:18px;flex-shrink:0}.ios-step-content h3{margin:0 0 8px;font-size:16px;font-weight:700;color:var(--text-color)}.ios-step-content p{margin:8px 0;font-size:14px;line-height:1.6;color:var(--gray-500)}.ios-icon-description{margin-top:12px;padding:10px 12px;background:var(--surface-light);border-radius:var(--radius-lg);font-size:14px;font-weight:500;border:1px solid var(--border-color);color:var(--text-color)}.ios-options{margin-top:12px;display:flex;flex-direction:column;gap:8px}.ios-option{padding:10px 12px;border-radius:var(--radius-lg);font-size:14px;font-weight:500;background:var(--surface-light);border:1px solid var(--border-color)}.ios-option:first-child{background:var(--success-tint-bg);border-color:var(--success-tint-border);color:var(--success)}.ios-option:last-child{background:var(--danger-tint-bg);border-color:var(--danger-tint-border);color:var(--danger)}.ios-step-note{margin-top:12px;padding:12px;background:var(--success-tint-bg);border-left:3px solid var(--success);border-radius:var(--radius-lg);color:var(--success);font-weight:600}.ios-install-tips{background:var(--alert-info-bg);border:1px solid var(--alert-info-border);border-radius:var(--radius-xl);padding:16px;margin-bottom:32px}.ios-install-tips h4{margin:0 0 12px;font-size:16px;font-weight:700;color:var(--alert-info-text)}.ios-install-tips ul{margin:0;padding-left:20px;list-style:none}.ios-install-tips li{margin-bottom:12px;font-size:14px;line-height:1.6;color:var(--gray-500)}.ios-install-tips li:last-child{margin-bottom:0}.ios-install-tips strong{color:var(--text-color)}.ios-install-alternative{background:var(--surface-light);border-radius:var(--radius-xl);padding:16px;margin-bottom:20px;border:1px dashed var(--border-color)}.ios-install-alternative p{margin:0;font-size:14px;line-height:1.6;color:var(--gray-500)}.ios-install-footer{display:flex;gap:12px;padding:20px;border-top:1px solid var(--border-color);flex-shrink:0;background:var(--card-bg)}.ios-install-button-primary,.ios-install-button-secondary{flex:1;padding:12px 16px;border:none;border-radius:var(--radius-lg);font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;min-height:48px}.ios-install-button-primary{background:var(--primary-fill);color:var(--text-on-primary)}.ios-install-button-primary:active{background:var(--primary-dark);transform:scale(.98)}.ios-install-button-secondary{background:var(--surface-light);color:var(--text-color);border:1px solid var(--border-color)}.ios-install-button-secondary:active{background:var(--border-color);transform:scale(.98)}.ios-install-help-button{position:fixed;bottom:20px;right:20px;width:48px;height:48px;border-radius:50%;background:var(--primary-fill);color:var(--text-on-primary);border:none;font-size:20px;font-weight:700;cursor:pointer;box-shadow:0 4px 12px var(--shadow-primary);display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:100}.ios-install-help-button:active{transform:scale(.95);box-shadow:0 2px 8px var(--shadow-primary-active)}@media (max-height: 500px){.ios-install-guide{max-height:100vh}.ios-install-content{max-height:calc(100vh - 120px)}}@media (hover: none) and (pointer: coarse){.ios-install-button-primary,.ios-install-button-secondary{min-height:52px;font-size:17px}.ios-step{padding:18px}}.desktop-install-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--scrim-bg);z-index:999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.desktop-install-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);max-width:600px;width:90%;max-height:90vh;background:var(--card-bg);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);z-index:1000;display:flex;flex-direction:column;animation:slideIn .3s ease-out;color:var(--text-color);overflow:hidden}@keyframes slideIn{0%{transform:translate(-50%,-48%);opacity:0}to{transform:translate(-50%,-50%);opacity:1}}.desktop-install-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--border-color);flex-shrink:0}.desktop-install-header h2{margin:0;font-size:20px;font-weight:700}.desktop-install-close{background:none;border:none;font-size:24px;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--gray-500);border-radius:var(--radius-lg);transition:all .2s}.desktop-install-close:hover{background-color:var(--surface-light)}.desktop-install-close:active{background-color:var(--surface-light);transform:scale(.95)}.desktop-install-content{flex:1;overflow-y:auto;padding:24px}.desktop-install-intro{margin:0 0 24px;font-size:16px;font-weight:600;color:var(--text-color)}.desktop-install-method{background:var(--alert-info-bg);border:1px solid var(--alert-info-border);border-radius:var(--radius-xl);padding:20px;margin-bottom:24px}.desktop-install-method h3{margin:0 0 12px;font-size:16px;font-weight:700;color:var(--alert-info-text)}.desktop-install-method p{margin:0 0 16px;font-size:14px;line-height:1.6;color:var(--gray-500)}.desktop-install-primary-button{width:100%;padding:12px 16px;background:var(--primary-fill);color:var(--text-on-primary);border:none;border-radius:var(--radius-lg);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;min-height:44px}.desktop-install-primary-button:hover{background:var(--primary-dark)}.desktop-install-primary-button:active{background:var(--primary-dark);transform:scale(.98)}.desktop-install-divider{text-align:center;margin:24px 0;color:var(--gray-500);font-size:13px;font-weight:600;position:relative}.desktop-install-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--border-color);z-index:0}.desktop-install-divider:after{content:"oder";position:relative;background:var(--card-bg);padding:0 8px;z-index:1}.desktop-install-manual{margin-bottom:24px}.desktop-install-manual h3{margin:0 0 16px;font-size:16px;font-weight:700;color:var(--text-color)}.desktop-install-steps{display:flex;flex-direction:column;gap:12px}.desktop-step{display:flex;gap:12px;padding:12px;background:var(--surface-light);border-radius:var(--radius-lg);border-left:4px solid var(--primary)}.desktop-step-number{display:flex;align-items:center;justify-content:center;min-width:36px;width:36px;height:36px;background:var(--primary-fill);color:var(--text-on-primary);border-radius:50%;font-weight:700;font-size:16px;flex-shrink:0}.desktop-step-content h4{margin:0 0 4px;font-size:14px;font-weight:700;color:var(--text-color)}.desktop-step-content p{margin:0;font-size:13px;line-height:1.5;color:var(--gray-500)}.desktop-install-info{background:var(--surface-light);border-radius:var(--radius-xl);padding:16px;margin-bottom:16px;border:1px dashed var(--border-color)}.desktop-install-info h4{margin:0 0 12px;font-size:14px;font-weight:700;color:var(--text-color)}.desktop-install-info ul{margin:0;padding-left:20px;list-style:none}.desktop-install-info li{margin-bottom:8px;font-size:13px;line-height:1.5;color:var(--gray-500)}.desktop-install-info li:last-child{margin-bottom:0}.desktop-install-info strong{color:var(--text-color)}.desktop-install-warning{background:var(--warning-tint-bg);border:1px solid var(--alert-warning-border);border-left:3px solid var(--warning);border-radius:var(--radius-lg);padding:12px;margin-bottom:16px;font-size:13px;line-height:1.5;color:var(--gray-500)}.desktop-install-warning strong{color:var(--text-warning-strong)}.desktop-install-footer{display:flex;gap:12px;padding:20px;border-top:1px solid var(--border-color);flex-shrink:0;background:var(--card-bg)}.desktop-install-button-primary,.desktop-install-button-secondary{flex:1;padding:12px 16px;border:none;border-radius:var(--radius-lg);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;min-height:44px}.desktop-install-button-primary{background:var(--primary-fill);color:var(--text-on-primary)}.desktop-install-button-primary:hover{background:var(--primary-dark)}.desktop-install-button-primary:active{background:var(--primary-dark);transform:scale(.98)}.desktop-install-button-secondary{background:var(--surface-light);color:var(--text-color);border:1px solid var(--border-color)}.desktop-install-button-secondary:hover{background:var(--border-color)}.desktop-install-button-secondary:active{background:var(--border-color);transform:scale(.98)}.desktop-install-button{position:fixed;bottom:20px;right:20px;padding:12px 20px;background:var(--primary-fill);color:var(--text-on-primary);border:none;border-radius:var(--radius-lg);font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px var(--shadow-primary);display:flex;align-items:center;gap:8px;transition:all .2s;z-index:100;white-space:nowrap}.desktop-install-button:hover{background:var(--primary-dark);box-shadow:0 6px 16px var(--shadow-primary-hover)}.desktop-install-button:active{transform:scale(.95);box-shadow:0 2px 8px var(--shadow-primary-active)}.desktop-install-help-button{position:fixed;bottom:20px;right:20px;width:48px;height:48px;border-radius:50%;background:var(--primary-fill);color:var(--text-on-primary);border:none;font-size:20px;font-weight:700;cursor:pointer;box-shadow:0 4px 12px var(--shadow-primary);display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:100}.desktop-install-help-button:hover{background:var(--primary-dark);box-shadow:0 6px 16px var(--shadow-primary-hover)}.desktop-install-help-button:active{transform:scale(.95);box-shadow:0 2px 8px var(--shadow-primary-active)}@media (max-width: 600px){.desktop-install-modal{width:95%;max-height:95vh}.desktop-install-button{font-size:13px;padding:10px 16px;bottom:16px;right:16px}.desktop-install-help-button{bottom:16px;right:16px}}@media (max-width: 768px){.desktop-install-modal{max-width:500px}}.pwa-debug-toggle{position:fixed;bottom:20px;right:20px;width:50px;height:50px;border-radius:50%;background:var(--primary-fill);color:var(--text-on-primary);border:none;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);z-index:9998;transition:all .3s ease}.pwa-debug-toggle:hover{background:var(--primary-dark);transform:scale(1.1)}.pwa-debug-panel{position:fixed;bottom:80px;right:20px;width:400px;max-height:600px;background:var(--card-bg);border-radius:var(--radius-xl);box-shadow:var(--popover-shadow);z-index:9999;display:flex;flex-direction:column;overflow:hidden;font-size:13px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.pwa-debug-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-color);background:var(--gray-100)}.pwa-debug-header h3{margin:0;font-size:14px;font-weight:600;color:var(--gray-900)}.pwa-debug-header button{background:none;border:none;font-size:18px;cursor:pointer;color:var(--gray-500);padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.pwa-debug-header button:hover{color:var(--gray-900)}.pwa-debug-content{overflow-y:auto;padding:12px}.pwa-debug-section{margin-bottom:16px}.pwa-debug-section h4{margin:0 0 8px;font-size:12px;font-weight:600;color:var(--gray-700);text-transform:uppercase;letter-spacing:.5px}.requirement-item{display:flex;justify-content:space-between;align-items:center;padding:8px;background:var(--surface-light);border-radius:var(--radius-md);margin-bottom:6px;border-left:3px solid var(--border-color)}.requirement-item span:first-child{font-weight:500;color:var(--gray-700)}.requirement-item .status{font-size:12px;font-weight:600;padding:2px 8px;border-radius:var(--radius-sm);background:var(--alert-info-bg);color:var(--alert-info-text)}.requirement-item span:first-child:contains("✓"){color:var(--success-hover)}.requirement-item span:first-child:contains("❌"){color:var(--danger-hover)}.status-message{padding:12px;border-radius:var(--radius-md);font-size:12px;line-height:1.5}.status-message.success{background:var(--success-bg);color:var(--role-active-text);border:1px solid color-mix(in srgb,var(--success) 45%,transparent)}.status-message.error{background:var(--danger-bg);color:var(--role-inactive-text);border:1px solid color-mix(in srgb,var(--danger) 45%,transparent)}.debug-messages{background:var(--inverse-surface);color:var(--success);padding:12px;border-radius:var(--radius-md);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:11px;max-height:200px;overflow-y:auto;line-height:1.6}.debug-message{margin-bottom:4px}.pwa-debug-section.info{background:var(--alert-info-bg);border:1px solid var(--alert-info-border);border-radius:var(--radius-md);padding:12px}.pwa-debug-section.info p{margin:0;font-size:12px;color:var(--alert-info-text);line-height:1.5}@media (max-width: 600px){.pwa-debug-panel{width:calc(100vw - 40px);right:20px;left:20px}}.pwa-update-banner{position:fixed;bottom:16px;left:50%;transform:translate(-50%);z-index:2000;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-lg);background:var(--inverse-surface);color:var(--inverse-text);box-shadow:var(--popover-shadow);font-size:.9rem}.pwa-update-banner button{border:none;border-radius:var(--radius-md);padding:6px 12px;background:var(--primary);color:var(--text-on-primary);font-weight:600;cursor:pointer}.app{display:flex;flex-direction:column;min-height:100vh;background-color:var(--bg-color)}.card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-sm)}.card h3{margin-top:0;margin-bottom:16px;font-size:var(--text-lg)}/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-outline-style:solid}}}@layer theme{:root,:host{--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-2xl:42rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-primary:var(--primary);--color-surface:var(--surface)}}@layer base;@layer utilities{.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-1\/2{top:50%}.top-3{top:calc(var(--spacing) * 3)}.bottom-0{bottom:0}.left-0{left:0}.left-1\/2{left:50%}.z-40{z-index:40}.z-\[100\]{z-index:100}.z-\[1000\]{z-index:1000}.z-\[1001\]{z-index:1001}.z-\[1100\]{z-index:1100}.z-\[1101\]{z-index:1101}.z-\[1200\]{z-index:1200}.z-\[2000\]{z-index:2000}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:0}.m-347{margin:calc(var(--spacing) * 347)}.m-654{margin:calc(var(--spacing) * 654)}.m-922{margin:calc(var(--spacing) * 922)}.m-1180{margin:calc(var(--spacing) * 1180)}.m-1342{margin:calc(var(--spacing) * 1342)}.m-1829{margin:calc(var(--spacing) * 1829)}.m-1896{margin:calc(var(--spacing) * 1896)}.m-3175{margin:calc(var(--spacing) * 3175)}.m-3259{margin:calc(var(--spacing) * 3259)}.m-3770{margin:calc(var(--spacing) * 3770)}.m-8470{margin:calc(var(--spacing) * 8470)}.m-11248{margin:calc(var(--spacing) * 11248)}.m-16337{margin:calc(var(--spacing) * 16337)}.m-16674{margin:calc(var(--spacing) * 16674)}.m-16769{margin:calc(var(--spacing) * 16769)}.m-17182{margin:calc(var(--spacing) * 17182)}.m-19152{margin:calc(var(--spacing) * 19152)}.m-22748{margin:calc(var(--spacing) * 22748)}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.mx-auto{margin-inline:auto}.my-2{margin-block:calc(var(--spacing) * 2)}.my-4{margin-block:calc(var(--spacing) * 4)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-auto{margin-top:auto}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-2{height:calc(var(--spacing) * 2)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-\[2px\]{height:2px}.h-full{height:100%}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-\[85vh\]{max-height:85vh}.min-h-0{min-height:0}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-\[36px\]{min-height:36px}.min-h-\[44px\]{min-height:44px}.min-h-\[48px\]{min-height:48px}.min-h-\[160px\]{min-height:160px}.min-h-screen{min-height:100vh}.w-1{width:var(--spacing)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-28{width:calc(var(--spacing) * 28)}.w-32{width:calc(var(--spacing) * 32)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-\[80vw\]{max-width:80vw}.max-w-\[85\%\]{max-width:85%}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:0}.min-w-\[1\.25rem\]{min-width:1.25rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[14rem\]{min-width:14rem}.min-w-\[36px\]{min-width:36px}.min-w-\[48px\]{min-width:48px}.min-w-max{min-width:max-content}.flex-1{flex:1}.flex-none{flex:none}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-\[6px\]{--tw-translate-y: -6px ;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[6px\]{--tw-translate-y:6px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-rotate-45{rotate:-45deg}.rotate-45{rotate:45deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-\[3px\]{gap:3px}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[var\(--radius-lg\)\]{border-radius:var(--radius-lg)}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-\[var\(--radius-pill\)\]{border-radius:var(--radius-pill)}.rounded-\[var\(--radius-sm\)\]{border-radius:var(--radius-sm)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-\[3px\]{border-style:var(--tw-border-style);border-width:3px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-\[var\(--btn-on-primary-border\)\]{border-color:var(--btn-on-primary-border)}.border-alert-error-border{border-color:var(--alert-error-border)}.border-alert-info-border{border-color:var(--alert-info-border)}.border-alert-success-border{border-color:var(--alert-success-border)}.border-alert-warning-border{border-color:var(--alert-warning-border)}.border-border{border-color:var(--border-color)}.border-danger\/30{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.border-danger\/30{border-color:color-mix(in oklab,var(--danger) 30%,transparent)}}.border-gray-200{border-color:var(--gray-200)}.border-primary{border-color:var(--primary)}.border-t-primary{border-top-color:var(--primary)}.bg-\[var\(--alert-error-bg\)\]{background-color:var(--alert-error-bg)}.bg-\[var\(--btn-on-primary-bg\)\]{background-color:var(--btn-on-primary-bg)}.bg-alert-error-bg{background-color:var(--alert-error-bg)}.bg-alert-info-bg{background-color:var(--alert-info-bg)}.bg-alert-success-bg{background-color:var(--alert-success-bg)}.bg-alert-warning-bg{background-color:var(--alert-warning-bg)}.bg-bg{background-color:var(--bg-color)}.bg-card{background-color:var(--card-bg)}.bg-current{background-color:currentColor}.bg-danger{background-color:var(--danger)}.bg-gray-200{background-color:var(--gray-200)}.bg-overlay-dark{background-color:var(--overlay-dark)}.bg-primary{background-color:var(--primary)}.bg-primary-fill{background-color:var(--primary-fill)}.bg-primary\/5{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/5{background-color:color-mix(in oklab,var(--primary) 5%,transparent)}}.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--primary) 10%,transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-surface{background-color:var(--surface)}.bg-surface-light{background-color:var(--surface-light)}.bg-transparent{background-color:#0000}.bg-white\/25{background-color:#ffffff40}@supports (color:color-mix(in lab,red,red)){.bg-white\/25{background-color:color-mix(in oklab,var(--color-white) 25%,transparent)}}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.\!text-\[var\(--alert-success-text\)\]{color:var(--alert-success-text)!important}.text-\[var\(--alert-error-text\)\]{color:var(--alert-error-text)}.text-\[var\(--text-on-primary\)\]{color:var(--text-on-primary)}.text-alert-error-text{color:var(--alert-error-text)}.text-alert-info-text{color:var(--alert-info-text)}.text-alert-success-text{color:var(--alert-success-text)}.text-alert-warning-text{color:var(--alert-warning-text)}.text-current{color:currentColor}.text-danger{color:var(--danger)}.text-gray-400{color:var(--gray-400)}.text-gray-500{color:var(--gray-500)}.text-gray-600{color:var(--gray-600)}.text-primary{color:var(--primary)}.text-text{color:var(--text-color)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-100{opacity:1}.shadow-\[0_-2px_8px_rgba\(0\,0\,0\,0\.1\)\]{--tw-shadow:0 -2px 8px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--shadow-lg\)\]{--tw-shadow:var(--shadow-lg);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--shadow-md\)\]{--tw-shadow:var(--shadow-md);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--shadow-sm\)\]{--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}@media (hover:hover){.hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-primary:hover{border-color:var(--primary)}.hover\:bg-\[var\(--btn-on-primary-bg-hover\)\]:hover{background-color:var(--btn-on-primary-bg-hover)}.hover\:bg-border:hover{background-color:var(--border-color)}.hover\:bg-card:hover{background-color:var(--card-bg)}.hover\:bg-danger:hover{background-color:var(--danger)}.hover\:bg-danger-bg:hover{background-color:var(--danger-bg)}.hover\:bg-danger-hover:hover{background-color:var(--danger-hover)}.hover\:bg-gray-50:hover{background-color:var(--surface-light)}.hover\:bg-gray-200:hover{background-color:var(--gray-200)}.hover\:bg-primary-fill-hover:hover{background-color:var(--primary-fill-hover)}.hover\:bg-secondary-hover:hover{background-color:var(--secondary-hover)}.hover\:bg-surface-light:hover{background-color:var(--surface-light)}.hover\:bg-warning:hover{background-color:var(--warning)}.hover\:text-danger:hover{color:var(--danger)}.hover\:text-primary:hover{color:var(--primary)}.hover\:text-text:hover{color:var(--text-color)}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}}.focus-visible\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-primary:focus-visible{outline-color:var(--primary)}.disabled\:cursor-default:disabled{cursor:default}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}@media (hover:hover){.disabled\:hover\:scale-100:disabled:hover{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.disabled\:hover\:bg-surface-light:disabled:hover{background-color:var(--surface-light)}.disabled\:hover\:text-gray-500:disabled:hover{color:var(--gray-500)}}@media (min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:col-span-3{grid-column:span 3/span 3}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:599px){.mobile\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.mobile\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.mobile\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}@media (min-width:600px) and (max-width:899px){.tablet\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tablet\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.tablet\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:900px){.desktop\:inset-x-auto{inset-inline:auto}.desktop\:right-6{right:calc(var(--spacing) * 6)}.desktop\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.desktop\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.desktop\:items-end{align-items:flex-end}}.\[\&\>button\]\:\!min-h-\[44px\]>button{min-height:44px!important}.\[\&\>button\]\:min-w-\[6rem\]>button{min-width:6rem}.\[\&\>button\]\:min-w-max>button{min-width:max-content}.\[\&\>button\]\:flex-1>button{flex:1}.\[\&\>button\]\:\!px-4>button{padding-inline:calc(var(--spacing) * 4)!important}.\[\&\>button\]\:\!py-2>button{padding-block:calc(var(--spacing) * 2)!important}.\[\&\>button\]\:\!text-sm>button{font-size:var(--text-sm)!important;line-height:var(--tw-leading,var(--text-sm--line-height))!important}.\[\&\>button\]\:\!font-semibold>button{--tw-font-weight:var(--font-weight-semibold)!important;font-weight:var(--font-weight-semibold)!important}@media (min-width:600px) and (max-width:899px){.tablet\:\[\&\>button\]\:flex-none>button{flex:none}}@media (min-width:900px){.desktop\:\[\&\>button\]\:flex-none>button{flex:none}}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@keyframes spin{to{transform:rotate(360deg)}}@layer base{*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #2a4c33;--primary-dark: #1e3925;--primary-fill: var(--primary);--primary-fill-hover: var(--primary-dark);--success: #10b981;--success-hover: #059669;--success-bg: #d1fae5;--warning: #f59e0b;--danger: #ef4444;--danger-hover: #dc2626;--danger-bg: #fee2e2;--secondary: #6b7280;--secondary-hover: #4b5563;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #d1d5db;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-900: #111827;--text-color: #1f2937;--bg-color: #ffffff;--border-color: #e5e7eb;--card-bg: #ffffff;--surface: #ffffff;--surface-light: #f9fafb;--inverse-surface: #242424;--inverse-text: #ffffff;--alert-error-bg: rgba(239, 68, 68, .1);--alert-error-text: #b91c1c;--alert-error-border: rgba(239, 68, 68, .3);--alert-success-bg: rgba(16, 185, 129, .1);--alert-success-text: #047857;--alert-success-border: rgba(16, 185, 129, .3);--alert-warning-bg: rgba(245, 158, 11, .1);--alert-warning-text: #b45309;--alert-warning-border: rgba(245, 158, 11, .3);--alert-info-bg: rgba(59, 130, 246, .1);--alert-info-text: #1d4ed8;--alert-info-border: rgba(59, 130, 246, .3);--form-input-bg: #ffffff;--form-input-border: #e5e7eb;--status-pending-bg: rgba(245, 158, 11, .1);--status-pending-text: #b45309;--status-confirmed-bg: var(--alert-success-bg);--status-confirmed-text: var(--alert-success-text);--status-paid-bg: rgba(16, 185, 129, .1);--status-paid-text: #047857;--status-completed-bg: var(--alert-success-bg);--status-completed-text: var(--alert-success-text);--status-cancelled-bg: rgba(239, 68, 68, .1);--status-cancelled-text: #b91c1c;--status-deposit-paid-bg: rgba(59, 130, 246, .1);--status-deposit-paid-text: #0369a1;--status-requested-bg: rgba(234, 179, 8, .12);--status-requested-text: #854d0e;--status-individual-bg: rgba(168, 85, 247, .1);--status-individual-text: #7e22ce;--status-offer-sent-bg: rgba(6, 182, 212, .1);--status-offer-sent-text: #0e7490;--status-final-payment-bg: rgba(249, 115, 22, .1);--status-final-payment-text: #c2410c;--status-free-bg: rgba(13, 148, 136, .1);--status-free-text: #0f766e;--status-active-bg: var(--role-active-bg);--status-active-text: var(--role-active-text);--status-inactive-bg: var(--role-inactive-bg);--status-inactive-text: var(--role-inactive-text);--status-role-admin-bg: var(--role-admin-bg);--status-role-admin-text: var(--role-admin-text);--status-role-staff-bg: var(--role-staff-bg);--status-role-staff-text: var(--role-staff-text);--status-role-cleaning-bg: var(--role-cleaning-bg);--status-role-cleaning-text: var(--role-cleaning-text);--status-cleaning-open-bg: rgba(245, 158, 11, .1);--status-cleaning-open-text: #9a3412;--status-cleaning-done-bg: var(--alert-success-bg);--status-cleaning-done-text: var(--alert-success-text);--status-handover-unassigned-bg: rgba(245, 158, 11, .1);--status-handover-unassigned-text: #9a3412;--status-handover-assigned-bg: var(--alert-info-bg);--status-handover-assigned-text: var(--alert-info-text);--status-handover-done-bg: var(--alert-success-bg);--status-handover-done-text: var(--alert-success-text);--status-handover-not-needed-bg: rgba(107, 114, 128, .1);--status-handover-not-needed-text: #4b5563;--status-handover-today-bg: var(--alert-info-bg);--status-handover-today-text: var(--alert-info-text);--status-handover-overdue-bg: var(--status-cancelled-bg);--status-handover-overdue-text: var(--status-cancelled-text);--role-admin-bg: rgba(59, 130, 246, .1);--role-admin-text: #1d4ed8;--role-staff-bg: rgba(147, 51, 234, .1);--role-staff-text: #6d28d9;--role-cleaning-bg: rgba(13, 148, 136, .1);--role-cleaning-text: #0f766e;--role-active-bg: var(--alert-success-bg);--role-active-text: var(--alert-success-text);--role-inactive-bg: rgba(239, 68, 68, .1);--role-inactive-text: #991b1b;--calendar-selected-checkin-bg: var(--primary-fill);--calendar-selected-checkin-text: #ffffff;--calendar-selected-checkout-bg: var(--primary-fill-hover);--calendar-selected-checkout-text: #ffffff;--calendar-selected-range-bg: #c8e6c9;--calendar-selected-range-text: #1b3a1d;--calendar-preview-range-bg: #e3f2fd;--calendar-preview-range-text: #0d3c61;--calendar-disabled-bg: #e5e7eb;--calendar-disabled-text: #9ca3af;--overlay-dark: rgba(0, 0, 0, .5);--overlay-light: rgba(255, 255, 255, .05);--scrim-bg: rgba(0, 0, 0, .5);--success-tint-bg: rgba(34, 197, 94, .05);--success-tint-border: rgba(34, 197, 94, .3);--danger-tint-bg: rgba(239, 68, 68, .05);--danger-tint-border: rgba(239, 68, 68, .3);--warning-tint-bg: rgba(245, 158, 11, .05);--text-warning-strong: #d97706;--shadow-primary: rgba(42, 76, 51, .4);--shadow-primary-hover: rgba(42, 76, 51, .5);--shadow-primary-active: rgba(42, 76, 51, .3);--overlay-hover: rgba(0, 0, 0, .02);--scrollbar-thumb: rgba(0, 0, 0, .2);--scrollbar-thumb-hover: rgba(0, 0, 0, .3);--loading-overlay-bg: rgba(0, 0, 0, .8);--calendar-today-bg: rgba(42, 76, 51, .08);--calendar-focus-ring-shadow: 0 0 0 3px rgba(42, 76, 51, .15);--calendar-bar-border: rgba(0, 0, 0, .2);--calendar-row-stripe-bg: rgba(0, 0, 0, .02);--calendar-skeleton-shine: rgba(255, 255, 255, .6);--text-on-primary: #ffffff;--text-on-primary-muted: rgba(255, 255, 255, .75);--btn-on-primary-bg: rgba(255, 255, 255, .2);--btn-on-primary-bg-hover: rgba(255, 255, 255, .3);--btn-on-primary-border: rgba(255, 255, 255, .3);--form-input-error-bg: rgba(239, 68, 68, .02);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 20px;--spacing-xxl: 24px;--breakpoint-mobile: 599px;--breakpoint-tablet-sm: 600px;--breakpoint-tablet: 768px;--breakpoint-desktop: 900px;--breakpoint-desktop-lg: 1200px;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--touch-target-min: 48px;--input-height: 44px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-pill: 20px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 20px 60px rgba(0, 0, 0, .15);--focus-ring-shadow: 0 0 0 3px rgba(42, 76, 51, .1);--popover-shadow: 0 8px 24px rgba(0, 0, 0, .15)}:root{color-scheme:light}.dark{color-scheme:dark;--text-color: #f2f2f0;--bg-color: #1e1e1e;--border-color: #3d3d3d;--popover-shadow: 0 8px 24px rgba(0, 0, 0, .4);--gray-100: #333333;--gray-200: #454545;--gray-300: #5c5c5c;--gray-400: #5c5c5c;--gray-500: #9e9e9e;--gray-600: #b8b8b8;--gray-700: #d6d6d6;--gray-900: #f2f2f0;--card-bg: #2a2a2a;--surface: #2a2a2a;--surface-light: #333333;--success-bg: #064e3b;--danger-bg: #7f1d1d;--secondary: #454545;--secondary-hover: #5c5c5c;--primary: #53ac6b;--primary-dark: #3a794b;--primary-fill: #3a794b;--primary-fill-hover: #2c5c39;--btn-on-primary-bg: rgba(0, 0, 0, .22);--btn-on-primary-bg-hover: rgba(0, 0, 0, .34);--btn-on-primary-border: rgba(255, 255, 255, .28);--form-input-bg: #2a2a2a;--form-input-border: #3d3d3d;--alert-error-text: #fca5a5;--alert-success-text: #86efac;--alert-warning-text: #fbbf24;--alert-info-text: #93c5fd;--status-pending-text: #fbbf24;--status-paid-text: #86efac;--status-cancelled-text: #fca5a5;--status-deposit-paid-text: #93c5fd;--status-requested-text: #fbbf24;--status-individual-text: #c084fc;--status-offer-sent-text: #22d3ee;--status-final-payment-text: #fdba74;--status-free-text: #5eead4;--status-cleaning-open-text: #fbbf24;--status-handover-unassigned-text: #fbbf24;--status-handover-not-needed-text: #8a8a8a;--role-admin-text: #93c5fd;--role-staff-text: #d8b4fe;--role-cleaning-text: #5eead4;--role-inactive-text: #fca5a5;--calendar-selected-range-bg: #1b4d1e;--calendar-selected-range-text: #c8e6c9;--calendar-preview-range-bg: #123a5c;--calendar-preview-range-text: #cfe8ff;--calendar-disabled-bg: #333333;--calendar-disabled-text: #6e6e6e;--overlay-dark: rgba(255, 255, 255, .1);--overlay-light: rgba(0, 0, 0, .3);--scrim-bg: rgba(0, 0, 0, .7);--success-tint-bg: rgba(34, 197, 94, .1);--text-warning-strong: #fbbf24;--overlay-hover: rgba(255, 255, 255, .02);--scrollbar-thumb: rgba(255, 255, 255, .2);--scrollbar-thumb-hover: rgba(255, 255, 255, .3);--calendar-today-bg: rgba(83, 172, 107, .18);--calendar-focus-ring-shadow: 0 0 0 3px rgba(83, 172, 107, .2);--calendar-bar-border: rgba(255, 255, 255, .25);--calendar-skeleton-shine: rgba(255, 255, 255, .15);--shadow-primary: rgba(83, 172, 107, .4);--shadow-primary-hover: rgba(83, 172, 107, .5);--shadow-primary-active: rgba(83, 172, 107, .3);--focus-ring-shadow: 0 0 0 3px rgba(83, 172, 107, .15)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-color);color:var(--text-color);line-height:1.5}html,body,#root{height:100%;width:100%}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer;border:none;border-radius:var(--radius-md);padding:12px 16px;min-height:44px;min-width:48px;font-size:14px;font-weight:500;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}button:disabled{opacity:.6;cursor:not-allowed}input,select,textarea{font-family:inherit;font-size:16px;padding:12px 14px;min-height:44px;border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-color);color:var(--text-color)}input[type=checkbox],input[type=radio]{width:20px;height:20px;min-height:auto;cursor:pointer;accent-color:var(--primary)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--primary);outline-offset:2px;border-color:var(--primary)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:var(--focus-ring-shadow)}button:focus-visible{outline:3px solid var(--primary);outline-offset:2px}table{width:100%;border-collapse:collapse;margin:20px 0}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--border-color)}th{background-color:var(--surface-light);font-weight:600}.alert{padding:12px 16px;border-radius:var(--radius-md);margin:16px 0;display:flex;align-items:center;gap:12px}.alert.error{background-color:var(--alert-error-bg);color:var(--alert-error-text);border:1px solid var(--alert-error-border)}.alert.success{background-color:var(--alert-success-bg);color:var(--alert-success-text);border:1px solid var(--alert-success-border)}.alert.warning{background-color:var(--alert-warning-bg);color:var(--alert-warning-text);border:1px solid var(--alert-warning-border)}.alert.info{background-color:var(--alert-info-bg);color:var(--alert-info-text);border:1px solid var(--alert-info-border)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:8px;font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none}.form-group input,.form-group select,.form-group textarea{width:100%}.form-group.checkbox input[type=checkbox]{width:20px;height:20px;margin-right:var(--spacing-md)}.form-group.checkbox label{display:flex;align-items:center;margin:0;padding:8px 0;gap:var(--spacing-md)}.form-error{display:block;color:var(--danger);font-size:12px;margin-top:4px}}
