@charset "UTF-8";.button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.8rem;border:1px solid rgba(0,0,0,0);border-radius:1rem;font-weight:600;font-size:1.4rem;line-height:1;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .05s ease,opacity .15s ease}.button.sm{padding:.8rem 1.2rem;font-size:1.3rem}.button.md{padding:1.2rem 2rem}.button.lg{padding:1.6rem 2.4rem;font-size:1.6rem}.button.full-width{width:100%}.button.primary{background-color:var(--color-primary);color:var(--color-primary-contrast)}.button.primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.button.secondary{background-color:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.button.secondary:hover:not(:disabled){background-color:var(--color-surface-2)}.button.ghost{background-color:rgba(0,0,0,0);color:var(--color-text-muted)}.button.ghost:hover:not(:disabled){background-color:var(--color-surface-2);color:var(--color-text)}.button.danger{background-color:var(--color-danger);color:#fff}.button.danger:hover:not(:disabled){filter:brightness(.93)}.button:active:not(:disabled){transform:translateY(1px)}.button:disabled{opacity:.55;cursor:not-allowed}.button__icon{display:inline-flex;align-items:center}.button__icon svg{width:1.6rem;height:1.6rem}.button__label.hidden{visibility:hidden}.button__spinner{position:absolute;width:1.6rem;height:1.6rem;border:2px solid;border-right:2px solid rgba(0,0,0,0);border-radius:50%;animation:spin .6s linear infinite}.text-field{display:flex;flex-direction:column;gap:.8rem;width:100%}.text-field__label{font-size:1.3rem;font-weight:500;color:var(--color-text)}.text-field__control{position:relative;display:flex;align-items:center}.text-field__icon{position:absolute;left:1.2rem;display:inline-flex;align-items:center;color:var(--color-text-subtle);pointer-events:none}.text-field__icon svg{width:1.8rem;height:1.8rem}.text-field__input{width:100%;padding:1.2rem 1.6rem;font-size:1.4rem;color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:1rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.text-field__input::placeholder{color:var(--color-text-subtle)}.text-field__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.text-field__input:disabled{background-color:var(--color-surface-2);cursor:not-allowed}.text-field.has-icon .text-field__input{padding-left:4rem}.text-field.has-error .text-field__input{border-color:var(--color-danger)}.text-field.has-error .text-field__input:focus{box-shadow:0 0 0 3px var(--color-danger-soft)}.text-field__error{font-size:1.2rem;color:var(--color-danger)}.text-field__hint{font-size:1.2rem;color:var(--color-text-muted)}.textarea-field{display:flex;flex-direction:column;gap:.8rem;width:100%}.textarea-field__label{font-size:1.3rem;font-weight:500;color:var(--color-text)}.textarea-field__input{width:100%;padding:1.2rem 1.6rem;font-size:1.4rem;line-height:1.5;color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:1rem;outline:none;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.textarea-field__input::placeholder{color:var(--color-text-subtle)}.textarea-field__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.textarea-field.has-error .textarea-field__input{border-color:var(--color-danger)}.textarea-field__error{font-size:1.2rem;color:var(--color-danger)}.textarea-field__hint{font-size:1.2rem;color:var(--color-text-muted)}.select-field{display:flex;flex-direction:column;gap:.8rem;width:100%}.select-field__label{font-size:1.3rem;font-weight:500;color:var(--color-text)}.select-field__control{position:relative;display:flex;align-items:center}.select-field__input{width:100%;padding:1.2rem 4rem 1.2rem 1.6rem;font-size:1.4rem;color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:1rem;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.select-field__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.select-field__chevron{position:absolute;right:1.2rem;display:inline-flex;align-items:center;color:var(--color-text-subtle);pointer-events:none}.select-field__chevron svg{width:1.8rem;height:1.8rem}.select-field.has-error .select-field__input{border-color:var(--color-danger)}.select-field__error{font-size:1.2rem;color:var(--color-danger)}.select-field__hint{font-size:1.2rem;color:var(--color-text-muted)}.ui-card.padded{padding:2.4rem}.ui-card.interactive{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.ui-card.interactive:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.modal-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:2rem;background-color:rgba(15,23,42,.5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fade-in .15s ease}.modal{width:100%;max-height:calc(100vh - 4rem);display:flex;flex-direction:column;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:1.6rem;box-shadow:var(--shadow-lg);animation:scale-in .18s ease}.modal.sm{max-width:42rem}.modal.md{max-width:56rem}.modal.lg{max-width:76rem}.modal__header{display:flex;align-items:center;justify-content:space-between;gap:1.6rem;padding:2rem 2.4rem;border-bottom:1px solid var(--color-border)}.modal__title{font-size:1.8rem;font-weight:600}.modal__close{display:inline-flex;align-items:center;justify-content:center;width:3.2rem;height:3.2rem;color:var(--color-text-muted);background-color:rgba(0,0,0,0);border:none;border-radius:1rem;transition:background-color .15s ease,color .15s ease}.modal__close:hover{background-color:var(--color-surface-2);color:var(--color-text)}.modal__close svg{width:2rem;height:2rem}.modal__body{padding:2.4rem;overflow-y:auto}.modal__footer{justify-content:flex-end;padding:1.6rem 2.4rem;border-top:1px solid var(--color-border)}.loader,.modal__footer{display:flex;align-items:center;gap:1.2rem}.loader{flex-direction:column;justify-content:center;padding:3.2rem;color:var(--color-text-muted)}.loader.fullscreen{position:fixed;inset:0;z-index:200;background-color:var(--color-bg)}.loader__spinner{border-radius:50%;border:3px solid var(--color-border);border-top-color:var(--color-primary);animation:spin .7s linear infinite}.loader.sm .loader__spinner{width:1.8rem;height:1.8rem;border-width:2px}.loader.md .loader__spinner{width:2.8rem;height:2.8rem}.loader.lg .loader__spinner{width:4rem;height:4rem;border-width:4px}.loader__label{font-size:1.3rem}.status-badge{display:inline-flex;align-items:center;gap:.8rem;padding:.4rem 1.2rem;font-size:1.2rem;font-weight:600;border-radius:10rem;white-space:nowrap}.status-badge__dot{width:.8rem;height:.8rem;border-radius:50%;background-color:currentColor}.status-badge.neutral{color:var(--color-text-muted);background-color:var(--color-surface-2)}.status-badge.success{color:var(--color-success);background-color:var(--color-success-soft)}.status-badge.warning{color:var(--color-warning);background-color:var(--color-warning-soft)}.status-badge.danger{color:var(--color-danger);background-color:var(--color-danger-soft)}.status-badge.info{color:var(--color-primary);background-color:var(--color-primary-soft)}.room-card{display:flex;flex-direction:column;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:1.6rem;overflow:hidden;box-shadow:var(--shadow-sm);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.room-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.room-card.inactive{opacity:.6}.room-card__media{position:relative;aspect-ratio:16/10;background-color:var(--color-surface-2)}.room-card__image{object-fit:cover}.room-card__placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:4rem;font-weight:700;color:var(--color-text-subtle)}.room-card__status{position:absolute;top:1.2rem;left:1.2rem}.room-card__body{display:flex;flex-direction:column;gap:1.2rem;padding:1.6rem 2rem;flex:1 1}.room-card__name{font-size:1.8rem;font-weight:600}.room-card__meta{display:flex;flex-wrap:wrap;gap:1.6rem;font-size:1.3rem;color:var(--color-text-muted)}.room-card__meta-item{display:inline-flex;align-items:center;gap:.4rem}.room-card__meta-item svg{width:1.6rem;height:1.6rem}.room-card__hint{font-size:1.2rem;color:var(--color-warning)}.room-card__tags{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:auto}.room-card__tag{padding:.4rem 1.2rem;font-size:1.2rem;color:var(--color-text-muted);background-color:var(--color-surface-2);border-radius:10rem}.room-card__actions{display:flex;gap:.8rem;padding:1.6rem 2rem;border-top:1px solid var(--color-border)}.room-form{display:flex;flex-direction:column;gap:2rem}.room-form__error{padding:1.2rem 1.6rem;font-size:1.3rem;color:var(--color-danger);background-color:var(--color-danger-soft);border-radius:1rem}.room-form__row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.6rem;gap:1.6rem}@media(max-width:768px){.room-form__row{grid-template-columns:1fr}}.room-form__field{display:flex;flex-direction:column;gap:.8rem}.room-form__label{font-size:1.3rem;font-weight:500}.room-form__chips{display:flex;flex-wrap:wrap;gap:.8rem}.room-form__chip{padding:.8rem 1.2rem;font-size:1.3rem;color:var(--color-text-muted);background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:10rem;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.room-form__chip.active,.room-form__chip:hover{border-color:var(--color-primary)}.room-form__chip.active{color:var(--color-primary);background-color:var(--color-primary-soft)}.room-form__check{display:flex;align-items:center;gap:.8rem;font-size:1.4rem;cursor:pointer}.room-form__check input{width:1.8rem;height:1.8rem;accent-color:var(--color-primary)}.room-form__actions{display:flex;justify-content:flex-end;gap:1.2rem;margin-top:.8rem}.booking-item{display:flex;align-items:center;gap:2rem;padding:1.6rem 2rem;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:1rem;transition:border-color .15s ease}.booking-item:hover{border-color:var(--color-border-strong)}.booking-item.cancelled{opacity:.6}.booking-item.cancelled .booking-item__title{text-decoration:line-through}.booking-item__time{display:flex;flex-direction:column;gap:.2rem;min-width:14rem;padding-right:2rem;border-right:1px solid var(--color-border)}@media(max-width:768px){.booking-item__time{min-width:11rem;padding-right:1.2rem}}.booking-item__day{font-size:1.2rem;font-weight:600;color:var(--color-primary);text-transform:uppercase;letter-spacing:.04em}.booking-item__range{font-size:1.4rem;font-weight:600;color:var(--color-text)}.booking-item__body{display:flex;flex-direction:column;gap:.8rem;flex:1 1;min-width:0}.booking-item__heading{display:flex;align-items:center;gap:1.2rem}.booking-item__title{font-size:1.5rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-item__meta{display:flex;flex-wrap:wrap;gap:1.6rem;font-size:1.3rem;color:var(--color-text-muted)}.booking-item__meta-item{display:inline-flex;align-items:center;gap:.4rem}.booking-item__meta-item svg{width:1.5rem;height:1.5rem}.booking-item__actions{display:flex;gap:.8rem}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{overflow:visible;text-transform:none;-webkit-appearance:button;-moz-appearance:button;appearance:button;cursor:pointer}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-toolbar{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;margin-bottom:10px;font-size:16px}.rbc-toolbar .rbc-toolbar-label{flex-grow:1;padding:0 10px;text-align:center}.rbc-toolbar button{color:#373a3c;display:inline-block;margin:0;text-align:center;vertical-align:middle;background:none;background-image:none;border:1px solid #ccc;padding:.375rem 1rem;border-radius:4px;line-height:normal;white-space:nowrap}.rbc-toolbar button.rbc-active,.rbc-toolbar button:active{background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,.125);background-color:rgb(229.5,229.5,229.5);border-color:rgb(173.4,173.4,173.4)}.rbc-toolbar button.rbc-active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button:active:hover{color:#373a3c;background-color:rgb(211.65,211.65,211.65);border-color:rgb(140.25,140.25,140.25)}.rbc-toolbar button:focus,.rbc-toolbar button:hover{color:#373a3c;background-color:rgb(229.5,229.5,229.5);border-color:rgb(173.4,173.4,173.4)}.rbc-toolbar button:hover{cursor:pointer}.rbc-btn-group{display:inline-block;white-space:nowrap}.rbc-btn-group>button:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:4px;border-top-left-radius:0;border-bottom-left-radius:0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px;border-top-right-radius:0;border-bottom-right-radius:0}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media (max-width:767px){.rbc-toolbar{flex-direction:column}}.rbc-event{border:none;box-sizing:border-box;box-shadow:none;margin:0;padding:2px 5px;background-color:#3174ad;border-radius:5px;color:#fff;cursor:pointer;width:100%;text-align:left}.rbc-slot-selecting .rbc-event{cursor:inherit;pointer-events:none}.rbc-event.rbc-selected{background-color:rgb(37.7432432432,89.3513513514,133.2567567568)}.rbc-event:focus{outline:5px auto #3b99fc}.rbc-event-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:80%}.rbc-event-overlaps{box-shadow:-1px 1px 5px 0 rgba(51,51,51,.5)}.rbc-event-continues-prior{border-top-left-radius:0;border-bottom-left-radius:0}.rbc-event-continues-after{border-top-right-radius:0;border-bottom-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-left-radius:0;border-bottom-right-radius:0}.rbc-row{display:flex;flex-direction:row}.rbc-row-segment{padding:0 1px 1px}.rbc-row-segment .rbc-event-content{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-selected-cell{background-color:rgba(0,0,0,.1)}.rbc-show-more{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:rgba(255,255,255,.3);z-index:4;font-weight:700;font-size:85%;height:auto;line-height:normal;color:#3174ad}.rbc-show-more:focus,.rbc-show-more:hover{color:rgb(37.7432432432,89.3513513514,133.2567567568)}.rbc-month-view{position:relative;border:1px solid #ddd;display:flex;flex-direction:column;flex:1 0;width:100%;-moz-user-select:none;user-select:none;-webkit-user-select:none;height:100%}.rbc-month-header{display:flex;flex-direction:row}.rbc-month-row{display:flex;position:relative;flex-direction:column;flex:1 0;flex-basis:0px;overflow:hidden;height:100%}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{flex:1 1;min-width:0;padding-right:5px;text-align:right}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:row;flex:1 0;overflow:hidden;right:1px}.rbc-day-bg{flex:1 0}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{position:absolute;z-index:5;border:1px solid #e5e5e5;background-color:#fff;box-shadow:0 5px 15px rgba(0,0,0,.25);padding:10px}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{display:flex;flex-direction:column;flex:1 0;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{width:100%;border:1px solid #ddd;border-spacing:0;border-collapse:collapse}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{padding:5px 10px;vertical-align:top}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{padding-left:15px;padding-right:15px;text-transform:lowercase}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{padding:3px 5px;text-align:left;border-bottom:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{display:flex;flex-direction:column;min-height:100%}.rbc-time-column .rbc-timeslot-group{flex:1 1}.rbc-timeslot-group{border-bottom:1px solid #ddd;min-height:40px;display:flex;flex-flow:column nowrap}.rbc-header-gutter,.rbc-time-gutter{flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{bottom:0;left:0;position:absolute;right:0;margin-right:10px;top:0}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-background-event,.rbc-day-slot .rbc-event{border:1px solid rgb(37.7432432432,89.3513513514,133.2567567568);display:flex;max-height:100%;min-height:20px;flex-flow:column wrap;align-items:flex-start;overflow:hidden;position:absolute}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{flex:none;padding-right:5px;width:auto}.rbc-day-slot .rbc-event-content{width:100%;flex:1 1;word-wrap:break-word;line-height:1;height:100%;min-height:1em}.rbc-day-slot .rbc-time-slot{border-top:1px solid rgb(246.5,246.5,246.5)}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{position:-webkit-sticky;position:sticky;left:0;background-color:white;border-right:1px solid #ddd;z-index:10;margin-right:-1px}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{min-width:auto;flex:1 0;flex-basis:0px}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-day-bg,.rbc-time-view-resources .rbc-header{width:140px;flex:1 1;flex-basis:0px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{flex:1 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{z-index:10;position:absolute;background-color:rgba(0,0,0,.5);color:white;font-size:75%;width:100%;padding:3px}.rbc-slot-selecting{cursor:move}.rbc-time-view{display:flex;flex-direction:column;flex:1 1;width:100%;border:1px solid #ddd;min-height:0}.rbc-time-view .rbc-time-gutter{white-space:nowrap;text-align:right}.rbc-time-view .rbc-allday-cell{box-sizing:content-box;width:100%;height:100%;position:relative}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{position:relative;z-index:4}.rbc-time-view .rbc-row{box-sizing:border-box;min-height:20px}.rbc-time-header{display:flex;flex:0 0 auto;flex-direction:row}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-right-width:0;border-left:1px solid #ddd}.rbc-time-header>.rbc-row.rbc-row-resource,.rbc-time-header>.rbc-row:first-child{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{flex:1 1;display:flex;min-width:0;flex-direction:column;border-left:1px solid #ddd}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;flex-shrink:0}.rbc-time-content{display:flex;flex:1 0;align-items:flex-start;width:100%;border-top:2px solid #ddd;overflow-y:auto;position:relative}.rbc-time-content>.rbc-time-gutter{flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{width:100%;-moz-user-select:none;user-select:none;-webkit-user-select:none}.rbc-current-time-indicator{position:absolute;z-index:3;left:0;right:0;height:1px;background-color:#74ad31;pointer-events:none}.rbc-resource-grouping.rbc-time-header-content{display:flex;flex-direction:column}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.rbc-calendar{box-sizing:border-box;height:100%;display:flex;flex-direction:column;align-items:stretch}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar :after,.rbc-calendar :before{box-sizing:inherit}.rbc-abs-full{overflow:hidden;position:absolute;top:0;left:0;right:0;bottom:0}.rbc-ellipsis{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999999}.rbc-off-range-bg{background:rgb(229.5,229.5,229.5)}.rbc-header{overflow:hidden;flex:1 0;text-overflow:ellipsis;white-space:nowrap;padding:0 3px;text-align:center;vertical-align:middle;font-weight:700;font-size:90%;min-height:0;border-bottom:1px solid #ddd}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{color:inherit;background:none;margin:0;padding:0;border:none;cursor:pointer;-webkit-user-select:text;-moz-user-select:text;user-select:text}.rbc-row-content{position:relative;-moz-user-select:none;user-select:none;-webkit-user-select:none;z-index:4}.rbc-row-content-scrollable{display:flex;flex-direction:column;height:100%}.rbc-row-content-scrollable .rbc-row-content-scroll-container{height:100%;overflow-y:scroll;-ms-overflow-style:none;scrollbar-width:none}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-today{background-color:#eaf6ff}.booking-calendar{height:72rem;max-height:calc(100vh - 22rem);padding:1.6rem;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:1.6rem;box-shadow:var(--shadow-sm)}@media(max-width:768px){.booking-calendar{height:60rem;padding:.8rem}}.booking-calendar .rbc-calendar{color:var(--color-text);font-size:1.3rem}.booking-calendar .rbc-toolbar{flex-wrap:wrap;gap:.8rem;margin-bottom:1.6rem}.booking-calendar .rbc-toolbar .rbc-toolbar-label{font-size:1.6rem;font-weight:600}.booking-calendar .rbc-toolbar button{color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:1rem;padding:.8rem 1.2rem;transition:background-color .15s ease,color .15s ease}.booking-calendar .rbc-toolbar button:focus,.booking-calendar .rbc-toolbar button:hover{color:var(--color-text);background-color:var(--color-surface-2);border-color:var(--color-border-strong)}.booking-calendar .rbc-toolbar button.rbc-active{color:var(--color-primary-contrast);background-color:var(--color-primary);border-color:var(--color-primary)}.booking-calendar .rbc-toolbar button.rbc-active:focus,.booking-calendar .rbc-toolbar button.rbc-active:hover{background-color:var(--color-primary-hover);color:var(--color-primary-contrast)}.booking-calendar .rbc-day-bg,.booking-calendar .rbc-day-slot,.booking-calendar .rbc-header,.booking-calendar .rbc-header+.rbc-header,.booking-calendar .rbc-month-row,.booking-calendar .rbc-month-view,.booking-calendar .rbc-time-content,.booking-calendar .rbc-time-content>*+*>*,.booking-calendar .rbc-time-header,.booking-calendar .rbc-time-header-content,.booking-calendar .rbc-time-slot,.booking-calendar .rbc-time-view,.booking-calendar .rbc-timeslot-group{border-color:var(--color-border)!important}.booking-calendar .rbc-header{padding:.8rem;font-weight:600;color:var(--color-text-muted)}.booking-calendar .rbc-off-range-bg{background-color:var(--color-surface-2)}.booking-calendar .rbc-today{background-color:var(--color-primary-soft)}.booking-calendar .rbc-current-time-indicator{background-color:var(--color-primary)}.booking-calendar .rbc-event{padding:.2rem .8rem;font-size:1.2rem;border:none;border-radius:6px;box-shadow:var(--shadow-sm)}.booking-calendar .rbc-event:focus{outline:2px solid var(--color-primary)}.booking-calendar .rbc-event--mine{background-color:var(--color-primary);color:var(--color-primary-contrast)}.booking-calendar .rbc-event--other{background-color:var(--color-surface-2);color:var(--color-text);border:1px solid var(--color-border-strong)}.booking-calendar .rbc-show-more{color:var(--color-primary);background-color:rgba(0,0,0,0)}.booking-calendar .rbc-overlay{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:1rem;box-shadow:var(--shadow-lg)}.booking-details{display:flex;flex-direction:column;gap:1.6rem}.booking-details__row{display:flex;align-items:center;gap:1.2rem;color:var(--color-text-muted)}.booking-details__row svg{width:2rem;height:2rem;flex-shrink:0}.booking-details__row div{display:flex;flex-direction:column}.booking-details__primary{font-size:1.4rem;font-weight:500;color:var(--color-text)}.booking-details__secondary{font-size:1.3rem;color:var(--color-text-muted)}.booking-details__attendees{display:flex;flex-wrap:wrap;gap:.8rem}.booking-details__chip{padding:.4rem 1.2rem;font-size:1.2rem;color:var(--color-text-muted);background-color:var(--color-surface-2);border-radius:10rem}.booking-details__description{font-size:1.4rem;line-height:1.6;color:var(--color-text);white-space:pre-wrap}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1.6rem;margin-bottom:3.2rem}@media(max-width:768px){.page-header{flex-direction:column;align-items:stretch;margin-bottom:2.4rem}}.page-header__text{display:flex;flex-direction:column;gap:.4rem}.page-header__title{font-size:2.8rem;font-weight:700}@media(max-width:768px){.page-header__title{font-size:2.4rem}}.page-header__subtitle{font-size:1.4rem;color:var(--color-text-muted)}.page-header__actions{display:flex;gap:1.2rem;flex-shrink:0}.empty-state{flex-direction:column;gap:1.2rem;padding:4.8rem 2.4rem;text-align:center}.empty-state,.empty-state__icon{display:flex;align-items:center;justify-content:center}.empty-state__icon{width:5.6rem;height:5.6rem;color:var(--color-text-subtle);background-color:var(--color-surface-2);border-radius:50%}.empty-state__icon svg{width:2.6rem;height:2.6rem}.empty-state__title{font-size:1.6rem;font-weight:600}.empty-state__description{max-width:38rem;font-size:1.4rem;color:var(--color-text-muted)}.empty-state__action{margin-top:.8rem}.booking-form{display:flex;flex-direction:column;gap:2rem}.booking-form__error{padding:1.2rem 1.6rem;font-size:1.3rem;color:var(--color-danger);background-color:var(--color-danger-soft);border-radius:1rem}.booking-form__row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.6rem;gap:1.6rem}@media(max-width:768px){.booking-form__row{grid-template-columns:1fr}}.booking-form__field{display:flex;flex-direction:column;gap:.8rem}.booking-form__label{font-size:1.3rem;font-weight:500}.booking-form__chips{display:flex;flex-wrap:wrap;gap:.8rem}.booking-form__chip{display:inline-flex;align-items:center;gap:.8rem;padding:.4rem .8rem .4rem 1.2rem;font-size:1.3rem;color:var(--color-text);background-color:var(--color-surface-2);border-radius:10rem}.booking-form__chip button{display:inline-flex;align-items:center;justify-content:center;padding:0;color:var(--color-text-muted);background-color:rgba(0,0,0,0);border:none}.booking-form__chip button:hover{color:var(--color-danger)}.booking-form__chip button svg{width:1.4rem;height:1.4rem}.booking-form__actions{display:flex;justify-content:flex-end;gap:1.2rem;margin-top:.8rem}